mirror of
https://github.com/denoland/deno.git
synced 2024-11-23 15:16:54 -05:00
fix(lsp): don't error if completionItem/resolve request fails (#17250)
This commit is contained in:
parent
7177768e49
commit
a012d731ee
1 changed files with 23 additions and 20 deletions
|
@ -1959,13 +1959,10 @@ impl Inner {
|
||||||
if let Some(data) = &data.tsc {
|
if let Some(data) = &data.tsc {
|
||||||
let specifier = &data.specifier;
|
let specifier = &data.specifier;
|
||||||
let req = tsc::RequestMethod::GetCompletionDetails(data.into());
|
let req = tsc::RequestMethod::GetCompletionDetails(data.into());
|
||||||
let maybe_completion_info: Option<tsc::CompletionEntryDetails> =
|
let result: Result<Option<tsc::CompletionEntryDetails>, _> =
|
||||||
self.ts_server.request(self.snapshot(), req).await.map_err(
|
self.ts_server.request(self.snapshot(), req).await;
|
||||||
|err| {
|
match result {
|
||||||
error!("Unable to get completion info from TypeScript: {}", err);
|
Ok(maybe_completion_info) => {
|
||||||
LspError::internal_error()
|
|
||||||
},
|
|
||||||
)?;
|
|
||||||
if let Some(completion_info) = maybe_completion_info {
|
if let Some(completion_info) = maybe_completion_info {
|
||||||
completion_info
|
completion_info
|
||||||
.as_completion_item(¶ms, data, specifier, self)
|
.as_completion_item(¶ms, data, specifier, self)
|
||||||
|
@ -1982,6 +1979,12 @@ impl Inner {
|
||||||
);
|
);
|
||||||
params
|
params
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
Err(err) => {
|
||||||
|
error!("Unable to get completion info from TypeScript: {}", err);
|
||||||
|
return Ok(params);
|
||||||
|
}
|
||||||
|
}
|
||||||
} else if let Some(url) = data.documentation {
|
} else if let Some(url) = data.documentation {
|
||||||
CompletionItem {
|
CompletionItem {
|
||||||
documentation: self.module_registries.get_documentation(&url).await,
|
documentation: self.module_registries.get_documentation(&url).await,
|
||||||
|
|
Loading…
Reference in a new issue