Skip to content

gitoxide

vgix-dir-v0.28.0 scope: gix-dir Feature

This release adds 2 notable features for engineering teams evaluating rollout.

Published 3d Version Control
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

blazingly-fast built-with-rust cli git version-control

Summary

AI summary

Broad release touches Commit Details, Commit Statistics, Bug Fixes, and https://www.conventionalcommits.org.

Full changelog

Bug Fixes

  • keep EmptyDirectory when collapsing trees of only empty dirs
    When a directory is collapsed during the worktree walk and every collapsed
    entry is itself an empty directory, the collapsed directory has no files to
    track. Previously the EmptyDirectory property was dropped on collapse, so
    such a tree was reported as Untracked -- which made gix status surface
    it (and, via a submodule, report the submodule as modified) even though Git
    considers a tree of only empty directories clean.

    Propagate EmptyDirectory to the collapsed directory in that case so callers
    that skip empty directories by default (like status) behave like Git.

    As Deletion mode has its own handling of empty directories; restrict the
    EmptyDirectory-on-collapse propagation to status-like walks
    (for_deletion.is_none()) so deletion behavior is unchanged.

    An explicitly requested ignored directory (e.g. gix status --ignored=collapsed <pathspec>)
    must remain observable even when it is empty; tagging its collapse as EmptyDirectory
    caused it to be filtered out when empty directories aren't emitted. Restrict the
    propagation to untracked collapses, which is the only case #2490 is about.

Commit Statistics

  • 10 commits contributed to the release.
  • 31 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #2490

Commit Details

view details
  • #2490
    • Keep EmptyDirectory when collapsing trees of only empty dirs (4b38ff1)
  • Uncategorized
    • Update changelogs prior to release (cb6ec7d)
    • Release gix-trace v0.1.21, gix-validate v0.11.3, gix-path v0.12.3, gix-utils v0.3.5, gix-config-value v0.19.0, gix-prompt v0.16.0, gix-sec v0.14.2, gix-url v0.37.0, gix-credentials v0.39.0, safety bump 18 crates (f0ec710)
    • Merge pull request #2722 from GitoxideLabs/reasons (c16b5a1)
    • Replace lint allowances with expectations (43ff87a)
    • Merge pull request #2714 from GitoxideLabs/fix-credentials-parsing (cf3053a)
    • Release gix-path v0.12.2, gix-error v0.2.5, gix-utils v0.3.4, gix-date v0.15.6, gix-url v0.36.2, gix-credentials v0.38.2 (27aec47)
    • Merge pull request #2673 from ameyypawar/fix/2490-empty-dir-collapse (c31dac2)
    • Review (596ab93)
    • Merge pull request #2646 from GitoxideLabs/report (1b1541e)

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track gitoxide

Get notified when new releases ship.

Sign up free

About gitoxide

An idiomatic, lean, fast & safe pure Rust implementation of Git

All releases →

Related context

Related tools

Earlier breaking changes

  • vgix-v0.84.0 Allow checkouts of empty repositories; `destination_must_be_empty` becomes `Option<bool>`
  • vgix-worktree-stream-v0.33.0 Changes API of `Stream::add_entry_from_path` to require `hash_kind` argument.
  • vgix-object-v0.61.0 Renames `Data::hash_kind` to `Data::object_hash` for consistency.

Beta — feedback welcome: [email protected]