rust-lang / rust-lang/rust-analyzer
Diagnostics are very chatty
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 16.9k
- Forks
- 2.2k
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 72
Description
At https://github.com/rust-analyzer/rust-analyzer/blob/62a13cce9b6356af0dfeeeb6add3432f0e76a19f/crates/rust-analyzer/src/main_loop.rs#L462, we take the changed files, but don't clear the check diagnostics. If the diagnostics arrive one by one, we publish the first one, then the first two, then the first three and so on, which is quite unfortunate, but seems hard to avoid.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at crates/rust-analyzer/src/main_loop.rs around line 462, where changed files and check diagnostics are handled. Reproduce or trace incremental diagnostic arrivals to understand why successive publications accumulate earlier results. Done means check diagnostics are no longer published as an increasingly cumulative sequence when they arrive one by one.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100