Skip to content

Generate changelog / Merge the generator into the builder (#3256) Generation and build always ran back to back, and BuildResult already derived from GenerateResult, so the split bought a second interface, a second base class and a second result type to keep in step. IBuilder now owns the whole stage: bool GetSupportsConcurrency(BuildPartition) ValueTask<BuildResult> BuildAsync(BuildPartition, ILogger, string, CancellationToken) GeneratorBase becomes BuilderBase, which generates and then builds... #615

Generate changelog / Merge the generator into the builder (#3256) Generation and build always ran back to back, and BuildResult already derived from GenerateResult, so the split bought a second interface, a second base class and a second result type to keep in step. IBuilder now owns the whole stage: bool GetSupportsConcurrency(BuildPartition) ValueTask<BuildResult> BuildAsync(BuildPartition, ILogger, string, CancellationToken) GeneratorBase becomes BuilderBase, which generates and then builds...

Generate changelog / Merge the generator into the builder (#3256) Generation and build always ran back to back, and BuildResult already derived from GenerateResult, so the split bought a second interface, a second base class and a second result type to keep in step. IBuilder now owns the whole stage: bool GetSupportsConcurrency(BuildPartition) ValueTask<BuildResult> BuildAsync(BuildPartition, ILogger, string, CancellationToken) GeneratorBase becomes BuilderBase, which generates and then builds... #615

Triggered via push September 17, 2026 01:35
Status Success
Total duration 1m 3s
Artifacts –
Fit to window
Zoom out
Zoom in