-
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
Lazy calculation of expensive file explaining diagnsotics and some caching to be used to share the diagnostic data #58398
Conversation
@typescript-bot pack this |
Hey @sheetalkamat, I've packed this into an installable tgz. You can install it for testing by referencing it in your
and then running There is also a playground for this build and an npm module you can use via |
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.
Behavior seems correct, but a few small comments.
adfa25e
to
78c42a7
Compare
78c42a7
to
4e58b5f
Compare
@sheetalkamat I am experiencing an error with these changes in my project when using
Unfortunately I am not exactly sure how to reproduce this issue outside of my codebase, but it seems there is some code path that calls Here is the call stack that hits
This is occurring in 5.5.2 |
In My hunch is that in order to reproduce this issue you'd need to request code fixes for a file that has both semantic diagnostics AND declaration diagnostics. The error doesn't occur if I set |
Please send the tsserver log so we can investigate |
Ok I have the repro .. will look into this |
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