Skip to content

Display Git repository and worktree sizes - #5659

Merged
Marc-André Moreau (mamoreau-devolutions) merged 4 commits into
mainfrom
copilot/git-extension-size-info
Nov 2, 2026
Merged

Marc-André Moreau (mamoreau-devolutions) merged 4 commits into
mainfrom
copilot/git-extension-size-info

Conversation

@mamoreau-devolutions

@mamoreau-devolutions Marc-André Moreau (mamoreau-devolutions) commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor
  • I have read the contributing guidelines, and I agree with the Code of Conduct.
  • Have you checked that there aren't other open pull requests for the same changes?
  • Have you tested that the committed code can be executed without errors?
  • Have you confirmed that this issue is caused by UniGetUI itself, and not by the package manager or the package involved?
    If the same issue can be reproduced outside UniGetUI with the relevant package manager or with the package itself, please report it there first. UniGetUI should only be used to track issues that are specific to UniGetUI's behavior or integration.

Adds asynchronous clone and worktree size information to the Git Repositories extension. Measurements are bounded, cached, cancellable, and protected against stale results. Both lists have aligned Name, Status, Size, and Actions columns; the repository's Total size includes its worktrees. Clicking Name or Size sorts the corresponding list, with unmeasured entries last. Sort indicators have reserved space, and long details truncate with tooltips. Documentation, localization, and regression tests are included.

Validation:

  • dotnet test src\UniGetUI.Tests\UniGetUI.Tests.csproj --no-restore --nologo --verbosity quiet /m:1 /nodeReuse:false /p:Platform=x64 --filter "FullyQualifiedName~GitRepositoriesTests": passed (40 passed, 0 failed, 0 skipped).
  • dotnet format whitespace src --folder --verify-no-changes --verbosity minimal: passed.
  • dotnet format style src\UniGetUI.Windows.slnx --no-restore --verify-no-changes --verbosity minimal: failed on the existing IDE0060 unused-parameter warning in src\UniGetUI.PackageEngine.Tests\CargoManagedOperationRoutingTests.cs:155, which this change does not modify. The same check with --exclude src\UniGetUI.PackageEngine.Tests\CargoManagedOperationRoutingTests.cs passed.
  • dotnet publish src\UniGetUI.Avalonia\UniGetUI.Avalonia.csproj --configuration Release --framework net10.0-windows10.0.26100.0 --runtime win-x64 --self-contained true --no-restore --nologo --verbosity quiet /m:1 /nodeReuse:false /p:Platform=x64 /p:PublishProfile=Win-x64-NativeAot: passed.
  • dotnet publish src\UniGetUI.Avalonia\UniGetUI.Avalonia.csproj --configuration Release --framework net10.0-windows10.0.26100.0 --runtime win-arm64 --self-contained true --no-restore --nologo --verbosity quiet /m:1 /nodeReuse:false /p:Platform=arm64 /p:PublishProfile=Win-arm64-NativeAot: passed.
  • Both Windows publishes emitted existing trim/AOT warnings, with no new unique IL2xxx/IL3xxx warnings compared with the earlier full publishes. Linux and macOS NativeAOT profiles were not validated on this Windows host.
  • Manually checked the running Debug app at wide and 900-pixel widths, including both size sorts and retained selection.

Sizes are measured off the UI thread after the list and worktree status
checks, behind their own concurrency gate, deduplicated and cached for
the session, so no load, check or update waits on them.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@mamoreau-devolutions
Marc-André Moreau (mamoreau-devolutions) merged commit 01f1c92 into main Nov 2, 2026
7 checks passed
@mamoreau-devolutions
Marc-André Moreau (mamoreau-devolutions) deleted the copilot/git-extension-size-info branch November 2, 2026 18:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant