PackageTrack
Sign in Get early access

gix-ref

A crate to handle git references

0.67.0 50M downloads/mo #1221 most downloaded on crates.io GitoxideLabs/gitoxide

What this package is like to depend on

Last release today

22 Aug 2026

Ships on a steady schedule

a new release about every 4 weeks

Nearly every release is documented

notes for 56 of 58 stable releases

2 versions withdrawn

withdrawn after publishing

4 years old

60 releases · first in 2023

15 releases in the last 12 months

see the full history below

Release timeline

60 releases · Feb 2023 to Aug 2026
2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 60
  1. 0.67.0 22 Aug 2026

    Nothing published for this version

  2. 0.66.0 23 Jul 2026

    Nothing published for this version

  3. 0.65.0 22 Jun 2026
    Release notes

    Bug Fixes

    • <csr-id-5d702e36b7489bd2fdc3529688aca480c5f29ac0/> tolerate NUL suffixes in symbolic ref files Loose symbolic ref files can contain bytes after a NUL terminator. Git treats those bytes as invisible when reading the referent, so a HEAD file like 'ref: refs/heads/main\0...' still resolves to refs/heads/main.

      gitoxide read the entire line until CR/LF before validating the symbolic target, which made the embedded NUL fail refname validation.

      Match Git by stopping symbolic target parsing at the first NUL byte, while leaving direct object ref parsing unchanged.

      Git baseline: local Git checkout 7760f83b59, refs/files-backend.c parse_loose_ref_contents() uses C-string semantics for symbolic referents; 'git symbolic-ref HEAD' returns refs/heads/main for a HEAD containing 'ref: refs/heads/main\0codex-hidden-head-metadata: status-clean-demo'.

    • <csr-id-c3ee5991fe9cbe0d9b229f1cc0b1b05d55a30f1c/> skip name validation in packed-refs binary search to unlock performance

    • <csr-id-9f432ef509daf09dc1a5bb3cd8201bef81d881ed/> handle loose ref path-prefix collisions The GitButler branch creation flow reported that repo.try_find_reference("refs/heads/A/new") could fail with a low-level NotADirectory error when refs/heads/A already exists as a loose ref. That lookup is asking whether the longer ref exists; the path-prefix collision matters to creation/update code, but find should report absence for that candidate.

      Git reference: refs/refs-internal.h documents ENOTDIR as the case where a ref prefix is not a directory, alongside ENOENT for non-existing refs. For lookup, both mean the requested ref candidate was not found.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 10 commits contributed to the release over the course of 27 calendar days.
    • 27 days passed between releases.
    • 3 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.15.5, gix-hashtable v0.15.2, gix-object v0.62.0, gix-attributes v0.33.2, gix-filter v0.32.0, gix-revwalk v0.33.0, gix-traverse v0.59.0, gix-worktree-stream v0.34.0, gix-archive v0.34.0, gix-tempfile v23.0.2, gix-index v0.53.0, gix-worktree v0.54.0, gix-imara-diff v0.2.3, gix-diff v0.65.0, gix-blame v0.15.0, gix-ref v0.65.0, gix-config v0.58.0, gix-discover v0.53.0, gix-dir v0.27.0, gix-revision v0.47.0, gix-merge v0.18.0, gix-negotiate v0.33.0, gix-pack v0.72.0, gix-odb v0.82.0, gix-refspec v0.43.0, gix-transport v0.57.2, gix-protocol v0.63.0, gix-status v0.32.0, gix-submodule v0.32.0, gix-worktree-state v0.32.0, gix v0.85.0, gix-fsck v0.23.0, gitoxide-core v0.59.0, gitoxide v0.55.0, safety bump 28 crates (6428edc)
      • Merge pull request #2658 from GitoxideLabs/compliant-ref-parser (1514b0f)
      • Tolerate NUL suffixes in symbolic ref files (5d702e3)
      • Merge pull request #2604 from nikicat/skip-validation-in-binary-search (66f70f3)
      • Review (a8b885d)
      • Skip name validation in packed-refs binary search to unlock performance (c3ee599)
      • Merge pull request #2645 from GitoxideLabs/try-find-reference-path-prefix-collision (4f089fc)
      • Handle Windows ref path-prefix collisions in ref_contents (c9191ab)
      • Handle loose ref path-prefix collisions (9f432ef)
      • Merge pull request #2618 from GitoxideLabs/report (f7d4f33) </details>
    Open source →
  4. 0.64.0 26 May 2026
    Release notes

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 16 commits contributed to the release over the course of 28 calendar days.
    • 28 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-error v0.2.4, gix-date v0.15.4, gix-actor v0.41.1, gix-trace v0.1.20, gix-validate v0.11.2, gix-path v0.12.1, gix-utils v0.3.3, gix-features v0.48.1, gix-hash v0.25.1, gix-hashtable v0.15.1, gix-object v0.61.0, gix-glob v0.26.1, gix-quote v0.7.2, gix-attributes v0.33.1, gix-command v0.9.1, gix-packetline v0.21.4, gix-filter v0.31.0, gix-fs v0.21.2, gix-chunk v0.7.2, gix-commitgraph v0.37.1, gix-revwalk v0.32.0, gix-traverse v0.58.0, gix-worktree-stream v0.33.0, gix-archive v0.33.0, gix-bitmap v0.3.2, gix-tempfile v23.0.1, gix-lock v23.0.1, gix-index v0.52.0, gix-config-value v0.18.1, gix-pathspec v0.18.1, gix-ignore v0.21.1, gix-worktree v0.53.0, gix-imara-diff v0.2.2, gix-diff v0.64.0, gix-blame v0.14.0, gix-ref v0.64.0, gix-sec v0.14.1, gix-config v0.57.0, gix-prompt v0.15.1, gix-url v0.36.1, gix-credentials v0.38.1, gix-discover v0.52.0, gix-dir v0.26.0, gix-mailmap v0.33.1, gix-revision v0.46.0, gix-merge v0.17.0, gix-negotiate v0.32.0, gix-pack v0.71.0, gix-odb v0.81.0, gix-refspec v0.42.0, gix-shallow v0.12.1, gix-transport v0.57.1, gix-protocol v0.62.0, gix-status v0.31.0, gix-submodule v0.31.0, gix-worktree-state v0.31.0, gix v0.84.0, gix-fsck v0.22.0, gitoxide-core v0.58.0, gitoxide v0.54.0, safety bump 27 crates (10c58bb)
      • Merge pull request #2590 from GitoxideLabs/independent-testtools (575113d)
      • Adapt to changes in gix-testtools (ce9e6bd)
      • 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)
      • Remove rust_2018_idioms lint declarations (e10d5f6)
      • 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)
      • Merge pull request #2543 from cruessler/run-gix-worktree-stream-tests-with-sha-256 (23af41a)
      • Adapt to changes in gix_object::Data (4309fa4)
      • Adapt to changes in gix-testtoolsand rename hash_kind -> object_hash (d9648e8)
      • Merge pull request #2546 from GitoxideLabs/fix-2545 (adb8328) </details>
    Open source →
  5. 0.63.0 27 Apr 2026
    Release notes

    New Features

    • <csr-id-d5f9bf5a664cbb0d101aadd48abfa9354403295e/> add Category::is_remote_tracking_branch(). Mere convenience.

    Bug Fixes

    • <csr-id-1bf4099e3bb0c1fc81d8d139bd6531203a164104/> don't fail reflog creation if newlines are used in the configured user name

      Look at https://github.com/GitoxideLabs/gitoxide/issues/2491 and compare this with what Git at /Users/b yron/dev/github.com/git/git does. I think it will allow newlines and just trim whitespace. Once validat ed, create a test in gix-ref to reproduce the issue, then fix it.

    New Features (BREAKING)

    • <csr-id-731248f18ff5bc655143e9808fe717ac6d24edf6/> add sha-256 support to gix-ref. This predominantly restricts parsing so it won't allow any hash but the one that was passed.

    Bug Fixes (BREAKING)

    • <csr-id-d4439cd5b5aa82c126198aa57de6a9ebbc15d371/> Limit Commit and Tag parsing to a given gix_hash::Kind Doing so adds conformity with Git, but also simplifies the parser which now only parse hex-hashes of a single valid length.

    • <csr-id-91c854e7b9f41738d0fde825cd474b8c00c1a49b/> remove winnow and replace it with hand-implemented parsers everywhere. This will allow for simplified maintenance and editing (both human and machine) down the road, and enable additional performance optimisations.

      Parser compbinators to me ultimately were a failed experiment as I couldn't maintain them anyway, with it being too difficult for me to grasp and express everything in its very own kind of language, with a lot of different things to consider.

      Note that this also removes detailed errors from all parsers that previously used winnow, with the option to re-add those if there is demand.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 9 commits contributed to the release over the course of 2 calendar days.
    • 4 days passed between releases.
    • 5 commits were understood as conventional.
    • 1 unique issue was worked on: #2491

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #2491
      • Don't fail reflog creation if newlines are used in the configured user name (1bf4099)
    • Uncategorized
      • Release gix-error v0.2.3, gix-date v0.15.3, gix-actor v0.41.0, gix-path v0.12.0, gix-features v0.48.0, gix-hash v0.25.0, gix-hashtable v0.15.0, gix-object v0.60.0, gix-glob v0.26.0, gix-attributes v0.33.0, gix-command v0.9.0, gix-filter v0.30.0, gix-fs v0.21.0, gix-commitgraph v0.37.0, gix-revwalk v0.31.0, gix-traverse v0.57.0, gix-worktree-stream v0.32.0, gix-archive v0.32.0, gix-tempfile v23.0.0, gix-lock v23.0.0, gix-index v0.51.0, gix-config-value v0.18.0, gix-pathspec v0.18.0, gix-ignore v0.21.0, gix-worktree v0.52.0, gix-imara-diff v0.2.1, gix-diff v0.63.0, gix-blame v0.13.0, gix-ref v0.63.0, gix-sec v0.14.0, gix-config v0.56.0, gix-prompt v0.15.0, gix-url v0.36.0, gix-credentials v0.38.0, gix-discover v0.51.0, gix-dir v0.25.0, gix-mailmap v0.33.0, gix-revision v0.45.0, gix-merge v0.16.0, gix-negotiate v0.31.0, gix-pack v0.70.0, gix-odb v0.80.0, gix-refspec v0.41.0, gix-shallow v0.12.0, gix-transport v0.57.0, gix-protocol v0.61.0, gix-status v0.30.0, gix-submodule v0.30.0, gix-worktree-state v0.30.0, gix v0.83.0, gix-fsck v0.21.0, gitoxide-core v0.57.0, gitoxide v0.53.0, safety bump 48 crates (53f880c)
      • Add Category::is_remote_tracking_branch(). (d5f9bf5)
      • Address auto-review (87b2da8)
      • Add sha-256 support to gix-ref. (731248f)
      • Limit Commit and Tag parsing to a given gix_hash::Kind (d4439cd)
      • Remove winnow and replace it with hand-implemented parsers everywhere. (91c854e)
      • Merge pull request #2540 from GitoxideLabs/reporting (4d5ba23)
      • Merge pull request #2529 from GitoxideLabs/reflog-newline-handling (2c3a08e) </details>
    Open source →
  6. 0.62.0 24 Apr 2026
    Release notes

    Bug Fixes

    • <csr-id-5b229c6f560ff832ca1b2b72032e025e1ca235c3/> Restore Category::to_full_name() to be able to produce any full name. Previously it learned to reject certain invalid branch names, but this has to be done separately and led to some unpleasant changes in gix as well.
    • <csr-id-4b4fba211a8caa797c21a46a50d610ac871a346b/> reject the creation of refs/heads/HEAD just like Git in Category::to_full_name() See https://github.com/git/git/blob/cf2139f8e1680b076e115bc0b349e369b4b0ecc4/refs.c#L776-L778 for the source of this rule.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 15 commits contributed to the release over the course of 32 calendar days.
    • 33 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Update changelogs prior to release (f9fbcba)
      • Merge pull request #2530 from GitoxideLabs/advisories (63b8419)
      • Add fuzz tests for 10 more crates, and related fixes (0396152)
      • Merge pull request #2497 from cruessler/pass-hash-len-to-tree-ref-iter (7d50c30)
      • Adapt to changes in gix-object (6df1d55)
      • Merge pull request #2518 from GitoxideLabs/improvements (444a92b)
      • Make package.include patterns more specific so they don't match ignored files (c2c917f)
      • Merge pull request #2507 from GitoxideLabs/improvements (e51c40b)
      • Restore Category::to_full_name() to be able to produce any full name. (5b229c6)
      • Merge pull request #2505 from GitoxideLabs/improvements (420c5df)
      • Address auto-review (6a5a0ec)
      • Reject the creation of refs/heads/HEAD just like Git in Category::to_full_name() (4b4fba2)
      • Merge pull request #2499 from GitoxideLabs/dependabot/cargo/cargo-17cc682121 (44020e0)
      • Bump the cargo group with 26 updates (9d04035)
      • Merge pull request #2480 from GitoxideLabs/report (98bae84) </details>
    Open source →
  7. 0.61.0 22 Mar 2026
    Release notes

    New Features

    • <csr-id-383291689c659a2cc0bee7687f5a9b9f7a3659a4/> add sha1 and sha256 features to gix. This way one can control which hashes are compiled in exactly, while having reasonable defaults automatically.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 7 commits contributed to the release.
    • 28 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-error v0.2.1, gix-date v0.15.1, gix-path v0.11.2, gix-features v0.46.2, gix-hash v0.23.0, gix-hashtable v0.13.0, gix-object v0.58.0, gix-packetline v0.21.2, gix-filter v0.28.0, gix-fs v0.19.2, gix-commitgraph v0.35.0, gix-revwalk v0.29.0, gix-traverse v0.55.0, gix-worktree-stream v0.30.0, gix-archive v0.30.0, gix-tempfile v21.0.2, gix-lock v21.0.2, gix-index v0.49.0, gix-pathspec v0.16.1, gix-ignore v0.19.1, gix-worktree v0.50.0, gix-diff v0.61.0, gix-blame v0.11.0, gix-ref v0.61.0, gix-sec v0.13.2, gix-config v0.54.0, gix-prompt v0.14.1, gix-credentials v0.37.1, gix-discover v0.49.0, gix-dir v0.23.0, gix-revision v0.43.0, gix-merge v0.14.0, gix-negotiate v0.29.0, gix-pack v0.68.0, gix-odb v0.78.0, gix-refspec v0.39.0, gix-shallow v0.10.0, gix-transport v0.55.1, gix-protocol v0.59.0, gix-status v0.28.0, gix-submodule v0.28.0, gix-worktree-state v0.28.0, gix v0.81.0, gix-fsck v0.19.0, gitoxide-core v0.55.0, gitoxide v0.52.0, safety bump 31 crates (c389a2c)
      • Merge pull request #2454 from GitoxideLabs/dependabot/cargo/cargo-da044b9bb0 (6183fd0)
      • Bump the cargo group with 68 updates (6bdb331)
      • Merge pull request #2441 from cruessler/remove-sha-1-from-default-features (e8bf096)
      • Add sha1 and sha256 features to gix. (3832916)
      • Adapt to sha1 not being default feature of gix-hash (e71c703)
      • Merge pull request #2442 from GitoxideLabs/report (f7277f3) </details>
    Open source →
  8. 0.60.0 22 Feb 2026
    Release notes

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 4 commits contributed to the release over the course of 10 calendar days.
    • 12 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-error v0.2.0, gix-date v0.15.0, gix-actor v0.40.0, gix-object v0.57.0, gix-quote v0.7.0, gix-attributes v0.31.0, gix-command v0.8.0, gix-filter v0.27.0, gix-chunk v0.7.0, gix-commitgraph v0.34.0, gix-revwalk v0.28.0, gix-traverse v0.54.0, gix-worktree-stream v0.29.0, gix-archive v0.29.0, gix-bitmap v0.3.0, gix-index v0.48.0, gix-pathspec v0.16.0, gix-worktree v0.49.0, gix-diff v0.60.0, gix-blame v0.10.0, gix-ref v0.60.0, gix-config v0.53.0, gix-prompt v0.14.0, gix-url v0.35.2, gix-credentials v0.37.0, gix-discover v0.48.0, gix-dir v0.22.0, gix-mailmap v0.32.0, gix-revision v0.42.0, gix-merge v0.13.0, gix-negotiate v0.28.0, gix-pack v0.67.0, gix-odb v0.77.0, gix-refspec v0.38.0, gix-shallow v0.9.0, gix-transport v0.55.0, gix-protocol v0.58.0, gix-status v0.27.0, gix-submodule v0.27.0, gix-worktree-state v0.27.0, gix v0.80.0, gix-fsck v0.18.0, gitoxide-core v0.54.0, gitoxide v0.51.0, safety bump 42 crates (ecf90fc)
      • Merge pull request #2377 from cruessler/add-sha-256-to-gix-commitgraph (228caf7)
      • Use GIX_TEST_FIXTURE_HASH for gix-commitgraph and gix-pack. (d51b858)
      • Merge branch 'release' (9327b73) </details>
    Open source →
  9. 0.59.0 10 Feb 2026
    Release notes

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 6 commits contributed to the release over the course of 19 calendar days.
    • 19 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-error v0.1.0, gix-date v0.14.0, gix-actor v0.39.0, gix-trace v0.1.18, gix-path v0.11.1, gix-features v0.46.1, gix-hash v0.22.1, gix-object v0.56.0, gix-quote v0.6.2, gix-attributes v0.30.1, gix-command v0.7.1, gix-packetline v0.21.1, gix-filter v0.26.0, gix-fs v0.19.1, gix-chunk v0.6.0, gix-commitgraph v0.33.0, gix-revwalk v0.27.0, gix-traverse v0.53.0, gix-worktree-stream v0.28.0, gix-archive v0.28.0, gix-bitmap v0.2.16, gix-tempfile v21.0.1, gix-lock v21.0.1, gix-index v0.47.0, gix-config-value v0.17.1, gix-pathspec v0.15.1, gix-worktree v0.48.0, gix-diff v0.59.0, gix-blame v0.9.0, gix-ref v0.59.0, gix-sec v0.13.1, gix-config v0.52.0, gix-prompt v0.13.1, gix-url v0.35.1, gix-credentials v0.36.0, gix-discover v0.47.0, gix-dir v0.21.0, gix-mailmap v0.31.0, gix-revision v0.41.0, gix-merge v0.12.0, gix-negotiate v0.27.0, gix-pack v0.66.0, gix-odb v0.76.0, gix-refspec v0.37.0, gix-shallow v0.8.1, gix-transport v0.54.0, gix-protocol v0.57.0, gix-status v0.26.0, gix-submodule v0.26.0, gix-worktree-state v0.26.0, gix v0.79.0, safety bump 35 crates (d66ac10)
      • Merge pull request #2415 from GitoxideLabs/improvements (5c9e6ae)
      • Adapt to changes in gix-testtools (fb60c8a)
      • Merge pull request #2407 from GitoxideLabs/dependabot/cargo/cargo-fb4135702f (8bceefb)
      • Bump the cargo group with 59 updates (7ce3c55)
      • Merge pull request #2393 from GitoxideLabs/report (f7d0975) </details>
    Open source →
  10. 0.58.0 22 Jan 2026
    Release notes

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 14 commits contributed to the release over the course of 21 calendar days.
    • 22 days passed between releases.
    • 0 commits were understood as conventional.
    • 1 unique issue was worked on: #2363

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #2363
      • Regenerate all changelogs with a more recent CSR version (cbbdef5)
    • Uncategorized
      • Release gix-error v0.0.0, gix-date v0.13.0, gix-actor v0.38.0, gix-validate v0.11.0, gix-path v0.11.0, gix-features v0.46.0, gix-hash v0.22.0, gix-hashtable v0.12.0, gix-object v0.55.0, gix-glob v0.24.0, gix-attributes v0.30.0, gix-command v0.7.0, gix-packetline v0.21.0, gix-filter v0.25.0, gix-fs v0.19.0, gix-chunk v0.5.0, gix-commitgraph v0.32.0, gix-revwalk v0.26.0, gix-traverse v0.52.0, gix-worktree-stream v0.27.0, gix-archive v0.27.0, gix-tempfile v21.0.0, gix-lock v21.0.0, gix-index v0.46.0, gix-config-value v0.17.0, gix-pathspec v0.15.0, gix-ignore v0.19.0, gix-worktree v0.47.0, gix-diff v0.58.0, gix-blame v0.8.0, gix-ref v0.58.0, gix-sec v0.13.0, gix-config v0.51.0, gix-prompt v0.13.0, gix-url v0.35.0, gix-credentials v0.35.0, gix-discover v0.46.0, gix-dir v0.20.0, gix-mailmap v0.30.0, gix-revision v0.40.0, gix-merge v0.11.0, gix-negotiate v0.26.0, gix-pack v0.65.0, gix-odb v0.75.0, gix-refspec v0.36.0, gix-shallow v0.8.0, gix-transport v0.53.0, gix-protocol v0.56.0, gix-status v0.25.0, gix-submodule v0.25.0, gix-worktree-state v0.25.0, gix v0.78.0, gix-fsck v0.17.0, gitoxide-core v0.53.0, gitoxide v0.50.0, safety bump 50 crates (562e684)
      • Merge pull request #2390 from GitoxideLabs/gix-error (fa85ed3)
      • Make validate errors non-exhaustive and flatten them. (64fb9de)
      • Merge pull request #2389 from GitoxideLabs/gix-error (dfeefe2)
      • Adapt to changes in gix-ref (931c69b)
      • Merge pull request #2378 from GitoxideLabs/gix-error (6cff657)
      • Adapt to changes in gix-commitgraph (1f58905)
      • Merge pull request #2364 from GitoxideLabs/changelogs (0a333e5)
      • Merge pull request #2346 from GitoxideLabs/release (c663b3f)
      • Release gix-trace v0.1.17, gix-features v0.45.2, gix-command v0.6.5, gix-hash v0.21.2, gix-date v0.12.1, gix-actor v0.37.1, gix-object v0.54.1, gix-filter v0.24.1, gix-fs v0.18.2, gix-tempfile v20.0.1, gix-lock v20.0.1, gix-traverse v0.51.1, gix-index v0.45.1, gix-diff v0.57.1, gix-pack v0.64.1 (7be8f90)
      • Merge pull request #2341 from GitoxideLabs/dependabot/cargo/cargo-cf4a2135ae (d914d95)
      • Bump the cargo group across 1 directory with 51 updates (4edc5dd)
      • Merge pull request #2322 from GitoxideLabs/report (211b4fb) </details>
    Open source →
  11. 0.57.0 31 Dec 2025
    Release notes

    New Features

    • support cloning a single revision

      A full object ID passed through with_ref_name() produced an object-ID refspec
      mapping and panicked while clone assumed every mapping had a name. Branch and
      tag checkout also retained ordinary clone tracking semantics instead of offering
      a single-revision mode.

      Add PrepareFetch::with_revision() and gix clone --revision for full refs, HEAD,
      and full object IDs. Revision clones use a one source-only implicit refspec,
      detach HEAD to the fetched commit, create no ordinary refs, persist no fetch
      refspec, and disable tag following. Existing with_ref_name() and --ref behavior
      stays unchanged.

      This follows Git commit 337855629f59 (builtin/clone: teach git-clone(1) the
      --revision= option) and its t/t5621-clone-revision.sh behavior.

    Commit Statistics

    • 7 commits contributed to the release over the course of 30 calendar days.
    • 30 days passed between releases.
    • 1 commit was understood as conventional.
    • 1 unique issue was worked on: #1930

    Commit Details

    view details
    • #1930
      • Support cloning a single revision (b1174b6)
    • Uncategorized
      • Merge pull request #2910 from codeAnqiang-ma/fix/relative-date-month-rollover (566fea1)
      • Adapt to changes in gix-date (613ff86)
      • Merge pull request #2824 from GitoxideLabs/fetch-revision (7a34c17)
      • Merge pull request #2879 from GitoxideLabs/remove-jwalk (b6492d3)
      • Replace jwalk with dua-core (c49dc45)
      • Merge pull request #2812 from GitoxideLabs/report-july (ae8845a)
    Open source →
    Release notes

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 2 commits contributed to the release over the course of 9 calendar days.
    • 9 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.12.0, gix-actor v0.37.0, gix-features v0.45.1, gix-hash v0.21.1, gix-object v0.54.0, gix-filter v0.24.0, gix-fs v0.18.1, gix-revwalk v0.25.0, gix-traverse v0.51.0, gix-worktree-stream v0.26.0, gix-archive v0.26.0, gix-index v0.45.0, gix-worktree v0.46.0, gix-diff v0.57.0, gix-blame v0.7.0, gix-ref v0.57.0, gix-config v0.50.0, gix-credentials v0.34.0, gix-discover v0.45.0, gix-dir v0.19.0, gix-mailmap v0.29.0, gix-revision v0.39.0, gix-merge v0.10.0, gix-negotiate v0.25.0, gix-pack v0.64.0, gix-odb v0.74.0, gix-refspec v0.35.0, gix-transport v0.52.0, gix-protocol v0.55.0, gix-status v0.24.0, gix-submodule v0.24.0, gix-worktree-state v0.24.0, gix v0.77.0, gix-fsck v0.16.0, gitoxide-core v0.52.0, gitoxide v0.49.0, safety bump 32 crates (115e208)
      • Merge pull request #2299 from GitoxideLabs/report (d6c5b9d) </details>
    Open source →
    Release notes

    v0.57.0

    Compare

    Choose a tag to compare

    Open source →
  12. 0.56.0 22 Dec 2025
    Release notes

    Commit Statistics

    • 11 commits contributed to the release over the course of 30 calendar days.
    • 30 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    view details
    • Uncategorized
      • Update manifests prior to release (ebe9095)
      • Merge pull request #2905 from GitoxideLabs/various-improvements (f3bbfad)
      • Adapt to changes in gix-testtools (0cbe539)
      • Merge pull request #2901 from cruessler/switch-to-gix-odb-at-opts (2a4d996)
      • Introduce Store::at() where possible (17fea2a)
      • Merge pull request #2897 from cruessler/run-more-tests-with-sha-256 (59f2d61)
      • Review (98c29f6)
      • Use GIX_TEST_FIXTURE_HASH for more tests (bbea2c4)
      • Merge pull request #2867 from GitoxideLabs/fix-url-authority-parsing (cc3ee80)
      • Release gix-path v0.12.4, gix-command v0.9.2, gix-config-value v0.19.1, gix-url v0.37.1, gix-credentials v0.39.1, gix-transport v0.58.1 (ab4fcb0)
      • Merge pull request #2812 from GitoxideLabs/report-july (ae8845a)
    Open source →
    Release notes

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release.
    • 30 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.11.1, gix-actor v0.36.1, gix-trace v0.1.16, gix-features v0.45.0, gix-hash v0.21.0, gix-hashtable v0.11.0, gix-object v0.53.0, gix-glob v0.23.0, gix-attributes v0.29.0, gix-filter v0.23.0, gix-fs v0.18.0, gix-commitgraph v0.31.0, gix-revwalk v0.24.0, gix-traverse v0.50.0, gix-worktree-stream v0.25.0, gix-archive v0.25.0, gix-tempfile v20.0.0, gix-lock v20.0.0, gix-index v0.44.0, gix-config-value v0.16.0, gix-pathspec v0.14.0, gix-ignore v0.18.0, gix-worktree v0.45.0, gix-diff v0.56.0, gix-blame v0.6.0, gix-ref v0.56.0, gix-config v0.49.0, gix-prompt v0.12.0, gix-url v0.34.0, gix-credentials v0.33.0, gix-discover v0.44.0, gix-dir v0.18.0, gix-mailmap v0.28.1, gix-revision v0.38.0, gix-merge v0.9.0, gix-negotiate v0.24.0, gix-pack v0.63.0, gix-odb v0.73.0, gix-refspec v0.34.0, gix-shallow v0.7.0, gix-transport v0.51.0, gix-protocol v0.54.0, gix-status v0.23.0, gix-submodule v0.23.0, gix-worktree-state v0.23.0, gix v0.76.0, gix-fsck v0.15.0, gitoxide-core v0.51.0, gitoxide v0.48.0, safety bump 43 crates (21fecdf)
      • Merge pull request #2275 from GitoxideLabs/dependabot/cargo/cargo-92eaa62a2e (93dd630)
      • Bump the cargo group across 1 directory with 14 updates (703644c) </details>
    Open source →
    Release notes

    gix-worktree v0.56.0

    Compare

    Choose a tag to compare

    Open source →
  13. 0.55.0 22 Nov 2025
    Release notes

    New Features

    • <csr-id-d2cd2effb00bc15c80fc36870c943d4d2e236c41/> Category::to_full_name() can now be passed a full name without prefix duplication. This is for convenience, as it can then be passed a valid partial name.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 4 commits contributed to the release.
    • 30 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.11.0, gix-actor v0.36.0, gix-path v0.10.22, gix-object v0.52.0, gix-packetline v0.20.0, gix-filter v0.22.0, gix-revwalk v0.23.0, gix-traverse v0.49.0, gix-worktree-stream v0.24.0, gix-archive v0.24.0, gix-index v0.43.0, gix-worktree v0.44.0, gix-diff v0.55.0, gix-blame v0.5.0, gix-ref v0.55.0, gix-config v0.48.0, gix-url v0.33.2, gix-credentials v0.32.0, gix-discover v0.43.0, gix-dir v0.17.0, gix-mailmap v0.28.0, gix-revision v0.37.0, gix-merge v0.8.0, gix-negotiate v0.23.0, gix-pack v0.62.0, gix-odb v0.72.0, gix-refspec v0.33.0, gix-transport v0.50.0, gix-protocol v0.53.0, gix-status v0.22.0, gix-submodule v0.22.0, gix-worktree-state v0.22.0, gix v0.75.0, gix-fsck v0.14.0, gitoxide-core v0.50.0, gitoxide v0.47.0, safety bump 32 crates (82ff92f)
      • Merge pull request #2229 from GitoxideLabs/copilot/fix-refspec-for-shallow-clone (bc62b1e)
      • Category::to_full_name() can now be passed a full name without prefix duplication. (d2cd2ef)
      • Merge pull request #2230 from yuki0iq/doc_auto_cfg (fbf9c39) </details>
    Open source →
  14. 0.54.1 23 Oct 2025
    Release notes

    <csr-id-6f469a6fea59c88e6c69a5f94b0bc8a5977cb75b/>

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release over the course of 1 calendar day.
    • 1 day passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.10.7, gix-actor v0.35.6, gix-trace v0.1.15, gix-features v0.44.1, gix-hash v0.20.1, gix-object v0.51.1, gix-glob v0.22.1, gix-attributes v0.28.1, gix-packetline-blocking v0.19.3, gix-commitgraph v0.30.1, gix-archive v0.23.1, gix-tempfile v19.0.1, gix-index v0.42.1, gix-config-value v0.15.3, gix-ignore v0.17.1, gix-worktree v0.43.1, gix-diff v0.54.1, gix-ref v0.54.1, gix-sec v0.12.2, gix-config v0.47.1, gix-url v0.33.1, gix-credentials v0.31.1, gix-mailmap v0.27.4, gix-revision v0.36.1, gix-pack v0.61.1, gix-odb v0.71.1, gix-packetline v0.19.3, gix-transport v0.49.1, gix-protocol v0.52.1, gix-status v0.21.1, gix v0.74.1 (bdcce5f)
      • Remove doc_auto_cfg feature to fix docs.rs documentation. (6f469a6)
      • Merge pull request #2224 from GitoxideLabs/report (3313233) </details>
    Open source →
  15. 0.54.0 22 Oct 2025
    Release notes

    New Features

    • <csr-id-add4cf4c0d2ce0f331a619ffd31f709a3b9f0bff/> gix dirwalk as a way to run gix-dir directly This is mostly for testing walks specifically, without needing them as part of gix clean or gix status.
    • <csr-id-6ab327e54a71ca5e4d555bfedfffd81359d8b529/> add gix merge tree --message '' to allow creating commits This is useful for controlling cherry-picks precisely.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 7 commits contributed to the release over the course of 26 calendar days.
    • 28 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #2584 from GitoxideLabs/improvements (1322a36)
      • gix dirwalk as a way to run gix-dir directly (add4cf4)
      • Merge pull request #2568 from GitoxideLabs/dependabot/cargo/cargo-56d6b174d8 (ab2fee1)
      • Update crates to Rust 2024 edition (2cb17b2)
      • Remove rust_2018_idioms lint declarations (e10d5f6)
      • Merge pull request #2557 from GitoxideLabs/cherry-pick (0771cb2)
      • Add gix merge tree --message '' to allow creating commits (6ab327e) </details>
    Open source →
    Release notes

    New Features

    • <csr-id-03804965f5723de001349cf3fe7399ac4815c9ef/> replace Reference::peel_to_id_in_place_packed Also, update documentation where it was still referring to deprecated in_place methods to refer to the new methods instead.
    • <csr-id-e179f825f7f560cd424a004d9c5184dd93013824/> replace peel_to_x_in_place by peel_to_x

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 18 commits contributed to the release over the course of 70 calendar days.
    • 70 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.10.6, gix-utils v0.3.1, gix-actor v0.35.5, gix-trace v0.1.14, gix-validate v0.10.1, gix-path v0.10.21, gix-features v0.44.0, gix-hash v0.20.0, gix-hashtable v0.10.0, gix-object v0.51.0, gix-glob v0.22.0, gix-quote v0.6.1, gix-attributes v0.28.0, gix-command v0.6.3, gix-packetline-blocking v0.19.2, gix-filter v0.21.0, gix-fs v0.17.0, gix-chunk v0.4.12, gix-commitgraph v0.30.0, gix-revwalk v0.22.0, gix-traverse v0.48.0, gix-worktree-stream v0.23.0, gix-archive v0.23.0, gix-bitmap v0.2.15, gix-tempfile v19.0.0, gix-lock v19.0.0, gix-index v0.42.0, gix-config-value v0.15.2, gix-pathspec v0.13.0, gix-ignore v0.17.0, gix-worktree v0.43.0, gix-diff v0.54.0, gix-blame v0.4.0, gix-ref v0.54.0, gix-sec v0.12.1, gix-config v0.47.0, gix-prompt v0.11.2, gix-url v0.33.0, gix-credentials v0.31.0, gix-discover v0.42.0, gix-dir v0.16.0, gix-mailmap v0.27.3, gix-revision v0.36.0, gix-merge v0.7.0, gix-negotiate v0.22.0, gix-pack v0.61.0, gix-odb v0.71.0, gix-refspec v0.32.0, gix-shallow v0.6.0, gix-packetline v0.19.2, gix-transport v0.49.0, gix-protocol v0.52.0, gix-status v0.21.0, gix-submodule v0.21.0, gix-worktree-state v0.21.0, gix v0.74.0, gix-fsck v0.13.0, gitoxide-core v0.49.0, gitoxide v0.46.0, safety bump 42 crates (89fb308)
      • Merge pull request #2217 from GitoxideLabs/copilot/update-msrv-to-rust-1-82 (4da2927)
      • Fixup Copilot commits and thank clippy (b188a7d)
      • Update MSRV to 1.82 and replace once_cell with std equivalents (6cc8464)
      • Merge pull request #2202 from GitoxideLabs/dependabot/cargo/cargo-4a7155215a (9365cc3)
      • Bump the cargo group across 1 directory with 64 updates (838ff95)
      • Merge pull request #2196 from GitoxideLabs/copilot/fix-713956e8-cf8b-499a-99a8-92001948c9f8 (0a576b9)
      • Refactor (e670294)
      • Implement Display trait for reference name types (b813339)
      • Merge pull request #2174 from cruessler/deprecate-in-place-methods (442f800)
      • Replace Reference::peel_to_id_in_place_packed (0380496)
      • Merge pull request #2163 from cruessler/deprecate-in-place-methods (42f8db5)
      • Replace peel_to_x_in_place by peel_to_x (e179f82)
      • Merge pull request #2158 from GitoxideLabs/improvements (a78bf84)
      • Validate what happens if a rename is emulated, particularly in relation to directory creation. (e25ccbf)
      • Merge pull request #2114 from EliahKagan/test-ref-storage-newline (d8fbe1e)
      • Test that loose refs are written with a trailing newline (df91659)
      • Merge pull request #2113 from GitoxideLabs/release (dc7343c) </details>
    Open source →
  16. 0.53.1 13 Aug 2025
    Release notes

    This release adjusts writes to lose ref files so they will contain newlines after the hash for compliance with Git.

    Bug Fixes

    • <csr-id-ba563b0e39ebc3ce635f399accd8a4be5210f816/> extend lifetime of iterators Previously the iterators would return references with lifetimes that were shorter than the actual lifetimes of the gix::Reference themselves. This was dues to a footgun with '_ (eliding the lifetime).

      When a function returns an elided lifetime, this lifetime usually is the lifetime of the &self parameter, but sometimes it is the lifetime of the type itself (e.g. Iter<'_>).

      I made the lifetimes explicit to ensure we were using the correct ones.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 13 commits contributed to the release over the course of 28 calendar days.
    • 29 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-actor v0.35.4, gix-fs v0.16.1, gix-object v0.50.2, gix-ref v0.53.1 (79ba9d0)
      • Update changelogs prior to gix-ref release (5315180)
      • Merge pull request #2111 from handlerug/patch-ref-storage-newline (edcfdc2)
      • Persist object refs on disk with a trailing newline (6c0cc71)
      • Merge pull request #2105 from jalil-salame/fix-2103 (04a18f3)
      • Extend lifetime of iterators (ba563b0)
      • Merge pull request #2100 from GitoxideLabs/release (202bc6d)
      • Release gix-actor v0.35.3, gix-path v0.10.20, gix-features v0.43.1, gix-object v0.50.1 (d64f257)
      • Merge pull request #2090 from GitoxideLabs/dependabot/cargo/cargo-f147714000 (473fe52)
      • Bump the cargo group with 41 updates (428412c)
      • Merge pull request #2088 from GitoxideLabs/improvements (8892cb1)
      • Bump gix-ref rust version to 1.74 for std::io::Error::other support. (88dc1c2)
      • Merge pull request #2075 from GitoxideLabs/improvements (784c046) </details>
    Open source →
  17. 0.53.0 15 Jul 2025
    Release notes

    New Features

    • <csr-id-fdf5153d9fe5e7c059b5a9687b7041e16ba54683/> refs support pseudo refs
    • <csr-id-f8b87f1ffb871ca3ce8c6ef6538c64780bd1b452/> add Category::to_full_name() to easily generate full names from short ones.
    • <csr-id-c8a63ab4618d3a71176703a04ab69da02d850267/> add file::Store::is_empty()

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 19 commits contributed to the release over the course of 79 calendar days.
    • 80 days passed between releases.
    • 3 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.10.3, gix-actor v0.35.2, gix-trace v0.1.13, gix-path v0.10.19, gix-features v0.43.0, gix-hash v0.19.0, gix-hashtable v0.9.0, gix-object v0.50.0, gix-glob v0.21.0, gix-attributes v0.27.0, gix-command v0.6.2, gix-packetline-blocking v0.19.1, gix-filter v0.20.0, gix-fs v0.16.0, gix-commitgraph v0.29.0, gix-revwalk v0.21.0, gix-traverse v0.47.0, gix-worktree-stream v0.22.0, gix-archive v0.22.0, gix-tempfile v18.0.0, gix-lock v18.0.0, gix-index v0.41.0, gix-config-value v0.15.1, gix-pathspec v0.12.0, gix-ignore v0.16.0, gix-worktree v0.42.0, gix-diff v0.53.0, gix-blame v0.3.0, gix-ref v0.53.0, gix-sec v0.12.0, gix-config v0.46.0, gix-prompt v0.11.1, gix-url v0.32.0, gix-credentials v0.30.0, gix-discover v0.41.0, gix-dir v0.15.0, gix-mailmap v0.27.2, gix-revision v0.35.0, gix-merge v0.6.0, gix-negotiate v0.21.0, gix-pack v0.60.0, gix-odb v0.70.0, gix-refspec v0.31.0, gix-shallow v0.5.0, gix-packetline v0.19.1, gix-transport v0.48.0, gix-protocol v0.51.0, gix-status v0.20.0, gix-submodule v0.20.0, gix-worktree-state v0.20.0, gix v0.73.0, gix-fsck v0.12.0, gitoxide-core v0.48.0, gitoxide v0.45.0, safety bump 43 crates (5a919c4)
      • Update changelogs prior to release (65037b5)
      • Merge pull request #2061 from orthros/pseudo-refs (60c29a5)
      • Refactor (43f92b5)
      • Refs support pseudo refs (fdf5153)
      • Adapt to changes in gix_features::walkdir_sorted_new (a2741da)
      • Merge pull request #2041 from cruessler/add-blame-extraction (dd5f0a4)
      • Thanks clippy (554ce13)
      • Merge pull request #2036 from GitoxideLabs/improvements (249bf9a)
      • Add Category::to_full_name() to easily generate full names from short ones. (f8b87f1)
      • Merge pull request #2033 from GitoxideLabs/dependabot/cargo/cargo-b72232998d (f8d7c0a)
      • Bump the cargo group with 56 updates (151e3a5)
      • Merge pull request #2016 from GitoxideLabs/improvements (7ae3797)
      • Add file::Store::is_empty() (c8a63ab)
      • Merge pull request #2009 from GitoxideLabs/release-gix-index (c3f06ae)
      • Release gix-path v0.10.18, gix-date v0.10.2, gix-traverse v0.46.2, gix-index v0.40.1 (d2b4c44)
      • Merge pull request #1977 from GitoxideLabs/dependabot/cargo/cargo-811d7b929d (800738a)
      • Bump the cargo group with 12 updates (4408166)
      • Merge pull request #1971 from GitoxideLabs/new-release (8d4c4d1) </details>
    Open source →
  18. 0.52.1 26 Apr 2025
    Release notes

    New Features

    • <csr-id-ab2016f634d3138ec9312b541558bbb2da27f3c7/> add gix free trust to easily check the assigned trust level of any given path This is particularly useful on Windows, which makes it easy to probe existing paths with ownership that might be complex to reproduce otherwise.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 6 commits contributed to the release over the course of 27 calendar days.
    • 33 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #2510 from GitoxideLabs/folder-identity-on-windows (a96587c)
      • Add gix free trust to easily check the assigned trust level of any given path (ab2016f)
      • Merge pull request #2513 from GitoxideLabs/v2-diff (2a5db88)
      • Thanks clippy (e4f380e)
      • Merge pull request #2494 from GitoxideLabs/improvements (50fb46f)
      • Adapt to changes in gix-config. (344218a) </details>
    Open source →
    Release notes

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release.
    • 1 day passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.10.1, gix-utils v0.3.0, gix-actor v0.35.1, gix-validate v0.10.0, gix-path v0.10.17, gix-features v0.42.1, gix-hash v0.18.0, gix-hashtable v0.8.1, gix-object v0.49.1, gix-glob v0.20.0, gix-quote v0.6.0, gix-attributes v0.26.0, gix-command v0.6.0, gix-packetline-blocking v0.19.0, gix-filter v0.19.1, gix-fs v0.15.0, gix-commitgraph v0.28.0, gix-revwalk v0.20.1, gix-traverse v0.46.1, gix-worktree-stream v0.21.1, gix-archive v0.21.1, gix-tempfile v17.1.0, gix-lock v17.1.0, gix-index v0.40.0, gix-config-value v0.15.0, gix-pathspec v0.11.0, gix-ignore v0.15.0, gix-worktree v0.41.0, gix-diff v0.52.1, gix-blame v0.2.1, gix-ref v0.52.1, gix-sec v0.11.0, gix-config v0.45.1, gix-prompt v0.11.0, gix-url v0.31.0, gix-credentials v0.29.0, gix-discover v0.40.1, gix-dir v0.14.1, gix-mailmap v0.27.1, gix-revision v0.34.1, gix-merge v0.5.1, gix-negotiate v0.20.1, gix-pack v0.59.1, gix-odb v0.69.1, gix-refspec v0.30.1, gix-shallow v0.4.0, gix-packetline v0.19.0, gix-transport v0.47.0, gix-protocol v0.50.1, gix-status v0.19.1, gix-submodule v0.19.1, gix-worktree-state v0.19.0, gix v0.72.1, gix-fsck v0.11.1, gitoxide-core v0.47.1, gitoxide v0.44.0 (e104545)
      • Bump all prior pratch levels to majors (5f7f805)
      • Merge pull request #1969 from GitoxideLabs/new-release (631f07a) </details>
    Open source →
  19. 0.52.0 25 Apr 2025 withdrawn
    Release notes

    Bug Fixes

    • <csr-id-b07f907ba2e01849744c72df35dac57b624f2f85/> Adapt to changes in gix-actor Use the committer date and author date that are now backed by bytes and interpret these bytes into a gix_date::Time on demand.

    • <csr-id-38b63c2fc9d407b3c634d8b0c72d4d0c104aa5ad/> make fs::walkdir_sorted_new() sort entries by paths literally This follows up 7b1b5bf864e74706aefeb1213e8bdb0545d5464a. Since packed-refs appears to be sorted by full ref name, loose-refs should also be emitted in that order.

      The comparison function is copied from gix::diff::object::tree::EntryRef. Non-utf8 file names are simply mapped to "" on Windows. We could add some fallback, but callers can't handle such file names anyway.

    New Features (BREAKING)

    • <csr-id-108a8ca9cbc808499cc943208e2bca638362a743/> Use &RelativePath in *::prefixed() methods. That way there now is a type to capture requirements.

    Bug Fixes (BREAKING)

    • <csr-id-f5385595987e0be84fb56827682df013bf54e09c/> prefixed ref iteration now properly deals with slashes. Previously, refs/heads/foo/bar would be listed when running repo.references()?.prefixed("refs/heads/b"). The code identified that the last component was not a directory and started to match it as a filename prefix for all files in all recursive directories, effectively matching refs/heads/**/b*.

      This commit fixes that bug but also allows to use a trailing / in the prefix, allowing to filter for refs/heads/foo/ and not get refs/heads/foo-bar as a result.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 30 commits contributed to the release.
    • 21 days passed between releases.
    • 4 commits were understood as conventional.
    • 1 unique issue was worked on: #1928

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #1928
      • Make fs::walkdir_sorted_new() sort entries by paths literally (38b63c2)
      • Add minimal test for sorting issues of loose refs (c151b8d)
    • Uncategorized
      • Release gix-path v0.10.16, gix-features v0.42.0, gix-hash v0.17.1, gix-object v0.49.0, gix-glob v0.19.1, gix-quote v0.5.1, gix-attributes v0.25.1, gix-command v0.5.1, gix-packetline-blocking v0.18.4, gix-filter v0.19.0, gix-fs v0.14.1, gix-commitgraph v0.27.1, gix-revwalk v0.20.0, gix-traverse v0.46.0, gix-worktree-stream v0.21.0, gix-archive v0.21.0, gix-tempfile v17.0.1, gix-lock v17.0.1, gix-index v0.39.1, gix-config-value v0.14.13, gix-pathspec v0.10.1, gix-ignore v0.14.1, gix-worktree v0.40.1, gix-diff v0.52.0, gix-blame v0.2.0, gix-ref v0.52.0, gix-sec v0.10.13, gix-config v0.45.0, gix-prompt v0.10.1, gix-url v0.30.1, gix-credentials v0.28.1, gix-discover v0.40.0, gix-dir v0.14.0, gix-mailmap v0.27.0, gix-revision v0.34.0, gix-merge v0.5.0, gix-negotiate v0.20.0, gix-pack v0.59.0, gix-odb v0.69.0, gix-refspec v0.30.0, gix-shallow v0.3.1, gix-packetline v0.18.5, gix-transport v0.46.1, gix-protocol v0.50.0, gix-status v0.19.0, gix-submodule v0.19.0, gix-worktree-state v0.18.1, gix v0.72.0, gix-fsck v0.11.0, gitoxide-core v0.47.0, gitoxide v0.43.0 (cc5b696)
      • Adjusting changelogs prior to release of gix-path v0.10.16, gix-features v0.42.0, gix-hash v0.17.1, gix-object v0.49.0, gix-glob v0.19.1, gix-quote v0.5.1, gix-attributes v0.25.1, gix-command v0.5.1, gix-packetline-blocking v0.18.4, gix-filter v0.19.0, gix-fs v0.14.1, gix-commitgraph v0.27.1, gix-revwalk v0.20.0, gix-traverse v0.46.0, gix-worktree-stream v0.21.0, gix-archive v0.21.0, gix-tempfile v17.0.1, gix-lock v17.0.1, gix-index v0.39.1, gix-config-value v0.14.13, gix-pathspec v0.10.1, gix-ignore v0.14.1, gix-worktree v0.40.1, gix-diff v0.52.0, gix-blame v0.2.0, gix-ref v0.52.0, gix-sec v0.10.13, gix-config v0.45.0, gix-prompt v0.10.1, gix-url v0.30.1, gix-credentials v0.28.1, gix-discover v0.40.0, gix-dir v0.14.0, gix-mailmap v0.27.0, gix-revision v0.34.0, gix-merge v0.5.0, gix-negotiate v0.20.0, gix-pack v0.59.0, gix-odb v0.69.0, gix-refspec v0.30.0, gix-shallow v0.3.1, gix-packetline v0.18.5, gix-transport v0.46.1, gix-protocol v0.50.0, gix-status v0.19.0, gix-submodule v0.19.0, gix-worktree-state v0.18.1, gix v0.72.0, gix-fsck v0.11.0, gitoxide-core v0.47.0, gitoxide v0.43.0, safety bump 7 crates (49fa9f3)
      • Release gix-date v0.10.0, gix-utils v0.2.1, gix-actor v0.35.0, gix-validate v0.9.5, gix-path v0.10.15, gix-features v0.42.0, gix-hash v0.17.1, gix-object v0.49.0, gix-glob v0.19.1, gix-quote v0.5.1, gix-attributes v0.25.0, gix-command v0.5.1, gix-packetline-blocking v0.18.4, gix-filter v0.19.0, gix-fs v0.14.0, gix-commitgraph v0.27.1, gix-revwalk v0.20.0, gix-traverse v0.46.0, gix-worktree-stream v0.21.0, gix-archive v0.21.0, gix-tempfile v17.0.1, gix-lock v17.0.1, gix-index v0.39.0, gix-config-value v0.14.13, gix-pathspec v0.10.1, gix-ignore v0.14.1, gix-worktree v0.40.0, gix-diff v0.52.0, gix-blame v0.2.0, gix-ref v0.51.0, gix-sec v0.10.13, gix-config v0.45.0, gix-prompt v0.10.1, gix-url v0.30.1, gix-credentials v0.28.1, gix-discover v0.40.0, gix-dir v0.14.0, gix-mailmap v0.27.0, gix-revision v0.34.0, gix-merge v0.5.0, gix-negotiate v0.20.0, gix-pack v0.59.0, gix-odb v0.69.0, gix-refspec v0.30.0, gix-shallow v0.3.1, gix-packetline v0.18.5, gix-transport v0.46.0, gix-protocol v0.50.0, gix-status v0.19.0, gix-submodule v0.19.0, gix-worktree-state v0.18.0, gix v0.72.0, gix-fsck v0.11.0, gitoxide-core v0.46.0, gitoxide v0.43.0, safety bump 30 crates (db0b095)
      • Update changelogs prior to release (0bf84db)
      • Merge pull request #1935 from pierrechevalier83/fix_1923 (3b1bef7)
      • J fmt (c3c6504)
      • Adapt to changes in gix-date and gix-actor (afdf1a5)
      • Apply feedback from discussion (70097c0)
      • Adapt to changes in gix-actor (b07f907)
      • Merge pull request #1968 from GitoxideLabs/dependabot/cargo/cargo-bd18780e40 (46227e6)
      • Bump the cargo group with 40 updates (06bf1e1)
      • Merge pull request #1921 from cruessler/introduce-repository-path (fdc06b1)
      • Refactor (294902e)
      • Use &RelativePath in *::prefixed() methods. (108a8ca)
      • Merge pull request #1957 from EliahKagan/run-ci/versioning (5823b22)
      • Adapt Cargo.toml files in workspace to gix-features bump (6315536)
      • Merge pull request #1954 from GitoxideLabs/fix-recursive-list-refs-prefix (71275d1)
      • Prefixed ref iteration now properly deals with slashes. (f538559)
      • Fix ci failures (57c9014)
      • Merge pull request #1949 from GitoxideLabs/dependabot/cargo/cargo-6893e2988a (b5e9059)
      • Bump the cargo group with 21 updates (68e6b2e)
      • Use Into<Cow<>> (507d682)
      • Rename prefix test branches (94faf51)
      • Handle trailing slash in ref list prefix filtering (3ca6811)
      • Merge pull request #1933 from GitoxideLabs/release-gix-features (1612c73)
      • Release gix-features v0.41.1 (fc5faf2)
      • Merge pull request #1931 from yuja/push-klrqpplwxrkx (7502b4a)
      • Merge pull request #1919 from GitoxideLabs/release (420e730) </details>
    Open source →
  20. 0.51.0 04 Apr 2025
    Release notes

    <csr-id-d1b357ec53b9e2be2483ae130e25401be795f139/>

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 18 commits contributed to the release.
    • 76 days passed between releases.
    • 1 commit was understood as conventional.
    • 1 unique issue was worked on: #1850

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 2 times to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #1850
      • Reproduce the overlay-iterator issue causing double-refs. (a06c409)
    • Uncategorized
      • Release gix-date v0.9.4, gix-utils v0.2.0, gix-actor v0.34.0, gix-features v0.41.0, gix-hash v0.17.0, gix-hashtable v0.8.0, gix-path v0.10.15, gix-validate v0.9.4, gix-object v0.48.0, gix-glob v0.19.0, gix-quote v0.5.0, gix-attributes v0.25.0, gix-command v0.5.0, gix-packetline-blocking v0.18.3, gix-filter v0.18.0, gix-fs v0.14.0, gix-commitgraph v0.27.0, gix-revwalk v0.19.0, gix-traverse v0.45.0, gix-worktree-stream v0.20.0, gix-archive v0.20.0, gix-tempfile v17.0.0, gix-lock v17.0.0, gix-index v0.39.0, gix-config-value v0.14.12, gix-pathspec v0.10.0, gix-ignore v0.14.0, gix-worktree v0.40.0, gix-diff v0.51.0, gix-blame v0.1.0, gix-ref v0.51.0, gix-config v0.44.0, gix-prompt v0.10.0, gix-url v0.30.0, gix-credentials v0.28.0, gix-discover v0.39.0, gix-dir v0.13.0, gix-mailmap v0.26.0, gix-revision v0.33.0, gix-merge v0.4.0, gix-negotiate v0.19.0, gix-pack v0.58.0, gix-odb v0.68.0, gix-refspec v0.29.0, gix-shallow v0.3.0, gix-packetline v0.18.4, gix-transport v0.46.0, gix-protocol v0.49.0, gix-status v0.18.0, gix-submodule v0.18.0, gix-worktree-state v0.18.0, gix v0.71.0, gix-fsck v0.10.0, gitoxide-core v0.46.0, gitoxide v0.42.0, safety bump 48 crates (b41312b)
      • Update changelogs prior to release (38dff41)
      • Merge pull request #1851 from GitoxideLabs/fix-1850 (cd96b64)
      • Adjust expectations according to changed sort-order (56ba898)
      • Merge pull request #1907 from EliahKagan/run-ci/raw (7b17da6)
      • Drop trailing , just before ) on same line in function calls (66a5ae1)
      • Clarify write::Error::IllegalCharacter description (d1b357e)
      • Use raw literals for more strings with backslashes (01bd76d)
      • Merge pull request #1857 from GitoxideLabs/fixes (8776a3e)
      • Thanks clippy (9dcfd15)
      • Merge pull request #1854 from GitoxideLabs/montly-report (16a248b)
      • Thanks clippy (8e96ed3)
      • Merge pull request #1822 from epage/w7 (11ac79c)
      • Upgrade to Winnow 0.7 (fdc57e7)
      • Resolve Winnow deprecations (3cd3e2a)
      • Upgrade to Winnow 0.6.26 (783c4e6)
      • Merge pull request #1778 from GitoxideLabs/new-release (8df0db2) </details>
    Open source →
  21. 0.50.0 18 Jan 2025
    Release notes

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 4 commits contributed to the release over the course of 12 calendar days.
    • 22 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #2374 from GitoxideLabs/gix-error (25233ce)
      • Turn Exn::into_box() to Exn::into_inner(). (939b8fc)
      • Merge pull request #2352 from GitoxideLabs/gix-error (ae23762)
      • Adadpt exn to most pressing needs of gitoxide (abedade) </details>
    Open source →
    Release notes

    <csr-id-17835bccb066bbc47cc137e8ec5d9fe7d5665af0/>

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 8 commits contributed to the release over the course of 27 calendar days.
    • 27 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-utils v0.1.14, gix-actor v0.33.2, gix-hash v0.16.0, gix-trace v0.1.12, gix-features v0.40.0, gix-hashtable v0.7.0, gix-path v0.10.14, gix-validate v0.9.3, gix-object v0.47.0, gix-glob v0.18.0, gix-quote v0.4.15, gix-attributes v0.24.0, gix-command v0.4.1, gix-packetline-blocking v0.18.2, gix-filter v0.17.0, gix-fs v0.13.0, gix-chunk v0.4.11, gix-commitgraph v0.26.0, gix-revwalk v0.18.0, gix-traverse v0.44.0, gix-worktree-stream v0.19.0, gix-archive v0.19.0, gix-bitmap v0.2.14, gix-tempfile v16.0.0, gix-lock v16.0.0, gix-index v0.38.0, gix-config-value v0.14.11, gix-pathspec v0.9.0, gix-ignore v0.13.0, gix-worktree v0.39.0, gix-diff v0.50.0, gix-blame v0.0.0, gix-ref v0.50.0, gix-sec v0.10.11, gix-config v0.43.0, gix-prompt v0.9.1, gix-url v0.29.0, gix-credentials v0.27.0, gix-discover v0.38.0, gix-dir v0.12.0, gix-mailmap v0.25.2, gix-revision v0.32.0, gix-merge v0.3.0, gix-negotiate v0.18.0, gix-pack v0.57.0, gix-odb v0.67.0, gix-refspec v0.28.0, gix-shallow v0.2.0, gix-packetline v0.18.3, gix-transport v0.45.0, gix-protocol v0.48.0, gix-status v0.17.0, gix-submodule v0.17.0, gix-worktree-state v0.17.0, gix v0.70.0, gix-fsck v0.9.0, gitoxide-core v0.45.0, gitoxide v0.41.0, safety bump 42 crates (dea106a)
      • Don't specify version numbers in dev-dependencies (7570daa)
      • Update all changelogs prior to release (1f6390c)
      • Merge pull request #1762 from GitoxideLabs/fix-1759 (7ec21bb)
      • Bump rust-version to 1.70 (17835bc)
      • Merge pull request #1752 from GitoxideLabs/git-shell (1ca480a)
      • Thanks clippy (9193b05)
      • Merge pull request #1739 from GitoxideLabs/new-release (d22937f) </details>
    Open source →
  22. 0.49.1 22 Dec 2024
    Release notes

    Bug Fixes

    • <csr-id-6abee881024568416cdb2d8feac2c52d4c3af0ad/> Properly parse reflog messages with > in them. Previously these confused the signature parser, who gladly took the entire message as part of the email.
    • <csr-id-e95afc0d8ceb2b730d708c85d643531a40ab8ed1/> provide bigger line buffer to reflog iterator so long lines can be read. Otherwise, the revlog iteration may stop unexpectedly on long lines.
    • <csr-id-4885e537b37c2ba563202cc5db02f1855a4fe9b6/> assure reflog notes with characters that are forbidden in signature don't hurt signature parsing.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 10 commits contributed to the release over the course of 28 calendar days.
    • 28 days passed between releases.
    • 3 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.9.3, gix-object v0.46.1, gix-command v0.4.0, gix-filter v0.16.0, gix-fs v0.12.1, gix-traverse v0.43.1, gix-worktree-stream v0.18.0, gix-archive v0.18.0, gix-ref v0.49.1, gix-prompt v0.9.0, gix-url v0.28.2, gix-credentials v0.26.0, gix-diff v0.49.0, gix-dir v0.11.0, gix-revision v0.31.1, gix-merge v0.2.0, gix-pack v0.56.0, gix-odb v0.66.0, gix-shallow v0.1.0, gix-packetline v0.18.2, gix-transport v0.44.0, gix-protocol v0.47.0, gix-status v0.16.0, gix-worktree-state v0.16.0, gix v0.69.0, gitoxide-core v0.44.0, gitoxide v0.40.0, safety bump 16 crates (c1ba571)
      • Update changelogs prior to release (7ea8582)
      • Merge pull request #1732 from GitoxideLabs/reflog-parsing (8fd53bc)
      • Properly parse reflog messages with > in them. (6abee88)
      • Add failing test to show the issue (743b979)
      • Merge pull request #1645 from dvtkrlbs/refloglookup-date (cbdbb8a)
      • Provide bigger line buffer to reflog iterator so long lines can be read. (e95afc0)
      • Assure reflog notes with characters that are forbidden in signature don't hurt signature parsing. (4885e53)
      • Cleanup test suite files (2010668)
      • Merge pull request #1701 from GitoxideLabs/release (e8b3b41) </details>
    Open source →
  23. 0.49.0 24 Nov 2024
    Release notes

    Bug Fixes

    • <csr-id-1fbb9464d45237c6aa53b98e5a555b774099ad11/> make sure ordinary capitalized partial names can be found by partial name. For instance, previously, a ref named A could not be found even though refs/heads/A existed.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 10 commits contributed to the release.
    • 33 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-glob v0.17.1, gix-command v0.3.11, gix-filter v0.15.0, gix-chunk v0.4.10, gix-commitgraph v0.25.1, gix-revwalk v0.17.0, gix-traverse v0.43.0, gix-worktree-stream v0.17.0, gix-archive v0.17.0, gix-config-value v0.14.10, gix-lock v15.0.1, gix-ref v0.49.0, gix-sec v0.10.10, gix-config v0.42.0, gix-prompt v0.8.9, gix-url v0.28.1, gix-credentials v0.25.1, gix-ignore v0.12.1, gix-bitmap v0.2.13, gix-index v0.37.0, gix-worktree v0.38.0, gix-diff v0.48.0, gix-discover v0.37.0, gix-pathspec v0.8.1, gix-dir v0.10.0, gix-mailmap v0.25.1, gix-revision v0.31.0, gix-merge v0.1.0, gix-negotiate v0.17.0, gix-pack v0.55.0, gix-odb v0.65.0, gix-packetline v0.18.1, gix-transport v0.43.1, gix-protocol v0.46.1, gix-refspec v0.27.0, gix-status v0.15.0, gix-submodule v0.16.0, gix-worktree-state v0.15.0, gix v0.68.0, gix-fsck v0.8.0, gitoxide-core v0.43.0, gitoxide v0.39.0 (4000197)
      • Release gix-date v0.9.2, gix-actor v0.33.1, gix-hash v0.15.1, gix-features v0.39.1, gix-validate v0.9.2, gix-object v0.46.0, gix-path v0.10.13, gix-quote v0.4.14, gix-attributes v0.23.1, gix-packetline-blocking v0.18.1, gix-filter v0.15.0, gix-chunk v0.4.10, gix-commitgraph v0.25.1, gix-revwalk v0.17.0, gix-traverse v0.43.0, gix-worktree-stream v0.17.0, gix-archive v0.17.0, gix-config-value v0.14.10, gix-lock v15.0.1, gix-ref v0.49.0, gix-config v0.42.0, gix-prompt v0.8.9, gix-url v0.28.1, gix-credentials v0.25.1, gix-bitmap v0.2.13, gix-index v0.37.0, gix-worktree v0.38.0, gix-diff v0.48.0, gix-discover v0.37.0, gix-pathspec v0.8.1, gix-dir v0.10.0, gix-mailmap v0.25.1, gix-revision v0.31.0, gix-merge v0.1.0, gix-negotiate v0.17.0, gix-pack v0.55.0, gix-odb v0.65.0, gix-packetline v0.18.1, gix-transport v0.43.1, gix-protocol v0.46.1, gix-refspec v0.27.0, gix-status v0.15.0, gix-submodule v0.16.0, gix-worktree-state v0.15.0, gix v0.68.0, gix-fsck v0.8.0, gitoxide-core v0.43.0, gitoxide v0.39.0, safety bump 25 crates (8ce4912)
      • Prepare changelogs prior to release (bc9d994)
      • Merge pull request #1687 from EliahKagan/run-ci/32bit (aeaebec)
      • Use <= on 32-bit for some size assertions (fc13fc3)
      • Merge pull request #1662 from paolobarbolini/thiserror-v2 (7a40648)
      • Upgrade thiserror to v2.0.0 (0f0e4fe)
      • Merge pull request #1618 from GitoxideLabs/merge (3fb989b)
      • Make sure ordinary capitalized partial names can be found by partial name. (1fbb946)
      • Merge pull request #1642 from GitoxideLabs/new-release (db5c9cf) </details>
    Open source →
  24. 0.48.0 22 Oct 2024
    Release notes

    <csr-id-65f69f72a8a08b3b2462362ec10d1748be48019b/> <csr-id-64ff0a77062d35add1a2dd422bb61075647d1a36/>

    Bug Fixes

    • <csr-id-cdac4a9b04959b0fc71009b5c828cdcb10a38828/> remove workspace lints from Cargo manifests of fuzz-projects. They are not part of the parent workspace.

    Bug Fixes (BREAKING)

    • <csr-id-17573779688e755a786546d5e42ab533088cd726/> remove all workspace dependencies The problem is that with them, we don't notice anymore if the crate changes, because a dependency changes. That also means that older versions of the dependency may stay even though some other crates might pick up a newer version.

      Ultimately, this will lead to drift and subtle incompatibilities.

      We declare this breaking to enforce a proper re-release.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 22 commits contributed to the release over the course of 60 calendar days.
    • 61 days passed between releases.
    • 4 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.9.1, gix-utils v0.1.13, gix-actor v0.33.0, gix-hash v0.15.0, gix-trace v0.1.11, gix-features v0.39.0, gix-hashtable v0.6.0, gix-validate v0.9.1, gix-object v0.45.0, gix-path v0.10.12, gix-glob v0.17.0, gix-quote v0.4.13, gix-attributes v0.23.0, gix-command v0.3.10, gix-packetline-blocking v0.18.0, gix-filter v0.14.0, gix-fs v0.12.0, gix-chunk v0.4.9, gix-commitgraph v0.25.0, gix-revwalk v0.16.0, gix-traverse v0.42.0, gix-worktree-stream v0.16.0, gix-archive v0.16.0, gix-config-value v0.14.9, gix-tempfile v15.0.0, gix-lock v15.0.0, gix-ref v0.48.0, gix-sec v0.10.9, gix-config v0.41.0, gix-prompt v0.8.8, gix-url v0.28.0, gix-credentials v0.25.0, gix-ignore v0.12.0, gix-bitmap v0.2.12, gix-index v0.36.0, gix-worktree v0.37.0, gix-diff v0.47.0, gix-discover v0.36.0, gix-pathspec v0.8.0, gix-dir v0.9.0, gix-mailmap v0.25.0, gix-merge v0.0.0, gix-negotiate v0.16.0, gix-pack v0.54.0, gix-odb v0.64.0, gix-packetline v0.18.0, gix-transport v0.43.0, gix-protocol v0.46.0, gix-revision v0.30.0, gix-refspec v0.26.0, gix-status v0.14.0, gix-submodule v0.15.0, gix-worktree-state v0.14.0, gix v0.67.0, gix-fsck v0.7.0, gitoxide-core v0.42.0, gitoxide v0.38.0, safety bump 41 crates (3f7e8ee)
      • Merge pull request #1624 from EliahKagan/update-repo-url (795962b)
      • Fix some broken links to commit/blob URLs (65f69f7)
      • Update gitoxide repository URLs (64ff0a7)
      • Merge pull request #1612 from Byron/merge (37c1e4c)
      • Thanks clippy (af03832)
      • Merge pull request #1593 from Byron/fix-fuzz (72daa46)
      • Remove workspace lints from Cargo manifests of fuzz-projects. (cdac4a9)
      • Merge pull request #1589 from EliahKagan/maintenance (7c2af44)
      • Add missing executable bits (694ebad)
      • Merge pull request #1587 from jayvdb/typos (c2bdda4)
      • Fix typos (b12c7c9)
      • Merge pull request #1582 from Byron/gix-path-release (93e86f1)
      • Release gix-trace v0.1.10, gix-path v0.10.11 (012a754)
      • Merge pull request #1557 from Byron/merge-base (649f588)
      • Allow empty-docs (beba720)
      • Merge branch 'global-lints' (37ba461)
      • Workspace Clippy lint management (2e0ce50)
      • Merge pull request #1546 from nyurik/semilocons (f992fb7)
      • Add missing semicolons (ec69c88)
      • Merge branch 'fixes' (46cd1ae)
      • Remove all workspace dependencies (1757377) </details>
    Open source →
  25. 0.47.0 22 Aug 2024
    Release notes

    <csr-id-6f469a6fea59c88e6c69a5f94b0bc8a5977cb75b/>

    New Features

    • <csr-id-924cd62f7ef74f479114c80cee0db0ba5f522579/> allow credential fill with gix credential fill to run without a repo

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 5 commits contributed to the release.
    • 31 days passed between releases.
    • 2 commits were understood as conventional.
    • 1 unique issue was worked on: #2198

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #2198
      • Allow credential fill with gix credential fill to run without a repo (924cd62)
    • Uncategorized
      • Merge pull request #2254 from ralphmodales/credential-fill-fix (dba337d)
      • Merge pull request #2204 from cruessler/improve-blame-ranges (663b41e)
      • Merge pull request #2230 from yuki0iq/doc_auto_cfg (fbf9c39)
      • Remove doc_auto_cfg feature to fix docs.rs documentation. (6f469a6) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 2 commits contributed to the release.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-actor v0.32.0, gix-object v0.44.0, gix-filter v0.13.0, gix-revwalk v0.15.0, gix-traverse v0.41.0, gix-worktree-stream v0.15.0, gix-archive v0.15.0, gix-ref v0.47.0, gix-config v0.40.0, gix-index v0.35.0, gix-worktree v0.36.0, gix-diff v0.46.0, gix-discover v0.35.0, gix-dir v0.8.0, gix-mailmap v0.24.0, gix-negotiate v0.15.0, gix-pack v0.53.0, gix-odb v0.63.0, gix-revision v0.29.0, gix-refspec v0.25.0, gix-status v0.13.0, gix-submodule v0.14.0, gix-worktree-state v0.13.0, gix v0.66.0, gix-fsck v0.6.0, gitoxide-core v0.41.0, gitoxide v0.38.0, safety bump 26 crates (b3ff033)
      • Prepare changelog prior to (yet another) release (209b6de) </details>
    Open source →
  26. 0.46.0 22 Aug 2024
    Release notes

    New Features

    • <csr-id-aacc326a198e4c78dd546018eebaff192ff5223d/> add a gix commit sign prototype
    • <csr-id-58b5060958e0090773bb15ffb3679d99704b70a0/> add first debug version of gix branch list

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 14 commits contributed to the release over the course of 60 calendar days.
    • 99 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #2208 from cruessler/add-commit-signing (8699d0f)
      • Refactor (82f788e)
      • Add a gix commit sign prototype (aacc326)
      • Merge pull request #2217 from GitoxideLabs/copilot/update-msrv-to-rust-1-82 (4da2927)
      • Update MSRV to 1.82 and replace once_cell with std equivalents (6cc8464)
      • Adapt to change in gix-blame (a721e74)
      • Adapt to change in gix-blame (268dac4)
      • Merge pull request #2142 from cruessler/add-branch-list (525873f)
      • Fix copy-paste doc comment (04650a7)
      • Move --all to 'branch list' (6651548)
      • Refactor (e537611)
      • Add first debug version of gix branch list (58b5060)
      • Merge pull request #2106 from cruessler/add-open-with-environment-overrides (c149116)
      • Fail gix tag list when JSON is requested (fb2766b) </details>
    Open source →
    Release notes

    Bug Fixes

    • <csr-id-70d835b85ba22669bf9a30b209263181b35b9b40/> add serde support for varous reference name types.

    New Features (BREAKING)

    • <csr-id-16b5e7e4b34247de6e4ec70cb0fe3d77fac6abcb/> add ReferenceExt::follow_to_object_in_place(). The missing link that makes it possible to follow to the first object and then peel the object according to any preferred algorithm.

    Bug Fixes (BREAKING)

    • <csr-id-43d8096dcdd797fd015c177cefeb8ee1f0ae5881/> improve naming and change Target::Peeled to Target::Object. This also renames TargetRef::Peeled to TargetRef::Object to make clear that it's not necessarily the peeled object that is contained.

      Previously these terms were confusing due to the incorrect usage of the word peeled.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 15 commits contributed to the release over the course of 24 calendar days.
    • 30 days passed between releases.
    • 3 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-attributes v0.22.5, gix-filter v0.12.0, gix-fs v0.11.3, gix-revwalk v0.14.0, gix-traverse v0.40.0, gix-worktree-stream v0.14.0, gix-archive v0.14.0, gix-config-value v0.14.8, gix-tempfile v14.0.2, gix-ref v0.46.0, gix-sec v0.10.8, gix-config v0.39.0, gix-prompt v0.8.7, gix-url v0.27.5, gix-credentials v0.24.5, gix-ignore v0.11.4, gix-index v0.34.0, gix-worktree v0.35.0, gix-diff v0.45.0, gix-discover v0.34.0, gix-pathspec v0.7.7, gix-dir v0.7.0, gix-mailmap v0.23.6, gix-negotiate v0.14.0, gix-pack v0.52.0, gix-odb v0.62.0, gix-packetline v0.17.6, gix-transport v0.42.3, gix-protocol v0.45.3, gix-revision v0.28.0, gix-refspec v0.24.0, gix-status v0.12.0, gix-submodule v0.13.0, gix-worktree-state v0.12.0, gix v0.65.0, gix-fsck v0.5.0, gitoxide-core v0.40.0, gitoxide v0.38.0 (f2b522d)
      • Release gix-glob v0.16.5, gix-filter v0.12.0, gix-fs v0.11.3, gix-revwalk v0.14.0, gix-traverse v0.40.0, gix-worktree-stream v0.14.0, gix-archive v0.14.0, gix-config-value v0.14.8, gix-tempfile v14.0.2, gix-ref v0.46.0, gix-sec v0.10.8, gix-config v0.39.0, gix-prompt v0.8.7, gix-url v0.27.5, gix-credentials v0.24.5, gix-ignore v0.11.4, gix-index v0.34.0, gix-worktree v0.35.0, gix-diff v0.45.0, gix-discover v0.34.0, gix-pathspec v0.7.7, gix-dir v0.7.0, gix-mailmap v0.23.6, gix-negotiate v0.14.0, gix-pack v0.52.0, gix-odb v0.62.0, gix-packetline v0.17.6, gix-transport v0.42.3, gix-protocol v0.45.3, gix-revision v0.28.0, gix-refspec v0.24.0, gix-status v0.12.0, gix-submodule v0.13.0, gix-worktree-state v0.12.0, gix v0.65.0, gix-fsck v0.5.0, gitoxide-core v0.40.0, gitoxide v0.38.0 (a65a17f)
      • Release gix-date v0.9.0, gix-actor v0.31.6, gix-validate v0.9.0, gix-object v0.43.0, gix-path v0.10.10, gix-attributes v0.22.4, gix-command v0.3.9, gix-packetline-blocking v0.17.5, gix-filter v0.12.0, gix-fs v0.11.3, gix-revwalk v0.14.0, gix-traverse v0.40.0, gix-worktree-stream v0.14.0, gix-archive v0.14.0, gix-ref v0.46.0, gix-config v0.39.0, gix-prompt v0.8.7, gix-url v0.27.5, gix-credentials v0.24.5, gix-ignore v0.11.4, gix-index v0.34.0, gix-worktree v0.35.0, gix-diff v0.45.0, gix-discover v0.34.0, gix-dir v0.7.0, gix-mailmap v0.23.6, gix-negotiate v0.14.0, gix-pack v0.52.0, gix-odb v0.62.0, gix-packetline v0.17.6, gix-transport v0.42.3, gix-protocol v0.45.3, gix-revision v0.28.0, gix-refspec v0.24.0, gix-status v0.12.0, gix-submodule v0.13.0, gix-worktree-state v0.12.0, gix v0.65.0, gix-fsck v0.5.0, gitoxide-core v0.40.0, gitoxide v0.38.0, safety bump 25 crates (d19af16)
      • Prepare changelogs prior to release (0f25841)
      • Merge branch 'improvements' (242fedc)
      • Add ReferenceExt::follow_to_object_in_place(). (16b5e7e)
      • Improve naming and change Target::Peeled to Target::Object. (43d8096)
      • Merge branch 'sanitization' (d51f330)
      • Adapt to changes in gix-validate (b9cf0f4)
      • Merge branch 'improvements' (7dff447)
      • Add serde support for varous reference name types. (70d835b)
      • Merge branch 'dependabot/github_actions/github-actions-c4bcf5a8e2' (2e00b5e)
      • Make winnow a workspace dependency (78a7e32)
      • Merge branch 'ag/jiff' (5871fb1)
      • Assure the next release is breaking (9fd1090) </details>
    Open source →
  27. 0.45.0 23 Jul 2024
    Release notes

    New Features

    • <csr-id-37d3bf24ac1a79302f3e97b97372e4ad381c45e2/> add first debug version of gix tag list

    • <csr-id-ab52a49a555ab25e6cf632cb0b080eab72958a7d/> gix revision list --long-hashes for faster iteration. The performance of the short-hash generation was improved as well.

    • <csr-id-c5bc49f2a02e9b28c2466ea4c7ae711d091ffc96/> support for commitgraph list from..to to exercise the new 'hide' capability.

    • <csr-id-1df1ebb34dd3e2101d8a112dda66f6bac5261ea7/> Enable precious file parsing in gix CLI by default, allow overrides. That's pretty neat as one can now set GIX_PARSE_PRECIOUS=0 in the environment to disable precious file parsing, good to see what difference it makes.

      It's also possible to do this wiht gix -c gitoxide.parsePrecious=0.

    • <csr-id-36a6ffeea7bbde7fb3689ddf2a107e09a50e602c/> add support for multiple blame ranges like gix blame -L <range> -L <other-range> ... Update the blame subcommand to handle multiple line ranges. This allows specifying multiple -L options similar to the usage of git.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 19 commits contributed to the release over the course of 78 calendar days.
    • 80 days passed between releases.
    • 5 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #2073 from cruessler/add-tag-list (c7af04d)
      • Refactor (750ae9b)
      • Add first debug version of gix tag list (37d3bf2)
      • Merge pull request #2062 from rickprice/minor_documentation_fixups (c2eb0c1)
      • Small documentation fixes (bfb1c34)
      • Merge pull request #2041 from cruessler/add-blame-extraction (dd5f0a4)
      • Merge pull request #2051 from GitoxideLabs/improvements (f933f80)
      • gix revision list --long-hashes for faster iteration. (ab52a49)
      • Adapt to changes in gix-blame (4afc51d)
      • Merge pull request #2022 from cruessler/add-rename-tracking-to-blame (76eddf8)
      • Refactor (3e5365c)
      • Merge pull request #2037 from GitoxideLabs/hide (92febae)
      • Support for commitgraph list from..to to exercise the new 'hide' capability. (c5bc49f)
      • Merge pull request #2019 from GitoxideLabs/precious-opt-in (5f9de52)
      • Enable precious file parsing in gix CLI by default, allow overrides. (1df1ebb)
      • Merge pull request #1973 from holodorum/feature/blame-range-support (de13b16)
      • Refactor (d4461e7)
      • Add support for multiple blame ranges like gix blame -L <range> -L <other-range> ... (36a6ffe)
      • Adapt to changes in gix-blame (8143d69) </details>
    Open source →
    Release notes

    <csr-id-ec1d6b44d7f65ded8ea34914350e723275121776/>

    Bug Fixes (BREAKING)

    • <csr-id-86e50ee8e235e9b6c3dc23d4ba8fe7098e545bc4/> remove unused and unusable PartialNameCow

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 24 commits contributed to the release over the course of 57 calendar days.
    • 57 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-actor v0.31.5, gix-filter v0.11.3, gix-fs v0.11.2, gix-commitgraph v0.24.3, gix-revwalk v0.13.2, gix-traverse v0.39.2, gix-worktree-stream v0.13.1, gix-archive v0.13.2, gix-config-value v0.14.7, gix-tempfile v14.0.1, gix-ref v0.45.0, gix-sec v0.10.7, gix-config v0.38.0, gix-prompt v0.8.6, gix-url v0.27.4, gix-credentials v0.24.3, gix-ignore v0.11.3, gix-index v0.33.1, gix-worktree v0.34.1, gix-diff v0.44.1, gix-discover v0.33.0, gix-pathspec v0.7.6, gix-dir v0.6.0, gix-mailmap v0.23.5, gix-negotiate v0.13.2, gix-pack v0.51.1, gix-odb v0.61.1, gix-transport v0.42.2, gix-protocol v0.45.2, gix-revision v0.27.2, gix-refspec v0.23.1, gix-status v0.11.0, gix-submodule v0.12.0, gix-worktree-state v0.11.1, gix v0.64.0, gix-fsck v0.4.1, gitoxide-core v0.39.0, gitoxide v0.37.0 (6232824)
      • Release gix-glob v0.16.4, gix-attributes v0.22.3, gix-command v0.3.8, gix-filter v0.11.3, gix-fs v0.11.2, gix-commitgraph v0.24.3, gix-revwalk v0.13.2, gix-traverse v0.39.2, gix-worktree-stream v0.13.1, gix-archive v0.13.2, gix-config-value v0.14.7, gix-tempfile v14.0.1, gix-ref v0.45.0, gix-sec v0.10.7, gix-config v0.38.0, gix-prompt v0.8.6, gix-url v0.27.4, gix-credentials v0.24.3, gix-ignore v0.11.3, gix-index v0.33.1, gix-worktree v0.34.1, gix-diff v0.44.1, gix-discover v0.33.0, gix-pathspec v0.7.6, gix-dir v0.6.0, gix-mailmap v0.23.5, gix-negotiate v0.13.2, gix-pack v0.51.1, gix-odb v0.61.1, gix-transport v0.42.2, gix-protocol v0.45.2, gix-revision v0.27.2, gix-refspec v0.23.1, gix-status v0.11.0, gix-submodule v0.12.0, gix-worktree-state v0.11.1, gix v0.64.0, gix-fsck v0.4.1, gitoxide-core v0.39.0, gitoxide v0.37.0 (a1b73a6)
      • Update manifests (by cargo-smart-release) (0470df3)
      • Prepare changelog prior to release (99c00cc)
      • Release gix-path v0.10.9 (15f1cf7)
      • Merge branch 'fix-1440' (f87322e)
      • Adapt to changes in gix-testtools (f5a9884)
      • Release gix-actor v0.31.4, gix-object v0.42.3 (bf3d82a)
      • Release gix-actor v0.31.3, gix-mailmap v0.23.4 (1e79c5c)
      • Merge pull request #1430 from klensy/deps (ab02aa9)
      • Gix-date is test only dep (ec1d6b4)
      • Release gix-path v0.10.8 (8d89b86)
      • Release gix-date v0.8.7, gix-mailmap v0.23.2 (c1d7c02)
      • Merge branch 'tar-only' (1dfa90d)
      • Remove binary files in favor of tar files (dcab79a)
      • Merge branch 'main' into config-key-take-2 (9fa1054)
      • Merge branch 'status' (2f9f0ac)
      • Remove unused and unusable PartialNameCow (86e50ee)
      • Re-add tests that were previously 'lost' due to an incorrect feature toggle (ca31249)
      • Merge pull request #1361 from EliahKagan/freebsd (9c65d98)
      • Regenerate archives for changed scripts (ea12fc2)
      • Make bash script shebangs more portable (68cbea8)
      • Release gix-fs v0.11.1, gix-glob v0.16.3 (2cefe77)
      • Merge pull request #1385 from Byron/fix-gix-ref (8da55a3) </details>
    Open source →
  28. 0.44.1 27 May 2024
    Release notes

    Bug Fixes

    • <csr-id-cd969f69d1b86030d4ea5c5a77100f36caffb8d8/> LineRef is now Copy and remove non-exhaustive After all, this struct refers to what's in a reflog line, which is stable.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 2 commits contributed to the release.
    • 5 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-ref v0.44.1 (2d0a352)
      • LineRef is now Copy and remove non-exhaustive (cd969f6) </details>
    Open source →
  29. 0.44.0 22 May 2024
    Release notes

    New Features

    • <csr-id-f2d8955eacc1a0ce8678f3e9026e696926bae654/> add file::Store::force_refresh_packed_buffer() to public API That way it's possible to explicitly refresh if the caller knows that some other operation might have invalidated the in-memory cache. The mtime based approach doesn't work reliably on all filesystems due to coarse granularity of time.

    Bug Fixes

    • <csr-id-e33efa23c2ed45b3c2826fe2c3c70707fcb9100d/> don't ignore packed ref deletion in non-default transaction mode Before, Change::Delete edits weren't propagated to packed refs if the mode was DeletionsAndNonSymbolicUpdates/RemoveLooseSourceReference.

    Bug Fixes (BREAKING)

    • <csr-id-9555efe8964d3de3c692f79cef390916e34daefb/> assure that special device names on Windows aren't allowed. Otherwise it's possible to read or write to devices when interacting with references of the 'right' name.

      This behaviour can be controlled with the new prohibit_windows_device_names flag, which is adjustable on the Store instance as field, and which now has to be passed during instantiation as part of the new store::init::Options struct.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 13 commits contributed to the release over the course of 30 calendar days.
    • 69 days passed between releases.
    • 3 commits were understood as conventional.
    • 1 unique issue was worked on: #1348

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #1348
      • Add file::Store::force_refresh_packed_buffer() to public API (f2d8955)
    • Uncategorized
      • Release gix-features v0.38.2, gix-actor v0.31.2, gix-validate v0.8.5, gix-object v0.42.2, gix-command v0.3.7, gix-filter v0.11.2, gix-fs v0.11.0, gix-revwalk v0.13.1, gix-traverse v0.39.1, gix-worktree-stream v0.13.0, gix-archive v0.13.0, gix-tempfile v14.0.0, gix-lock v14.0.0, gix-ref v0.44.0, gix-config v0.37.0, gix-prompt v0.8.5, gix-index v0.33.0, gix-worktree v0.34.0, gix-diff v0.44.0, gix-discover v0.32.0, gix-pathspec v0.7.5, gix-dir v0.5.0, gix-macros v0.1.5, gix-mailmap v0.23.1, gix-negotiate v0.13.1, gix-pack v0.51.0, gix-odb v0.61.0, gix-transport v0.42.1, gix-protocol v0.45.1, gix-revision v0.27.1, gix-status v0.10.0, gix-submodule v0.11.0, gix-worktree-state v0.11.0, gix v0.63.0, gitoxide-core v0.38.0, gitoxide v0.36.0, safety bump 19 crates (4f98e94)
      • Adjust changelogs prior to release (9511416)
      • Merge branch 'various-fixes' (d6cd449)
      • Fix-CI (6f55f2a)
      • Merge pull request from GHSA-7w47-3wg8-547c (79dce79)
      • Apply suggestions from code review (1242151)
      • Assure that special device names on Windows aren't allowed. (9555efe)
      • Release gix-date v0.8.6 (d3588ca)
      • Merge branch 'push-wwxrqxuzmolm' (048e43e)
      • Refactor - address fix suggested by cargo check (4faf10e)
      • Don't ignore packed ref deletion in non-default transaction mode (e33efa2)
      • Merge branch 'status' (68fd5b3) </details>
    Open source →
  30. 0.43.0 14 Mar 2024
    Release notes

    <csr-id-f952c101cc8686e685074e8604e0f332c06d6767/>

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 4 commits contributed to the release.
    • 21 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #1935 from pierrechevalier83/fix_1923 (3b1bef7)
      • J fmt (c3c6504)
      • Merge pull request #1937 from EliahKagan/document-commands (de2f97d)
      • Add missing command docs + small style fixups (f952c10) </details>
    Open source →
    Release notes

    Bug Fixes

    • <csr-id-88061a176b2f4b5a377a4cff513979ddb1e306a1/> assure memory maps are created with MAP_PRIVATE That way, the mmap process should work under more circumstances.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 6 commits contributed to the release over the course of 5 calendar days.
    • 18 days passed between releases.
    • 1 commit was understood as conventional.
    • 1 unique issue was worked on: #1312

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #1312
      • Assure memory maps are created with MAP_PRIVATE (88061a1)
    • Uncategorized
      • Release gix-date v0.8.5, gix-hash v0.14.2, gix-trace v0.1.8, gix-utils v0.1.11, gix-features v0.38.1, gix-actor v0.31.0, gix-validate v0.8.4, gix-object v0.42.0, gix-path v0.10.7, gix-glob v0.16.2, gix-quote v0.4.12, gix-attributes v0.22.2, gix-command v0.3.6, gix-filter v0.11.0, gix-fs v0.10.1, gix-chunk v0.4.8, gix-commitgraph v0.24.2, gix-hashtable v0.5.2, gix-revwalk v0.13.0, gix-traverse v0.38.0, gix-worktree-stream v0.11.0, gix-archive v0.11.0, gix-config-value v0.14.6, gix-tempfile v13.1.1, gix-lock v13.1.1, gix-ref v0.43.0, gix-sec v0.10.6, gix-config v0.36.0, gix-prompt v0.8.4, gix-url v0.27.2, gix-credentials v0.24.2, gix-ignore v0.11.2, gix-bitmap v0.2.11, gix-index v0.31.0, gix-worktree v0.32.0, gix-diff v0.42.0, gix-discover v0.31.0, gix-pathspec v0.7.1, gix-dir v0.2.0, gix-macros v0.1.4, gix-mailmap v0.23.0, gix-negotiate v0.13.0, gix-pack v0.49.0, gix-odb v0.59.0, gix-packetline v0.17.4, gix-transport v0.41.2, gix-protocol v0.44.2, gix-revision v0.27.0, gix-refspec v0.23.0, gix-status v0.7.0, gix-submodule v0.10.0, gix-worktree-state v0.9.0, gix v0.60.0, safety bump 26 crates (b050327)
      • Prepare changelogs prior to release (52c3bbd)
      • Merge branch 'status' (3e5c974)
      • Fix lints for nightly, and clippy (f8ce3d0)
      • Merge branch 'mmap-mode' (9e9b9fe) </details>
    Open source →
  31. 0.42.0 25 Feb 2024
    Release notes

    <csr-id-dd366a52d46078729a6e36468211b97c92c2921d/>

    New Features

    • <csr-id-dbb15328d7b26aaa51ceadcd5a8cb021155023b3/> add first 'debug' version of gix diff file

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 14 commits contributed to the release.
    • 76 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #1880 from cruessler/add-gix-diff-file (b10cc6f)
      • Apply suggestions from code review (1039ae9)
      • Use revspecs for revision and path (dd366a5)
      • Add first 'debug' version of gix diff file (dbb1532)
      • Merge pull request #1888 from cruessler/respect-diff-algorithm-in-blame (dce127e)
      • Adapt to changes in gix-blame (8a31d88)
      • Merge pull request #1859 from cruessler/add-failing-test-for-as-time (36a846f)
      • Merge pull request #1858 from cruessler/add-git-blame-since (7059609)
      • Add test for --since (330711d)
      • Adapt to changes in gix-blame (e7084d8)
      • Merge pull request #1861 from GitoxideLabs/revert-lazylock (6acca19)
      • Don't use LazyLock just yet. (147eb41)
      • Merge pull request #1854 from GitoxideLabs/montly-report (16a248b)
      • Thanks clippy (8e96ed3) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 12 commits contributed to the release over the course of 30 calendar days.
    • 36 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.8.4, gix-utils v0.1.10, gix-actor v0.30.1, gix-object v0.41.1, gix-path v0.10.6, gix-glob v0.16.1, gix-quote v0.4.11, gix-attributes v0.22.1, gix-command v0.3.5, gix-filter v0.10.0, gix-commitgraph v0.24.1, gix-worktree-stream v0.10.0, gix-archive v0.10.0, gix-config-value v0.14.5, gix-ref v0.42.0, gix-sec v0.10.5, gix-config v0.35.0, gix-prompt v0.8.3, gix-url v0.27.1, gix-credentials v0.24.1, gix-ignore v0.11.1, gix-index v0.30.0, gix-worktree v0.31.0, gix-diff v0.41.0, gix-discover v0.30.0, gix-pathspec v0.7.0, gix-dir v0.1.0, gix-pack v0.48.0, gix-odb v0.58.0, gix-transport v0.41.1, gix-protocol v0.44.1, gix-revision v0.26.1, gix-refspec v0.22.1, gix-status v0.6.0, gix-submodule v0.9.0, gix-worktree-state v0.8.0, gix v0.59.0, gix-fsck v0.3.0, gitoxide-core v0.36.0, gitoxide v0.34.0, safety bump 10 crates (45b4470)
      • Prepare changelogs prior to release (f2e111f)
      • Merge pull request #1290 from epage/winnow (a663e9f)
      • Update winnow to 0.6 (e175b20)
      • Update winnow to 0.5.40 (516e105)
      • Merge branch 'dirwalk' (face359)
      • Adjust gitignore files with precious declarations (ae86a6a)
      • Merge branch 'tempfile-permissions' (7b44c7f)
      • Release gix-tempfile v13.1.0, gix-lock v13.1.0, safety bump 12 crates (8430442)
      • Merge pull request #1267 from epage/winnow (69cb78b)
      • Update from winnow 0.5.31 to 0.5.36 (9470554)
      • Release gix-path v0.10.5 (b8cba96) </details>
    Open source →
  32. 0.41.1 26 Feb 2024 withdrawn

    Nothing published for this version

  33. 0.41.0 20 Jan 2024
    Release notes

    New Features

    • <csr-id-4a783959c4862985cbffc4fe5cd2c1bed38383b1/> add gix blame -L start,end
    • <csr-id-75d689f6a195f301e4a3000e79f58e5ec1c20557/> add gix env to print paths relevant to the Git installation.
    • <csr-id-278125a845a22fef39b9bc0c69e22e21fb559104/> Document the remaining subcommands
    • <csr-id-4ffe6eb8f7921c6a03db0aa6d796cc2e3cc328e0/> Add support for statistics and additional performance information.
    • <csr-id-80e5804dea9c1090efdcddbfc97ed1d573c28091/> add gix blame to the CLI That way it's possible to see the blame result of any file in the repository.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 10 commits contributed to the release over the course of 26 calendar days.
    • 27 days passed between releases.
    • 5 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #1766 from cruessler/add-range-to-gix-blame (90fef01)
      • Add gix blame -L start,end (4a78395)
      • Merge pull request #1758 from GitoxideLabs/git-shell (851a7c4)
      • Merge pull request #1757 from lu-zero/document-subcommands (31d83a4)
      • Add tailing . for consistency (ddddf02)
      • Add gix env to print paths relevant to the Git installation. (75d689f)
      • Document the remaining subcommands (278125a)
      • Merge pull request #1453 from cruessler/gix-blame (6ed9976)
      • Add support for statistics and additional performance information. (4ffe6eb)
      • Add gix blame to the CLI (80e5804) </details>
    Open source →
    Release notes

    New Features (BREAKING)

    • <csr-id-7523e5c5cd1980b87e8afff914827330e0d9bd8c/> support for precompose_unicode, which is now an extra argument in the Store constructor.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 6 commits contributed to the release over the course of 4 calendar days.
    • 21 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-utils v0.1.9, gix-features v0.38.0, gix-actor v0.30.0, gix-object v0.41.0, gix-path v0.10.4, gix-glob v0.16.0, gix-attributes v0.22.0, gix-command v0.3.3, gix-packetline-blocking v0.17.3, gix-filter v0.9.0, gix-fs v0.10.0, gix-commitgraph v0.24.0, gix-revwalk v0.12.0, gix-traverse v0.37.0, gix-worktree-stream v0.9.0, gix-archive v0.9.0, gix-config-value v0.14.4, gix-tempfile v13.0.0, gix-lock v13.0.0, gix-ref v0.41.0, gix-sec v0.10.4, gix-config v0.34.0, gix-url v0.27.0, gix-credentials v0.24.0, gix-ignore v0.11.0, gix-index v0.29.0, gix-worktree v0.30.0, gix-diff v0.40.0, gix-discover v0.29.0, gix-mailmap v0.22.0, gix-negotiate v0.12.0, gix-pack v0.47.0, gix-odb v0.57.0, gix-pathspec v0.6.0, gix-packetline v0.17.3, gix-transport v0.41.0, gix-protocol v0.44.0, gix-revision v0.26.0, gix-refspec v0.22.0, gix-status v0.5.0, gix-submodule v0.8.0, gix-worktree-state v0.7.0, gix v0.58.0, safety bump 39 crates (eb6aa8f)
      • Prepare changelogs prior to release (6a2e0be)
      • Merge branch 'dirwalk' (5d176fc)
      • Add precompose_unicode related tests (69c8232)
      • Support for precompose_unicode, which is now an extra argument in the Store constructor. (7523e5c)
      • Release gix-trace v0.1.7, gix-features v0.37.2, gix-commitgraph v0.23.2, gix-traverse v0.36.2, gix-index v0.28.2 (b6c04c8) </details>
    Open source →
  34. 0.40.1 30 Dec 2023
    Release notes

    <csr-id-3bd09ef120945a9669321ea856db4079a5dab930/>

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release.
    • 1 day passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.8.3, gix-hash v0.14.1, gix-trace v0.1.6, gix-features v0.37.1, gix-actor v0.29.1, gix-validate v0.8.3, gix-object v0.40.1, gix-path v0.10.3, gix-glob v0.15.1, gix-quote v0.4.10, gix-attributes v0.21.1, gix-command v0.3.2, gix-packetline-blocking v0.17.2, gix-utils v0.1.8, gix-filter v0.8.1, gix-fs v0.9.1, gix-chunk v0.4.7, gix-commitgraph v0.23.1, gix-hashtable v0.5.1, gix-revwalk v0.11.1, gix-traverse v0.36.1, gix-worktree-stream v0.8.1, gix-archive v0.8.1, gix-config-value v0.14.3, gix-tempfile v12.0.1, gix-lock v12.0.1, gix-ref v0.40.1, gix-sec v0.10.3, gix-config v0.33.1, gix-prompt v0.8.2, gix-url v0.26.1, gix-credentials v0.23.1, gix-ignore v0.10.1, gix-bitmap v0.2.10, gix-index v0.28.1, gix-worktree v0.29.1, gix-diff v0.39.1, gix-discover v0.28.1, gix-macros v0.1.3, gix-mailmap v0.21.1, gix-negotiate v0.11.1, gix-pack v0.46.1, gix-odb v0.56.1, gix-pathspec v0.5.1, gix-packetline v0.17.2, gix-transport v0.40.1, gix-protocol v0.43.1, gix-revision v0.25.1, gix-refspec v0.21.1, gix-status v0.4.1, gix-submodule v0.7.1, gix-worktree-state v0.6.1, gix v0.57.1 (972241f)
      • Merge branch 'msrv' (8c492d7)
      • Change rust-version manifest field back to 1.65. (3bd09ef) </details>
    Open source →
  35. 0.40.0 29 Dec 2023
    Release notes

    New Features

    • <csr-id-c7e04e976989435ba752628522d53ac39348b49b/> add first 'debug' version of gix log It's primarily meant to better understand gix blame.
    • <csr-id-471e046a6002a68209e215db7ee904a4149f9d51/> add --tree-favor to gix merge tree|commit. With it one can decide which side to favor in case of irreconcilable tree-conflicts.

    Bug Fixes

    • <csr-id-0727b5679f9ddeb05a9a50c895b6d77ba61ed544/> gix merge file now uses THEIRS instead of OURS where needed

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 7 commits contributed to the release over the course of 27 calendar days.
    • 28 days passed between releases.
    • 3 commits were understood as conventional.
    • 1 unique issue was worked on: #1703

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #1703
      • gix merge file now uses THEIRS instead of OURS where needed (0727b56)
    • Uncategorized
      • Merge pull request #1643 from cruessler/add-gix-log (29cb775)
      • Add first 'debug' version of gix log (c7e04e9)
      • Merge pull request #1705 from GitoxideLabs/merge (520c832)
      • Adapt to changes in gix-diff (960773e)
      • Add --tree-favor to gix merge tree|commit. (471e046)
      • Merge pull request #1704 from GitoxideLabs/fix-1703 (e8ce25f) </details>
    Open source →
    Release notes

    <csr-id-aea89c3ad52f1a800abb620e9a4701bdf904ff7d/>

    New Features

    • <csr-id-ff18e0bdb2ffbff5b47003f62e04e815d9c14575/> Add packed::Buffer::from_bytes(). This way the source of the packed-refs file contents can be arbitrary.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 14 commits contributed to the release over the course of 14 calendar days.
    • 14 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.8.2, gix-hash v0.14.0, gix-trace v0.1.5, gix-features v0.37.0, gix-actor v0.29.0, gix-validate v0.8.2, gix-object v0.40.0, gix-path v0.10.2, gix-glob v0.15.0, gix-quote v0.4.9, gix-attributes v0.21.0, gix-command v0.3.1, gix-packetline-blocking v0.17.1, gix-utils v0.1.7, gix-filter v0.8.0, gix-fs v0.9.0, gix-chunk v0.4.6, gix-commitgraph v0.23.0, gix-hashtable v0.5.0, gix-revwalk v0.11.0, gix-traverse v0.36.0, gix-worktree-stream v0.8.0, gix-archive v0.8.0, gix-config-value v0.14.2, gix-tempfile v12.0.0, gix-lock v12.0.0, gix-ref v0.40.0, gix-sec v0.10.2, gix-config v0.33.0, gix-prompt v0.8.1, gix-url v0.26.0, gix-credentials v0.23.0, gix-ignore v0.10.0, gix-bitmap v0.2.9, gix-index v0.28.0, gix-worktree v0.29.0, gix-diff v0.39.0, gix-discover v0.28.0, gix-macros v0.1.2, gix-mailmap v0.21.0, gix-negotiate v0.11.0, gix-pack v0.46.0, gix-odb v0.56.0, gix-pathspec v0.5.0, gix-packetline v0.17.1, gix-transport v0.40.0, gix-protocol v0.43.0, gix-revision v0.25.0, gix-refspec v0.21.0, gix-status v0.4.0, gix-submodule v0.7.0, gix-worktree-state v0.6.0, gix v0.57.0, gix-fsck v0.2.0, gitoxide-core v0.35.0, gitoxide v0.33.0, safety bump 40 crates (e1aae19)
      • Prepare changelogs of next release (e78a92b)
      • Merge branch 'maintenance' (4454c9d)
      • Upgrade MSRV to v1.70 (aea89c3)
      • Thanks clippy (d38d1cc)
      • Merge branch 'fuzz-gix-config' (0f71709)
      • Fuzz more of gix-ref log (d83b4e0)
      • Merge branch 'fuzz-gix-ref' (8ee1194)
      • Let's have the latest versions of fuzzers automatically (5828f37)
      • Add gix_ref::packed::Buffer fuzzer (fb28daa)
      • Add packed::Buffer::from_bytes(). (ff18e0b)
      • Add log fuzzer to gix-ref (3be3b15)
      • Add named fuzz-harness to gix-ref (3e37a22)
      • Merge branch 'main' into fix-1183 (1691ba6) </details>
    Open source →
  36. 0.39.1 15 Dec 2023
    Release notes

    New Features

    • <csr-id-7b4573ad57a33bb180c661056cd81e81ed478be2/> add file::Store::set_packed_buffer_mmap_threshold(). That way it's possible to control under which circumstances, if at all, memory maps will be used.

    Bug Fixes

    • <csr-id-6c1da71566a454198b01c3fc0f6972e5433ef375/> assure memory maps don't get in the way of updating .git/packet-refs on Windows. The solution entails to not use memory maps on Windows which is certainly fine on todays systems, even though it's likely to add latency.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 6 commits contributed to the release over the course of 5 calendar days.
    • 9 days passed between releases.
    • 2 commits were understood as conventional.
    • 1 unique issue was worked on: #1183

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #1183
      • Assure memory maps don't get in the way of updating .git/packet-refs on Windows. (6c1da71)
      • Add file::Store::set_packed_buffer_mmap_threshold(). (7b4573a)
    • Uncategorized
      • Release gix-ref v0.39.1 (c1cfe6e)
      • Merge branch 'archive-handling' (7549559)
      • Check all git-lfs managed files into the repository (35439de)
      • Release gix-hash v0.13.3, gix-index v0.27.1 (98b08f4) </details>
    Open source →
  37. 0.39.0 06 Dec 2023
    Release notes

    New Features

    • <csr-id-0a5993f4ed6e3815949b3cd398d38d69417d21c8/> add gix merge commit --debug This yields additional debugging information with details about detected conflicts.
    • <csr-id-4a5afc7524fc96213385454079ebf9baf302ad4b/> add gix merge commits
    • <csr-id-84707c2b7540f9a73cc3f0cde74dabd9822cd809/> add gix merge tree to merge trees similarly to git merge-tree.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 9 commits contributed to the release over the course of 21 calendar days.
    • 33 days passed between releases.
    • 3 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #1661 from GitoxideLabs/merge (0b7abfb)
      • Add gix merge commit --debug (0a5993f)
      • Merge pull request #1658 from GitoxideLabs/merge (905e5b4)
      • Add gix merge commits (4a5afc7)
      • Merge pull request #1651 from GitoxideLabs/merge (a876533)
      • Adapt to changes in gix (8d590f3)
      • Merge pull request #1618 from GitoxideLabs/merge (3fb989b)
      • Add gix merge tree to merge trees similarly to git merge-tree. (84707c2)
      • Support for merge related options in config tree (80e006b) </details>
    Open source →
    Release notes

    Documentation

    • <csr-id-266c9fc53ebcb7ba6178637190c9d03ecd442c46/> clarify how Reference::peeled is working.

    Changed (BREAKING)

    • <csr-id-dbb68867f882b905fc6584d78cabfa0342039565/> use gix-object::Find trait

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 15 commits contributed to the release.
    • 55 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.8.1, gix-hash v0.13.2, gix-trace v0.1.4, gix-features v0.36.1, gix-actor v0.28.1, gix-validate v0.8.1, gix-object v0.39.0, gix-path v0.10.1, gix-glob v0.14.1, gix-quote v0.4.8, gix-attributes v0.20.1, gix-command v0.3.0, gix-packetline-blocking v0.17.0, gix-utils v0.1.6, gix-filter v0.7.0, gix-fs v0.8.1, gix-chunk v0.4.5, gix-commitgraph v0.22.1, gix-hashtable v0.4.1, gix-revwalk v0.10.0, gix-traverse v0.35.0, gix-worktree-stream v0.7.0, gix-archive v0.7.0, gix-config-value v0.14.1, gix-tempfile v11.0.1, gix-lock v11.0.1, gix-ref v0.39.0, gix-sec v0.10.1, gix-config v0.32.0, gix-prompt v0.8.0, gix-url v0.25.2, gix-credentials v0.22.0, gix-ignore v0.9.1, gix-bitmap v0.2.8, gix-index v0.27.0, gix-worktree v0.28.0, gix-diff v0.38.0, gix-discover v0.27.0, gix-macros v0.1.1, gix-mailmap v0.20.1, gix-negotiate v0.10.0, gix-pack v0.45.0, gix-odb v0.55.0, gix-pathspec v0.4.1, gix-packetline v0.17.0, gix-transport v0.39.0, gix-protocol v0.42.0, gix-revision v0.24.0, gix-refspec v0.20.0, gix-status v0.3.0, gix-submodule v0.6.0, gix-worktree-state v0.5.0, gix v0.56.0, gix-fsck v0.1.0, gitoxide-core v0.34.0, gitoxide v0.32.0, safety bump 27 crates (55d386a)
      • Prepare changelogs prior to release (d3dcbe5)
      • Upgrade to winnow 0.5.24 (abcfb65)
      • J fmt (51c7abc)
      • Merge pull request #1131 from alexanderkjall/bump-memmap2-to-0.9 (f528ae8)
      • Upgrade memmap2 from 0.7.1 to 0.9.0 (f4c3380)
      • Merge branch 'check-cfg' (5a0d93e)
      • Replace all docsrs config by the document-features feature (bb3224c)
      • Merge branch 'gix-object-find' (c8bd660)
      • Use gix-object::Find trait (dbb6886)
      • Adapt to changes in gix_object and gix_odb. (24e319e)
      • Merge branch 'size-optimization' (c0e72fb)
      • Remove CHANGELOG.md from all packages (b65a80b)
      • Merge branch 'head-conversions' (c2cf20c)
      • Clarify how Reference::peeled is working. (266c9fc) </details>
    Open source →
  38. 0.38.0 12 Oct 2023
    Release notes

    <csr-id-28ac6572722f7ea31795dc0417521c70bcb6ec8f/> <csr-id-786bfec7c2cf25a68705b6ef09ba6390600742b8/>

    New Features

    • <csr-id-c7213bcf2cf6be4058a78dbd86bbab4c5ad4afa7/> support for listing worktrees with gix worktree list

    • <csr-id-0c554e096cf2bf0a2bb91397143f524219693a3b/> add first 'debug' version of gix diff tree. It's primarily meant to better understand gix blame.

    • <csr-id-9c8bc03de99e6494abd9755deef7e7be5577bce2/> add new gix cat command. It only prints things without fuzz.

      Inspired by https://youtu.be/JYH5ILv5g1g?si=bHLBPFJiZyRUTl6u&t=211.

    • <csr-id-3da2da9d7993adc16b19fc63e7524c768a6e2e7f/> add gix merge-file with similar features as git merge-file

    • <csr-id-7249291016253647c920852fb37eb9e29d615775/> gix merge-base for the CLI For now it only supports the standard merge-base, but more derivatives can be added easily on demand.

    Bug Fixes

    • <csr-id-6eb4ea6cf27b2feb3edb9dbf754393b0c7d272fd/> Adjust gix clean warning and help for worktree fix
    • <csr-id-c241422dc64f97e9dc781465ae69130a423ee501/> Clarify -r/--repositories and --skip-hidden-repositories This adds information to the help text for the git clean options -r/--repositories and --skip-hidden-repositories to make it clearer what their relationship is, avoid creating the false impression that repositories are never deleted in the absence of -r/--repositories, and note that --skip-hidden-repositories is sometimes needed to preserve not only separate repositories but the (probably rarer) case of hidden nested worktrees of the current repository.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 28 commits contributed to the release over the course of 89 calendar days.
    • 91 days passed between releases.
    • 9 commits were understood as conventional.
    • 1 unique issue was worked on: #1572

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #1572
      • Make clear what gix commit-graph is (49bca2a)
    • Uncategorized
      • Merge pull request #1639 from cruessler/respect-env-variables (48aa74b)
      • Respect env variables when running gix (0bebe52)
      • Merge pull request #1626 from cruessler/add-gix-diff (f186c23)
      • Some minor modifications (6777ecb)
      • Add first 'debug' version of gix diff tree. (0c554e0)
      • Merge pull request #1616 from Byron/git-cat (31bdd2e)
      • Add new gix cat command. (9c8bc03)
      • Merge pull request #1611 from Byron/merge (5ffccd2)
      • Add gix merge-file with similar features as git merge-file (3da2da9)
      • Add all keys for merge-configuration (e0b09d2)
      • Merge pull request #1566 from Byron/merge (d69c617)
      • Merge pull request #1557 from Byron/merge-base (649f588)
      • gix merge-base for the CLI (7249291)
      • Allow empty-docs (beba720)
      • Merge pull request #1546 from nyurik/semilocons (f992fb7)
      • Add missing semicolons (ec69c88)
      • Merge pull request #1537 from EliahKagan/progress-style (472fe5f)
      • Unify style in config support info (786bfec)
      • Merge pull request #1531 from EliahKagan/progress-typos (25a3f1b)
      • Fix typos in config support info (b31d6b7)
      • Merge branch 'ag/jiff' (5871fb1)
      • Switch from time to jiff (28ac657)
      • Merge pull request #1471 from EliahKagan/hidden (a9aac4f)
      • Adjust gix clean warning and help for worktree fix (6eb4ea6)
      • Clarify -r/--repositories and --skip-hidden-repositories (c241422)
      • Merge branch 'fix-clean' (33eacfb)
      • Support for listing worktrees with gix worktree list (c7213bc) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 4 commits contributed to the release over the course of 6 calendar days.
    • 18 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-hash v0.13.1, gix-features v0.36.0, gix-actor v0.28.0, gix-object v0.38.0, gix-glob v0.14.0, gix-attributes v0.20.0, gix-command v0.2.10, gix-filter v0.6.0, gix-fs v0.8.0, gix-commitgraph v0.22.0, gix-revwalk v0.9.0, gix-traverse v0.34.0, gix-worktree-stream v0.6.0, gix-archive v0.6.0, gix-tempfile v11.0.0, gix-lock v11.0.0, gix-ref v0.38.0, gix-config v0.31.0, gix-url v0.25.0, gix-credentials v0.21.0, gix-diff v0.37.0, gix-discover v0.26.0, gix-ignore v0.9.0, gix-index v0.26.0, gix-mailmap v0.20.0, gix-negotiate v0.9.0, gix-pack v0.44.0, gix-odb v0.54.0, gix-pathspec v0.4.0, gix-packetline v0.16.7, gix-transport v0.37.0, gix-protocol v0.41.0, gix-revision v0.23.0, gix-refspec v0.19.0, gix-worktree v0.27.0, gix-status v0.2.0, gix-submodule v0.5.0, gix-worktree-state v0.4.0, gix v0.55.0, safety bump 37 crates (68e5432)
      • Prepare changelogs prior to release (1347a54)
      • Fix docs (995bc84)
      • Thanks clippy (345712d) </details>
    Open source →
  39. 0.37.0 24 Sep 2023
    Release notes

    <csr-id-202f3e48a96b38d32b11d28449358c7d1f3546ff/>

    New Features

    • <csr-id-2a563870fc4d2f65e34c4e4a448b446fc05a43b2/> add mailmap check similar to git check-mailmap. That way it becomes a little easier to maybe try out other special cases in the wild.
    • <csr-id-9bf01e42b8d8964dfd1e099d645082c10bdabcdf/> gix clone with --ref support. --ref is similar to --branch, but was renamed as it also supports tags for example.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 13 commits contributed to the release.
    • 62 days passed between releases.
    • 3 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge branch 'fix-mailmap' (f107014)
      • Add descriptive docs for mailmap check (3e08fa3)
      • Add mailmap check similar to git check-mailmap. (2a56387)
      • Merge branch 'main' into config-key-take-2 (9fa1054)
      • Merge branch 'feat/checkout-other-refs' (ecfde07)
      • gix clone with --ref support. (9bf01e4)
      • Merge branch 'status' (2f9f0ac)
      • Thanks clippy (acc1331)
      • Merge pull request #1384 from NobodyXu/feat/easier-to-compile-gix-as-dynlib (bb30e52)
      • Fix clippy warning (bf5a111)
      • Fix compilation error in src/plumbing/main.rs (4596a39)
      • Fix compilation errors (0b5dc74)
      • Make it easier to compile gitoxide as dynlib (202f3e4) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 2 commits contributed to the release.
    • 16 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-features v0.35.0, gix-actor v0.27.0, gix-object v0.37.0, gix-glob v0.13.0, gix-attributes v0.19.0, gix-filter v0.5.0, gix-fs v0.7.0, gix-commitgraph v0.21.0, gix-revwalk v0.8.0, gix-traverse v0.33.0, gix-worktree-stream v0.5.0, gix-archive v0.5.0, gix-tempfile v10.0.0, gix-lock v10.0.0, gix-ref v0.37.0, gix-config v0.30.0, gix-url v0.24.0, gix-credentials v0.20.0, gix-diff v0.36.0, gix-discover v0.25.0, gix-ignore v0.8.0, gix-index v0.25.0, gix-mailmap v0.19.0, gix-negotiate v0.8.0, gix-pack v0.43.0, gix-odb v0.53.0, gix-pathspec v0.3.0, gix-transport v0.37.0, gix-protocol v0.40.0, gix-revision v0.22.0, gix-refspec v0.18.0, gix-status v0.1.0, gix-submodule v0.4.0, gix-worktree v0.26.0, gix-worktree-state v0.3.0, gix v0.54.0, gitoxide-core v0.32.0, gitoxide v0.30.0, safety bump 37 crates (7891fb1)
      • Prepare changelogs prior to release (8a60d5b) </details>
    Open source →
  40. 0.36.0 08 Sep 2023
    Release notes

    Commit Statistics

    • 6 commits contributed to the release over the course of 30 calendar days.
    • 30 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    view details
    • Uncategorized
      • Update manifests prior to release (ebe9095)
      • Merge pull request #2901 from cruessler/switch-to-gix-odb-at-opts (2a4d996)
      • Introduce Store::at() where possible (17fea2a)
      • Merge pull request #2867 from GitoxideLabs/fix-url-authority-parsing (cc3ee80)
      • Release gix-path v0.12.4, gix-command v0.9.2, gix-config-value v0.19.1, gix-url v0.37.1, gix-credentials v0.39.1, gix-transport v0.58.1 (ab4fcb0)
      • Merge pull request #2812 from GitoxideLabs/report-july (ae8845a)
    Open source →
    Release notes

    New Features

    • <csr-id-886d6b58e4612ac21cc660ea4ddf1dd0b49d1c6e/> checkout respects options for core.protectHFS and core.protectNTFS. This also adds gitoxide.core.protectWindows as a way to enforce additional restrictions that are usually only available on Windows.

      Note that core.protectNFS is always enabled by default, just like it is in Git.

    Bug Fixes

    • <csr-id-addf446f052ff74edcdb083f2b2968b313daa940/> more robustness in the face of a trampling-herd of threads loading a single index. The motivating example is here: https://github.com/praetorian-inc/noseyparker/issues/179

      Previously, it was possible for a trampling herd of threads to consolidate the disk state. Most of them would be 'needs-init' threads which could notice that the initialization already happened, and just use that.

      But a thread might be late for the party and somehow manages to not get any newly loaded index, and thus tries to consolidate with what's on disk again. Then it would again determine no change, and return nothing, causing the caller to abort and not find objects it should find because it wouldn't see the index that it should have seen.

      The reason the thread got into this mess is that the 'is-load-ongoing' flagging was racy itself, so it would not wait for ongoing loads and just conclude nothing happened. An extra delay (by yielding) now assures it either seees the loading state and waits for it, sees the newly loaded indices.

      Note that this issue can be reproduced with:

      './target/release/gix -r repo-with-one-pack -t10 --trace odb stats --extra-header-lookup'
      

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 6 commits contributed to the release over the course of 10 calendar days.
    • 39 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge branch 'various-fixes' (d6cd449)
      • Merge pull request from GHSA-7w47-3wg8-547c (79dce79)
      • Checkout respects options for core.protectHFS and core.protectNTFS. (886d6b5)
      • Mark safety-related core-flags as planned (f3d5a69)
      • Merge branch 'status' (04ef31e)
      • More robustness in the face of a trampling-herd of threads loading a single index. (addf446) </details>
    Open source →
    Release notes

    Bug Fixes (BREAKING)

    • <csr-id-072ee32f693a31161cd6a843da6582d13efbb20b/> use dyn trait where possible. This reduces compile time due to avoiding duplication.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 7 commits contributed to the release over the course of 17 calendar days.
    • 17 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.8.0, gix-hash v0.13.0, gix-features v0.34.0, gix-actor v0.26.0, gix-object v0.36.0, gix-path v0.10.0, gix-glob v0.12.0, gix-attributes v0.18.0, gix-packetline-blocking v0.16.6, gix-filter v0.4.0, gix-fs v0.6.0, gix-commitgraph v0.20.0, gix-hashtable v0.4.0, gix-revwalk v0.7.0, gix-traverse v0.32.0, gix-worktree-stream v0.4.0, gix-archive v0.4.0, gix-config-value v0.14.0, gix-tempfile v9.0.0, gix-lock v9.0.0, gix-ref v0.36.0, gix-sec v0.10.0, gix-config v0.29.0, gix-prompt v0.7.0, gix-url v0.23.0, gix-credentials v0.19.0, gix-diff v0.35.0, gix-discover v0.24.0, gix-ignore v0.7.0, gix-index v0.24.0, gix-macros v0.1.0, gix-mailmap v0.18.0, gix-negotiate v0.7.0, gix-pack v0.42.0, gix-odb v0.52.0, gix-pathspec v0.2.0, gix-packetline v0.16.6, gix-transport v0.36.0, gix-protocol v0.39.0, gix-revision v0.21.0, gix-refspec v0.17.0, gix-submodule v0.3.0, gix-worktree v0.25.0, gix-worktree-state v0.2.0, gix v0.53.0, safety bump 39 crates (8bd0456)
      • Prepare changelogs for release (375db06)
      • Merge branch dynification (f658fcc)
      • Use dyn trait where possible. (072ee32)
      • Merge branch 'adjustments-for-cargo' (b7560a2)
      • Release gix-date v0.7.4, gix-index v0.23.0, safety bump 5 crates (3be2b1c)
      • Merge branch 'gix-submodule' (363ee77) </details>
    Open source →
    Release notes

    gix-worktree-stream v0.36.0

    Compare

    Choose a tag to compare

    Open source →
  41. 0.35.0 22 Aug 2023
    Release notes

    New Features

    • <csr-id-84c74ffa698d35f8395c63db6acd3d0e6700d07f/> add gix status --ignored support

    • <csr-id-66e87cd31c060c3f97ac685ee0541c408f600362/> add gix status --index-worktree-renames This enables rename-tracking between worktree and index, something that Git also doesn't do or doesn't do by default. It is, however, available in git2.

    • <csr-id-61c002bc4ca5b5345c411e561fdcb492e7ae1d97/> gix status with submodule and rewrite support. Submodule changes are now picked up as long as the submodule is in the index. Further, it's possible to enable rename-tracking between index and worktree separately.

    • <csr-id-98b368095ec99d1bc287da7f9294a9fce424deed/> add gix is-clean|is-changed It's a good way to compare the time it takes to run a full status compared to a quick is-dirty check.

    • <csr-id-afd20caadb40b6b793f2099b7232669f9a8f9086/> gix submodules list --dirty-suffix for dirty-information This is a submodule-centric and greatly simplified way of obtaining describe information with dirty-suffix.

      Note that status information is also possible, but it seems hard to display nicely, which this command isn't great at in the first place.

    • <csr-id-58231b418fa39ea122ef41bb7691289f5b0be855/> add gix commit describe --dirty-suffix That way a suffix will be added depending on the dirty-state of the repository.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 11 commits contributed to the release.
    • 48 days passed between releases.
    • 6 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge pull request #1341 from szepeviktor/typos (55f379b)
      • Fix typos (f72ecce)
      • Merge branch 'status' (3e5c974)
      • Add gix status --format to communicate the current format is very simple. (23bea36)
      • Add gix status --ignored support (84c74ff)
      • Add gix status --index-worktree-renames (66e87cd)
      • Fix lints for nightly, and clippy (f8ce3d0)
      • gix status with submodule and rewrite support. (61c002b)
      • Add gix is-clean|is-changed (98b3680)
      • gix submodules list --dirty-suffix for dirty-information (afd20ca)
      • Add gix commit describe --dirty-suffix (58231b4) </details>
    Open source →
    Release notes

    <csr-id-ef54aab9e5521add4154ee8d902d62612a9d8d4a/>

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 21 commits contributed to the release.
    • 15 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.7.3, gix-hash v0.12.0, gix-features v0.33.0, gix-actor v0.25.0, gix-object v0.35.0, gix-path v0.9.0, gix-glob v0.11.0, gix-quote v0.4.7, gix-attributes v0.17.0, gix-command v0.2.9, gix-packetline-blocking v0.16.5, gix-filter v0.3.0, gix-fs v0.5.0, gix-commitgraph v0.19.0, gix-hashtable v0.3.0, gix-revwalk v0.6.0, gix-traverse v0.31.0, gix-worktree-stream v0.3.0, gix-archive v0.3.0, gix-config-value v0.13.0, gix-tempfile v8.0.0, gix-lock v8.0.0, gix-ref v0.35.0, gix-sec v0.9.0, gix-config v0.28.0, gix-prompt v0.6.0, gix-url v0.22.0, gix-credentials v0.18.0, gix-diff v0.34.0, gix-discover v0.23.0, gix-ignore v0.6.0, gix-bitmap v0.2.7, gix-index v0.22.0, gix-mailmap v0.17.0, gix-negotiate v0.6.0, gix-pack v0.41.0, gix-odb v0.51.0, gix-pathspec v0.1.0, gix-packetline v0.16.5, gix-transport v0.35.0, gix-protocol v0.38.0, gix-revision v0.20.0, gix-refspec v0.16.0, gix-submodule v0.2.0, gix-worktree v0.24.0, gix-worktree-state v0.1.0, gix v0.52.0, gitoxide-core v0.31.0, gitoxide v0.29.0, safety bump 41 crates (30b2761)
      • Update changelogs prior to release (f23ea88)
      • Merge branch 'gix-submodule' (8f3f358)
      • Cleanup gix-ref-tests (e0c64fd)
      • Just fmt (0d258f4)
      • Switch nom to winnow in remaining uses in gix-object, gix-ref, and gix-actor for ~20% more performance. (ef54aab)
      • Upgrade winnow to latest patch release (8c41848)
      • Switch errors to StrContext (df226dd)
      • Show more error details in parse tests failures (266864f)
      • Upgrade to Winnow 0.5 (3f8c91f)
      • Simplify parsers (12f03db)
      • Simplify LineRef parser (2fb4a54)
      • Resolve 0.4 not-quite deprecations (f0cbf81)
      • Resolve 0.4 deprecations (9ed7df0)
      • Upgrade to Winnow 0.4 (86ea47f)
      • Parse explicitly in prep for 0.4 (b3f0418)
      • Resolve remaining winnow 0.3 deprecations (fee441d)
      • Prefer Parser inherent parsers (b37a909)
      • Prefer built-in Winnow parsers (ac0e81c)
      • Simplify winnow ErrMode construction (86d7fd1)
      • Switch gix to winnow 0.3 (ee75de1) </details>
    Open source →
  42. 0.34.0 07 Aug 2023
    Release notes

    New Features

    • <csr-id-9863d75147445d3a598fe1339d88c353850a5984/> add gix clean --patterns-for-entries|-m to help with wildcards.
    • <csr-id-e8597f3559187fc8add294e72eb33403cdff0e09/> basic gix clean

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 20 commits contributed to the release.
    • 58 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge branch 'status' (d53504a)
      • Allow the -n argument as no-op to make them more compatible. (8959b21)
      • Add gix clean --patterns-for-entries|-m to help with wildcards. (9863d75)
      • Merge branch 'tabled' (ed79aa7)
      • Refactor (e25d7eb)
      • Merge branch 'ein-completions' (cebeedf)
      • Fix clippy lints (454e6b9)
      • Add back line wrapping simplify Usage Variants (4ac597a)
      • Tell clap that ein is named ein (4fd6ab8)
      • Copy over code from gix to generate completions for ein as well (abe0043)
      • Fix indenting by removing formatting on the config str (c0c4d59)
      • Reserve 50 characters for the config name (cc8d008)
      • Bring back old implementation from https://github.com/Byron/gitoxide/commit/65e64964c7cd151e53e5a7d4b9ba8fabda1c0e16 this also removes terminal_size, although its not large (1ecc96d)
      • Remove tabled (fcd585b)
      • Merge branch 'dirwalk' (face359)
      • Basic gix clean (e8597f3)
      • Merge branch 'chunks_exact' (d4d478b)
      • Use chunks_exact where possible (2482023)
      • Merge pull request #1248 from joshtriplett/tyop (39f35da)
      • Typo fixes (3ef3bc2) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 6 commits contributed to the release over the course of 3 calendar days.
    • 5 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-glob v0.10.2, gix-date v0.7.2, gix-validate v0.8.0, gix-object v0.34.0, gix-ref v0.34.0, gix-config v0.27.0, gix-commitgraph v0.18.2, gix-revwalk v0.5.0, gix-revision v0.19.0, gix-refspec v0.15.0, gix-submodule v0.1.0, safety bump 18 crates (4604f83)
      • Prepare changelogs prior to release of gix-submodule (f3c4311)
      • Merge branch 'submodules' (b629f8a)
      • Adjust to changes in gix-validate (a8bc0de)
      • Merge branch 'dev-on-linux' (6b4a303)
      • Fix various tests to run properly on linux (ef8ccd9) </details>
    Open source →
  43. 0.33.3 02 Aug 2023
    Release notes

    <csr-id-5f6cf22cd8eda37c151e67b83cdb36d953ee3793/>

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 5 commits contributed to the release over the course of 2 calendar days.
    • 9 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-actor v0.24.2, gix-object v0.33.2, gix-ref v0.33.3, gix-config v0.26.2, gix-prompt v0.5.5, gix-odb v0.50.2, gix-transport v0.34.2, gix-protocol v0.37.0, gix-worktree v0.23.1, gix v0.51.0, safety bump 3 crates (231ac1c)
      • Prepare additional changelogs (db63815)
      • Prepare changelogs (e4d2890)
      • Merge branch 'fixes-and-improvements' (f8b1f55)
      • Improve documentation about the Change type. (5f6cf22) </details>
    Open source →
  44. 0.33.2 24 Jul 2023
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 4 commits contributed to the release.
    • 2 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-archive v0.2.1, gix-ref v0.33.2, gix-pack v0.40.2, gix v0.50.1 (13883e5)
      • Prepare changelogs (735c206)
      • Merge branch 'fetch-head-tests' (eb2b513)
      • Add tests specifically for FETCH_HEAD (bdeb1f7) </details>
    Open source →
  45. 0.33.1 22 Jul 2023
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 6 commits contributed to the release over the course of 1 calendar day.
    • 3 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-tempfile v7.0.2, gix-utils v0.1.5, gix-lock v7.0.2, gix-ref v0.33.1, gix-sec v0.8.4, gix-prompt v0.5.4, gix-url v0.21.1, gix-credentials v0.17.1, gix-diff v0.33.1, gix-discover v0.22.1, gix-ignore v0.5.1, gix-bitmap v0.2.6, gix-index v0.21.1, gix-mailmap v0.16.1, gix-negotiate v0.5.1, gix-pack v0.40.1, gix-odb v0.50.1, gix-packetline v0.16.4, gix-transport v0.34.1, gix-protocol v0.36.1, gix-revision v0.18.1, gix-refspec v0.14.1, gix-worktree v0.23.0, gix v0.50.0 (107a64e)
      • Release gix-features v0.32.1, gix-actor v0.24.1, gix-validate v0.7.7, gix-object v0.33.1, gix-path v0.8.4, gix-glob v0.10.1, gix-quote v0.4.6, gix-attributes v0.16.0, gix-command v0.2.8, gix-packetline-blocking v0.16.4, gix-filter v0.2.0, gix-fs v0.4.1, gix-chunk v0.4.4, gix-commitgraph v0.18.1, gix-hashtable v0.2.4, gix-revwalk v0.4.1, gix-traverse v0.30.1, gix-worktree-stream v0.2.0, gix-archive v0.2.0, gix-config-value v0.12.5, gix-tempfile v7.0.1, gix-utils v0.1.5, gix-lock v7.0.2, gix-ref v0.33.1, gix-sec v0.8.4, gix-prompt v0.5.4, gix-url v0.21.1, gix-credentials v0.17.1, gix-diff v0.33.1, gix-discover v0.22.1, gix-ignore v0.5.1, gix-bitmap v0.2.6, gix-index v0.21.1, gix-mailmap v0.16.1, gix-negotiate v0.5.1, gix-pack v0.40.1, gix-odb v0.50.1, gix-packetline v0.16.4, gix-transport v0.34.1, gix-protocol v0.36.1, gix-revision v0.18.1, gix-refspec v0.14.1, gix-worktree v0.23.0, gix v0.50.0, safety bump 5 crates (16295b5)
      • Prepare more changelogs (c4cc5f2)
      • Release gix-date v0.7.1, gix-hash v0.11.4, gix-trace v0.1.3, gix-features v0.32.0, gix-actor v0.24.0, gix-validate v0.7.7, gix-object v0.33.0, gix-path v0.8.4, gix-glob v0.10.0, gix-quote v0.4.6, gix-attributes v0.15.0, gix-command v0.2.7, gix-packetline-blocking v0.16.3, gix-filter v0.1.0, gix-fs v0.4.0, gix-chunk v0.4.4, gix-commitgraph v0.18.0, gix-hashtable v0.2.4, gix-revwalk v0.4.0, gix-traverse v0.30.0, gix-worktree-stream v0.2.0, gix-archive v0.2.0, gix-config-value v0.12.4, gix-tempfile v7.0.1, gix-utils v0.1.5, gix-lock v7.0.2, gix-ref v0.33.0, gix-sec v0.8.4, gix-prompt v0.5.3, gix-url v0.21.0, gix-credentials v0.17.0, gix-diff v0.33.0, gix-discover v0.22.0, gix-ignore v0.5.0, gix-bitmap v0.2.6, gix-index v0.21.0, gix-mailmap v0.16.0, gix-negotiate v0.5.0, gix-pack v0.40.0, gix-odb v0.50.0, gix-packetline v0.16.4, gix-transport v0.34.0, gix-protocol v0.36.0, gix-revision v0.18.0, gix-refspec v0.14.0, gix-worktree v0.22.0, gix v0.49.1 (5cb3589)
      • Update changelogs prior to release (2fc66b5)
      • Update license field following SPDX 2.1 license expression standard (9064ea3) </details>
    Open source →
  46. 0.33.0 19 Jul 2023
    Release notes

    New Features

    • <csr-id-193ffcd9945891867a14aa5b6f87e27d3880b280/> Add rev parse --reference. It's similar to git rev-parse --symbolic-full-name.

    Bug Fixes (BREAKING)

    • <csr-id-59b8104a5320d946abc9f5736fa76696cef1459d/> mark gix::interrupt::init_handler() as unsafe The passed interrupt() argument will be called from a signal handler, so that needs to be documented and the call sites need to state that they fulfill the contract.

      Thanks to @Manishearth for pointing this out.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 7 commits contributed to the release over the course of 21 calendar days.
    • 23 days passed between releases.
    • 2 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge branch 'maintenance' (4454c9d)
      • Upgrade tabled and setup wordwrapping (a78caba)
      • Merge branch 'tracking-branch' (0fe20e8)
      • Add rev parse --reference. (193ffcd)
      • Merge branch 'main' into fix-1183 (1691ba6)
      • Merge branch 'push-yvzxzqrkkvry' (4917beb)
      • Mark gix::interrupt::init_handler() as unsafe (59b8104) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release.
    • 20 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-features v0.32.0, gix-actor v0.24.0, gix-glob v0.10.0, gix-attributes v0.15.0, gix-commitgraph v0.18.0, gix-config-value v0.12.4, gix-fs v0.4.0, gix-object v0.33.0, gix-ref v0.33.0, gix-config v0.26.0, gix-command v0.2.7, gix-url v0.21.0, gix-credentials v0.17.0, gix-diff v0.33.0, gix-discover v0.22.0, gix-filter v0.1.0, gix-ignore v0.5.0, gix-revwalk v0.4.0, gix-traverse v0.30.0, gix-index v0.21.0, gix-mailmap v0.16.0, gix-negotiate v0.5.0, gix-pack v0.40.0, gix-odb v0.50.0, gix-transport v0.34.0, gix-protocol v0.36.0, gix-revision v0.18.0, gix-refspec v0.14.0, gix-worktree v0.22.0, gix v0.49.0 (68ae3ff)
      • Adjust package versions (by cargo-smart-release) (c70e54f)
      • Prepare changelogs prior to release (e4dded0) </details>
    Open source →
  47. 0.32.1 29 Jun 2023
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-glob v0.9.1, gix-attributes v0.14.1, gix-config-value v0.12.3, gix-ref v0.32.1, gix-sec v0.8.3, gix-config v0.25.1, gix-url v0.20.1, gix-credentials v0.16.1, gix-discover v0.21.1, gix-ignore v0.4.1, gix-pack v0.39.1, gix-odb v0.49.1, gix-worktree v0.21.1, gix v0.48.0 (69c6a36)
      • Prepare changelogs prior to release (c143cf4)
      • Align usage of gix-path across all crates (73c1292) </details>
    Open source →
  48. 0.32.0 29 Jun 2023
    Release notes

    New Features

    <csr-id-4aea9b097fb08e504cdfc4a7c3b7511a308dc074/> <csr-id-c6e83cf69f1a17e9ba3010bcce3a4ddd3305424c/> <csr-id-8f795e8abf706a24fe104500bf15efaa2bc07b15/> <csr-id-8dfbb4ba531d86894a59e2b85ec29cd3133c8c4d/> <csr-id-f9ae1bc6b514b6bbcda2c672f7b7ccbd999356a0/> <csr-id-886289f98003f935d774a40f6db746ae70649936/>

    • <csr-id-cf51a4de2d06eb28435ef8e386131710003b6928/> gix rev parse --format to provide different versions of the same content. This only applies to blobs, but allows to obtain different versions of the same blob like:

      • what's stored in Git
    • what would be checked out to the worktree
    • what would be diffed

    Bug Fixes

    • <csr-id-b2300782ad09f17730fe2a5ba4938517d4e7ec16/> in --trace mode, greatly increase message-buffer size. That way, it's much less likely that messages will get lost due to being overwritten before they can be displayed every 100ms or so.
    • <csr-id-eab22bd5d56bf91ee0edfc7156023c159c7f65f9/> set binary name for completions

    Bug Fixes (BREAKING)

    • <csr-id-2189cee47f99350b368390eaa2a01961bb77c250/> rename GITOXIDE_* environment variables to GIX_#

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 27 commits contributed to the release.
    • 54 days passed between releases.
    • 10 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge branch 'adjustments-for-cargo' (8156340)
      • Rename GITOXIDE_* environment variables to GIX_# (2189cee)
      • Merge branch 'gix-status' (5fdc9df)
      • gix rev parse --format to provide different versions of the same content. (cf51a4d)
      • J fmt (51c7abc)
      • Merge branch 'gix-status' (dfb3f18)
      • Adapt to changes in gix-diff (1706e23)
      • Add thediff::resource_cache() low-level utility for rapid in-memory diffing of combinations of resources. (4aea9b0)
      • Merge branch 'support_ssl_verify' (5ce9784)
      • In gix read http.sslVerify config value and pass it to gix-transport. (c6e83cf)
      • Merge branch 'check-cfg' (5a0d93e)
      • Remove dead code from non-existent "lean-cli" feature (be1fa2f)
      • Replace all docsrs config by the document-features feature (bb3224c)
      • Merge branch 'feat_basic_connectivity_check' (1f9aca5)
      • Flatten fsck connectivity into just fsck much like git fsck (7ab5c76)
      • Refactor (7a88b42)
      • Add basic connectivity check (8f795e8)
      • Merge branch 'fix-1096' (48ef17e)
      • Allow to print a tree without prettification, using --tree-style raw. (8dfbb4b)
      • Merge branch 'trace-packetlines' (e7de4c7)
      • Automatically enforce strict mode if -c options are given on the command-line. (f9ae1bc)
      • In --trace mode, greatly increase message-buffer size. (b230078)
      • Merge branch 'discover-split-worktree' (16170d9)
      • Add gix free discover to inform about repository discovery. (886289f)
      • Merge branch 'fix_completion-bin-name' (fb81093)
      • Refactor (7f2bc08)
      • Set binary name for completions (eab22bd) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release over the course of 6 calendar days.
    • 7 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.7.0, gix-trace v0.1.2, gix-actor v0.23.0, gix-commitgraph v0.17.1, gix-utils v0.1.4, gix-object v0.32.0, gix-ref v0.32.0, gix-config v0.25.0, gix-diff v0.32.0, gix-discover v0.21.0, gix-hashtable v0.2.3, gix-revwalk v0.3.0, gix-traverse v0.29.0, gix-index v0.20.0, gix-mailmap v0.15.0, gix-negotiate v0.4.0, gix-pack v0.39.0, gix-odb v0.49.0, gix-protocol v0.35.0, gix-revision v0.17.0, gix-refspec v0.13.0, gix-worktree v0.21.0, gix v0.48.0, safety bump 20 crates (27e8c18)
      • Prepare changelogs prior to release (00f96fb)
      • Upgrade memmap2 and fastrand dependencies (6fc7497) </details>
    Open source →
  49. 0.31.0 22 Jun 2023
    Release notes

    This release includes an overhaul of the url parsing implementation, allowing more urls to be parsed correctly and refining the error messages for invalid ones. Improvements include the added support for ssh aliases (github:byron/gitoxide has previously been parsed as local path), adjustments around the interpretation of colons in file names (previously we disallowed colons that were not followed up with a slash character) and some smaller changes that bring the interpretation of file urls more in line with Git's implementation.

    There are still many (edge) cases in Git's url parsing implementation which are not handled correctly by Gitoxide. If you notice any such deviation please open a new issue to help us making Gitoxide even more correct.

    New Features

    • <csr-id-70923a0fad3d409069bd9d0b492e6a9b7b113261/> add shell completions for bash
    • <csr-id-46e591914d548bacae2656ffe14a0ea7ca2eb7ae/> gix status auto-writes changed indices. This prevents expensive operations to re-occour.
    • <csr-id-7ba2fa1c7781230913b0a04ad8684fa7d0143c18/> gix status -s/--statistics to obtain additional information on what happened. This is useful for understanding performance characteristics in detail.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 8 commits contributed to the release over the course of 7 calendar days.
    • 18 days passed between releases.
    • 3 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge branch 'feat_completions' (681c607)
      • Refactor (fdd2df8)
      • User decides completion output (215c3ac)
      • Add shell completions for bash (70923a0)
      • Merge branch 'reset' (b842691)
      • Trust Ctime again (f929d42)
      • gix status auto-writes changed indices. (46e5919)
      • gix status -s/--statistics to obtain additional information on what happened. (7ba2fa1) </details>
    Open source →
    Release notes

    <csr-id-bcad5c22049d56a25ef69d6c7a3344e78f9a1d4d/>

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 9 commits contributed to the release over the course of 11 calendar days.
    • 16 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.6.0, gix-hash v0.11.3, gix-trace v0.1.1, gix-features v0.31.0, gix-actor v0.22.0, gix-path v0.8.2, gix-glob v0.9.0, gix-quote v0.4.5, gix-attributes v0.14.0, gix-chunk v0.4.3, gix-commitgraph v0.17.0, gix-config-value v0.12.2, gix-fs v0.3.0, gix-tempfile v7.0.0, gix-utils v0.1.3, gix-lock v7.0.0, gix-validate v0.7.6, gix-object v0.31.0, gix-ref v0.31.0, gix-sec v0.8.2, gix-config v0.24.0, gix-command v0.2.6, gix-prompt v0.5.2, gix-url v0.20.0, gix-credentials v0.16.0, gix-diff v0.31.0, gix-discover v0.20.0, gix-hashtable v0.2.2, gix-ignore v0.4.0, gix-bitmap v0.2.5, gix-revwalk v0.2.0, gix-traverse v0.28.0, gix-index v0.19.0, gix-mailmap v0.14.0, gix-negotiate v0.3.0, gix-pack v0.38.0, gix-odb v0.48.0, gix-packetline v0.16.3, gix-transport v0.33.0, gix-protocol v0.34.0, gix-revision v0.16.0, gix-refspec v0.12.0, gix-worktree v0.20.0, gix v0.47.0, gitoxide-core v0.29.0, gitoxide v0.27.0, safety bump 30 crates (ea9f942)
      • Prepare changelogs prior to release (18b0a37)
      • Merge branch 'corpus' (aa16c8c)
      • Change MSRV to 1.65 (4f635fc)
      • Merge branch 'help-874-redundant-closures' (fe59956)
      • Add clippy::redundant-closure-for-method-calls lint (bcad5c2)
      • Merge branch 'future-dates' (8d2e6a9)
      • Adapt to changes in gix-actor (4a80e86)
      • Adapt to changes in gix-date (d575336) </details>
    Open source →
  50. 0.30.0 06 Jun 2023
    Release notes

    <csr-id-d3ac691446c9d029eb4f04d111887fa06720939d/> <csr-id-ed327f6163f54756e58c20f86a563a97efb256ca/>

    This release contains a security fix which assure URLs like 'ssh://-oProxyCommand=open$IFS-aCalculator/foo' will not execute attacker-controlled strings. The above can, on MacOS, launch the calculator app when using it with gix clone for example, up to v0.29.0.

    New Features

    • <csr-id-f094f71dc1a50955552509d108556c01517c6ed6/> gix status with basic index-worktree comparison
    • <csr-id-3ff5ac0cda9e3e089dc79fdfbff5ff619ee60b1f/> gix free index from-list and gix index from-tree gain --skip-hash. This flag can be derived from options, but thus far we have no higher-level writing of the index so this has to do to see the difference in performance.

    Bug Fixes (BREAKING)

    • <csr-id-072ee32f693a31161cd6a843da6582d13efbb20b/> use dyn trait where possible. This reduces compile time due to avoiding duplication.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 13 commits contributed to the release over the course of 27 calendar days.
    • 33 days passed between releases.
    • 5 commits were understood as conventional.
    • 2 unique issues were worked on: #987, #992

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #987
      • Use a multi-call binary ('uni') to have only one build step (4ef9a32)
    • #992
      • Both ein and gix now share some code via the gitoxide library. (d3ac691)
    • Uncategorized
      • Merge branch 'reset' (54a8495)
      • gix status with basic index-worktree comparison (f094f71)
      • Merge branch dynification (f658fcc)
      • Use dyn trait where possible. (072ee32)
      • Update to the latest prodash (ed327f6)
      • Merge branch 'adjustments-for-cargo' (b7560a2)
      • Merge branch 'fixes' (4bfd1cc)
      • Thanks clippy (0d6d4ec)
      • Adapt to changes in gix-index and pass skip-hash through for performance.. (713cd59)
      • gix free index from-list and gix index from-tree gain --skip-hash. (3ff5ac0)
      • Add more configuration variables prior to potentially using them; remove index.skipHash (773b6e3) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 15 commits contributed to the release over the course of 25 calendar days.
    • 38 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.5.1, gix-hash v0.11.2, gix-features v0.30.0, gix-actor v0.21.0, gix-path v0.8.1, gix-glob v0.8.0, gix-quote v0.4.4, gix-attributes v0.13.0, gix-chunk v0.4.2, gix-commitgraph v0.16.0, gix-config-value v0.12.1, gix-fs v0.2.0, gix-tempfile v6.0.0, gix-utils v0.1.2, gix-lock v6.0.0, gix-validate v0.7.5, gix-object v0.30.0, gix-ref v0.30.0, gix-sec v0.8.1, gix-config v0.23.0, gix-command v0.2.5, gix-prompt v0.5.1, gix-url v0.19.0, gix-credentials v0.15.0, gix-diff v0.30.0, gix-discover v0.19.0, gix-hashtable v0.2.1, gix-ignore v0.3.0, gix-bitmap v0.2.4, gix-traverse v0.26.0, gix-index v0.17.0, gix-mailmap v0.13.0, gix-revision v0.15.0, gix-negotiate v0.2.0, gix-pack v0.36.0, gix-odb v0.46.0, gix-packetline v0.16.2, gix-transport v0.32.0, gix-protocol v0.33.0, gix-refspec v0.11.0, gix-worktree v0.18.0, gix v0.45.0, safety bump 29 crates (9a9fa96)
      • Prepare changelogs prior to release (8f15cec)
      • Merge pull request #878 from blinxen/main (67da689)
      • Include missing changelog file in some crates (0269eed)
      • Merge branch 'fix-docs' (420553a)
      • Minor fixes (89a8cfe)
      • Cleaning up documentation (2578e57)
      • Merge branch 'auto-clippy' (dbf8aa1)
      • Autofix map-or-unwrap clippy lint (and manual fix what was left) (2087032)
      • Merge branch 'main' into auto-clippy (3ef5c90)
      • Auto-fix clippy to remove explicit iter looping (3eff567)
      • Merge branch 'blinxen/main' (9375cd7)
      • Include custom clippy settings (b057500)
      • Include license files in all crates (facaaf6)
      • Release gix-object v0.29.2 (4f879bf) </details>
    Open source →
  51. 0.29.1 29 Apr 2023
    Release notes

    Bug Fixes

    • <csr-id-79cc2482aac9408630e38f7441310d7febabe0fe/> symbolic refs are now written with a newline. #(836) This should help some tools to work correctly.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 2 commits contributed to the release.
    • 2 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-ref v0.29.1 (13e01f5)
      • Symbolic refs are now written with a newline. #(836) (79cc248) </details>
    Open source →
  52. 0.29.0 27 Apr 2023
    Release notes

    New Features

    • <csr-id-1ccbe16117d58b68b25a8e3e66676a61a07dd49c/> gix submodule subcommand for simple submodule listing and information retrieval
    • <csr-id-6bc69e37deb3ebd88af8b0e8ffb9661562dcc679/> gix index entries --recurse-subomdules to also list submodules.
    • <csr-id-c30ac0c9f89fb4480c8f8c8c0c06fa046dcd4314/> gix index entries with styles and pathspecs. This adds support for more simple git style, which is faster and thus allows for more direct comparisons to git ls-files.
    • <csr-id-f194cfc920cc8622215bab5aa6b7b87e4fb9d7b2/> use real pathspecs where it was supported before.
    • <csr-id-cd6cfe4049bacd8d8a691668b5501a673867f149/> add gix commit verify-signature to do something akin to git ... --show-signature.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 20 commits contributed to the release over the course of 15 calendar days.
    • 31 days passed between releases.
    • 5 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge branch 'gix-submodule' (8f3f358)
      • gix submodule subcommand for simple submodule listing and information retrieval (1ccbe16)
      • Just fmt (0d258f4)
      • Merge branch 'submodule-in-gix' (36f7b78)
      • gix index entries --recurse-subomdules to also list submodules. (6bc69e3)
      • Merge branch 'submodule-active' (a3afaa4)
      • Adapt to changes in gix (ca972a2)
      • Use Defaults::from_environment() when parsing pathspecs. (2a99034)
      • Optimize startup times of gix index entries (22477bd)
      • Merge branch 'pathspec-matching' (9f4dfe0)
      • gix index entries with styles and pathspecs. (c30ac0c)
      • Use real pathspecs where it was supported before. (f194cfc)
      • Merge branch 'handlers-mt' (f584d76)
      • Adapt to changes in gix (a201f0d)
      • Merge branch 'extract-signatures' (b37affe)
      • Add gix commit verify-signature to do something akin to git ... --show-signature. (cd6cfe4)
      • Merge branch 'archive-gz' (c7d9129)
      • Adapt to changes in gix-archive (feba76d)
      • Merge branch 'submodules' (b629f8a)
      • .gitmodule file abstraction (6a2e6a4) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release.
    • 1 day passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-path v0.8.0, gix-glob v0.7.0, gix-attributes v0.12.0, gix-config-value v0.12.0, gix-ref v0.29.0, gix-sec v0.8.0, gix-config v0.22.0, gix-prompt v0.5.0, gix-url v0.18.0, gix-credentials v0.14.0, gix-discover v0.18.0, gix-ignore v0.2.0, gix-pack v0.35.0, gix-odb v0.45.0, gix-transport v0.31.0, gix-protocol v0.32.0, gix-refspec v0.10.1, gix-worktree v0.17.0, gix v0.44.1 (7ebc9f7)
      • Prepare changelogs prior to release (0135158)
      • Bump gix-path v0.8.0, safety bump 20 crates (gix set to 0.44.1 manually) (43ebaf2) </details>
    Open source →
  53. 0.28.0 26 Apr 2023
    Release notes

    New Features

    • <csr-id-32bbb8b7b1f195adf7e5f06fd2ddc19153516a2f/> add simple CLI for gix archive

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 8 commits contributed to the release over the course of 29 calendar days.
    • 30 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Merge branch 'gix-archive' (1dda48b)
      • Allow to create additional entries via the command-line (4a9d0f1)
      • Add compression support to gix archive, which is where it should shine. (567b1a4)
      • Add simple CLI for gix archive (32bbb8b)
      • Merge branch 'integrate-filtering' (b19a56d)
      • Add keys required to deal with worktree conversions and filters. (3fbd7b0)
      • Merge branch 'basic-filtering' (3fd5e16)
      • Add some configuration variables as planned due to relevancy with filters (fa04378) </details>
    Open source →
    Release notes

    Bug Fixes

    • <csr-id-3e93141b48ac3e0298c3165e7de0043187e373b9/> speed up finding references by avoiding double-lookup. Previously it would try to find <root>/HEAD twice due to a logic issue.
    • <csr-id-0c79bdf47ff18553edd330de9a82895393a55c54/> avoid unnecessary check for remotes/HEAD if we are looking for HEAD. This is because we already looked for that in the previous loop, and HEAD/HEAD makes no sense as this case is made for things like origin as partial name.

    New Features (BREAKING)

    • <csr-id-b83ee366a3c65c717beb587ad809268f1c54b8ad/> Rename serde1 cargo feature to serde and use the weak-deps cargo capability. With it it's possible to not automatically declare all optional dependencies externally visible features, and thus re-use feature names that oterwise are also a crate name.

      Previously I thought that serde1 is for future-proofing and supporting multiple serde versions at the same time. However, it's most definitely a burden I wouldn't want anyway, so using serde seems to be the way to go into the future.

    • <csr-id-b645d28f9641c6b4022e1e37ad9fe528922ec747/> remove types that are now available in gix-os

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 16 commits contributed to the release over the course of 14 calendar days.
    • 29 days passed between releases.
    • 4 commits were understood as conventional.
    • 1 unique issue was worked on: #814

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #814
      • Rename serde1 cargo feature to serde and use the weak-deps cargo capability. (b83ee36)
    • Uncategorized
      • Release gix-hash v0.11.1, gix-path v0.7.4, gix-glob v0.6.0, gix-attributes v0.11.0, gix-config-value v0.11.0, gix-fs v0.1.1, gix-tempfile v5.0.3, gix-utils v0.1.1, gix-lock v5.0.1, gix-object v0.29.1, gix-ref v0.28.0, gix-sec v0.7.0, gix-config v0.21.0, gix-prompt v0.4.0, gix-url v0.17.0, gix-credentials v0.13.0, gix-diff v0.29.0, gix-discover v0.17.0, gix-hashtable v0.2.0, gix-ignore v0.1.0, gix-bitmap v0.2.3, gix-traverse v0.25.0, gix-index v0.16.0, gix-mailmap v0.12.0, gix-pack v0.34.0, gix-odb v0.44.0, gix-packetline v0.16.0, gix-transport v0.30.0, gix-protocol v0.31.0, gix-revision v0.13.0, gix-refspec v0.10.0, gix-worktree v0.16.0, gix v0.44.0, safety bump 7 crates (91134a1)
      • Prepare changelogs prior to release (30a1a71)
      • Merge branch 'faster-discovery' (282a1a3)
      • Speed up finding references by avoiding double-lookup. (3e93141)
      • Avoid unnecessary check for remotes/HEAD if we are looking for HEAD. (0c79bdf)
      • Merge branch 'fix-823' (6ebd61e)
      • Thanks clippy (14e64e7)
      • Release gix-utils v0.1.0, gix-hash v0.11.0, gix-date v0.5.0, gix-features v0.29.0, gix-actor v0.20.0, gix-object v0.29.0, gix-archive v0.1.0, gix-fs v0.1.0, safety bump 25 crates (8dbd0a6)
      • Merge branch 'main' into dev (cdef398)
      • Rename the serde1 feature to serde (19338d9)
      • Create new gix-fs crate to consolidate all filesystem utilities (f8cc33c)
      • Merge branch 'main' into dev (23ee47f)
      • Merge branch 'worktree-stack' (3d47919)
      • Remove types that are now available in gix-os (b645d28)
      • Release gix-hash v0.10.4, gix-hashtable v0.1.3 (b574a39) </details>
    Open source →
  54. 0.27.2 28 Mar 2023
    Release notes

    Bug Fixes

    • <csr-id-3d6832cb0ea5dc4b3d798fd4ff86602df8d54407/> uncategorized refs should not be per-worktree When creating a new ref from using a Repository instantiated from a linked worktree, if the ref did not fit one of the well-known categories, it would be incorrectly stored as a per-worktree reference instead of a shared reference.

      For example, the reference "refs/stacks/linked" does not fit any of the well known categories. According to git-worktree(1), this ref should be shared across all worktrees; i.e. located at $GIT_COMMON_DIR/refs/stacks/linked and not in $GIT_COMMON_DIR/worktrees/linked/refs/stacks/linked.

      This change tweaks the control flow so that uncategorized refs correctly fallback to being relative to commondir while still placing refs that are supposed to be per-worktree in the per-worktree location.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 5 commits contributed to the release.
    • 14 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-ref v0.27.2 (e965b18)
      • Thanks clippy (fa98a92)
      • Merge branch 'fix-worktree-shared-refs' (9531b11)
      • Add more tests to validate uncategorized refs in the context of worktrees (de66453)
      • Uncategorized refs should not be per-worktree (3d6832c) </details>
    Open source →
  55. 0.27.1 14 Mar 2023
    Release notes

    A maintenance release without any user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 4 commits contributed to the release over the course of 3 calendar days.
    • 4 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-features v0.28.1, gix-tempfile v5.0.1, gix-ref v0.27.1, gix-pack v0.33.1, gix-packetline v0.15.0, gix-transport v0.29.0, gix-protocol v0.30.0, gix v0.42.0, safety bump 3 crates (c1f1bfb)
      • Prepare changelogs prior to release (c66e298)
      • Merge branch 'shallow-protocol' (531dd19)
      • Merge branch 'fix-cred-helper' (01277a6) </details>
    Open source →
  56. 0.27.0 10 Mar 2023
    Release notes

    <csr-id-bcad5c22049d56a25ef69d6c7a3344e78f9a1d4d/>

    This release fixes a possibility for V1 fetches to deadlock if negotiation would span multiple rounds (see issue #882) for details.

    New Features (BREAKING)

    • <csr-id-b82edc8b965344a866039f6c99295db4f8e776e2/> list commit-graph entries by graph traversal, move commit-graph up to gix level. This is merely a debug tool to learn about generation numbers. All commit-graph commands now operate on a repository.

    New Features

    • <csr-id-c494cfd6f80cf273107c626d0f2cbe054db378ee/> gix --trace to also print tree-like instrumentation

    • <csr-id-452ed6b79ed0e12ae214af3c8cd49a87dba91c73/> gix fetch --open-negotiation-graph[=limit] Open the negotiation graph as SVG, after optionally specifying a limit as rendering/layouting can be very slow.

      It's useful to see how the negotiation algorithm is reasoning about each commit.

    • <csr-id-096838ffa529148b2da3a2382a2d1fdbfe5bee5b/> gix fetch --negotiation-info to provide additional information about the negotiation phase.

    • <csr-id-bd32e393fedd01e27a4f6984281bcc3182c63b67/> bit revision list --svg to create a visual graph of commits. It's mainly a test of how well layout-rs performs.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 27 commits contributed to the release over the course of 10 calendar days.
    • 15 days passed between releases.
    • 6 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 1 time to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Make gitoxide publishable again (c16b1df)
      • Merge branch 'gix-corpus' (5861afb)
      • Add corpus --dry-run and --task-sql-suffix and --repo-sql-suffix (4cef57d)
      • Gix-corpus now respects the --trace flag (0f973ac)
      • Adapt to changes in gix-trace (bd6e3d7)
      • Merge branch 'corpus' (aa16c8c)
      • Thanks clippy (361cf96)
      • gix --trace to also print tree-like instrumentation (c494cfd)
      • Run tasks in parallel (cfd8e88)
      • Refresh a corpus repositories by updating all of them. (a0b4385)
      • Obtain a repository-list with classifiers (a4300c8)
      • Provide all the meta-data that is needed to make a run (and associate it with that) (fcbda1d)
      • A build script to set a gitoxide version according to what's in git (83f6466)
      • A basic command to perform a corpus run (d9e74ff)
      • Merge branch 'gix-revision-graph' (036e60a)
      • gix fetch --open-negotiation-graph[=limit] (452ed6b)
      • gix fetch --negotiation-info to provide additional information about the negotiation phase. (096838f)
      • Make top-level gix docs available when using cargo doc (518159d)
      • bit revision list --svg to create a visual graph of commits. (bd32e39)
      • Merge branch 'help-874-redundant-closures' (fe59956)
      • Merge branch 'fix-commitgraph' (2213321)
      • Bring back the no-repo commitgraph for stress-tests to work (ff8d42a)
      • Move commit-graph implementation into its correct place (750b07a)
      • Add clippy::redundant-closure-for-method-calls lint (bcad5c2)
      • Merge branch 'future-dates' (8d2e6a9)
      • List commit-graph entries by graph traversal, move commit-graph up to gix level. (b82edc8)
      • Add options related to commitgraph to gix config tree (7aaaebf) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Bug Fixes

    • <csr-id-8e8c71ba1238f0c8177f84810c2d9ed165010d7e/> implement Clone for PartialName. Also improve documentation for FullName* and PartialName* types.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release.
    • 6 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-tempfile v5.0.0, gix-lock v5.0.0, gix-ref v0.27.0, gix-config v0.19.0, gix-url v0.16.0, gix-credentials v0.12.0, gix-discover v0.16.0, gix-index v0.15.0, gix-pack v0.33.0, gix-odb v0.43.0, gix-transport v0.28.0, gix-protocol v0.29.0, gix-worktree v0.15.0, gix v0.41.0, safety bump 12 crates (29a0870)
      • Prepare changelogs prior to release (e06f5f5)
      • Implement Clone for PartialName. (8e8c71b) </details>
    Open source →
  57. 0.26.0 04 Mar 2023
    Release notes

    The main attraction of this release is support for multi-round negotiations thanks to support for the standard negotiations algorithms. Further, gix index entries now lists attributes as well, and there is the new gix attribute query sub-command in the vain of git check-attrs.

    New Features

    • <csr-id-e1fcc7f69e7b95aeac8cbbde3719a1e6b9dafeba/> gix attributes validate to validate attributes and ignore against git as baseline. Use this command to test the entire index for ignored paths and their attributes and use git check-attr and git check-ignore to validate that git agrees. Collect all mismatches and print them.
    • <csr-id-450b2325909459c7061f3d02f461c3f0f20f1e86/> --statistics for gix excludes query With it one gets some insights into the work done to fulfil the query.
    • <csr-id-bfdcb147cdc3d0338a4cd2bc915b0e0eeced1e99/> gix attribute query as something similar to git check-attrs.
    • <csr-id-b8db2072bb6a5625f37debe9e58d08461ece67dd/> no-repo index from-list to create an index with empty files from the given list. The list could be created with find . -type f for example.
    • <csr-id-13a0f1e568cf9ee462ecf01d416cfcd4949fd9c6/> add pro-forma library to allow feature documentation of gitoxide on docs.rs

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 17 commits contributed to the release over the course of 34 calendar days.
    • 41 days passed between releases.
    • 5 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • just fmt (ffc1276)
      • Merge branch 'integrate-gix-negotiate' (ae845de)
      • Adapt to changes in gix (7983f6f)
      • Keep track of core.alternateRefsCommand (d925896)
      • Merge branch 'auto-clippy' (dbf8aa1)
      • Include custom clippy settings (b057500)
      • Merge branch 'consecutive-negotiation' (4507f94)
      • Support reading the fetch algorithm from configuration (33b7770)
      • Merge branch 'gix-attributes-validate' (a849da8)
      • gix attributes validate to validate attributes and ignore against git as baseline. (e1fcc7f)
      • Merge branch 'gix-attribute-query' (1d70213)
      • --statistics for gix excludes query (450b232)
      • gix attribute query as something similar to git check-attrs. (bfdcb14)
      • no-repo index from-list to create an index with empty files from the given list. (b8db207)
      • Merge branch 'fix-841' (edeb4de)
      • Add pro-forma libaray to allow feature documentation of gitoxide on docs.rs (13a0f1e)
      • Use unlimited parallelism for jwalk to have a better comparison. (d67551d) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 3 commits contributed to the release.
    • 3 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-attributes v0.10.0, gix-ref v0.26.0, gix-config v0.18.0, gix-url v0.15.0, gix-credentials v0.11.0, gix-discover v0.15.0, gix-index v0.14.0, gix-mailmap v0.11.0, gix-odb v0.42.0, gix-transport v0.27.0, gix-protocol v0.28.0, gix-revision v0.12.0, gix-refspec v0.9.0, gix-worktree v0.14.0, gix v0.39.0 (93e75fe)
      • Prepare changelogs prior to release (895e482)
      • Release gix-features v0.28.0, gix-actor v0.19.0, gix-object v0.28.0, gix-diff v0.28.0, gix-traverse v0.24.0, gix-pack v0.32.0, safety bump 20 crates (0f411e9) </details>
    Open source →
  58. 0.25.0 01 Mar 2023
    Release notes

    A maintenance release without user-facing changes, just to fix installation

    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 8 commits contributed to the release over the course of 2 calendar days.
    • 9 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-tempfile v4.1.0, gix-lock v4.0.0, gix-ref v0.25.0, gix-config v0.17.0, gix-url v0.14.0, gix-credentials v0.10.0, gix-diff v0.27.0, gix-discover v0.14.0, gix-hashtable v0.1.2, gix-bitmap v0.2.2, gix-traverse v0.23.0, gix-index v0.13.0, gix-mailmap v0.10.0, gix-pack v0.31.0, gix-odb v0.41.0, gix-transport v0.26.0, gix-protocol v0.27.0, gix-revision v0.11.0, gix-refspec v0.8.0, gix-worktree v0.13.0, gix v0.38.0, safety bump 6 crates (ea9fd1d)
      • Release gix-features v0.27.0, gix-actor v0.18.0, gix-quote v0.4.3, gix-attributes v0.9.0, gix-object v0.27.0, gix-ref v0.25.0, gix-config v0.17.0, gix-url v0.14.0, gix-credentials v0.10.0, gix-diff v0.27.0, gix-discover v0.14.0, gix-hashtable v0.1.2, gix-bitmap v0.2.2, gix-traverse v0.23.0, gix-index v0.13.0, gix-mailmap v0.10.0, gix-pack v0.31.0, gix-odb v0.41.0, gix-transport v0.26.0, gix-protocol v0.27.0, gix-revision v0.11.0, gix-refspec v0.8.0, gix-worktree v0.13.0, gix v0.38.0 (e6cc618)
      • Remove versions from dev-dependencies to workspace crates. (3cfbf89)
      • Adjust manifests prior to release (addd789)
      • Prepare changelogs prior to release (94c99c7)
      • Merge branch 'adjustments-for-cargo' (d686d94)
      • Adapt to changes in gix-tempfile (bfcd1e3)
      • Prepare for git-tempfile release (56c005b) </details>
    Open source →
  59. 0.24.1 20 Feb 2023
    Release notes

    Bug Fixes

    • <csr-id-135d317065aae87af302beb6c26bb6ca8e30b6aa/> compatibility with bstr v1.3, use *.as_bytes() instead of .as_ref(). as_ref() relies on a known target type which isn't always present. However, once there is only one implementation, that's no problem, but when that changes compilation fails due to ambiguity.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 2 commits contributed to the release.
    • 3 days passed between releases.
    • 1 commit was understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • Uncategorized
      • Release gix-date v0.4.3, gix-hash v0.10.3, gix-features v0.26.5, gix-actor v0.17.2, gix-glob v0.5.5, gix-path v0.7.2, gix-quote v0.4.2, gix-attributes v0.8.3, gix-validate v0.7.3, gix-object v0.26.2, gix-ref v0.24.1, gix-config v0.16.2, gix-command v0.2.4, gix-url v0.13.3, gix-credentials v0.9.2, gix-discover v0.13.1, gix-index v0.12.4, gix-mailmap v0.9.3, gix-pack v0.30.3, gix-packetline v0.14.3, gix-transport v0.25.6, gix-protocol v0.26.4, gix-revision v0.10.4, gix-refspec v0.7.3, gix-worktree v0.12.3, gix v0.36.1 (9604783)
      • Compatibility with bstr v1.3, use *.as_bytes() instead of .as_ref(). (135d317) </details>
    Open source →
  60. 0.24.0 17 Feb 2023
    Release notes

    New Features

    • <csr-id-08e8fc2152794652ba1c986df493c2ac915af9e7/> gix index entries also prints attributes.
    • <csr-id-9723e1addf52cc336d59322de039ea0537cdca36/> gix clone and gix fetch with controls for shallow repositories.
    • <csr-id-f93e964b1f7ba95861966ce58ebef477013dd1b4/> ein t trace-path know accepts the trace-file alias.

    Bug Fixes

    • <csr-id-dd14a80a78fea3f092b1d5300637c80cfd9e59a7/> printing to stdout for commands that don't show progress is greatly improved. Previously it would have to lock stdout on each write, now this is done only once.
    • <csr-id-7bd8823ab4241d6d0401f03aec8c0d34f68c347c/> opening repositories without 'strict' mode also ignores IO errors. These will instead be logged, but won't make it impossible to open an otherwise fine repository.

    New Features (BREAKING)

    • <csr-id-ca8ebdfb9647ff15b0293823bb3bb3c6779c8dd2/> turn gix free index entries into gix index entries.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    • 25 commits contributed to the release.
    • 62 days passed between releases.
    • 6 commits were understood as conventional.
    • 2 unique issues were worked on: #301, #790

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #301
    • #790
      • Opening repositories without 'strict' mode also ignores IO errors. (7bd8823)
    • Uncategorized
      • Merge branch 'index-entries-attrs' (f37a930)
      • gix index entries also prints attributes. (08e8fc2)
      • Printing to stdout for commands that don't show progress is greatly improved. (dd14a80)
      • Turn gix free index entries into gix index entries. (ca8ebdf)
      • Merge branch 'attributes-cache' (3456c84)
      • Adjust to changes in gix-worktree (13a070f)
      • Merge branch 'fix-819' (69faad0)
      • Add information about configuration flags related to fsync usage (8d5762c)
      • Merge branch 'main' into dev (23ee47f)
      • Merge branch 'worktree-stack' (3d47919)
      • Assure we load all gitattributes when needed. (9237121)
      • Merge branch 'fix-790' (ee36e5b)
      • Add group headings to all shallow-related arguments. (bbb4cb0)
      • Keep track of index.skipHash (f29f35c)
      • Make fmt (3836cc0)
      • Merge branch 'various-fixes' (cc0f506)
      • Fix clap derive declaration of conflicts (c502fa8)
      • Merge branch 'shallow-protocol' (531dd19)
      • gix clone and gix fetch with controls for shallow repositories. (9723e1a)
      • Improve error handling and reporting of ein t query (d5616b6)
      • Make fmt (8ef1cb2)
      • Merge branch 'rename-tracking' (3827ac6)
      • ein t trace-path know accepts the trace-file alias. (f93e964) </details>
    Open source →
    Release notes

    <csr-id-ebc7f47708a63c3df4415ba0e702660d976dfb3e/> <csr-id-2290d006705ff47ad780b009fe58ee422b3285af/> <csr-id-0e1875363fea09452789d7a90fc6860a7996d6d3/> <csr-id-c46dec311c76a83dba136be5dba6b70d739c354d/> <csr-id-951c050ecbb70c9de216603e55c7cfbc89a067e3/> <csr-id-725210dc401406fe9450eae9d375b0238d645027/> <csr-id-4ed4b2da50557aff540685441f4b5c7d5e582977/> <csr-id-293bfc0278c5983c0beaec93253fb51f00d81156/> <csr-id-90e6128727932f917c485f411e623fc6a9c2ad4d/> <csr-id-f7f136dbe4f86e7dee1d54835c420ec07c96cd78/> <csr-id-533e887e80c5f7ede8392884562e1c5ba56fb9a8/>

    New Features (BREAKING)

    • <csr-id-3d8fa8fef9800b1576beab8a5bc39b821157a5ed/> upgrade edition to 2021 in most crates. MSRV for this is 1.56, and we are now at 1.60 so should be compatible. This isn't more than a patch release as it should break nobody who is adhering to the MSRV, but let's be careful and mark it breaking.

      Note that git-features and git-pack are still on edition 2018 as they make use of a workaround to support (safe) mutable access to non-overlapping entries in a slice which doesn't work anymore in edition 2021.

    • <csr-id-0ace957c595c8a38afb7de1462cdc73b617d2a76/> Turn FullNameRef into an actual reference type. That way Cow<'_, FullNameRef> works as expected.

    Changed (BREAKING)

    • <csr-id-e699291097cec346374a30c325848f787ca9d736/> file::Transaction::prepare() now takes two git_lock::acquisition::Fail instances. This allows to configure the file-ref lock failure mode differently from the packed-refs lock failure mode, which is exactly what git does as well defaulting them to 100ms and 1000ms till lock acquisition gives up.

    • <csr-id-0f753e922e313f735ed267f913366771e9de1111/> Target(Ref)?::try_name() now returns Option<&FullNameRef>. That way, the name is actually directly usable in most methods that require a validated name as input.

    • <csr-id-3d6299f47f41397c1c72035a86b94d1c263b5b98/> Transaction::commit(…) takes git-actor::SignatureRef instead of …::Signature. This makes the API more versatile and corrects a shortcoming that was caused by SignatureRef previously being unable to serialize itself.

    • <csr-id-f1dbb6bd4534527b6f1f2aba2a562dd4e64cf55d/> remove FullName::to_ref() in favor of •::as_ref(). This became possible now that FullNameRef is a proper ref, not just ref-like.

    • <csr-id-1611c3ddff6c930deaa4c2440383f5684c029b28/> rename PartialNameRef to PartialNameCow Because this is what it is, which also implies that it's not Copy anymore which a Ref would definitely be.

      The reason we need this to be a Cow is to support passing ownership.

    • <csr-id-8a92ec9834b6d5aa3057c5509f6c13b6a6cd6e1b/> remove Store from public API It is unclear if ref-tables, which are the reason for it to exist in the first place, will fit into the concept as they might not support worktrees. It's entirely unclear how this works.

      Maybe there can be a non-worktree version of the store with work-trees only being supported by the file based ref database, and ref-tables remaining a server-side feature.

    • <csr-id-2becffc85ff6225522fe38482739fb1406ae1060/> rename file::Store::base() to git_dir(). That way it is clearer what it actually is especially in presence of the newly added file::Store::common_dir() method.

      That way, work-trees can eventually be properly supported.

    • <csr-id-7984e19417dff13445f3ef2e15dea96bbd194ce5/> Target::as_(id|name) -> Target::try_(id|name) Conform to naming conventions, whenever something returns an option or Result while there is a more direct name that panics, prefix try_.

    • <csr-id-dea6659a404bf8b2ad1290549653c776ec04f964/> Required object_hash as parameter when instantiating any Store This is needed to choose the correct kind of object hash in a couple of situations, and future-proofs it for when ref-table arrives.

    • <csr-id-b431fb0fb58b5e2e8aadbbd6aead55c0e42bd67b/> rename file::Store::packed_buffer() to …::open_packed_buffer() This makes much clearer what it actually does, as previously it might have been a stored packed buffer as well.

    • <csr-id-80f3d504eeb669f16c5621fac06f6c763ce84e47/> file::Store::from(PathBuf) removed At this low level, it's important to be clear about RefLogs and rather force the caller to specify the ref-log mode. Technically it depends on a few factors, git-repository deals with them, but certainly shouldn't default to anything without being clear.

    • <csr-id-bfb32aee4e64fd6b1f18c830623cc3fddd059874/> Reference log line access

    • <csr-id-5d498a33236391d8e456f267b1bf6af24de66f11/> file::Store::iter() is now a platform, with .all() and .prefixed(…) respectively This way, it's possible to keep shared ownership of the packed buffer while allowing the exact same iterator machinery to work as before.

    • <csr-id-4641499abe00acf6eef0ab6d6bf261b0a27795f8/> file::ReferenceExt::follow(…) now without packed refs parameter

    • <csr-id-55940eb8316d83ac1376c57ba25b3115d62f2012/> file::ReferenceExt::peel_to_id_in_place(…) now without packed-refs buffer It is instead read from the internally synchronized buffer, shared across all instances.

    • <csr-id-15d429bb50602363292453606902bdce5042d9a5/> file::Store::(try_)find(…, packed) was removed The packed buffer is now handled internally while loading it on demand. When compiled with git-features/parallel the file::Store remains send and sync.

      The packed refs buffer is shared across clones and it's recommended to clone one file::Store instance per thread, each of which can use its own namespace.

    • <csr-id-95247322a8191edfa7fac9c5aa72b40239f3aa88/> move git_ref::file::WriteRefLog to git_ref::store::WriteRefLog

    Bug Fixes

    • <csr-id-584b705cee8be3fb68c67dcb8535b981d1efc5f4/> assure symrefs don't get deleted when moving refs to packed-refs. Previously it was possible for symbolic refs to be deleted right after they have been created or updated as they were included in the set of refs that was assumed to be part of packed-refs, which isn't the case for symbolic refs.

    • <csr-id-9f848506f5a42abc954612ea375f845e3b23ae5a/> case-insentively conflicting references can be created even on case-insensitie filesystems*. The asterisk indicates that this only works if packed-refs are present and these references are written straight to packed references without ever trying to handle the otherwise conflicting loose reference files.

      This is done by leveraging the fact that in presence of packed-refs or a pending creation of packed-refs, there is no need to create per-file locks as concurrent transactions also have to obtain the packed-refs lock and fail (or wait) until it's done.

    • <csr-id-e9853dd640cf4545134aa6e0d093e560af090a2b/> instead of erroring if loose iteration is performed on missing base, correctly yield zero references. Previously it reported an error, now it does not and instead performs no iteration, which is more helpful to the user of the API I believe as they won't randomly fail just because somebody deleted the refs folder.

    • <csr-id-27386a96ddc022ba75730901f8bb098b9d5ff9d4/> loose ref iteration on a repo with missing 'ref/' fails when creating the iterator. Previously, it would fail on first iteration, making it seem like there is one reference even though it's just an error stating that the base cannot be read.

      This is clearly worse than making a metadata check on the filesystem, no matter how unlikely the case.

    • <csr-id-6e5c0ae63deed181419232c61896e22404e4c84a/> allow symref updates to receive reflogs if these are new… …and well-known on top of that, that means having an exact expectation on what should be present.

      This allows symrefs to be created with reflog.

    • <csr-id-1d2003519e3b0f745af1524a32f2816475024b31/> always update modification date when packed refs are forcefully reloaded. The latter happens right after the file was written, which means we definitely have to update our modification date or else the buffer will be read again next time somebody asks for an up-to-date version.

      The ordering of operations is such that at worst, the buffer is loaded again instead of keeping an outdated version of it, which would happen if the metadata is read afterwards.

    • <csr-id-42e0487286c1f745837c0ce337ed7c9d86b14516/> support Rust 1.52

    New Features

    • <csr-id-e86e159e00c9b54803abbfa09809707be7ac8aee/> file::Transaction::rollback() allows to explicitly roll back a pending change. As opposed to dropping the Transaction, this method allows to obtain all edits that would have been applied.
    • <csr-id-bbdb4804d8c3bd6a1fb8bea97adce509c90c5ca8/> higher performance for edits which would write the same value. Instead of moving them into place, we just drop them, without ever writing into them.
    • <csr-id-370ed3dcc393eca7a393ea0150f698a9fc844320/> transaction::Change::new_value() to get easy access to new values of references. That's more convenient than matching on the enum.
    • <csr-id-658c1257c073507327d9a50c1c89b49d17e9ccbc/> FullName::try_from(&BString) for convenience. Sometimes when matching one only has a &BString, and it's hard to convert it to &BStr without an extra line of code, it's cumbersome, so we workaround by adding another conversion.
    • <csr-id-2d0b63997b276a53b3cf8f09fac51f8e3f044bcd/> Add Reference::delete() for simple reference deletion
    • <csr-id-b1c40b0364ef092cd52d03b34f491b254816b18d/> use docsrs feature in code to show what is feature-gated automatically on docs.rs
    • <csr-id-517677147f1c17304c62cf97a1dd09f232ebf5db/> pass --cfg docsrs when compiling for https://docs.rs
    • <csr-id-4607a18e24b8270c182663a434b79dff8761db0e/> Add store::WriteRefLog::Always to unconditionally write reflogs.
    • <csr-id-f3c609f0af00aa280649975b0705a3cfaad8a0e5/> Allow Reference to be serialized/deserialized with serde.
    • <csr-id-4a5176a78b64981ce5612b88c7736b7323aa8cdd/> ref iteration for worktrees. It merges the iteration result of private worktree refs along with all shared common references references.
    • <csr-id-9cccce35e527cdda58e01b03cd335a527418cf14/> Category::LinkedRef With it one can access all refs as advertised.
    • <csr-id-eada5dfdd4981dbb032e8f155e3829eb5d1f380f/> Category::MainRef With it it will be possible to compute all paths correctly and actually perform certain operations as documented.
    • <csr-id-0304b7fad3ae5e3ac1fea71e30658474a770184b/> Category::(WorktreePrivate|Bisect|Rewritten)
    • <csr-id-612a2dbf7f70a8eb44b7278fccd4f1589749968a/> Category::LinkedPseudoRef
    • <csr-id-613b5844e74535d391339bd8e7c106e18257b917/> Add Category::MainPseudoRef
    • <csr-id-6ccfea97d30dbfa013e1633c77c5a26ab5cbaf8f/> Category::PseudoRef
    • <csr-id-ecd60d7a75d4aef7c37cd0b28b57a8aea1166858/> add FullName(Ref)::category_and_shortname() It's a combination of shorten() and category() for convenience.
    • <csr-id-e7e4ba2739e5a15e826b5b4d9ef2b45a1cb016cc/> Fullname(Ref)::category() and Category A way to classify references.
    • <csr-id-af2d399261e4131299c2279904a1f224c116db66/> FullName(Ref)::strip_prefix() Get a short-hand for any reference name.
    • <csr-id-e4d6685064ad2b433f8acd3a74b320bf0169a994/> Add git_config::values::Path for a typesafe git path Add a Path type to the git_config::values which can be interpolated according to gits own path interpolation rules.
    • <csr-id-cf50ae2b33da0161d801b4c0a9cd8b5d24bb3510/> Display implementation for FullName.
    • <csr-id-28e3251ee1996f638eaa0bc7b39b06be436f6eb7/> FullNameRef::file_name()
    • <csr-id-f6181afef285b32968b852467235edf3d7d99a66/> Add file::Store::find_packed(…, buffer) This makes the API complete as now there is a methods that uses the internal buffer, or the provided one, where both can have its benefits.
    • <csr-id-03bcac2763076bfd720b99d60fd036b4d5d00995/> add Reference::peel_to_id_in_place_packed() and Reference::follow_packed() This allows a stable/non-changing buffer to be used.
    • <csr-id-6a17416557112a6464e548c5de1c46e563b3a187/> Add file::Store::iter_(prefixed_)packed() These methods allow using an own packed buffer, usually obtained through cached_packed_buffer().
    • <csr-id-9eb3a31d1f9f519e153e8df3fc3faaff278aed85/> add file::Store::cached_packed_buffer() for packed refs snapshots
    • <csr-id-b030884447284daf0f2251f574c0ddf9993b2792/> add file::Store::try_find_packed(…, packed_buffer) That way, abstractions can still be built that have other ways of managing the packed-refs buffer, allowing it to stay more persistent.
    • <csr-id-c0fc4f6f1b42c117275be85e1c2e6893b58007ba/> PartialNameRef<'static>::join() for building paths on the fly
    • <csr-id-b7aab9efd42975e8f2dcb5c97e51495996175702/> Allow PartialNameRef to be created from owned items

    Documentation

    • <csr-id-39ed9eda62b7718d5109135e5ad406fb1fe2978c/> fix typos

    Bug Fixes (BREAKING)

    • <csr-id-65c5589a419b2856c1576d838d4444554d7a582b/> commiting the revlog transaction is now optional. This also means that providing no committer despite one being needed is will cause the transaction to fail entirely with an error.

      Doing this allows users who disable the reflog not to have to deal with committer configuration at all.

    • <csr-id-328900add089f40d3bf9f1019c9f31663da387e2/> support for non-'static PackedRefs transactions. When configuring for packed-refs updates, previously one needed to provide a function to find objects that could not borrow data due to implicit 'static requirement. This has been lifted to allow it to access references to data on the stack.

    Commit Statistics

    <csr-read-only-do-not-edit/>

    Thanks Clippy

    <csr-read-only-do-not-edit/>

    Clippy helped 40 times to make code idiomatic.

    Commit Details

    <csr-read-only-do-not-edit/>

    <details><summary>view details</summary>

    • #198
      • Fix stop-release-for-changelog logic and fix all affected changelogs (52b38bc)
      • Deduplicate conventional message ids (e695eda)
      • Regenerate all changelogs to get links (0c81769)
      • Mention actual issues that where worked on (a517e39)
      • Respect release-wide ignore list to allow removing entire conventional headlines (145103d)
      • Rebuild all changelogs to assure properly ordered headlines (4a9a05f)
      • Sort all commits by time, descending… (f536bad)
      • Greatly reduce changelog size now that the traversal fix is applied (a0bc98c)
      • Generate changelogs with details (e1861ca)
      • Update all changelogs with details (58ab2ae)
      • Update changelogs (c857d61)
      • Avoid adding newlines which make writing unstable (6b5c394)
      • Fix section headline level (9d6f263)
      • Write first version of changlogs thus far… (719b6bd)
      • Add panicking Target::id() and TargetRef::id() (4ed4b2d)
      • Loose reference iteration with non-dir prefixes… (293bfc0)
      • Improve changelog format (90e6128)
    • #222
      • Update changelogs prior to release (9a493d0)
      • Stabilize changelogs (920e832)
      • Update changelogs prior to release (b3e2252)
    • #251
      • PartialNameRef<'static>::join() for building paths on the fly (c0fc4f6)
      • Refactor (244a646)
      • Allow PartialNameRef to be created from owned items (b7aab9e)
    • #254
      • Adjust changelogs prior to git-pack release (6776a3f)
    • #259
      • Btree/hashmap free lookup of packs in store, keeping things more bundled (a88981b)
    • #263
      • Don't unnecessarily reload the packed-refs buffer under contention (3ab990e)
      • Use a read-lock until mutation is needed, instead of upgradable rw locks (58294dd)
      • Refactor (e41ab82)
      • Add file::Store::find_packed(…, buffer) (f6181af)
      • Add Reference::peel_to_id_in_place_packed() and Reference::follow_packed() (03bcac2)
      • Add file::Store::iter_(prefixed_)packed() (6a17416)
      • Add file::Store::cached_packed_buffer() for packed refs snapshots (9eb3a31)
      • Rename file::Store::packed_buffer() to …::open_packed_buffer() (b431fb0)
      • Add file::Store::try_find_packed(…, packed_buffer) (b030884)
      • File::Store::from(PathBuf) removed (80f3d50)
      • Put general Store on hold - ref-table is needed to know how to go about it (bfa417b)
      • Don't even think about setting up test duplication for the general store (72a6464)
      • Reference::logs() -> Reference::log_iter() (951c050)
      • Reference log line access (bfb32ae)
      • Add platform for log iteration to hold byte buffers (1cd2362)
      • Assure the packed buffer is reloaded after a modification (f5570ff)
      • Fmt (fbeddeb)
      • File::Store::iter() is now a platform, with .all() and .prefixed(…) respectively (5d498a3)
      • Refactor (5fc3817)
      • Refactor packed buffer sharing to allow for sharing snapshots (00c2545)
      • Let file transactions reuse the cached packed buffer (a9096b9)
      • File::ReferenceExt::follow(…) now without packed refs parameter (4641499)
      • file::ReferenceExt::peel_to_id_in_place(…) now without packed-refs buffer (55940eb)
      • File::Store::(try_)find(…, packed) was removed (15d429b)
      • Load packed buffer with interior mutability (ae2eef1)
      • Make it possible to return read guards with packed buffers (f5c3c8f)
      • file::Store::base is now file::Store::base() and read-only (0e18753)
      • Refactor, realize why having a packed-buffer with the loose db is valuable (a76f041)
      • A mad attempt to use thread-local everywhere and avoid Sync… (0af5077)
      • Try implementing find_reference to realize that this extra abstraction is overkill (82ea1b8)
      • Look into iteration, but realize that it's harder than finding refs (fc753a8)
      • Sketch of State is seen in store handle and store itself (f87f852)
      • Sketch a store handle (fc6480b)
      • Move git_ref::file::WriteRefLog to git_ref::store::WriteRefLog (9524732)
    • #266
      • Upgrade git-ref's os_str_bytes crate to 6.0.0 (0cfba57)
      • Adapt to changes in git-odb (a44dd4b)
      • Remove pack-cache from Find::try_find(…) (ebc7f47)
      • Clarify that we really need stable pack ids (cefc0fa)
      • Move git_pack::data::Object to git_object::Data, massively alter git_odb::Find trait (2290d00)
    • #279
      • Adapt to changes in git-hash (754a663)
      • Adjust to changes in git-hash (9bf25cc)
      • Required object_hash as parameter when instantiating any Store (dea6659)
      • Remove Target::must_exist() (c46dec3)
      • Adapt to changes in git-hash (3e75e8c)
    • #293
    • #298
      • Enforce path conversion on windows gnu, it doesn't seem to like slashes (4d55a8f)
      • Mention that failing path when a ref-file couldn't be read (ecb539a)
      • Use hash_hasher based hash state for better keys/less collisions (814de07)
      • Display implementation for FullName. (cf50ae2)
      • FullNameRef::file_name() (28e3251)
    • #301
      • Update changelogs prior to release (84cb256)
      • Ref iteration for worktrees. (4a5176a)
      • Down to one borrowcheck error (7571be5)
      • Possibly a step towards solving this traversal… (c64a77f)
      • Prepare for dual-iteration (200384c)
      • Make a common-dir iterator available (78658c7)
      • Refactor (5521391)
      • Try all prefixes when producing a relative path for error purposes (8cf0302)
      • Restore previous non-namespace test (ba17b40)
      • Refactor (1b3a6da)
      • Refactor (7777f7e)
      • Represent loose iteration in terms of the overlay iterator (ad37a64)
      • Start preparing for multi-loose ref iteration, but… (014459b)
      • Validate traversal of main repository refs in presence of worktrees (f067286)
      • Refactor (c2ac110)
      • Simplify worktree test to not include superfluous refs (c46d838)
      • Assure proper handling of transactions in linked worktrees (07dc555)
      • Humble beginnings of transaction testing within worktrees (6f52606)
      • Many more tests around transactions and prefix handling (8f3a4b5)
      • Assure that private worktree refs have their reflogs written (96efbb1)
      • Properly adjust names for prefixed refs for use in packed-refs and filter them (797af14)
      • Prepare for filtering soon to be packed refs by name (3cea2ad)
      • Uncover issue naming of refs written to packed-refs (1acf875)
      • A first test of main worktree transactions incl. changelog (9c5ab38)
      • Adjusts to changes in git-ref (b362fb5)
      • Transaction::commit(…) takes git-actor::SignatureRef instead of …::Signature. (3d6299f)
      • First rough step towards support iteration (b987575)
      • Prepare for tests that can write into our test repositories (096ee5f)
      • Improve reflog base generation in transactions so it could possibly work (d69b56e)
      • Improve conversions as much as possible (befe949)
      • Validate that owned values indeed can't be passed anymore (c78008e)
      • Avoid using Cow at all in favor of a simple &PartialNameref (1bc9a87)
      • This didn't get better, but probably will stay that way (7da239f)
      • See what it means to use Cow<PartialNameRef> (2ae129a)
      • All custom TryFrom implementations for Cow<PartialNameRef> (15afec1)
      • Cow support for PartialNameRef (3e470da)
      • Adapt to changes in git-ref (21109ca)
      • Remove FullName::to_ref() in favor of •::as_ref(). (f1dbb6b)
      • Reflog handling for worktree/ ref-names (77877e0)
      • Parse the worktree name as part of the cateogry (7666034)
      • Refactor (cebf736)
      • More fixes for worktree ref handling (1aa546d)
      • Better packed refs lookup for worktree refs (2b6982e)
      • Fix bugs with name resolution (3031f99)
      • Assure main-worktree is also resolved in the main worktree (bc3c05e)
      • Assure nobody can bypass the namespace anymore (0079ab6)
      • Frame for tests in worktree and main repositories (b12884a)
      • Assure namespaces are respected when calculating bases (4aac3c2)
      • Fix docs (e189914)
      • Transactions fully rely on proper base (d3a12e3)
      • Packed-refs now use correct common dir (dd7be18)
      • Reflog paths are now computed according to their ref name (c4d2493)
      • Refactor (e93c222)
      • First draft of fixture setup for worktrees (a25b0bc)
      • Use suitable full names for store based packed-refs lookup too (d25b3ca)
      • Packed-refs can now possibly transform names for lookup correctly (6478736)
      • Offer a way to search packed refs by full name only (ae57e27)
      • Also build what should be a valid path for loose-ref lookup (37deca5)
      • Refactor (19d53fb)
      • Refactor (32b8fde)
      • Refactor (09eb432)
      • Refactor (f83910f)
      • Loose ref lookup uses categories for refanames (61b449c)
      • Prepare for switch to category based base-path lookup (14c6f48)
      • Unify pseudo-ref check for find reference (8c52fe4)
      • Admit that we need PartialPathCow and can't work around it (202bafc)
      • Rename PartialNameRef to PartialNameCow (1611c3d)
      • Refactor (4e26e62)
      • Refactor (a611224)
      • Refactor (467d583)
      • Refactor (3574a4e)
      • Category::LinkedRef (9cccce3)
      • Category::MainRef (eada5df)
      • Category::(WorktreePrivate|Bisect|Rewritten) (0304b7f)
      • Category::LinkedPseudoRef (612a2db)
      • Add Category::MainPseudoRef (613b584)
      • Category::PseudoRef (6ccfea9)
      • Remove Store from public API (8a92ec9)
      • Rename file::Store::base() to git_dir(). (2becffc)
      • Adapt to changes in git-path (cc2d810)
      • Adapt to all changes in git-path with bstr support (f158648)
      • Use git-path crate instead of git_features::path (47e607d)
      • Adjustments to go along with changes in git-features (c55cac6)
      • Make fmt (50ff7aa)
      • Performance issue on windows is due to slow process execution speed (60bcffc)
      • Speed up git-pack testing on windows (8ca400c)
    • #329
      • Document all features related to serde1 (72b97f2)
    • #331
      • Target(Ref)?::try_name() now returns Option<&FullNameRef>. (0f753e9)
      • Add store::WriteRefLog::Always to unconditionally write reflogs. (4607a18)
      • Add git_config::values::Path for a typesafe git path (e4d6685)
    • #333
      • Use git_features::path everywhere where there is a path conversion (2e1437c)
      • Remove os-str-bytes everywhere (71a086a)
      • Found one valid case for using os-str-bytes (9c294bf)
      • Make real clear panics are only possible on windows (6b283dc)
      • One usage of os_str_bytes down, along with some custom conversion code (1cc95ce)
      • Gitoxide-core without os-str-bytes (909aa14)
      • Don't use os_str_ext in git-features; adapt git-ref (9258b7b)
      • Use new git-features::path module (7c53b27)
    • #364
      • Add FullName(Ref)::category_and_shortname() (ecd60d7)
      • Target::as_(id|name) -> Target::try_(id|name) (7984e19)
      • Refactor (b1b9871)
      • Fullname(Ref)::category() and Category (e7e4ba2)
      • FullName(Ref)::strip_prefix() (af2d399)
      • Full error handling for CommitRefIter (b94471a)
    • #384
      • No need to isolate archives by crate name (19d46f3)
      • Add archive files via git-lfs (7202a1c)
      • Auto-set commit.gpgsign=false when executing git (c23feb6)
    • #393
      • Add support for disabling archive usage (624ad2e)
    • #427
      • Make fmt (4b320e7)
      • Adapt to changes in git-features (777b40c)
      • Adjust to changes in git-features (07168c7)
      • Use generalized reload-on-demand in git-ref (8d0cce7)
      • Now it's possible to update packed refs using the shared code (78222c2)
      • The first step towards using the generalized ReloadIfChanged in git-ref (e8de0ef)
      • Always update modification date when packed refs are forcefully reloaded. (1d20035)
      • Allow Reference to be serialized/deserialized with serde. (f3c609f)
    • #450
      • Support for non-'static PackedRefs transactions. (328900a)
      • Add test to validate new symref reflog behaviour (8b5cf38)
      • Allow symref updates to receive reflogs if these are new… (6e5c0ae)
      • transaction::Change::new_value() to get easy access to new values of references. (370ed3d)
      • file::Transaction::prepare() now takes two git_lock::acquisition::Fail instances. (e699291)
      • FullName::try_from(&BString) for convenience. (658c125)
      • Improve docs slightly (4850202)
      • Better refmap printing (6f60a79)
      • Fix windows tests (140e690)
      • Fix docs (dad9cbe)
      • Replace quick-error with thiserror (725210d)
      • Adjust to changes in git-validate (4eac45f)
    • #470
      • Update changelogs prior to release (caa7a1b)
    • #595
      • Assure symrefs don't get deleted when moving refs to packed-refs. (584b705)
      • Avoid lock-acquisition for refs which are to be deleted if a global lock is helt. (66b053d)
      • Case-insentively conflicting references can be created even on case-insensitie filesystems*. (9f84850)
      • Instead of erroring if loose iteration is performed on missing base, correctly yield zero references. (e9853dd)
      • Loose ref iteration on a repo with missing 'ref/' fails when creating the iterator. (27386a9)
      • First test to validate how collisions are expressed. (3f54ade)
      • Attempt to add the first case-sensitive test… (063ab73)
      • file::Transaction::rollback() allows to explicitly roll back a pending change. (e86e159)
      • Higher performance for edits which would write the same value. (bbdb480)
    • #691
      • Set rust-version to 1.64 (55066ce)
    • #XXX
      • Prepare changelogs prior to release (8c0bca3)
    • Uncategorized
      • Release gix-attributes v0.8.2, gix-config-value v0.10.1, gix-tempfile v3.0.2, gix-lock v3.0.2, gix-validate v0.7.2, gix-object v0.26.1, gix-ref v0.24.0, gix-sec v0.6.2, gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (e313112)
      • Release gix-features v0.26.4, gix-actor v0.17.1, gix-glob v0.5.3, gix-path v0.7.1, gix-quote v0.4.1, gix-attributes v0.8.2, gix-config-value v0.10.1, gix-tempfile v3.0.2, gix-lock v3.0.2, gix-validate v0.7.2, gix-object v0.26.1, gix-ref v0.24.0, gix-sec v0.6.2, gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (6efd0d3)
      • Release gix-date v0.4.2, gix-hash v0.10.2, gix-features v0.26.4, gix-actor v0.17.1, gix-glob v0.5.3, gix-path v0.7.1, gix-quote v0.4.1, gix-attributes v0.8.2, gix-config-value v0.10.1, gix-tempfile v3.0.2, gix-lock v3.0.2, gix-validate v0.7.2, gix-object v0.26.1, gix-ref v0.24.0, gix-sec v0.6.2, gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (6ccc88a)
      • Merge branch 'rename-crates' into inform-about-gix-rename (c9275b9)
      • Rename git-testtools to gix-testtools (b65c33d)
      • Adjust to renaming of git-pack to gix-pack (1ee81ad)
      • Adjust to renaming of git-odb to gix-odb (476e2ad)
      • Adjust to renaming of git-index to gix-index (86db5e0)
      • Adjust to renaming of git-diff to gix-diff (49a163e)
      • Adjust to renaming of git-commitgraph to gix-commitgraph (f1dd0a3)
      • Adjust to renaming of git-mailmap to gix-mailmap (2e28c56)
      • Adjust to renaming of git-discover to gix-discover (53adfe1)
      • Adjust to renaming of git-lfs to gix-lfs (b9225c8)
      • Adjust to renaming of git-chunk to gix-chunk (59194e3)
      • Adjust to renaming of git-bitmap to gix-bitmap (75f2a07)
      • Adjust to renaming for git-protocol to gix-protocol (823795a)
      • Adjust to renaming of git-refspec to gix-refspec (c958802)
      • Adjust to renaming of git-revision to gix-revision (ee0ee84)
      • Adjust to renaming of git-transport to gix-transport (b2ccf71)
      • Adjust to renaming of git-credentials to gix-credentials (6b18abc)
      • Adjust to renaming of git-prompt to gix-prompt (6a4654e)
      • Adjust to renaming of git-command to gix-command (d26b8e0)
      • Adjust to renaming of git-packetline to gix-packetline (5cbd22c)
      • Adjust to renaming of git-worktree to gix-worktree (73a1282)
      • Adjust to renamining of git-hashtable to gix-hashtable (26a0c98)
      • Adjust to renamining of git-worktree to gix-worktree (108bb1a)
      • Adjust to renaming of git-url to gix-url (b50817a)
      • Adjust to renaming of git-date to gix-date (9a79ff2)
      • Adjust to renamining of git-attributes to gix-attributes (4a8b3b8)
      • Adjust to renaminig of git-quote to gix-quote (648025b)
      • Adjust to renaming of git-config to gix-config (3a861c8)
      • Adjust to renaming of git-ref to gix-ref (1f5f695)
      • Rename git-ref to gix-ref (a56e628)
      • Adjust to renaming of git-lock to gix-lock (2028e78)
      • Adjust to renaming of git-tempfile to gix-tempfile (b6cc3eb)
      • Adjust to renaming of git-object to gix-object (fc86a1e)
      • Adjust to renaming of git-actor to gix-actor (4dc9b44)
      • Adjust to renaming of git-validate to gix-validate (5e40ad0)
      • Adjust to renaming of git-hash to gix-hash (4a9d025)
      • Adjust to renaming of git-features to gix-features (e2dd68a)
      • Adjust to renaming of git-glob to gix-glob (35b2a3a)
      • Adjust to renaming of git-sec to gix-sec (eabbb92)
      • Adapt to renaming of git-path to gix-path (d3bbcfc)
      • Adjust to rename of git-config-value to gix-config-value (622b3e1)
      • Release git-features v0.26.4 (109f434)
      • Release git-features v0.26.3 (1ecfb7f)
      • Merge branch 'ren
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive