Skip to content

Add noEmit to BuildOrchestrator overrideCompilerOptions - #64759

Open
Elecmonkey (elecmonkey) wants to merge 2 commits into
microsoft:mainfrom
elecmonkey:build-orchestrator-noemit
Open

Elecmonkey (elecmonkey) wants to merge 2 commits into
microsoft:mainfrom
elecmonkey:build-orchestrator-noemit

Conversation

@elecmonkey

@elecmonkey Elecmonkey (elecmonkey) commented Oct 13, 2026 •

Copy link
Copy Markdown

Follow-up to #64158: adds noEmit to OverrideCompilerOptions for createBuildOrchestrator.

This also fixes how createBuildOrchestrator sends its options. CreateBuildOrchestratorParams embedded core.BuildOptions and core.CompilerOptions with JSON name tags, so the server expected them nested under buildOptions and compilerOptions. gen-proto ignores tags on embedded fields and generated a flat extends BuildOptions, CompilerOptions type, so the client sent them flat and the server silently dropped every build option and compiler option override. The params now use named buildOptions/compilerOptions fields, and the client builds both objects explicitly instead of spreading the caller's options.

The existing test's declaration: false on composite projects now correctly errors (TS6304), so it uses declaration: true.

@typescript-automation typescript-automation Bot added the For Uncommitted Bug PR for untriaged, rejected, closed or missing bug label Oct 13, 2026
@elecmonkey

Copy link
Copy Markdown
Author

@microsoft-github-policy-service agree

@elecmonkey
Elecmonkey (elecmonkey) marked this pull request as ready for review October 13, 2026 03:11
Copilot AI balanced review requested due to automatic review settings October 13, 2026 03:11
@typescript-automation

Copy link
Copy Markdown
Contributor

This PR doesn't have any linked issues. Please open an issue that references this PR. From there we can discuss and prioritise.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Also fix CreateBuildOrchestratorParams so that build options and compiler option overrides reach the server. The embedded BuildOptions and CompilerOptions had json name tags, so the server expected them nested, but gen-proto ignores tags on embedded fields and generated a flat type, so the client sent them flat and they were silently dropped. Use named fields so the generated type is nested, and have the client build both objects explicitly.
Martyn Janes (obany) added a commit to 3sixtyglobal/framework that referenced this pull request Oct 23, 2026
Add a `tstransform` command and `tsTransform` method to nameof-transformer which
compile projects with the native TypeScript compiler, replacing the `nameof` calls
as source files are read through a virtual file system.

Switch all packages and apps from `tspc` to `tstransform`, move incremental build
settings into tsconfig, move vitest cache settings into vitest config, and remove
ts-patch.

Build orchestrator overrides are sent as both `compilerOptions` and
`overrideCompilerOptions` so they apply before and after
microsoft/TypeScript#64759 is released.
Martyn Janes (obany) added a commit to 3sixtyglobal/framework that referenced this pull request Oct 23, 2026
Add a `tstransform` command and `tsTransform` method to nameof-transformer which
compile projects with the native TypeScript compiler, replacing the `nameof` calls
as source files are read through a virtual file system.

Switch all packages and apps from `tspc` to `tstransform`, move incremental build
settings into tsconfig, move vitest cache settings into vitest config, and remove
ts-patch.

Build orchestrator overrides are sent as both `compilerOptions` and
`overrideCompilerOptions` so they apply before and after
microsoft/TypeScript#64759 is released.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

For Uncommitted Bug PR for untriaged, rejected, closed or missing bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants