Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move git status updates to a background thread #24307

Merged
merged 2 commits into from
Feb 5, 2025
Merged

Conversation

SomeoneToIgnore
Copy link
Contributor

@SomeoneToIgnore SomeoneToIgnore commented Feb 5, 2025

Part of #24099
Part of #23025

Git status checks & updates are still slow for such repos, but those are now not blocking FS entry population and rescans.

Release Notes:

  • Improved project panel's speed in large projects

@cla-bot cla-bot bot added the cla-signed The user has signed the Contributor License Agreement label Feb 5, 2025
Wait for the git status fetch to complete before propagating the new snapshot and status data.
@SomeoneToIgnore SomeoneToIgnore enabled auto-merge (squash) February 5, 2025 23:03
@SomeoneToIgnore SomeoneToIgnore merged commit 980ce5f into main Feb 5, 2025
12 checks passed
@SomeoneToIgnore SomeoneToIgnore deleted the kb/faster-git branch February 5, 2025 23:14
cole-miller added a commit that referenced this pull request Feb 7, 2025
cole-miller added a commit that referenced this pull request Feb 7, 2025
)

This reverts commit 980ce5f.

Release Notes:

- N/A

---------

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
SomeoneToIgnore added a commit that referenced this pull request Feb 7, 2025
…4415)

This reverts commit 5ffacb9.

# Conflicts:
#	crates/worktree/src/worktree.rs
SomeoneToIgnore added a commit that referenced this pull request Feb 8, 2025
…4415)

This reverts commit 5ffacb9.

# Conflicts:
#	crates/worktree/src/worktree.rs

# Conflicts:
#	crates/worktree/src/worktree.rs
SomeoneToIgnore added a commit that referenced this pull request Feb 10, 2025
…4415)

This reverts commit 5ffacb9.

# Conflicts:
#	crates/worktree/src/worktree.rs

# Conflicts:
#	crates/worktree/src/worktree.rs
SomeoneToIgnore added a commit that referenced this pull request Feb 11, 2025
…4415)

This reverts commit 5ffacb9.

# Conflicts:
#	crates/worktree/src/worktree.rs

# Conflicts:
#	crates/worktree/src/worktree.rs
SomeoneToIgnore added a commit that referenced this pull request Feb 11, 2025
…4415)

This reverts commit 5ffacb9.

# Conflicts:
#	crates/worktree/src/worktree.rs

# Conflicts:
#	crates/worktree/src/worktree.rs
SomeoneToIgnore added a commit that referenced this pull request Feb 12, 2025
…4415)

This reverts commit 5ffacb9.

# Conflicts:
#	crates/worktree/src/worktree.rs

# Conflicts:
#	crates/worktree/src/worktree.rs
SomeoneToIgnore added a commit that referenced this pull request Feb 12, 2025
…4415)

This reverts commit 5ffacb9.

# Conflicts:
#	crates/worktree/src/worktree.rs

# Conflicts:
#	crates/worktree/src/worktree.rs
SomeoneToIgnore added a commit that referenced this pull request Feb 12, 2025
…4415)

This reverts commit 5ffacb9.

# Conflicts:
#	crates/worktree/src/worktree.rs

# Conflicts:
#	crates/worktree/src/worktree.rs

# Conflicts:
#	crates/worktree/src/worktree.rs
SomeoneToIgnore added a commit that referenced this pull request Feb 14, 2025
Follow-up of #24307

Brings back the PR and fixes the issue with the git status not
propagated, if computed too slow.
Now, git repo update
* waits in the background for all `scan_dir` repo status updates and
triggers another status update send afterwards
* ensures that the update sent is reported correctly (`scanning = true`)
if either FS or status scan is running still
* during worktree's git statuses updates, bumps `status_scan_id` to
ensure the repo update is reported to all subscribers

Release Notes:

- Improved project panel's speed in large projects
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla-signed The user has signed the Contributor License Agreement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant