Open
Description
Apologies if we're reporting this too early but we're excited to use the typescript-go
LSP at Canva when it's ready.
We have a TS project with 90k+ files within it. The initial load time for the project is very impressive at ~20s (vs 2.5 mins with TSv5):
Info 8 [09:49:07.603] Project '<omitted>/tsconfig.json' (KindConfigured)
Files (92699)
The problem we have is that navigating the code base causes the LSP to lock up for ~13s. According to the LSP logs it is dominated by getConfigFileNameForFile
(5s) and updateGraph
(7s).
Info 39 [09:52:20.374] getConfigFileNameForFile:: File: <omitted> ProjectRootPath: :: Result: <omitted>/tsconfig.json
Info 40 [09:52:25.344] Config: <omitted>/tsconfig.json : {
...
Info 41 [09:52:26.557] Starting updateGraph: Project: <omitted>/tsconfig.json
Info 42 [09:52:32.612] Finishing updateGraph: Project: <omitted>/tsconfig.json version: 5
Info 43 [09:52:32.612] Different program with same set of files
Info 44 [09:52:32.627] Project '<omitted>/tsconfig.json' (KindConfigured)
Files (92699)
I assume there's a caching layer that still needs to be ported to tsgo
that already exists TSv5.