Experiment with storing output timestamps in .tsbuildinfo #46677
Labels
Domain: --incremental
The issue relates to incremental compilation
Domain: Performance
Reports of unusually slow behavior
Domain: tsc -b
Issues related to build mode
Experimentation Needed
Someone needs to try this out to see what happens
Fix Available
A PR has been opened for this issue
In Discussion
Not yet reached consensus
Rescheduled
This issue was previously scheduled to an earlier milestone
Suggestion
An idea for TypeScript
Milestone
Occasionally, TypeScript makes the choice not to write output files in
--watch
mode if the output is the same as what's on disk; however, this causes complications with--incremental
. Under--incremental
,--watch
still needs to update each output file's timestamps so that a subsequent invocation oftsc --build
will avoid rebuilding certain files. See more here: 7b290fd.One concern with this is that it causes issues with downstream tooling - messing with output files that wouldn't have been rewritten causes issues for tools that want to be more incremental as well. See #46661.
Another concern is that this causes a bunch of file-touching anyway which can potentially be slow. It's not clear whether this is really a bottleneck, but there is some discussion in #45082 around issues here, and it may warrant some investigation.
We should investigate book-keeping with
.tsbuildinfo
to avoid manually touching timestamps every time.The text was updated successfully, but these errors were encountered: