Semantic Diff

#9250 Make the build system's output wording, labels and colors consistent

1 commit

82407f838c59b41c0bb1191994bdb0cabd8d0f2d..pr-9250

4c7e3d145 · cknitt + Claude · Nov 06, 2026, 21:08 UTC

Make the build system's output wording, labels and colors consistent

Why

The build system's messages still followed the Rust implementation's output, which the OCaml one had to match exactly (#9244).

modifiedOutput redirected rescript build

text
Before
After
Cleaned 0/0Parsed 1 source filesCompiled 1 modulesIncremental build failed. Error: \e[2K\r Failed to Compile. See Errors AboveCleaned 0 stale modulesParsed 1 source fileCompiled 1 moduleBuild failed: see the errors above.

modifiedDiagnostic labels and wording

text
Before
After
ERROR:Could not read folder: "nosuch". Specified in dependency: dep, located "<path>"...WARN:Package 'dep' has not defined any sources, …Duplicated package: a ./node_modules/a (chosen) vs … in ./node_modules/b\e[2K\r No implementation file found for interface file (skipping): src/B.resiError in pkg:DEBUG:Compiling file: Acompile dirty: ATRACE:Compiled 2 out of 2 in the universe… is not supported by ReScript 12's new build system.Could not start Rescript build: …warning: source folder "nosuch" of package dep (<path>) does not exist or is not a folderwarning: package 'dep' has not defined any sources, …warning: duplicated package: a ./node_modules/a (chosen) vs … in ./node_modules/bwarning: no implementation file found for interface file (skipping): src/B.resi(no header before parse errors)debug: Compiling file: Atrace: compile dirty: Atrace: compiled 2 of the 2 modules to check… is not supported by the ReScript build system.Could not start ReScript build: …

The other changes: - a redirected one-shot build ends with Finished compilation, like watch; - compiler errors and warnings are printed without colors when colors are off (redirected output, NO_COLOR); .compiler.log keeps them for editors; - config diagnostics are separated by one blank line; - rescript clean labels its second step "generated files" when no output is in-source, instead of an empty suffix list; - the cleanup step no longer counts the previous ASTs, which only the Cleaned N/M line printed.

Review

  • Why are config diagnostics still printed after the progress lines? Moving them before would restructure the report for little gain; only their spacing changes.