Unnamed repository; edit this file 'description' to name the repository.
Auto merge of #18193 - Wilfred:startup_error, r=lnicola
fix: Don't report a startup error when a discover command is configured Previously, r-a would show an error if both fetch_workspaces_queue and discover_workspace_queue were empty. We're in this state at startup, so users would see an error if they'd configured discover_workspace_config. Instead, allow the fetch_workspaces_queue to have zero items if discover_workspace_config is set. Whilst we're here, prefer "failed to fetch" over "failed to discover", so the error message better reflects what this function is doing.
bors 2024-09-27
parent af9a658 · parent f498184 · commit c88ea11
-rw-r--r--crates/rust-analyzer/src/reload.rs18
1 files changed, 6 insertions, 12 deletions
diff --git a/crates/rust-analyzer/src/reload.rs b/crates/rust-analyzer/src/reload.rs
index f6765715c5..7a1782e565 100644
--- a/crates/rust-analyzer/src/reload.rs
+++ b/crates/rust-analyzer/src/reload.rs
@@ -743,18 +743,12 @@ impl GlobalState {
return Ok(());
};
- if !self.discover_workspace_queue.op_in_progress() {
- if last_op_result.is_empty() {
- stdx::format_to!(buf, "rust-analyzer failed to discover workspace");
- } else {
- for ws in last_op_result {
- if let Err(err) = ws {
- stdx::format_to!(
- buf,
- "rust-analyzer failed to load workspace: {:#}\n",
- err
- );
- }
+ if last_op_result.is_empty() && self.config.discover_workspace_config().is_none() {
+ stdx::format_to!(buf, "rust-analyzer failed to fetch workspace");
+ } else {
+ for ws in last_op_result {
+ if let Err(err) = ws {
+ stdx::format_to!(buf, "rust-analyzer failed to load workspace: {:#}\n", err);
}
}
}