chore(vscode): bound the TypeScript language server's memory (#3376)

Each VS Code window spawns a pair of tsservers over the whole monorepo, and
VS Code lets each one grow to a 3 GB heap by default. A few open windows can
therefore reserve more memory than the devbox has, which is what pushes it
into the OOM killer during test runs.

Cap the heap at 1.5 GB, comfortably above the ~1.2 GB a full load of this
monorepo actually needs, and drop experimental.enableProjectDiagnostics -
it holds diagnostics for the entire monorepo resident in every server, and
`yarn check-types` already covers project-wide errors in CI.
This commit is contained in:
enoch85
2026-08-01 13:13:15 +02:00
committed by GitHub
parent 49d24b49b4
commit 5fbc604a73
+9 -1
View File
@@ -12,7 +12,15 @@
},
"typescript.tsdk": "node_modules/typescript/lib",
"typescript.enablePromptUseWorkspaceTsdk": true,
"typescript.tsserver.experimental.enableProjectDiagnostics": true,
// Bound the language server. VS Code defaults each tsserver to a 3 GB heap
// and spawns a pair per window, so a few open windows can reserve more than
// the devbox has. 1.5 GB sits well above the ~1.2 GB a full load of this
// monorepo actually uses. Raise it if the server starts recycling.
//
// experimental.enableProjectDiagnostics is deliberately left unset: it keeps
// diagnostics for the whole monorepo resident in every server, and CI already
// covers project-wide errors via `yarn check-types`.
"typescript.tsserver.maxTsServerMemory": 1536,
"typescript.tsserver.experimental.useVsCodeWatcher": false,
"sqltools.connections": [
{