-
Notifications
You must be signed in to change notification settings - Fork 12.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Supports incremental build in tsc --b --w mode #29161
Conversation
…ide detailed information on watch invokations
…ncremental builds
…on to set Program in state to undefined for storing.
This helps in storing the semantic diagnostics
… of incremental build This ensures that after `tsbuild` after incremental build of `tsbuild -w` doesnt result in unnecessary rebuilds
…oject reference with prepend since it cant tell changes in js/map files
…dling These will fail since its still TODO
…state This helps us revert to state where we pretend as if emit is not done (since we do not do emit if there are errors)
Ping @sandersn @rbuckton @weswigham @DanielRosenwasser Would like to get this in soon. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I looked over everything but I need to learn more about watch mode + tsbuild in person before signing off.
@sandersn comments? |
Just wondering, wouldn't it be even faster if the cache was also based on file size as first check before doing the actual hash? |
Some notes:
Two things can be done:
EmitAndSemanticDiagnosticsBuilderProgram
's existing assumption was not satisfied (that is changed files are already emitted before getting semantic diagnostics). So in such case, we store list of files to emit later so as to help with that case.Here are the perf numbers:
Local change::
Local change: