Lazy calculation of expensive file explaining diagnsotics and some caching to be used to share the diagnostic data #58398
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.
Probably fixes
cc: @jakebailey
As discussed offline few days ago the real issue is that
typescript-eslint
is passing in canonical file path of tsconfig and that generates lot of errors in program because offorceConsistentCasingInFileNames
being defaulting totrue
in later versions of typescript. I have typescript-eslint/typescript-eslint#9042 for tsconfig issue we discussed on wednesday but i dont know if there are any other eg source files or anything that are having these issues as i didnt get to look into code that deeplyHere are some perf numbers with the repro in #58011 (comment) where API is used with and without config file name lower casing. Special thanks to @reduckted to give us this repro so we can actually verify this.
When diagnostics are queried (runs
emitFilesAndReportErrors
) after creating watch program:Detailed Extended Diagnostics
When diagnostics are not queried which is what es-lint does as per @jakebailey
Detailed Extended Diagnostics