diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2022-06-27 19:43:43 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-27 19:43:43 +0200 |
commit | 681bb49d0df0865a6564741544869a57aab56bb1 (patch) | |
tree | 142bae4a04e696d16490814f4c36116bc85adf5a /cli/tsc/99_main_compiler.js | |
parent | 440250c05498e3bfc8682e91476dc6e0e3a79429 (diff) |
fix(lsp): restart TS language service when caching dependencies (#14979)
Diffstat (limited to 'cli/tsc/99_main_compiler.js')
-rw-r--r-- | cli/tsc/99_main_compiler.js | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/cli/tsc/99_main_compiler.js b/cli/tsc/99_main_compiler.js index 7650ff95b..c2b50ba16 100644 --- a/cli/tsc/99_main_compiler.js +++ b/cli/tsc/99_main_compiler.js @@ -589,11 +589,16 @@ delete Object.prototype.__proto__; */ function serverRequest({ id, ...request }) { debug(`serverRequest()`, { id, ...request }); + // reset all memoized source files names scriptFileNamesCache = undefined; // evict all memoized source file versions scriptVersionCache.clear(); switch (request.method) { + case "restart": { + serverRestart(); + return respond(id, true); + } case "configure": { const { options, errors } = ts .convertCompilerOptionsFromJson(request.compilerOptions, ""); @@ -918,6 +923,11 @@ delete Object.prototype.__proto__; debug("serverInit()"); } + function serverRestart() { + languageService = ts.createLanguageService(host); + debug("serverRestart()"); + } + let hasStarted = false; /** Startup the runtime environment, setting various flags. |