Add git blame error reporting with notification (#10408)

<img width="1035" alt="Screenshot 2024-04-11 at 13 13 44"
src="https://github.com/zed-industries/zed/assets/13402668/cd0e96a0-41c6-4757-8840-97d15a75c511">

Release Notes:

- Added a notification to show possible `git blame` errors if it fails to run.

Caveats:
- ~git blame now executes in foreground
executor  (required since the Fut is !Send)~

TODOs:
- After a failed toggle, the app thinks the blame
is shown. This means toggling again will do nothing
instead of retrying. (Caused by editor.show_git_blame
being set to true before the git blame is generated)
- ~(Maybe) Trim error?~ Done

---------

Co-authored-by: Thorsten Ball <mrnugget@gmail.com>
This commit is contained in:
Mehmet Efe Akça 2024-04-12 08:20:34 +03:00 committed by GitHub
parent 08786fa7bf
commit 29a50573a9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 67 additions and 10 deletions

View file

@ -7734,6 +7734,7 @@ impl Project {
let (repo, relative_path, content) = blame_params?;
let lock = repo.lock();
lock.blame(&relative_path, content)
.with_context(|| format!("Failed to blame {relative_path:?}"))
})
} else {
let project_id = self.remote_id();