[heft-typescript@next] Add "useTranspilerWorker" option #4120
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Adds a new option in
typescript.json
,useTranspilerWorker
, that iftrue
, and the tsconfig hasisolatedModules: true
, will split transpilation into a worker thread and run it in parallel with the type checker.Details
If opted in and the tsconfig is compatible, will start a worker thread and hand it the list of changed source files and the emit options. Multi-emit then occurs only in the worker, since declaration files are only emitted for the primary module kind.
How it was tested
Local runs on projects in various configurations. Still needs more testing against large projects with
isolatedModules: true
to determine if the performance is significantly improved.Verified in both watch and non-watch mode.
Verified using project references.
Impacted documentation
Documentation for
typescript.json
.