Scratch: How much can we save by not tracking or enforcing search order?#47963
Closed
amcasey wants to merge 4 commits intomicrosoft:mainfrom
Closed
Scratch: How much can we save by not tracking or enforcing search order?#47963amcasey wants to merge 4 commits intomicrosoft:mainfrom
amcasey wants to merge 4 commits intomicrosoft:mainfrom
Conversation
I'm generally okay with the test change (seeing fewer results when a file is specified) both in principal, since not loading projects seems preferable when scoping to the active document, and in practice, since AFAIK only old version of VS Code pass a file with no project.
This change had two goals: 1. Make the code easier to understand, primarily by simplifying the callback structure and minimizing side-effects 2. Improve performance by reducing repeated work, both FAR searches of individual projects and default tsconfig searches Most of the baseline changes just reflect the de-duping of tsconfig searches, a few show fewer and occasionally different FAR invocations, and a couple show response changes. I'm quite confident that the new FAR calls are better and moderately confident that the new isDefinition values are better (not to mention moderately skeptical that anyone will ever hit a case where the difference matters).
At this point, `isDefinition` is wrong in ways that probably don't matter. The baselines show the different per-project FAR invocations and the product diff indicates the maximum simplification we can achieve (adding code to fix up `isDefinition` can only make it worse).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Only the last commit is interesting - the others are in #47938.
At this point,
isDefinitionis wrong in ways that probably don't matter. The baselines show the different per-project FAR invocations and the product diff indicates the maximum simplification we can achieve (addingcode to fix up
isDefinitioncan only make it worse).