Skip to content

v0.1.0

Latest

Choose a tag to compare

@github-actions github-actions released this 04 Aug 18:33

First release.

Added

  • Worktree discovery. Parallel filesystem walk that prunes as soon as a
    directory is identified as a repository, merged with each repository's own
    git worktree list so worktrees living outside the scanned folder are found
    too. Orphaned worktrees — directories whose owning repository is gone, and
    which git itself can no longer see — are detected from the filesystem alone.
    Submodule checkouts are explicitly excluded, and the main checkout of a
    repository is never listed or removable.
  • Background enrichment. Disk size (allocated blocks), activity status and
    stash counts stream in from a cancellable worker pool after the interface is
    already on screen, so a multi-gigabyte tree never blocks the UI.
  • Activity detection distinguishing uncommitted changes from unpushed
    commits, with a fallback chain covering tracked branches, branches with no
    upstream, repositories with no remotes at all, and detached HEAD.
  • Tree interface with collapsible repository groups, per-worktree,
    per-repository and global selection, three sort modes, a help overlay, and a
    status bar showing totals and the selected reclaim.
  • Two-stage confirmation for removal. Any batch containing a worktree that
    is dirty, locked, or whose status could not be determined requires a second,
    deliberately different keypress (F) before anything is deleted.
  • Purge engine built on git worktree remove plus git worktree prune,
    with a recursive-delete fallback for orphans guarded against dangerous paths.
    Removals are verified against the filesystem rather than trusted from an exit
    code, and one failure never aborts the rest of a batch.
  • Cross-platform CI (Linux, macOS, Windows) on stable and the 1.88 MSRV, plus a
    tag-driven release pipeline that fails loudly rather than publishing a
    release with missing artifacts, and a crates.io publish job that verifies the
    version is actually live on the registry afterwards.

Fixed

  • Worktree removal on Windows. Paths were passed to git in
    canonicalize's verbatim form (\\?\C:\...), which git on Windows cannot
    parse — every removal would have failed with exit 128. See
    docs/notes-windows.md.