Skip to content

chore(deps): update rust crate gix to 0.84#3393

Merged
renovate[bot] merged 1 commit into
mainfrom
renovate/gix-0.x
May 26, 2026
Merged

chore(deps): update rust crate gix to 0.84#3393
renovate[bot] merged 1 commit into
mainfrom
renovate/gix-0.x

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented May 26, 2026

This PR contains the following updates:

Package Type Update Change
gix workspace.dependencies minor 0.830.84

Release Notes

GitoxideLabs/gitoxide (gix)

v0.84.0: gix v0.84.0

Compare Source

New Features (BREAKING)
  • Allow checkouts of empty repositories
    Also make turn destination_must_be_empty into Option<bool>
New Features
  • Add SHA-256 support for object-format parsing.
Bug Fixes
  • Follow submodule gitdir files when opening and perform basic validation
    Modern submodules store a .git file in the worktree whose gitdir: value points
    at the repository to open. The previous resolver treated every non-directory
    .git path like an uninitialized submodule and fell back to .git/modules/,
    which can open the wrong repository after a submodule gitdir is relocated or
    renamed. That shows up as phantom submodule HEAD changes in gix status.

    Git baseline: Git setup.c::read_gitfile_gently() parses gitdir:
    files and resolves relative targets against the .git file location;
    submodule.c::submodule_to_gitdir() consults that gitfile before falling back to
    the name-derived .git/modules path.

    Update Submodule::git_dir_try_old_form() to validate the submodule name, then
    follow worktree .git files when present while preserving the old-form directory
    and uninitialized fallback behavior. Validate present gitdir file targets for
    direct state/open/status queries so broken submodule checkouts are reported
    if the gitlink doesn't point to a directory.
    For status ignore=all, still parse valid gitdir files to keep state accurate,
    but skip target validation and fall back without error if the gitdir file itself
    is malformed or unreadable. Derive State::is_old_form directly from whether
    the worktree .git path is a directory so a divergent modern gitlink is not
    misclassified as old form.

  • Repository::is_dirty() won't fail on unborn repositories

Commit Statistics
  • 37 commits contributed to the release over the course of 28 calendar days.
  • 28 days passed between releases.
  • 4 commits were understood as conventional.
  • 2 unique issues were worked on: #, #​2585
Commit Details
view details
  • #
    • Repository::is_dirty() won't fail on unborn repositories (1f82a9f)
  • #​2585
    • Follow submodule gitdir files when opening and perform basic validation (82c483a)
  • Uncategorized
    • Merge pull request #​2595 from cruessler/add-hex-to-id-sha1-only (87433ed)
    • Review (f962ed1)
    • Add hex_to_id_sha1_only, use in SHA-1 only tests (d80c534)
    • Merge pull request #​2508 from j-walther/feat/allow-empty-dir (9013c3f)
    • Review (8606b7a)
    • Allow checkouts of empty repositories (e75fbfa)
    • Merge pull request #​2578 from cruessler/run-gix-tests-with-sha-256 (2d4a6f2)
    • Review (31c2de3)
    • Return SHA-1 when there's no corresponding SHA-256 (b8510b2)
    • Feat! add object_hash to gix::create::Options (b123b4c)
    • Merge pull request #​2588 from GitoxideLabs/fix/gix-status-phantom-submodule-modifications-2585 (db925ec)
    • Merge pull request #​2589 from GitoxideLabs/fix-status-in-unborn-repo (ba7d9a4)
    • Address auto-review (5a37fbd)
    • Add another test to learn what is_dirty() does when there are modifications. (3406b1d)
    • Merge pull request #​2581 from GitoxideLabs/improvements (8af2691)
    • Add SHA-256 support for object-format parsing. (011316e)
    • Merge pull request #​2583 from tisonkun/patch-1 (a791ea3)
    • Improve comment in object/commit.rs (a8f7717)
    • Merge pull request #​2573 from cruessler/run-gix-traverse-tests-with-sha-256 (278d7ec)
    • Address auto-review (0ec3bb7)
    • Cleanup the justfile and automate feature tests (db7b97b)
    • Cleanup sha1 feature in gix to just set what's needed. (16a6fc4)
    • Merge pull request #​2575 from SarthakB11/fix/issue-2316 (4743361)
    • Review (1980190)
    • Document why each fixture archive is .gitignored (e3d5a04)
    • Merge pull request #​2568 from GitoxideLabs/dependabot/cargo/cargo-56d6b174d8 (ab2fee1)
    • Update crates to Rust 2024 edition (2cb17b2)
    • Raise MSRV for hash dependency updates (3675a8d)
    • Merge pull request #​2559 from GitoxideLabs/fix/symlink-prefix-reuse-worktree-escape-GHSA-f89h-2fjh-2r9q (3af9b4a)
    • Release gix-fs v0.21.1 (d3e4c17)
    • Address auto-review (1d9bae2)
    • Add clone reproducer for symlink prefix reuse checkout escape (c2ae6cd)
    • Merge pull request #​2543 from cruessler/run-gix-worktree-stream-tests-with-sha-256 (23af41a)
    • Adapt to changes in gix_object::Data (4309fa4)
    • Merge pull request #​2546 from GitoxideLabs/fix-2545 (adb8328)

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot enabled auto-merge (squash) May 26, 2026 04:16
@github-actions github-actions Bot added the type: chore Routine tasks like conversions, reorganization, and maintenance work. label May 26, 2026
@renovate renovate Bot merged commit a37fff9 into main May 26, 2026
10 checks passed
@renovate renovate Bot deleted the renovate/gix-0.x branch May 26, 2026 04:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: chore Routine tasks like conversions, reorganization, and maintenance work.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants