Unnamed repository; edit this file 'description' to name the repository.
Merge pull request #22581 from tilladam/internal/startup-time-to-ready
provide startup time to ready log point and associated benchmark
| -rw-r--r-- | crates/rust-analyzer/src/main_loop.rs | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/crates/rust-analyzer/src/main_loop.rs b/crates/rust-analyzer/src/main_loop.rs index fef0d09731..b4727360e5 100644 --- a/crates/rust-analyzer/src/main_loop.rs +++ b/crates/rust-analyzer/src/main_loop.rs @@ -397,16 +397,19 @@ impl GlobalState { if cancelled { self.prime_caches_queue .request_op("restart after cancellation".to_owned(), ()); - } else if self.config.check_on_save(None) - && self.config.flycheck_workspace(None) - && !self.fetch_build_data_queue.op_requested() - { - // Priming finished; now run the deferred initial workspace flycheck - // (kept off the critical path so `cargo check` doesn't contend with - // cache priming for CPU). - self.flycheck - .iter() - .for_each(|flycheck| flycheck.restart_workspace(None)); + } else { + if self.config.check_on_save(None) + && self.config.flycheck_workspace(None) + && !self.fetch_build_data_queue.op_requested() + { + // Priming finished; now run the deferred initial workspace flycheck + // (kept off the critical path so `cargo check` doesn't contend with + // cache priming for CPU). + self.flycheck + .iter() + .for_each(|flycheck| flycheck.restart_workspace(None)); + } + tracing::info!("cache priming completed successfully"); } if let Some((message, fraction, title)) = last_report.take() { self.report_progress( |