zed/crates/project/src
Max Brunsfeld e4530471de
Make worktree UpdatedEntries events fully describe all changes (#2533)
This PR makes the worktree's change events more useful in a few ways:

* The changes are now described by a cheaply clone-able collection, so
that they can be used in background tasks. Right now, I'm using a simple
Arc slice.
* The `UpdatedEntries` event now captures not only changes due to FS
changes, but also newly-loaded paths that are discovered during the
initial scan.
* The `UpdatedGitRepositories` event now includes repositories whose
work-dir changed but git dir didn't change. A boolean flag is included,
to indicate whether the git content changed.
* The `UpdatedEntries` and `UpdatedGitRepositories` events are now
*used* to compute the worktree's `UpdateWorktree` messages, used to sync
changes to guests. This unifies two closely-related code paths, and
makes the host more efficient when collaborating, because the
`UpdateWorktree` message computation used to require walking the entire
`entries` tree on every FS change.
2023-05-26 15:55:14 -07:00
..
ignore.rs
lsp_command.rs
project.rs Make worktree UpdatedEntries events fully describe all changes (#2533) 2023-05-26 15:55:14 -07:00
project_settings.rs Remove concept of git diff refresh from Item trait 2023-05-25 14:29:28 -04:00
project_tests.rs Adjust diagnostic transformation test to not wait for two buffer notifications 2023-05-26 15:47:37 -07:00
search.rs
terminals.rs
worktree.rs Include repositories with workdir changes in worktree UpdatedGitRepsositories event 2023-05-26 15:47:37 -07:00