summaryrefslogtreecommitdiff
path: root/cli/lsp/language_server.rs
diff options
context:
space:
mode:
authorNayeem Rahman <nayeemrmn99@gmail.com>2024-04-20 02:00:03 +0100
committerGitHub <noreply@github.com>2024-04-20 02:00:03 +0100
commit79e6751cf753612f99438ee2f158f54a1bf44815 (patch)
treefb7fea727208653bb3fb8d921bbb5a2ab8fc3a52 /cli/lsp/language_server.rs
parent472a37064071c66cd1311cdea2e78de8d2bc0641 (diff)
perf(lsp): only store parsed sources for open documents (#23454)
Diffstat (limited to 'cli/lsp/language_server.rs')
-rw-r--r--cli/lsp/language_server.rs9
1 files changed, 7 insertions, 2 deletions
diff --git a/cli/lsp/language_server.rs b/cli/lsp/language_server.rs
index d2e56774f..2529df6f7 100644
--- a/cli/lsp/language_server.rs
+++ b/cli/lsp/language_server.rs
@@ -404,8 +404,11 @@ impl LanguageServer {
let inner = self.0.read().await;
if let Some(testing_server) = &inner.maybe_testing_server {
match params.map(serde_json::from_value) {
- Some(Ok(params)) => testing_server
- .run_request(params, inner.config.workspace_settings().clone()),
+ Some(Ok(params)) => {
+ testing_server
+ .run_request(params, inner.config.workspace_settings().clone())
+ .await
+ }
Some(Err(err)) => Err(LspError::invalid_params(err.to_string())),
None => Err(LspError::invalid_params("Missing parameters")),
}
@@ -972,6 +975,8 @@ impl Inner {
self.config.update_capabilities(&params.capabilities);
}
+ self.documents.initialize(&self.config);
+
if let Err(e) = self
.ts_server
.start(self.config.internal_inspect().to_address())