Implement the rest of the worktree pulls (#32269)

Follow-up of https://github.com/zed-industries/zed/pull/19230

Implements the workspace diagnostics pulling, and replaces "pull
diagnostics every open editors' buffer" strategy with "pull changed
buffer's diagnostics" + "schedule workspace diagnostics pull" for the
rest of the diagnostics.

This means that if the server does not support the workspace diagnostics
and does not return more in linked files, only the currently edited
buffer has its diagnostics updated.

This is better than the existing implementation that causes a lot of
diagnostics pulls to be done instead, and we can add more heuristics on
top later for querying more diagnostics.

Release Notes:

- N/A
This commit is contained in:
Kirill Bulatov 2025-06-07 00:19:46 +03:00 committed by GitHub
parent 9e5f89dc26
commit 77ead25f8c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 429 additions and 85 deletions

View file

@ -806,4 +806,5 @@ message PulledDiagnostics {
message PullWorkspaceDiagnostics {
uint64 project_id = 1;
uint64 server_id = 2;
}