Skip to content

[wip] Shared resolutions in tsserver - #55968

Closed
Sheetal Nandi (sheetalkamat) wants to merge 26 commits into
mainfrom
sharedResolutions
Closed

[wip] Shared resolutions in tsserver #55968
Sheetal Nandi (sheetalkamat) wants to merge 26 commits into
mainfrom
sharedResolutions

Conversation

@sheetalkamat

Copy link
Copy Markdown
Member

Still working and creating PR to do testing as i push commits
Rework of #55067

@typescript-bot

Copy link
Copy Markdown
Contributor

Looks like you're introducing a change to the public API surface area. If this includes breaking changes, please document them on our wiki's API Breaking Changes page.

Also, please make sure Daniel Rosenwasser (@DanielRosenwasser) and Ryan Cavanaugh (@RyanCavanaugh) are aware of the changes, just as a heads up.

@sheetalkamat
Sheetal Nandi (sheetalkamat)force-pushed the sharedResolutions branch 2 times, most recently from ad81eea to a0f7406CompareOctober 25, 2023 19:01
@sheetalkamat
Sheetal Nandi (sheetalkamat)force-pushed the sharedResolutions branch 5 times, most recently from 6fe87d6 to d947de4CompareNovember 14, 2023 23:15
@sheetalkamat
Sheetal Nandi (sheetalkamat)force-pushed the sharedResolutions branch 2 times, most recently from bf1aaea to 73e6924CompareNovember 28, 2023 22:10
@sheetalkamat
Sheetal Nandi (sheetalkamat)force-pushed the sharedResolutions branch 5 times, most recently from e0b8659 to a4bce9eCompareJuly 3, 2024 19:42
@sheetalkamat
Sheetal Nandi (sheetalkamat)force-pushed the sharedResolutions branch 2 times, most recently from 1fb73da to 5762b06CompareJuly 8, 2024 17:53
@sheetalkamat
Sheetal Nandi (sheetalkamat)force-pushed the sharedResolutions branch 3 times, most recently from 9846495 to ce2e752CompareJuly 8, 2024 19:12
@sheetalkamat
Sheetal Nandi (sheetalkamat)force-pushed the sharedResolutions branch 3 times, most recently from dc00f09 to 77da0deCompareSeptember 26, 2024 18:49
First unresolved import gets the typing file into cache and sets it as root,
This results in scheduling new typing request with that unresolved import missing
The result will come back with typing file that is omitted, so root file will change but file will still be part of program so its not really removed from program
Also cache the inferred type acquition for inferred project
…ypings cache
This change finally makes all tests pass incremental tests for matching resolutions and program structuture
…eed to update last cached unresolved imports just because we have new program
…s in the program
This shows cache is holding onto resolutions that are no longer needed by program because either those modules arent present in file or is determined to be ambient resolution
…ns are reused/are resolved to ambient module names
…ay instead of defering external module reoslutions to watch all failed lookup locations
- All the package json watched are ref counted if watched
- Not watched package json locations are released
- First of this kind are when resolution from global cache fails, we dont watch those locations so not safe to have them cached
- If we are looking for a file and the file is not found, the package json locations looked up are not watched
// TODO: update incremental tests to actually verify the cache
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Author: TeamFor Uncommitted BugPR for untriaged, rejected, closed or missing bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@sheetalkamat@typescript-bot@yuhuung@jakebailey@RyanCavanaugh