PackageTrack
Sign in Get early access

gix-index

A work-in-progress crate of the gitoxide project dedicated implementing the git index file

0.55.0 43M downloads/mo #1361 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 57 of 58 stable releases

1 version withdrawn

withdrawn after publishing

4 years old

59 releases · first in 2023

16 releases in the last 12 months

see the full history below

Release timeline

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

Releases

latest 59
  1. 0.55.0 22 Aug 2026

    Nothing published for this version

  2. 0.54.0 23 Jul 2026
    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 →
  3. 0.53.0 22 Jun 2026
    Release notes

    Commit Statistics

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

    • 9 commits contributed to the release over the course of 27 calendar days.
    • 27 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.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 #2664 from ameyypawar/docs/2421-index-write-tree-cache (f7d6608)
      • Merge pull request #2635 from GitoxideLabs/dependabot/cargo/cargo-7b971a5e8c (155ff6d)
      • Bump the cargo group with 40 updates (9402adc)
      • Merge pull request #2598 from cruessler/run-gix-index-tests-with-sha-256 (b5b2d54)
      • Review (bc4064c)
      • Add generated archives (6ab2993)
      • Use GIX_TEST_FIXTURE_HASH for gix-index tests (3bca1a1)
      • Merge pull request #2618 from GitoxideLabs/report (f7d4f33) </details>
    Open source →
  4. 0.52.0 26 May 2026
    Release notes

    Documentation

    • <csr-id-7a426e765dde5805b843900aa83e855038f60641/> improve docs to make clear they need repo-relative slash separated paths.

    New Features

    • <csr-id-e4bdd1fbf9c00853e76cfe34c98990422dc504a9/> greatly improve the index File debug output. This allows tests to rely on it more with insta, and not miss a thing.

    Bug Fixes

    • <csr-id-08f22e5dcbde4fedcca70b898f0ec79c7e020906/> correctly decode untracked extension
      • Fix ctime/mtime flip in stat decoding
      • Fix incomplete decoding to mirror git, with associated ported git test

    Commit Statistics

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

    • 30 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-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 #2591 from AaronMoat/untracked-extension-reading (85c6087)
      • Greatly improve the index File debug output. (e4bdd1f)
      • Stabilize UNTR fixture stat times (69d644e)
      • Review (7f4d492)
      • Correctly decode untracked extension (08f22e5)
      • Merge pull request #2590 from GitoxideLabs/independent-testtools (575113d)
      • Adapt to changes in gix-testtools (ce9e6bd)
      • Merge pull request #2582 from GitoxideLabs/fix/gix-index-tree-write-overflow (a0a3acb)
      • Avoid TREE extension write overflow (f6f74e0)
      • Merge pull request #2573 from cruessler/run-gix-traverse-tests-with-sha-256 (278d7ec)
      • sha1 and sha256 forwardings for all crates (09b982c)
      • 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)
      • Bump the cargo group across 1 directory with 10 updates (4c77f81)
      • Merge pull request #2559 from GitoxideLabs/fix/symlink-prefix-reuse-worktree-escape-ghsa-f89h-2fjh-2r9q (3af9b4a)
      • Release gix-fs v0.21.1 (d3e4c17)
      • Address auto-review (1d9bae2)
      • Document vulnerability of State::from_tree() (f3cc6b9)
      • Add State::from_tree()`` benchmark coverage ([05f36c4`](https://github.com/GitoxideLabs/gitoxide/commit/05f36c440d5c8c9a7d43a3a16fcba0f23481af36))
      • Merge pull request #2543 from cruessler/run-gix-worktree-stream-tests-with-sha-256 (23af41a)
      • Adapt to changes in gix-testtoolsand rename hash_kind -> object_hash (d9648e8)
      • Merge pull request #2555 from GitoxideLabs/index-docs (048e8df)
      • Improve docs to make clear they need repo-relative slash separated paths. (7a426e7)
      • Merge pull request #2546 from GitoxideLabs/fix-2545 (adb8328) </details>
    Open source →
  5. 0.51.0 27 Apr 2026
    Release notes

    Commit Statistics

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

    • 2 commits contributed to the release over the course of 2 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-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)
      • Merge pull request #2540 from GitoxideLabs/reporting (4d5ba23) </details>
    Open source →
  6. 0.50.0 24 Apr 2026
    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

    New Features

    • <csr-id-93e587c1eb02d08db0fe04f13520556100bfedbe/> add gix-index fuzzing and make it survive
    • <csr-id-915139f1b0d49bd9815ab24c41c08108934c6c28/> add WASI (wasm32-wasip2) platform support Add compilation support for the wasm32-wasip2 target across four crates:

    Commit Statistics

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

    • 11 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 corpus-builder scripts when corpus files are available; auto-run artifacts in test suite (e64e3b8)
      • Add fuzz tests for 10 more crates, and related fixes (0396152)
      • Add gix-index fuzzing and make it survive (93e587c)
      • 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 #2471 from willemneal/feat/wasi-support (fb0f694)
      • Refactor (ce9dcd7)
      • Add WASI (wasm32-wasip2) platform support (915139f)
      • Merge pull request #2480 from GitoxideLabs/report (98bae84) </details>
    Open source →
  7. 0.49.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/>

    • 9 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 #2455 from huajingyun01/main (ab36136)
      • Merge pull request #2454 from GitoxideLabs/dependabot/cargo/cargo-da044b9bb0 (6183fd0)
      • Revert "fix(gix-index): handle loongarch64-musl stat struct field names" (afe154c)
      • 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.48.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.47.0 10 Feb 2026
    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

    Bug Fixes

    • <csr-id-7e25c3426b382493007fa6982873f76baa9d020d/> handle loongarch64-musl stat struct field names On loongarch64-unknown-linux-musl with musl 1.2.3+, the libc stat struct uses POSIX timespec fields (st_mtim, st_ctim) instead of separate seconds and nanoseconds fields (st_mtime, st_mtime_nsec).

      This was exposed by libc 0.2.180 which added proper time64 support for this target, causing compilation failures in rust-lang/rust CI.

      Fixes the same pattern already used for AIX and Hurd targets.

    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.
    • 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.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 #2428 from weihanglo/fix-loongarch64-musl-stat (4fe8e38)
      • Handle loongarch64-musl stat struct field names (7e25c34)
      • 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.46.0 22 Jan 2026
    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

    New Features

    • <csr-id-f1b3906b665af3da180b6e40c48944b890311a8a/> Add State::path_is_dir() and State::path_is_dir_icase()

    New Features (BREAKING)

    • <csr-id-95a8d2dd76f2f5e1b7d2201e8410b778c4d730f8/> rename State::entry_closest_to_directory(_icase)() to State::entry_closest_to_directory_or_directory(_icase)(). This also changes the meaning, allowing it to return directory entries, which makes them a perfect match.
    • <csr-id-5c1bd0387f98eee37265a42ba4b6624c783c9a71/> Use std::ops::ControlFlow where possible

    Commit Statistics

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

    • 9 commits contributed to the release over the course of 16 calendar days.
    • 16 days passed between releases.
    • 3 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 #2382 from GitoxideLabs/improvements (12924d7)
      • Rename State::entry_closest_to_directory(_icase)() to State::entry_closest_to_directory_or_directory(_icase)(). (95a8d2d)
      • Make gix_index::State::path_is_directory() work with submodules. (58507f8)
      • Use std::ops::ControlFlow where possible (5c1bd03)
      • Add State::path_is_dir() and State::path_is_dir_icase() (f1b3906)
      • Merge pull request #2364 from GitoxideLabs/changelogs (0a333e5)
      • Merge pull request #2346 from GitoxideLabs/release (c663b3f) </details>
    Open source →
  11. 0.45.1 06 Jan 2026
    Release notes

    Commit Statistics

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

    • 4 commits contributed to the release over the course of 5 calendar days.
    • 6 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-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 →
  12. 0.45.0 31 Dec 2025
    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

    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 →
  13. 0.44.0 22 Dec 2025
    Release notes

    Commit Statistics

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

    • 1 commit 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) </details>
    Open source →
  14. 0.43.0 22 Nov 2025
    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

    Commit Statistics

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

    • 2 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.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 #2230 from yuki0iq/doc_auto_cfg (fbf9c39) </details>
    Open source →
  15. 0.42.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 →
  16. 0.42.0 22 Oct 2025
    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

    Bug Fixes

    • <csr-id-66158d283553787217c722f0cd9f1b87ca588a96/> Add PartialEq, Eq, PartialOrd, Ord to more types.

    Commit Statistics

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

    • 19 commits contributed to the release over the course of 99 calendar days.
    • 99 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.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 #2219 from cruessler/use-split-at-checked (12b3257)
      • Replace split_at_pos by split_at_checked (027b3ef)
      • 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 #2145 from GitoxideLabs/dependabot/cargo/cargo-2a6d70b8ef (8d8dba2)
      • Bump the cargo group with 3 updates (074ca1e)
      • Merge pull request #2119 from GitoxideLabs/improvements (f3be6e3)
      • Add PartialEq, Eq, PartialOrd, Ord to more types. (66158d2)
      • Merge pull request #2113 from GitoxideLabs/release (dc7343c)
      • Release gix-actor v0.35.4, gix-fs v0.16.1, gix-object v0.50.2, gix-ref v0.53.1 (79ba9d0)
      • 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 #2075 from GitoxideLabs/improvements (784c046) </details>
    Open source →
  17. 0.41.0 15 Jul 2025
    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

    Bug Fixes

    • <csr-id-c85b92d991a91bb1044fe5f784524f568e72c45b/> Prefer the actual state over following core.symlinks in entry::Mode

    Commit Statistics

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

    • 9 commits contributed to the release over the course of 65 calendar days.
    • 66 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.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 #2070 from GitoxideLabs/dependabot/cargo/cargo-827bceb7eb (dab97f7)
      • Bump the cargo group across 1 directory with 68 updates (a9a8ea1)
      • Merge pull request #2047 from blinxen/update-hashbrown (00bd1fa)
      • Update hashbrown to 0.15. (6f569ce)
      • Merge pull request #2016 from GitoxideLabs/improvements (7ae3797)
      • Prefer the actual state over following core.symlinks in entry::Mode (c85b92d)
      • Merge pull request #2009 from GitoxideLabs/release-gix-index (c3f06ae) </details>
    Open source →
  18. 0.40.1 10 May 2025
    Release notes

    Bug Fixes

    • <csr-id-00e89341cd89f58d031eee8a4e60f6ebdcd53185/> Fix build on NetBSD

    Commit Statistics

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

    • 7 commits contributed to the release over the course of 14 calendar days.
    • 14 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-path v0.10.18, gix-date v0.10.2, gix-traverse v0.46.2, gix-index v0.40.1 (d2b4c44)
      • Prepare changelogs prior to release of gix-index (bfc4880)
      • Merge pull request #2005 from 0-wiz-0/main (33c4d6b)
      • Fix build on NetBSD (00e8934)
      • 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 →
  19. 0.40.0 26 Apr 2025
    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

    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 →
  20. 0.39.1 25 Apr 2025 withdrawn
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 21 commits contributed to the release.
    • 21 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-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)
      • Update more changelogs (614b389)
      • 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)
      • Thanks clippy (6f009d7)
      • Merge pull request #1968 from GitoxideLabs/dependabot/cargo/cargo-bd18780e40 (46227e6)
      • Bump the cargo group with 40 updates (06bf1e1)
      • Merge pull request #1957 from EliahKagan/run-ci/versioning (5823b22)
      • Adapt Cargo.toml files in workspace to gix-features bump (6315536)
      • Merge pull request #1953 from GitoxideLabs/dependabot/cargo/cargo-4a3cda0de8 (3aec7fb)
      • Bump the cargo group with 3 updates (9f1fbc7)
      • Merge pull request #1949 from GitoxideLabs/dependabot/cargo/cargo-6893e2988a (b5e9059)
      • Bump the cargo group with 21 updates (68e6b2e)
      • Merge pull request #1933 from GitoxideLabs/release-gix-features (1612c73)
      • Release gix-features v0.41.1 (fc5faf2)
      • Merge pull request #1917 from pierrechevalier83/issue_1887 (6307f57)
      • Adapt to changes in gix-object (8969245)
      • Merge pull request #1919 from GitoxideLabs/release (420e730) </details>
    Open source →
  21. 0.39.0 04 Apr 2025
    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

    <csr-id-426c669d58231ca22cd900f6fd86d59138d6a6ea/>

    New Features

    • <csr-id-de4375a13fad109d97cac65a84073a538f3611f2/> Add From<gix_object::tree::EntryKind> for entry::Mode That way it's easier to add new entries to the index.
    • <csr-id-668cb12815bf07857f8ab54f79954af031edd426/> add State::remove_(tree|resolve_undo)() to remove possibly outdated extensions.
    • <csr-id-81730967d60298a149a597915885dab63bdcd069/> add State::remove_entry_at_index(pos) by position.

    Changed (BREAKING)

    • <csr-id-5095f44db58014f4a35ea8996a90d56d2ac19d45/> adjust error return types to handle collision detection This does mean a lot of churn across the tree, but the change is usually just an adjustment to variants of an existing error type, so I expect that most downstream users will require little to no adaption for this change.
    • <csr-id-4f2b6496109573237f82ee30058cbb93abf3e338/> use separate error type for I/O hashing operations Prepare for hashing becoming fallible.
    • <csr-id-54e57649f0e0b15c0bd1d3233e41524cb91a8cb9/> adjust hash verification return types for the common interface This mostly just affects return types – using git_hash::verify::Error instead of bespoke duplicated versions thereof, and occasionally returning an ObjectId instead of () for convenience.

    Commit Statistics

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

    • 23 commits contributed to the release.
    • 76 days passed between releases.
    • 7 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.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 #1915 from emilazy/push-qvyqmopsoltr (4660f7a)
      • Refactor (4501086)
      • Prepare gix-index end-of-index extension parsing for SHA256. (f879654)
      • Migrate hashing API users to fallible versions (fbf6cc8)
      • Adjust error return types to handle collision detection (5095f44)
      • Use separate error type for I/O hashing operations (4f2b649)
      • Adjust hash verification return types for the common interface (54e5764)
      • Migrate all hashing API users to gix_hash::Hasher::finalize() (4e935ce)
      • Migrate all hashing API users to gix_hash (baa1430)
      • Merge pull request #1907 from EliahKagan/run-ci/raw (7b17da6)
      • Drop trailing , just before ) on same line in function calls (66a5ae1)
      • Use raw literals for more strings with backslashes (01bd76d)
      • Merge pull request #1854 from GitoxideLabs/montly-report (16a248b)
      • Thanks clippy (8e96ed3)
      • Merge pull request #1837 from GitoxideLabs/improvements (b4fe425)
      • Add From<gix_object::tree::EntryKind> for entry::Mode (de4375a)
      • Add State::remove_(tree|resolve_undo)() to remove possibly outdated extensions. (668cb12)
      • Add State::remove_entry_at_index(pos) by position. (8173096)
      • Merge pull request #1818 from EliahKagan/from-fs-doc (14d6b8d)
      • Expand from_fs doc (426c669)
      • Merge pull request #1778 from GitoxideLabs/new-release (8df0db2) </details>
    Open source →
  22. 0.38.0 18 Jan 2025
    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

    <csr-id-17835bccb066bbc47cc137e8ec5d9fe7d5665af0/>

    Bug Fixes

    • <csr-id-4989cda067c3c1e33e2525d9e30022aa2c61c275/> State::from_tree() is now faster. It uses depth-first traversal out of the box which allows it to save the sorting in the end. It's also a little bit faster.

    Commit Statistics

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

    • 12 commits contributed to the release over the course of 55 calendar days.
    • 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-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)
      • Update all changelogs prior to release (1f6390c)
      • Merge pull request #1773 from GitoxideLabs/improvements (c2d1a5d)
      • Assure that the recently added worktree_mode actually represents it. (fc2021f)
      • Merge pull request #1768 from GitoxideLabs/improvements (34fa6bb)
      • Slightly improve docs of entry::Mode::change_to_match_fs() (18b2a97)
      • Merge pull request #1762 from GitoxideLabs/fix-1759 (7ec21bb)
      • Bump rust-version to 1.70 (17835bc)
      • Merge pull request #1410 from GitoxideLabs/status (0ab4f64)
      • State::from_tree() is now faster. (4989cda)
      • Adapt to changes in gix-traverse (1de4e70)
      • Merge pull request #1701 from GitoxideLabs/release (e8b3b41) </details>
    Open source →
  23. 0.37.0 24 Nov 2024
    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

    New Features

    • <csr-id-63978f6e54cf48e7b5afe65dede851890a163ebd/> entry::Stage can now be converted into entry::Flags. This makes it easier to change the stage of an entry.

    Commit Statistics

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

    • 16 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 #1661 from GitoxideLabs/merge (0b7abfb)
      • entry::Stage can now be converted into entry::Flags. (63978f6)
      • Merge pull request #1687 from EliahKagan/run-ci/32bit (aeaebec)
      • Deduplicate some repeated tests (dc0a73a)
      • 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 #1652 from EliahKagan/run-ci/chmod (8e99eba)
      • Regenerate gix-index fixture archive (eab6735)
      • Set +x in index in v2_all_file_kinds and v2_deeper_tree fixtures (f72ff21)
      • Merge pull request #1648 from EliahKagan/run-ci/touch-next (417bf95)
      • Make touch logic in file_metadata.sh more portable (c430897)
      • Merge pull request #1642 from GitoxideLabs/new-release (db5c9cf) </details>
    Open source →
  24. 0.36.0 22 Oct 2024
    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

    <csr-id-64ff0a77062d35add1a2dd422bb61075647d1a36/>

    Commit Statistics

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

    • 17 commits contributed to the release.
    • 61 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-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)
      • Update gitoxide repository URLs (64ff0a7)
      • Merge pull request #1612 from Byron/merge (37c1e4c)
      • Thanks clippy (af03832)
      • Merge pull request #1587 from jayvdb/typos (c2bdda4)
      • Fix typos (b12c7c9)
      • Merge pull request #1586 from Byron/fix-ci (22fbe70)
      • Update crate-status to inform about tree-editing capabilities (fe1eb97)
      • 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 #1547 from nyurik/cast-lossless (c3a7dcf)
      • Fix clippy::cast_lossless (29ad2df)
      • Merge pull request #1546 from nyurik/semilocons (f992fb7)
      • Add missing semicolons (ec69c88) </details>
    Open source →
    Release notes

    gix-worktree-stream v0.36.0

    Compare

    Choose a tag to compare

    Open source →
  25. 0.35.0 22 Aug 2024
    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

    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.34.0 22 Aug 2024
    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.
    • 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-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 pull request #1496 from EliahKagan/touch (9b72c61)
      • Have touch in test fixture fall back to portable format (bbbd1eb) </details>
    Open source →
  27. 0.33.1 23 Jul 2024
    Release notes

    <csr-id-daf3844c8f5ce6d0812e35677b1a46d568e226db/>

    Bug Fixes

    • <csr-id-c8c56aebaac95f0f73220055dc33e6e0ebdb5ced/> re-export gix_validate as it's now part of the public API. This allows calling State::from_tree().

    Commit Statistics

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

    • 23 commits contributed to the release over the course of 57 calendar days.
    • 62 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)
      • Merge branch 'fix-windows-tests' (c2753b8)
      • Add more standard traits to Change type. (b3973e4)
      • Release gix-actor v0.31.4, gix-object v0.42.3 (bf3d82a)
      • Merge branch 'heredocs' (7330844)
      • Regenerate archives (a4bb7b9)
      • Use << rather than <<- heredoc operator (2641f8b)
      • Merge pull request #1425 from EliahKagan/strange-symlink-targets (6df6e84)
      • Add missing executable bits on two fixture scripts (d944598)
      • Merge branch 'various-fixes' (f71b7a0)
      • Re-export gix_validate as it's now part of the public API. (c8c56ae)
      • Merge branch 'tar-only' (1dfa90d)
      • Remove binary files in favor of tar files (dcab79a)
      • Merge branch 'main' into config-key-take-2 (9fa1054)
      • 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 #1383 from sthibaul/hurd (e8b6bc2)
      • Fix accessing st_[mc]time (daf3844) </details>
    Open source →
  28. 0.33.0 22 May 2024
    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

    <csr-id-b6a67d7fe3b5645fccb785af01d72919c6761c52/>

    New Features

    • <csr-id-956469944d14bc0e5b16e3f95d407bb8b2282903/> add From<gix_object::tree::Mode> for gix_index::entry::Mode.

    Bug Fixes (BREAKING)

    • <csr-id-2ea87f0060fd796961a2173569f16f362ed61617/> State::from_tree() now performs name validation. Previously, malicious trees could be used to create a index with invalid names, which is one step closer to actually abusing it.

    Commit Statistics

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

    • 9 commits contributed to the release over the course of 33 calendar days.
    • 34 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-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)
      • Merge pull request from GHSA-7w47-3wg8-547c (79dce79)
      • State::from_tree() now performs name validation. (2ea87f0)
      • Apply suggestions from code review (bad9a79)
      • Make clear that indices can contain invalid or dangerous paths. (b6a67d7)
      • Add From<gix_object::tree::Mode> for gix_index::entry::Mode. (9564699)
      • Merge branch 'cargo-fixes' (977346e) </details>
    Open source →
  29. 0.32.1 18 Apr 2024
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 4 commits contributed to the release.
    • 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-index v0.32.1, gix-pathspec v0.7.4, gix-worktree v0.33.1, gix-dir v0.4.1 (54ac559)
      • Prepare changelog prior to gix-dir patch release (6ca6fa6)
      • Merge pull request #1345 from EliahKagan/shell-scripts (fe24c89)
      • Add missing +x bit on scripts that are run and not sourced (41bf65a) </details>
    Open source →
  30. 0.32.0 13 Apr 2024
    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

    New Features (BREAKING)

    • <csr-id-a6cc78176c5b399c363bb6ee776cb16d6f5d3dad/> turn entry::Stage into an enum. This way, it's much clearer what possible values are. For performance, it also adds Entry::stage_raw() to avoid having to match on a number.

    Commit Statistics

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

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

    Commit Details

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

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

    • #1330
      • Fix unread-fields warnings on latest nightly (2e06a00)
    • Uncategorized
      • Release gix-trace v0.1.9, gix-utils v0.1.12, gix-packetline-blocking v0.17.4, gix-filter v0.11.1, gix-fs v0.10.2, gix-traverse v0.39.0, gix-worktree-stream v0.12.0, gix-archive v0.12.0, gix-config v0.36.1, gix-url v0.27.3, gix-index v0.32.0, gix-worktree v0.33.0, gix-diff v0.43.0, gix-pathspec v0.7.3, gix-dir v0.4.0, gix-pack v0.50.0, gix-odb v0.60.0, gix-transport v0.42.0, gix-protocol v0.45.0, gix-status v0.9.0, gix-worktree-state v0.10.0, gix v0.62.0, gix-fsck v0.4.0, gitoxide-core v0.37.0, gitoxide v0.35.0, safety bump 14 crates (095c673)
      • Prepare changelogs prior to release (5755271)
      • Merge branch 'status' (45edd2e)
      • Adapt to changes in gix-index (1e1fce1)
      • Turn entry::Stage into an enum. (a6cc781) </details>
    Open source →
  31. 0.31.1 18 Mar 2024
    Release notes

    A re-release to deal with breakage in the dependency tree (self-caused).

    Commit Statistics

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

    • 1 commit 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
      • Improve documentation slightly (b7c9275) </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.
    • 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-actor v0.31.1, gix-object v0.42.1, gix-index v0.31.1, gix-pathspec v0.7.2, gix-dir v0.3.0, gix-status v0.8.0, gix v0.61.0, safety bump 2 crates (155cc45)
      • Prepare changelog prior to release (129ba3d)
      • Merge branch 'improvements-for-cargo' (41cd53e)
      • Remove a TODO as it doesn't make sense anymore. (b05af9f) </details>
    Open source →
  32. 0.31.0 14 Mar 2024
    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

    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/>

    • 7 commits contributed to the release over the course of 10 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)
      • Fix usage of tracing span (which now is just a message) (259b38e) </details>
    Open source →
  33. 0.30.0 25 Feb 2024
    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

    New Features

    • <csr-id-ec37db42f0c22268cf400ae193cfb04466f45b0e/> Provide information about whether or not EOIE and IEOT extensions were available. These are only relevant when reading, and have to be regenerated after writing. During reading, they can speed up performance by allowing multi-threading.

    Bug Fixes (BREAKING)

    • <csr-id-cbda06d7673c3461b82f5999295d3b00a7c273ef/> refactor ignore-case functionality to actually work. The new implementation does the same as Git, and initializes an alternative lookup location.

      All previous implementations with _icase suffix were removed without replacement.

    Commit Statistics

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

    • 12 commits contributed to the release.
    • 36 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.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 branch 'btoi' (5fc379d)
      • Refactor (c5c69bd)
      • Inline btoi code to reduce compile times (f26f298)
      • Merge branch 'dirwalk' (face359)
      • Provide information about whether or not EOIE and IEOT extensions were available. (ec37db4)
      • Refactor ignore-case functionality to actually work. (cbda06d)
      • Merge branch 'tempfile-permissions' (7b44c7f)
      • Release gix-tempfile v13.1.0, gix-lock v13.1.0, safety bump 12 crates (8430442)
      • Merge branch 'chunks_exact' (d4d478b)
      • Use chunks_exact where possible (2482023) </details>
    Open source →
  34. 0.29.0 20 Jan 2024
    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/>

    • 2 commits contributed to the release.
    • 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-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) </details>
    Open source →
  35. 0.28.2 15 Jan 2024
    Release notes

    New Features

    • <csr-id-7c2eeb07ed0184a6c271f4a54604cba7d2abe811/> Add directory lookup, as well as ignore-case capabilities. This is needed to be able to refer from an entry on disk to the index, and figure out if the index already has such entry.

      New methods are:

      • File::entry_by_path_icase
    • File::prefixed_entry_range_icase
    • File::entry_by_path_and_stage_icase
    • File::directory_kind_by_path_icase

    Commit Statistics

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

    • 12 commits contributed to the release over the course of 16 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-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)
      • Prepare changelogs prior to gix-index release (17d1aac)
      • Merge branch 'fix-stat-with-negative-times' (08e6ca8)
      • Assure negative nanoseconds on MacOS are handled (bf49cd4)
      • Fix stat on files with timestamps before the epoch (f4a29dc)
      • Add test for file metadata handling with extreme values (5c57c6b)
      • Merge pull request #1249 from joshtriplett/simplify-cfg-within-function (dfb7b0f)
      • Merge pull request #1248 from joshtriplett/tyop (39f35da)
      • Avoid using #[cfg] on multiple individual function arguments (6fc27ee)
      • Typo fixes (3ef3bc2)
      • Merge branch 'gix-status' (c3983c6)
      • Add directory lookup, as well as ignore-case capabilities. (7c2eeb0) </details>
    Open source →
  36. 0.28.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 →
  37. 0.28.0 29 Dec 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

    <csr-id-aea89c3ad52f1a800abb620e9a4701bdf904ff7d/>

    Bug Fixes

    • <csr-id-569caa0314599c93651d9116d00fde64b81d2ace/> use correct fields for ctime and mtime on AIX On AIX, ctime and mtime are structs containing seconds and nanoseconds.

    Commit Statistics

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

    • 10 commits contributed to the release over the course of 17 calendar days.
    • 19 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.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)
      • Adapt to changes in gix-hash (859a092)
      • Merge pull request #1194 from ecnelises/aix_stattime (940e3ca)
      • Use correct fields for ctime and mtime on AIX (569caa0)
      • Merge branch 'main' into fix-1183 (1691ba6)
      • Merge branch 'archive-handling' (7549559)
      • Check all git-lfs managed files into the repository (35439de) </details>
    Open source →
  38. 0.27.1 10 Dec 2023
    Release notes

    Bug Fixes

    <csr-id-e2e17c60008f287796c6c10e1fa8a64a3d4a9105/>

    • <csr-id-03fa7ac64c99abc804252630c03b5b9085e9ea81/> NetBSD doesn't have st_mtime_nsec and st_ctime_nsec It has st_mtimensec and st_ctimensec instead.

      • https://man.netbsd.org/NetBSD-8.0/stat.2
    • https://docs.rs/libc/0.2/x86_64-unknown-netbsd/libc/struct.stat.html#structfield.st_mtimensec
    • https://docs.rs/libc/0.2/aarch64-unknown-netbsd/libc/struct.stat.html#structfield.st_mtimensec
    • https://docs.rs/libc/0.2/x86_64-unknown-netbsd/libc/struct.stat.html#structfield.st_ctimensec
    • https://docs.rs/libc/0.2/aarch64-unknown-netbsd/libc/struct.stat.html#structfield.st_ctimensec

    Commit Statistics

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

    • 6 commits contributed to the release over the course of 2 calendar days.
    • 4 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-hash v0.13.3, gix-index v0.27.1 (98b08f4)
      • Prepare changelog for gix-index release (b3ecbb7)
      • Merge pull request #1170 from weihanglo/netbsd (523692b)
      • NetBSD doesn't have st_mtime_nsec and st_ctime_nsec (03fa7ac)
      • Merge branch '32bit' (ff1542c)
      • Builds on 32bit android now work. (e2e17c6) </details>
    Open source →
  39. 0.27.0 06 Dec 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

    New Features

    • <csr-id-21bea0f5496a0db607356c803a545358e766fa92/> impl From<entry::Mode> for gix_object::tree::EntryMode.

    Changed (BREAKING)

    • <csr-id-1165de0d00b99a85387868d1ebb6423fd0e89b6b/> Use new gix-object::Find trait
    • <csr-id-806ea473e6e3ca3bf929f7d46c6f087296fceb09/> use gix-object::Find trait

    New Features (BREAKING)

    • <csr-id-3c8421f003bc3a5f2f51cee1b5cb6a526d5e0f38/> Add git-style metadata support. As opposed to the Rust standard library, this one will get the ctime from the file itself, instead of from the inode.

      That way, the index file written by gix will not continuously be expensively rewritten by git, and vice versa.

    Commit Statistics

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

    • 23 commits contributed to the release.
    • 55 days passed between releases.
    • 4 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)
      • Merge branch 'gix-status' (5fdc9df)
      • Impl From<entry::Mode> for gix_object::tree::EntryMode. (21bea0f)
      • J fmt (51c7abc)
      • Merge branch 'gix-status' (dfb3f18)
      • Adapt to changes in gix-diff (1706e23)
      • 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 'sh-on-windows' (2b80d84)
      • Remove special handling in favor of allowing shell-avoidance. (a0cc80d)
      • Merge branch 'gix-status' (c87f2cc)
      • Add git-style metadata support. (3c8421f)
      • Merge branch 'fix-1096' (ff99a18)
      • Adapt to changes in gix-object (203d69c)
      • Merge branch 'gix-object-find' (c8bd660)
      • Adapt to changes related to usage of gix-object::Find trait where necessary (5761a4d)
      • Use new gix-object::Find trait (1165de0)
      • Use gix-object::Find trait (806ea47)
      • Merge branch 'size-optimization' (c0e72fb)
      • Remove CHANGELOG.md from all packages (b65a80b) </details>
    Open source →
  40. 0.26.0 12 Oct 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

    Bug Fixes (BREAKING)

    • <csr-id-a1794b537c036e5469f7c2808d460bffcc6eeb5a/> use PathStorageRef in place of &PathStorage

    Commit Statistics

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

    • 9 commits contributed to the release over the course of 13 calendar days.
    • 18 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-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)
      • Merge branch 'fix-input' (a899f74)
      • Assure a prefixed entries range is never empty. (357ba13)
      • Fix docs (995bc84)
      • Merge branch 'reset' (b842691)
      • Use PathStorageRef in place of &PathStorage (a1794b5)
      • Add more traces to potentially longer-running operations (1568948)
      • Adapt to gix-features (9e7c3e1) </details>
    Open source →
  41. 0.25.0 24 Sep 2023
    Release notes

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

    Open source →
    Release notes

    New Features

    • <csr-id-959dc175b7925e0a7952c23ad92f83a32ad9609c/> add trace for State::from_tree() as it's rather time-consuming

    Bug Fixes

    • <csr-id-fd034e03b5a05dcc7a01014ce6a97b7cf93086be/> make time conversion more robust Previously it could easily fail if very old files are found, or future ones. Instead, such entries simply can't be compared quickly.

    Commit Statistics

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

    • 5 commits contributed to the release over the course of 1 calendar day.
    • 16 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-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)
      • Merge branch 'reset' (54a8495)
      • Make time conversion more robust (fd034e0)
      • Add trace for State::from_tree() as it's rather time-consuming (959dc17) </details>
    Open source →
  42. 0.24.0 08 Sep 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

    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 6 calendar days.
    • 7 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 'optimizations' (6135a5e)
      • Optimize internal gix usage for faster compile time (9d33e2f)
      • Merge branch dynification (f658fcc)
      • Use dyn trait where possible. (072ee32)
      • Merge branch 'adjustments-for-cargo' (b7560a2) </details>
    Open source →
  43. 0.23.1 01 Sep 2023
    Release notes

    Bug Fixes

    • <csr-id-6a8314bb99099e2a3f5364a5761a5254aa36393a/> prefixed_entries_range() now works correctly with directory prefixes. Previously, not all directory prefixes would work as expected due to incorrect search criteria.

    Commit Statistics

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

    • 2 commits contributed to the release.
    • 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-index v0.23.1 (11b9c71)
      • prefixed_entries_range() now works correctly with directory prefixes. (6a8314b) </details>
    Open source →
  44. 0.23.0 01 Sep 2023
    Release notes

    This release adds the new ein tool query analytics engine, which maintains a database of a git repository as acceleration data structure to run useful queries on. It's nothing more than an MVP, and was inspired by a program to accelerate Git-Heat-Map.

    New Features

    • <csr-id-f8cc62376bd6e940be4c41e84ccbfce111e64e39/> ein tool query - a git analytics engine. A tool to build and efficiently maintain a database of information contained in a git repository, preferably the kind of information that is expensive to obtain, in order to facilitate queries that would be prohibitive without an accelerating data structure.
    • <csr-id-49520d1f03ee1d011f6e9f2eb07084d327fe95ae/> gix tree entries with rev-spec support. Previously it wanted a tree-id, now it can derive it itself.

    Commit Statistics

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

    • 4 commits contributed to the release over the course of 7 calendar days.
    • 7 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 'rename-tracking' (550144a)
      • ein tool query - a git analytics engine. (f8cc623)
      • gix tree entries with rev-spec support. (49520d1)
      • Fix journey tests; improve panic handling when --progress is used. (571121c) </details>
    Open source →
    Release notes

    New Features

    • <csr-id-cfbfa43069c8d82fbd74b8296f63fc050a5ba02a/> add State::prefixed_range() to obtain a range of entries matching a prefix. This makes it easier to make changes to entries of a certain prefix.
    • <csr-id-8b689c222668b0c35c508f1907b03cbd4ba09bba/> add State::remove_entries() and entry_range(). This makes it possible to, among other things, delete all occurrences of a particular entry.
    • <csr-id-2f42132410ef47a7c274030811452ef40701c8a0/> add support for write::Options::skip_hash. With it, a hash will not be produced for indices.

    Bug Fixes

    • <csr-id-616932516d122a24e29fb42c60147fe43c5cead9/> gix-index prefix matching should now work correctly with conflicting files. It was done in a rush and lacks a lot of tests. At least now it has a greater chance of working, as tests that would truly validate this are still missing for a lack of test date. It can be produced with git update-index, but it wasn't yet worth it.

    New Features (BREAKING)

    • <csr-id-61c2e34b10c2ad5c92edd4ec1d5d1be2317ac481/> Check the hash when reading via File::at() just like git, or skip the check. Note that indices written with index.skipHash=true will be vastly faster to read by a factor of 2 or more.

    Bug Fixes (BREAKING)

    • <csr-id-b310d044ac5c2bb1c874d0cfe701411e4aef47be/> skip the null-hash when validating the index. This is needed for compatibility with index.skipHash, which may skip producing the hash at the end of the index file, just filling in the null-hash.

    Commit Statistics

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

    • 10 commits contributed to the release over the course of 9 calendar days.
    • 10 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
      • Release gix-date v0.7.4, gix-index v0.23.0, safety bump 5 crates (3be2b1c)
      • Prepare gix-index release (6fdbc66)
      • Add State::prefixed_range() to obtain a range of entries matching a prefix. (cfbfa43)
      • Add State::remove_entries() and entry_range(). (8b689c2)
      • gix-index prefix matching should now work correctly with conflicting files. (6169325)
      • Merge branch 'fixes' (4bfd1cc)
      • Check the hash when reading via File::at() just like git, or skip the check. (61c2e34)
      • Add support for write::Options::skip_hash. (2f42132)
      • Skip the null-hash when validating the index. (b310d04)
      • Merge branch 'gix-submodule' (363ee77) </details>
    Open source →
  45. 0.22.0 22 Aug 2023
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 7 commits contributed to the release.
    • 8 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 branch 'rename-crates' into inform-about-gix-rename (c9275b9)
      • Adjust to renaming for git-protocol to gix-protocol (823795a)
      • Adjust to renaming of git-features to gix-features (e2dd68a)
      • Merge branch 'rename-crates' (6461c3d)
      • Rename git-repository to gix (7bed2a9)
      • Merge branch 'rename-tracking' (9e7d792)
      • Keep track of all keys relevant renaming when merging and obtaining status (0f2ed59) </details>
    Open source →
    Release notes

    <csr-id-93feea269eebd114e866e6f29f4a73c0096df9e0/>

    New Features

    • <csr-id-5fd63646a643df0f30e24d0bcdec9edfd3176b50/> add entry::Mode::is_submodule()
    • <csr-id-05ed96548da9c1ec04592df24bdd2133df62e16d/> add State::prefixed_entries() returning a range of entries with a given prefix. This is useful to limit entry traversal and thus do less work.

    Commit Statistics

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

    • 13 commits contributed to the release over the course of 18 calendar days.
    • 31 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-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 (6c62e74)
      • 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)
      • More cleanup of test crates (73c685a)
      • Split tests off into their own crate to allow feature toggles. (93feea2)
      • Merge branch 'submodule-in-gix' (36f7b78)
      • Add entry::Mode::is_submodule() (5fd6364)
      • Merge branch 'pathspec-matching' (9f4dfe0)
      • Add State::prefixed_entries() returning a range of entries with a given prefix. (05ed965)
      • 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)
      • Merge branch 'dev-on-linux' (6b4a303)
      • Fix various tests to run properly on linux (ef8ccd9) </details>
    Open source →
  46. 0.21.1 22 Jul 2023
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 9 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-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 (0062971)
      • 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)
      • Merge branch 'gix-archive' (1dda48b)
      • Use new gix-fs capabilities (1c1d19b)
      • Update license field following SPDX 2.1 license expression standard (9064ea3) </details>
    Open source →
  47. 0.21.0 19 Jul 2023
    Release notes

    <csr-id-1d9a5e925890883e9e712db14ac82411ad2fdfc3/>

    New Features

    • <csr-id-b81f650b476354c5bd030aa03b9a723d9d7a0970/> gix clone <url> is now permitted without specifying a destination directory. Note that the implementation doesn't take into account potential redirects and renames as it's implemented only with the first URL it sees (not the redirected ones).
    • <csr-id-38ae61a805bd8cca5df8d1c1dcf3a8a0f9c85f5a/> make more HTTP options available
      • http.schannelCheckRevoke

    Commit Statistics

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

    • 15 commits contributed to the release over the course of 47 calendar days.
    • 49 days passed between releases.
    • 3 commits were understood as conventional.
    • 1 unique issue was worked on: #683

    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>

    • #683
      • gix clone <url> is now permitted without specifying a destination directory. (b81f650)
    • Uncategorized
      • Make fmt (e22080e)
      • Merge branch 'adjustments-for-cargo' (7bba270)
      • gix progress now usees the configuration tree as basis for data. (ea76bf5)
      • Thanks clippy (f7b8794)
      • Upgrade to clap 4.1 (1d9a5e9)
      • Merge branch 'patch-1' (b93f0c4)
      • Thanks clippy (9e04685)
      • Upgrade tabled (7aed326)
      • Merge branch 'gix-clone-improvements' (76c99f3)
      • Merge branch 'adjustments-for-cargo' (f8c562a)
      • Adapt to changes in git-repository and git-transport (d336368)
      • Update planned usage of ssh related configuration variables. (3f91088)
      • Merge branch 'adjustments-for-cargo' (d821fc5)
      • Make more HTTP options available (38ae61a) </details>
    Open source →
    Release notes

    New Features

    • <csr-id-20c0d2517aad9fc83a3e48a9b0ce6aa9e8b6fded/> State::entry_by_path_ours() to find an entry which is either stage 0 or stage 2. This is the preferred way of accessing entries for lookup in the object database as it will also work while merges are ongoing, returning the correct object accordingly.

    Commit Statistics

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

    • 7 commits contributed to the release over the course of 11 calendar days.
    • 20 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-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 (4aca8c2)
      • 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)
      • Merge branch 'integrate-filtering' (b19a56d)
      • Assure we run all tests in nextest (3821089)
      • State::entry_by_path_ours() to find an entry which is either stage 0 or stage 2. (20c0d25) </details>
    Open source →
  48. 0.20.0 29 Jun 2023
    Release notes

    New Features

    • allow requiring archived scripted fixtures

      Add version-aware fixture loaders:

      • scripted_fixture_read_only_with_git_version()
      • scripted_fixture_read_only_with_args_with_git_version()

      Both use normal fixture generation when the installed Git version satisfies
      the caller-provided predicate. For incompatible versions, they require an
      identity-matching archive, ignore GIX_TEST_IGNORE_ARCHIVES, and return None
      instead of running the fixture script when no usable archive exists.

    Bug Fixes

    • avoid calling git --version each time a metadata directory is created.

    New Features (BREAKING)

    • expand gix-testtools fixture support
      Note that I did only skim through git.rs,
      considering the details of the implementation secondary to the outcome.

      gix.rs was refactored quite a bit, helping to provide more utilities
      in other plumbing crates to help with this 'gix' avoidance.

      Add deterministic repository snapshots covering HEAD, references, reachable
      commits, every index stage, conflict-free index trees, and exact worktree
      contents. Provide a portable form which omits platform-specific filesystem modes
      for stable cross-platform assertions.

      Add writable Git-version-aware fixture APIs for copy and execute creation modes.
      Require archived fixtures when the selected Git is incompatible, without running
      unsupported scripts or post-processing.

      Use the Git executable selected by gix-path consistently for version checks,
      helper commands, and fixture scripts, including PATH selection for scripts.
      Harden signing fixtures with command-compatible paths, isolated homes, and
      complete SSH key pairs.

    Commit Statistics

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

    Commit Details

    view details
    • Uncategorized
      • Merge pull request #2933 from GitoxideLabs/report-august (b8914ff)
      • Update manifests prior to release (ebe9095)
      • Merge pull request #2905 from GitoxideLabs/various-improvements (f3bbfad)
      • Expand gix-testtools fixture support (677eb83)
      • Add reusable signature test fixtures (24dabe2)
      • Merge pull request #2812 from GitoxideLabs/report-july (ae8845a)
      • Release gix-actor v0.41.2, gix-features v0.49.0, gix-hash v0.26.0, gix-hashtable v0.16.0, gix-object v0.63.0, gix-glob v0.27.0, gix-attributes v0.34.0, gix-packetline v0.22.0, gix-filter v0.33.0, gix-fs v0.22.0, gix-chunk v0.7.3, gix-commitgraph v0.38.0, gix-revwalk v0.34.0, gix-traverse v0.60.0, gix-worktree-stream v0.35.0, gix-archive v0.35.0, gix-bitmap v0.3.3, gix-tempfile v24.0.0, gix-lock v24.0.0, gix-index v0.54.0, gix-pathspec v0.19.0, gix-ignore v0.22.0, gix-worktree v0.55.0, gix-imara-diff v0.2.4, gix-diff v0.66.0, gix-blame v0.16.0, gix-ref v0.66.0, gix-config v0.59.0, gix-discover v0.54.0, gix-dir v0.28.0, gix-mailmap v0.33.2, gix-revision v0.48.0, gix-merge v0.19.0, gix-negotiate v0.34.0, gix-zlib v0.1.0, gix-pack v0.73.0, gix-odb v0.83.0, gix-refspec v0.44.0, gix-shallow v0.13.0, gix-transport v0.58.0, gix-protocol v0.64.0, gix-status v0.33.0, gix-submodule v0.33.0, gix-worktree-state v0.33.0, gix v0.86.0, gix-fsck v0.24.0, gitoxide-core v0.60.0, gix-tix v0.1.0, gitoxide v0.56.0, safety bump 40 crates (842bc44)
      • Merge pull request #2732 from GitoxideLabs/testools-use-archive (a3e9a77)
      • Avoid calling git --version each time a metadata directory is created. (4314d09)
      • Allow requiring archived scripted fixtures (6a30419)
      • Merge pull request #2721 from GitoxideLabs/remove-kstring (e70732a)
      • Adapt to changes in gix-attributes (e11d7a2)
      • Merge pull request #2646 from GitoxideLabs/report (1b1541e)
      • 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 #2628 from GitoxideLabs/dependabot/cargo/tar-0.4.46 (5aadd6e)
      • Bump tar from 0.4.45 to 0.4.46 (07d16ea)
      • Merge pull request #2618 from GitoxideLabs/report (f7d4f33)
    Open source →
    Release notes

    This release also fixes compatibility issues that formerly prevented to fetch or clone form https://googlesource.com.

    Changed

    • <csr-id-a4ac9cf3e667a3059e33aac8188150529578622d/> represent GIT_(COMMITTER|AUTHOR)_(NAME|EMAIL|DATE) with git configuration. That way it becomes more obvious where values are coming from.

    New Features

    • <csr-id-98143699bb9481b010e21647f64dcb8a74bd80ad/> auto-enabled verbosity for gix fetch/clone and add --no-verbose. I found myself always adding (and having to remember to add) the -v flag for long-running operations so these should be able to default to a higher verbosity level.

      To counter that, there is a new --no-verbose flag to turn that off.

    • <csr-id-aeb4a1d5cb76316058c7d687e26f5c7db351c09c/> add --strict option to enforce strict checking of configuration.

    • <csr-id-8c9c243fc574dc17b92a8e2025fbd8efdf2833da/> gix odb stats to calculate statistics on the object database. This includes the amount of objects along with a listing of where they are located.

    • <csr-id-e2b8c5dce7185b5fa194b90f32e642e5c9d1227f/> gix clone --no-tags support. This is the same as git clone --no-tags.

    Changed (BREAKING)

    • <csr-id-49f39d6bb487c0254176a5082f2c7851b83952a1/> open::ReplacementObjects is removed in favor of two custom git-configuration flags. Now it's possible to map the environment variables GIT_REPLACE_REF_BASE and GIT_NO_REPLACE_OBJECTS to custom git configuration keys which can also be set, namely gitoxide.odb.replaceObjectsRefBase and gitoxide.odb.noReplaceObjects.

      Along with the possibility of disabling the usage of GIT_ prefixed environment variables one reaches the previous level of control without making object replacement a special case.

    New Features (BREAKING)

    • <csr-id-becbd8d896a1663f1607be4e86e632773e926f1f/> represent object cache configuration like GITOXIDE_PACK_CACHE_MEMORY in git-configuration. That way there is a unified system for how to set values, which may be overridable by configuration variables or not.

      With this changes, the explicit application of environment variables for setting the cache isn't required anymore as everything happens using git-configuration, and automatically, while providing full control like before.

    Commit Statistics

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

    • 22 commits contributed to the release over the course of 30 calendar days.
    • 31 days passed between releases.
    • 7 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
      • Fix label for ein t estimate-hours command (4c93de1)
      • Merge branch 'read-header' (3d01252)
      • gix odb stats to calculate statistics on the object database. (8c9c243)
      • Merge branch 'main' into read-split-index (c57bdde)
      • Merge branch 'adjustments-for-cargo' (083909b)
      • gix clone --no-tags support. (e2b8c5d)
      • Update gix progress to inform about remote.<name>.tagOpt (3ebb340)
      • Merge branch 'adjustments-for-cargo' (70ccbb2)
      • Upgrade to prodash v22 for API improvements (77ab98d)
      • Auto-enabled verbosity for gix fetch/clone and add --no-verbose. (9814369)
      • Switch from atty to is-terminal (7304bc1)
      • Adapt to changes in git-repository (c4f68bf)
      • Represent object cache configuration like GITOXIDE_PACK_CACHE_MEMORY in git-configuration. (becbd8d)
      • Represent GIT_(COMMITTER|AUTHOR)_(NAME|EMAIL|DATE) with git configuration. (a4ac9cf)
      • open::ReplacementObjects is removed in favor of two custom git-configuration flags. (49f39d6)
      • Apply related environment variables as config overrides (9441c26)
      • Adapt to changes in git-repository (f1a4c8b)
      • Update progress of http.proxyAuthMethod (872dc1a)
      • Add --strict option to enforce strict checking of configuration. (aeb4a1d)
      • Don't lock stdout/stderr as it will deadlock on dbg-printing (62cae0e)
      • Adapt to changes in git-config (1c2e755)
      • Merge branch 'main' into http-config (bcd9654) </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 →
    Release notes

    gix-testtools v0.20.0 Latest

    Latest

    Compare

    Choose a tag to compare

    Open source →
  49. 0.19.0 22 Jun 2023
    Release notes

    New Features

    • <csr-id-3ddbd2de369b521fa3f21935f10fe9c248840893/> Make reqwest TLS backend configuration easy. We provide the choice of native-tls or rust-tls. If none is provided, the user can configure on their on similar to how it's done in gix.

      Please note that a choice now has to be made or HTTPS will not be available, so use one of…

      • blocking-http-transport-reqwest-rust-tls
    • blocking-http-transport-reqwest-native-tls

    Commit Statistics

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

    • 1 commit contributed to the release.
    • 4 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
      • Make reqwest TLS backend configuration easy. (3ddbd2d) </details>
    Open source →
    Release notes

    New Features

    • <csr-id-3cffa268460eb2d41bd6a30d45778b88db4ec602/> provide basic tracing spans for common operations. This is just the beginning and more crates will integrate with it over time.

    Commit Statistics

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

    • 7 commits contributed to the release over the course of 5 calendar days.
    • 12 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 'gix-corpus' (5861afb)
      • Add more tasks to gather a little more information (891a061)
      • Merge branch 'corpus' (aa16c8c)
      • Change MSRV to 1.65 (4f635fc)
      • Provide basic tracing spans for common operations. (3cffa26) </details>
    Open source →
  50. 0.18.0 10 Jun 2023
    Release notes

    This releases fixes gix fetch so that it is able to clone or fetch pytorch or other repositories on case-insensitive file systems.

    It's also an attempt to trigger CI to build binary releases.

    Commit Statistics

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

    • 9 commits contributed to the release over the course of 9 calendar days.
    • 11 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 branch 'http-config' (665b53e)
      • Document that histogram is now the default diff algorithm (c76572b)
      • Introduce new gitoxide.http.connectTimeout for more control for git clients (2ab80e4)
      • Keep track of no_proxy environment variable support (f0625de)
      • Update progress (3d9fb6c)
      • Don't forget to update 'progress' (0ec5220)
      • Update progress with gitoxide.userAgent (1c012f4)
      • Plan for user agent string configuration (f5499a5)
      • Keep track of http related configuration keys. (1afaebd) </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.
    • 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-attributes v0.13.1, gix-diff v0.30.1, gix-revwalk v0.1.0, gix-traverse v0.27.0, gix-index v0.18.0, gix-revision v0.15.2, gix-negotiate v0.2.1, gix-pack v0.37.0, gix-odb v0.47.0, gix-protocol v0.33.2, gix-worktree v0.19.0, gix v0.46.0, safety bump 7 crates (2560a2c)
      • Prepare changelogs prior to release (298f3d7) </details>
    Open source →
  51. 0.17.0 06 Jun 2023
    Release notes

    New Features

    • <csr-id-e973dfeaf17ca63385496202e9fdcdd912e20f42/> gix remote ref-map --show-unmapped-remote-refs. That way it's more obvious to see what was filtered out by ref-specs.

      It's also great to validate that server-side filtering via ref-prefix will not send refs that are referred to by symbolic refs that are not filtered out. That should be fine as it's all about objects, it's just something to deal with as we may have to deal with symbolic refs that aren't in the set of refs the server sent to us.

    • <csr-id-b1edb9e3537df86669714f03666f4a88e0ac3709/> diff algorithm is controlled by git configuration diff.algorithm

    • <csr-id-20259da4ddf9fabfb2d2bd4e2274c0ed42bdb0e5/> ein t hours allows to specify the amount of worker threads.

    Bug Fixes

    • <csr-id-3a053284cfefe27873dcc5b4f74d63a560bb5d41/> collect stderr and print it afterwards to avoid intersection with line progress. Previously it would happen that stderr would be printed directly and mix with the line progress (as in -v) which also prints to stderr.

      Now errors are collected and output at the end once the line renderer was already shutdown.

    Changed (BREAKING)

    • <csr-id-3a0fb1b45c757add49677450836c0aaf6179a2b5/> remote lock_mode from all methods dealing with reference edits. It is now read from core.filesRefLockTimeout accordingly.

    New Features (BREAKING)

    • <csr-id-92bbe335688e4c8e96061663e71a599022f7b96f/> remove gix remote --url in favor of determining the intention similar to git fetch

    Commit Statistics

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

    • 65 commits contributed to the release.
    • 47 days passed between releases.
    • 6 commits were understood as conventional.
    • 2 unique issues were worked on: #450, #536

    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>

    • #450
      • Keep track of several branch related keys (443a75a)
      • gix remote ref-map --show-unmapped-remote-refs. (e973dfe)
      • Update progress as we now respect diff.algorithm (30d32e7)
      • Apply configuration overrides to newborn repo during clone (c8ef759)
      • Collect stderr and print it afterwards to avoid intersection with line progress. (3a05328)
      • Reduce verbosity of clone and print once entire clone is done (9a476df)
      • First rough sketch of gix clone (23a5e8b)
      • Progress totals (planned, devitaion) (63947ae)
      • Prepare attribute-group setup as far as possible. (f5e2eeb)
      • Update usage of core.checkState (8b2aba1)
      • Update progress based on filesystem config usage (de13c66)
      • Inform about even more keys in gix progress (0e9bd41)
      • Plan more core filesystem attributes (d10a82e)
      • Update init.defaultBranch - now used by custom initialization. (4d6d7bb)
      • Support for handshake information in gix fetch (c47dcc6)
      • Fix build (d034882)
      • Remove gix remote --url in favor of determining the intention similar to git fetch (92bbe33)
      • Support for --url for arbitrary urls when fetching (8c7351c)
      • Frame for gix fetch (5b72d27)
      • Update progress information to include packedRefsTimeout (fd18320)
      • Remote lock_mode from all methods dealing with reference edits. (3a0fb1b)
      • Add information about planned lock timeout support (from configuration) (7076891)
      • Add remotes.<group> as planned feature for remotes (3c188b2)
      • Slightly nicer styling of config keys (eade88f)
      • Complete listing of records based on current usage, probably (6abd5a4)
      • Add more records (5c0d0ab)
      • Add tabled for nicer printing (65e6496)
      • Refactor (b42b08a)
      • Add support for more types of configurations (317e02a)
      • A very first version of gix progress show (92e082a)
    • #536
      • ein t hours allows to specify the amount of worker threads. (20259da)
    • Uncategorized
      • Merge branch 'write-sparse-index' (ba17db0)
      • Plan index.version for when we can write V4 indices. (da96d34)
      • Notes about the split-index extension. (ad44982)
      • Take note of additional options for promisor packs and partial clone filters (1ec27f8)
      • Make note of extension.worktreeConfig (fe1e646)
      • Merge branch 'main' into write-sparse-index (c4e6849)
      • Add init.templateDir to gix progress (9fab050)
      • Make fmt (ea2136b)
      • Merge branch 'gix-clone' (def53b3)
      • Diff algorithm is controlled by git configuration diff.algorithm (b1edb9e)
      • Merge branch 'main' into gix-clone (fa27570)
      • Merge branch 'imra-diff' (f53f942)
      • Adapt to changes in git-diff for a 2x speedup when calculating line changes (296f3b6)
      • Update gix progress records (b05a2e7)
      • Merge branch 'main' into gix-clone (de4fe06)
      • Mark the upcoming usage of init.defaultBranch. (6225f35)
      • Merge branch 'fix-gix-index-from-tree' (da5f63c)
      • Write index without output path to memory only. (c8d0345)
      • Merge branch 'gix-index-from-tree' (8c24386)
      • Refactor (67f2247)
      • Refactor (01ab5ca)
      • Update with various configuration variables relevant to checking out worktrees (09d767a)
      • Merge branch 'clone' (507dc7e)
      • Update usage of clone related configuration (1a1e862)
      • Update progress with intended uses of clone. variables (8b804a3)
      • Merge branch 'main' into new-http-impl (702a161)
      • Make fmt (53acf25)
      • Merge branch 'fetch-pack' (f47c891)
      • Merge branch 'fetch-pack' (3c49400)
      • Update docs (c5c0ac5)
      • Input id can now be a commit or tree as prefix or full object id (8ef3fcb)
      • Thanks clippy (8dadd70)
      • Merge branch 'fix-odb-race' (b862fc5)
      • Merge branch 'diff' (25a7726) </details>
    Open source →
    Release notes

    New Features

    • <csr-id-973bf7065e6da2b3ea690c9e3f0077f4bbc546b8/> add State::into_entries(). It's useful to create standalone boxable iterators over entries without having to clone.

    Commit Statistics

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

    • 13 commits contributed to the release over the course of 28 calendar days.
    • 38 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.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 branch 'fix-docs' (420553a)
      • 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 license files in all crates (facaaf6)
      • Release gix-object v0.29.2 (4f879bf)
      • Merge branch 'gix-attributes-validate' (a849da8)
      • Add State::into_entries(). (973bf70) </details>
    Open source →
  52. 0.16.1 29 Apr 2023
    Release notes

    Bug Fixes

    • <csr-id-4d82ea261547a936fa9bedc8d11470ca8f929939/> docs.rs builds work again by correctly specifying serde dependency.

    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-index v0.16.1 (08c6f9d)
      • Docs.rs builds work again by correctly specifying serde dependency. (4d82ea2) </details>
    Open source →
  53. 0.16.0 26 Apr 2023
    Release notes

    Changed

    • <csr-id-3c7c9a735f5771ef787cbc86b46cbafc9226f4d6/> ein tool hours -s was split into -f|--file-stats and -l|line-stats. That way more information is generated at increasingly high costs.

    New Features

    • <csr-id-28c4cae70aab2bd5b479961fcc6ee91ff80f651b/> ein tool hours --stat to collect additional statistics per author. Note that these are expensive and unconditionally use threads to speed up these computations.
    • <csr-id-5d0332f51c63c5456a28c8f3f466ad805b2e0626/> ein tool hours -b ignores bots. For now it only considers bots with names containing [bot].

    Commit Statistics

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

    • 21 commits contributed to the release over the course of 20 calendar days.
    • 27 days passed between releases.
    • 3 commits were understood as conventional.
    • 2 unique issues were worked on: #450, #470

    Commit Details

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

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

    • #450
      • Refactor (11851f3)
      • Option to print server information about the connection (4720666)
      • Show fixes as well (2237495)
      • Correct printing of tag information (even though it doesn't look great) (f4d8198)
      • Wire up the ref-map sub-command. (94c2b78)
      • Select gix commands will now load the git installation configuration (23d2dec)
      • Refactor (7abc0a3)
      • Add sketch of gix credential (642e21f)
    • #470
      • ein tool hours -s was split into -f|--file-stats and -l|line-stats. (3c7c9a7)
      • Upgrade to prodash 20.1 for Progress::counter() feature (0ac4a2c)
      • ein tool hours --stat to collect additional statistics per author. (28c4cae)
    • Uncategorized
      • Merge branch 'hours-upgrade' (26489d1)
      • Use rev-specs instead of ref-names (cf7182e)
      • ein tool hours -b ignores bots. (5d0332f)
      • Merge branch 'filter-refs' (3773b92)
      • Implement gix index from-tree (2fbd3df)
      • Make fmt (535e967)
      • Merge branch 'filter-refs-by-spec' (5c05198)
      • Merge branch 'main' into index-from-tree (bc64b96)
      • Merge branch 'main' into filter-refs-by-spec (56ba481)
      • A basic implementation of rev-list without anything fancy (791dd66) </details>
    Open source →
    Release notes

    New Features

    • <csr-id-9af47c3971fdb744dbc38c1920430975e4a9ba84/> add Index::entries_mut_and_pathbacking(). With it one can read entries and read paths at the same time.

    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.

    Commit Statistics

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

    • 26 commits contributed to the release over the course of 23 calendar days.
    • 27 days passed between releases.
    • 2 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-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 (d7173b2)
      • Release 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 (e4df557)
      • 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 '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)
      • Make fmt (5d2b5d0)
      • Merge branch 'main' into dev (cdef398)
      • Rename the serde1 feature to serde (19338d9)
      • Add a test for --intend-to-add and clarify what this flag means. (27471e7)
      • Add Index::entries_mut_and_pathbacking(). (9af47c3)
      • Refactor (691758a)
      • Improve documentation of gix_index::entry::Stat::matches (1e19760)
      • Clarify Stat::is_racy documentation (4736b60)
      • Improve Mode::change_to_match_fs documentation (bf8a7a4)
      • Cleanup entry::mode API (9cb76e9)
      • Update index::entry::stat tests (f2a9b3f)
      • Parallel status check (d7f250d)
      • Streamline status API (0f747f3)
      • Centralize index entry Stat creation/comparison (870bdb2)
      • Allow access to index timestamp (c49f12d)
      • Release gix-hash v0.10.4, gix-hashtable v0.1.3 (b574a39)
      • Merge branch 'patch-1' (d0052c1)
      • Update to latest bitflags version. (594cca5) </details>
    Open source →
  54. 0.15.1 30 Mar 2023
    Release notes

    Documentation

    • <csr-id-02c4659984fa6423bc76cc4980a143edaba8ace0/> fix minor typos

    Commit Statistics

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

    • 3 commits contributed to the release.
    • 20 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-path v0.7.3, gix-config-value v0.10.2, gix-config v0.20.1, gix-discover v0.16.2, gix-index v0.15.1, gix-odb v0.43.1, gix-packetline v0.15.1, gix-protocol v0.30.2, gix-worktree v0.15.2, gix v0.43.1 (38eed1d)
      • Fix minor typos (02c4659)
      • Merge branch 'fix-cred-helper' (01277a6) </details>
    Open source →
  55. 0.15.0 10 Mar 2023
    Release notes

    <csr-id-f7f136dbe4f86e7dee1d54835c420ec07c96cd78/>

    New Features

    • <csr-id-45a30f0f31a99cda5cf105408e9c3905f43071f2/> Support for -c/--config in gix
    • <csr-id-5d6d5ca305615568dfedbcc10ea86294c0a0472d/> gix remote refs to list all remote references of a suitable remote. This takes into account either a named remote, or the remote associated with the current branch, or the default remote it could deduce or obtain from the configuration.
    • <csr-id-b1c40b0364ef092cd52d03b34f491b254816b18d/> use docsrs feature in code to show what is feature-gated automatically on docs.rs

    Changed (BREAKING)

    • <csr-id-dda995790c260131048484a11e66185b9c841311/> remove gix free remote ref-list in favor of gix remote refs The functionality is the same, but the latter is built on top of a repository which is slightly less flexible, but preferable over maintaining a non-repo version.

    Commit Statistics

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

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

    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>

    • #450
      • Support for -c CLI config overrides in gix config. (19c1746)
      • Remove gix free remote ref-list in favor of gix remote refs (dda9957)
      • Support for -c/--config in gix (45a30f0)
      • Refactor (e0be6e9)
      • Add support for passing urls directly to bypass all remote repository logic. (df3cf18)
      • gix remote refs to list all remote references of a suitable remote. (5d6d5ca)
      • Try to use maybe async for the simplest of possibly blocking remote interactions (db4df25)
      • Basic parsing of gix remote refs without any implementation. (f8f1249)
    • Uncategorized
      • Merge branch 'remote-ls-refs' (39d585d)
      • Thanks clippy (bb6813a)
      • Merge branch 'main' into remote-ls-refs (e2ee3de)
      • Merge branch 'docsrs-show-features' (31c2351)
      • Use docsrs feature in code to show what is feature-gated automatically on docs.rs (b1c40b0)
      • Uniformize deny attributes (f7f136d)
      • Merge branch 'main' into remote-ls-refs (bd5f3e8) </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.
    • 6 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 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) </details>
    Open source →
  56. 0.14.0 04 Mar 2023
    Release notes

    Changed

    • <csr-id-0235111a4fcc40c7b57d973bfce27a66eddea901/> Invert behaviour to open::Options::strict_config(), with lenient being the default. This means API users will get libgit2 behaviour but commands like gix can change options to emulate git behaviour.

    New Features

    • <csr-id-b83f6bdf7f8d8f5cef2a57fa3932b6a0e0988db1/> --cat-file flag for gix rev parse to cat instead of resolving.
    • <csr-id-e972aad020d3653a53b20fa6e535d5759e239a45/> gix rev previous-branches subcommand

    Changed (BREAKING)

    • <csr-id-edf73dd4db5b0f5d9309c95bf366e11ea6723885/> ein tools to ein tool for as it's more intuitive

    New Features (BREAKING)

    • <csr-id-c5846e05aa54f0601ac7b8e2e59bcf1ffaa305f1/> gix rev resolve --explain

    Commit Statistics

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

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

    Commit Details

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

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

    • #427
      • --cat-file flag for gix rev parse to cat instead of resolving. (b83f6bd)
      • gix rev resolve --explain (c5846e0)
      • gix rev previous-branches subcommand (e972aad)
      • Support for parsing multiple specs in one invocation (84b5448)
      • Support overriding cache settings with environment variables in gix (b838202)
    • Uncategorized
      • Merge branch 'core-abbrev-handling' (dbaff13)
      • Control which command is lenient or not. That way gix-config can be lenient. (6a9c58f)
      • Invert behaviour to open::Options::strict_config(), with lenient being the default. (0235111)
      • Merge branch 'main' into remote-ls-refs (c4bf958)
      • Merge branch 'index-write-refactor' (805f432)
      • ein tools to ein tool for as it's more intuitive (edf73dd)
      • Merge branch 'main' into write-index-v2 (a938986)
      • Add aliases to make revision sub-commands more accessible (a6d79e3)
      • Merge branch 'rev-parse-delegate' (2f506c7)
      • Merge pull request #2 from SidneyDouw/main (ce885ad)
      • Merge branch 'Byron:main' into main (9b9ea02)
      • Merge branch 'main' into rev-parse-delegate (6da8250)
      • Merge branch 'main' into pathspec (7b61506)
      • Make fmt (47724c0)
      • Merge branch 'kianmeng-fix-typos' (4e7b343)
      • Fix typos (e9fcb70) </details>
    Open source →
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 5 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-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)
      • Merge branch 'adjustments-for-cargo' (04ab852)
      • Adjust to changes in git-features (726b2cd) </details>
    Open source →
  57. 0.13.0 01 Mar 2023
    Release notes

    New Features

    • <csr-id-eda39ec7d736d49af1ad9e2ad775e4aa12b264b7/> gix config with section and sub-section filtering.
    • <csr-id-d99453ebeb970ed493be236def299d1e82b01f83/> gix config lists all entries of all configuration files git considers. Filters allow to narrow down the output.

    Commit Statistics

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

    • 47 commits contributed to the release over the course of 101 calendar days.
    • 108 days passed between releases.
    • 2 commits were understood as conventional.
    • 3 unique issues were worked on: #301, #331, #427

    Thanks Clippy

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

    Clippy helped 3 times to make code idiomatic.

    Commit Details

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

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

    • #301
      • Allow reading patterns from stdin (0c597fe)
      • Add --show-ignore-patterns to gix repo exclude query (09f904b)
      • Basic prefix support as well the first working version of exclude query (9cb8385)
      • Support for overrides on the command-line (7d98b21)
      • Fix build (cb56f12)
      • Refactor (3ff991d)
      • Frame for gix repo exclude query (a331314)
      • Make fmt (50ff7aa)
    • #331
      • Fix journey tests after gix restructuring (59b95c9)
      • gix config with section and sub-section filtering. (eda39ec)
      • gix config lists all entries of all configuration files git considers. (d99453e)
      • Refactor (a437abe)
      • Move 'exclude' up one level and dissolve 'repo' subcommand (8e5b796)
      • Move 'mailmap' up one level (5cf08ce)
      • Move 'odb' up one level (0ed65da)
      • Move 'tree' up one level (38a8350)
      • Move 'commit' up one level (72876f1)
      • Move 'verify' up one level (ac7d99a)
      • Move 'revision' one level up (c9c78e8)
      • Move 'remote' to 'free' (8967fcd)
      • Move commitgraph to 'free' (f99c3b2)
      • Move index to 'free' (83585bd)
      • Move 'pack' to 'free' (1cdecbc)
      • Migrate mailmap to the new 'free' section (141c5f1)
      • First step towards moving all repository-commands one level up. (f4e1810)
      • Make obvious what plumbing and porcelain really are (faaf791)
      • Adjustments due to breaking changes in git_path (4420ae9)
    • #427
      • Add rough but working version of rev-parse (f3f176d)
      • Basic infrastructure for delegate implementation (d3c0bc6)
      • Hookup explain command (1049b00)
      • Frame for gix repo rev explain (12e6277)
    • Uncategorized
      • Merge branch 'gix-repo-config' (afecb63)
      • Thanks clippy (48b3f4a)
      • Merge pull request #1 from Byron/main (085e76b)
      • Make fmt (0700b09)
      • Merge branch 'main' into pathspec (89ea12b)
      • Merge branch 'main' into cont_include_if (0e9df36)
      • Use git_path::realpath in all places that allow it right now (229dc91)
      • Merge branch 'main' into cont_include_if (41ea8ba)
      • Merge branch 'main' into git_includeif (05eb340)
      • Merge branch 'main' into msrv-for-windows (7cb1972)
      • Make fmt (251b6df)
      • Merge branch 'worktree-stack' (98da8ba)
      • Thanks clippy (056e8d2)
      • Thanks clippy (fdec111)
      • Merge branch 'main' into repo-status (4086335)
      • Merge branch 'worktree-stack' (e90d3fd) </details>
    Open source →
    Release notes

    <csr-id-41c8151451d55b47c0784e4799aec102e6ab9f29/>

    Commit Statistics

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

    • 9 commits contributed to the release over the course of 3 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-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)
      • Use btoi instead of atoi. (41c8151)
      • Prepare for git-tempfile release (56c005b)
      • Make fmt (8ef1cb2) </details>
    Open source →
  58. 0.12.4 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 →
  59. 0.12.3 17 Feb 2023
    Release notes

    <csr-id-dc3fd48327a16bf8599eaf70b55ab6c1d754e4bb/> <csr-id-4a6d46f3ab3d15eb851c92f7e49eb6772bc4023b/> <csr-id-6c17f96fcee9e2935b464c8ffbd30b253d9f5a6c/> <csr-id-533e887e80c5f7ede8392884562e1c5ba56fb9a8/>

    Documentation

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

    New Features

    • <csr-id-5dc408f726d6f0f480438348eb5d713776329710/> read shared indices by dissolving them into the current one. This allows the 'link' extension to be processed correctly, even though it won't be maintained. When written back, the 'link' extension will be removed automatically.
    • <csr-id-6d8eb9f267ac7ef8db0f3a277c8c991df5ce8164/> add impl Debug for State to print all entries in a digestible form.
    • <csr-id-7c8ba2c945d6313d27569f04b83ebf9a2387e6a2/> add State::sort_entries_by(...) to allow comparing by additional criteria. This allows to orgranize entries based on flags, for example, which may help in special occasions.
    • <csr-id-1e3341a77c089e6d80c271fca46b774b01b01386/> entry::Time can convert from and to system time.
    • <csr-id-654bd8f62d5546b0f57e82d1be8211431685c7ce/> add State::sort_entries() and State::dangerously_push_entry(). Both methods work in tandem as one breaks invariants, but allows to quickly add entries, while the other restores them.
    • <csr-id-aa1b6ee1edeaebae1237184c635f69fdbb23ffee/> add State::entry_mut_by_path_and_stage()
    • <csr-id-3ebe2d490b2dbdcb6fe0115b06f205f1c4008fff/> State::write_to() respects the REMOVED flag. That way, one can mark entries for removal and these will be pruned at write time. This is preferable over performing removals expensively in memory.
    • <csr-id-ec365866c746247b7d5d47b88d51d9cc255724fb/> expose git_hash as hash in the root of the crate. This makes it easier to use the crate standalone as plumbing as instantiation requires access to git_hash.
    • <csr-id-5cc3a15a8085a67701fc1f2d3ba0e55f71d0a4c0/> add File::at_or_default(...) to easily open or create an empty in-memory index. This is a common operation in new repositories.
    • <csr-id-0b40951f0fb9ee354a83751264ed89d0608111f8/> add State::new() to create a new empty in-memory index.
    • <csr-id-a7183e28513fa1e1a1a784b759677f0e4b4db5f4/> add File::set_path() to allow setting the location of an index file on disk. This is useful to change the location of an index after reading it (from another location, similar to copy-on-write).
    • <csr-id-fd2dd3a74c8d64407c1c27f29a2914389ded3bd6/> name spawned threads That way it's a bit more obvious what's happening when the CPU goes up in flames.
    • <csr-id-458e1bcbd7043f0759f7445bfa46189910baff54/> Clnoe for File
    • <csr-id-9e03110578bd93da3f1a91c5bcd9fde942c81ac4/> decode::Options::default_from_object_hash() An easier way to initialize decode options, providing only the mandatory information.
    • <csr-id-eedcffa728c7e895da51d5298db28f3fef05f7da/> File::write() for secure and complete writing of index files.
    • <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-6d8d5e6198dfb4d648061807ed4f96868a36ee52/> Stage::entry_index_by_path_and_stage(), now with ::entry_by_path_and_stage()
    • <csr-id-55363ea650001b7717545b4d2968419707a3b8c6/> State::entry_by_path_and_stage() to find entries.
    • <csr-id-40e6bde125778e3b50999331c4ed5a4b119937fa/> Debug and Clone for File
    • <csr-id-8ab219ac47ca67f2478b8715d7820fd6171c0db2/> State::path_backing(). That way it's possible to call certain methods that take a separate path buffer.
    • <csr-id-645ed50dc2ae5ded2df0c09daf4fe366b90cf47e/> support for separating lifetimes of entries and path-backing This way it should be possible to access paths immutably even while entries are available mutably, assuming we stagger accesses to put mutation of entries last.

    Reverted (BREAKING)

    • <csr-id-bd312acf5ceba28edf2508aef6011c037eb0a377/> decode::Options::default() - remove Default impl. The contained git_hash::Kind can't actually be defaulted as we have to know the actual kind used in the repository.
    • <csr-id-2da5a62432350ede6b816254c894863d14aa4ba1/> remove write::Options::default(). In practice it's required to inform about the hash kind to use and it's possibly incorrect to assume Sha1.

    Bug Fixes (BREAKING)

    • <csr-id-0b1543d481337ed51dcfdeb907af21f0bc98dcb9/> lower rust edition to 2018

    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.

    Changed (BREAKING)

    • <csr-id-3753ad58a8303fbf325b07757b2b97c34253bca4/> remove File::into_state() in favor of From<File> for State. That way it's less discoverable, but more idiomatic, and we don't want to get into the habit of providing multiple names of the exact same functionality.

    • <csr-id-59f679126aba6f8a432aeb53f0bbd5d136ec1deb/> write::Options::object_hash is now implied by the State itself. The State, once initialized, knows the kind of object hash it uses and there is no need to specify it again.

      This affects some method signatures which now work without object_hash.

    • <csr-id-908163ab2f86a1b603e69f04cd857fbf52e5abfb/> decode::Options::object_hash is now a parameter to methods. It's not actually an option that could be defaulted, but an integral piece of knowledge that must always be defined by the caller.

      This also makes decode::Options::default() available once again.

    • <csr-id-92dda50e2d9c584b0e110026f59fb715ec41600a/> seal File members to preserve consistency better. This also makes sure that it's obvious if the checksum is actually already computed.

    • <csr-id-99905bacace8aed42b16d43f0f04cae996cb971c/> upgrade bstr to 1.0.1

    Bug Fixes

    • <csr-id-c2cc939d131a278c177c5f44d3b26127c65bd352/> lower MSRV to 1.52

    Commit Statistics

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

    Commit Details

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

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

    • #293
      • Remove performance bottleneck when reading TREE extension (50411c8)
      • Assert store tree cache matches actual source objects (b062bec)
      • Sketch a surprisingly difficult way of loading objects in verify_extension() (3baeab4)
      • Properly sort cache tree entries upon load (421d1ba)
      • Tree-ordering validation shows something wrong (5fb2857)
      • First stab at tree verification (f928350)
      • Verify entry order (2d101eb)
      • Refactor (017e915)
      • Basic index file checksum verification (c644565)
      • At least check for the presence of extensions (28c056c)
      • Thorough checking of Tree extension (d1063aa)
      • Refactor (d0725bd)
      • Fix tree-extension loading for empty trees (2e13989)
      • Now we are able to load indices correctly (762efa3)
      • Add breaking test with conflicting file in index (791a9f8)
      • Print extension names instead of count (1cc07e0)
      • Print basic index information, including the tree extension (9277cf8)
      • Lower rust edition to 2018 (0b1543d)
      • Lower MSRV to 1.52 (c2cc939)
      • Prepare changelogs for git-index and dependencies (f54bf4b)
      • Test for extra-long paths (3d61afe)
      • Test for extended flags (ae3b697)
      • Use bitflags for Flags (in-memory and at-rest) (ea86eb0)
      • Use bitflags for entry Mode (53df605)
      • FSMN V2 decoding (04279bf)
      • Failing test for fs-monitor V1 (625b89a)
      • Validate UNTR with exclude-file oids (20ebb81)
      • Read remaining pieces of UNTR (9d9cc95)
      • Make stat parsing more general/reusable (c41b933)
      • Refactor (a1dc8de)
      • Simplify UNTR directory indexing (7857d08)
      • Flatten UNTR directory list for later access via bitmaps (2e39184)
      • Read UNTR directory blocks and bitmaps (59f46fe)
      • First portion of reading the untracked cache (ed2fe5d)
      • Failing test for UNTR extension (223f2cc)
      • Add UNTR extension fixture (3c7ba24)
      • REUC reading works (29c1af9)
      • Frame and test for REUC exstension (229cabe)
      • Add git index with REUC exstension (8359fdb)
      • Support for 'sdir' extension (a38c3b8)
      • Turn git-bitmap Array into Vec, as it will be able to adjust its size (9e99e01)
      • First stab at decoding ewah bitmaps (353a53c)
      • 'link' extension decoding to the point where bitmaps are needed (e18a2fd)
      • Support for errors in extensions (8971991)
      • Failing test for link decoding (e1daf18)
      • Don't forget to fail on unknown mandatory extension (f7e2bdd)
      • Aggregation for index entries loaded in parallel (995994a)
      • Parallel loading of entries right before reducing them (de84a3a)
      • Frame for using the new 'scoped threads' feature in git-features (6fea17d)
      • Single and multi-threaded index tests (a22cb0f)
      • Prepare decode options for better control of threads (30de988)
      • Cleanup (99d7224)
      • Basic IEOT parsing (35bdee4)
      • Refactor (6f04f8b)
      • Parse V4 delta-paths (06640e3)
      • More thorough tests for more complex repo with more entries (273853f)
      • The first test to validate an entry (f865ef6)
      • Now with counting of consumed bytes in extensions (77a062c)
      • Use correct post-header slice when parsing entries (da556b0)
      • All code needed to load extensions… (0a03f19)
      • A step towards pasing V2 paths (01036ad)
      • Most of the entry decoding, name is still missing (53e2d75)
      • Extensions are optional, and so is their iteration (620d2e6)
      • Prepare a more complex test for tree parsing, requires entry parsing (e7e0679)
      • Parse TREE chunk (a2ea498)
      • Get closer to implementing a simple TREE extension decoding (49fcb6f)
      • Refactor (07e8fb2)
      • The first actual assetion (c17240d)
      • Refactor (d4b3a07)
      • Refactor (9fdd34b)
      • Fix counting issue, checksum matches now (cc33752)
      • Another big step, even though EOIE checksum is still bugged (9ffd523)
      • Right before implementing a traversal over extension chunks (79ca582)
      • Refactor (9b28b18)
      • First step towards reading the EOIE extension (068c716)
      • Parse index header (5c731f8)
      • First stab at basic index file parsing (826ca0c)
      • Refactor (494ed46)
      • Git-index uses memmap2 (fbfea28)
      • The realization that FileBuffer really shouldn't be used anymore (b481f13)
      • Base setup for index testing (aa60fdf)
      • Notes on how test indices have been created (3040857)
    • #298
      • Upgrade git-index->atoi to 1.0 (728dd65)
      • Use hash_hasher based hash state for better keys/less collisions (814de07)
      • Also print stage of entries (003515f)
      • Simple printing of basic entry information (329538b)
    • #301
      • Update changelogs prior to release (84cb256)
      • Differentiate between owned and ref'ed path storage (c71b2bb)
      • State::path_backing(). (8ab219a)
      • Sketch open_index() on Worktree, but… (ff76261)
      • Support for separating lifetimes of entries and path-backing (645ed50)
      • An attempt to build a lookup table of attribute files, but… (9841efb)
      • Refactor (475aa6a)
      • Adjustments to support lower MSRV (16a0973)
      • Basic version of index checkout via command-line (f23b8d2)
      • Document-features support for git-index and git-worktree (1367cf5)
      • Make fmt (636fa8a)
      • Strucural refactor (cdca1df)
      • Allow mutation of entries during iteration, while obtaining their path (d0c4563)
    • #329
      • Document all features related to serde1 (72b97f2)
    • #333
      • Use git_features::path everywhere where there is a path conversion (2e1437c)
    • #384
      • Prevent line-ending conversions for shell scripts on windows (96bb4d4)
      • No need to isolate archives by crate name (19d46f3)
      • Add archive files via git-lfs (7202a1c)
      • Assure we don't pick up unnecessary files during publishing (545b2d5)
      • Auto-set commit.gpgsign=false when executing git (c23feb6)
    • #427
      • Make fmt (4b320e7)
      • Fix docs (5a0d6b7)
      • Stage::entry_index_by_path_and_stage(), now with ::entry_by_path_and_stage() (6d8d5e6)
      • State::entry_by_path_and_stage() to find entries. (55363ea)
      • Refactor; prepare for entry-lookup by path (92de081)
      • Debug and Clone for File (40e6bde)
    • #450
    • #470
      • Update changelogs prior to release (caa7a1b)
    • #691
      • Set rust-version to 1.64 (55066ce)
    • #XXX
      • Add tests to run into long-paths special case (d7a8a7d)
    • Uncategorized
      • Release 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 (48f5bd2)
      • Release 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 (a5869e0)
      • Release 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 (41d57b9)
      • 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)
      • Fix link in docs for sort_entries_by (eb48b16)
      • 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)
      • Rename git-index to gix-index (ecd3541)
      • 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)
      • 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 'rename-crates' (6461c3d)
      • Rename git-repository to gix (7bed2a9)
      • Release git-date v0.4.2, git-hash v0.10.2, git-features v0.26.2, git-actor v0.17.1, git-glob v0.5.3, git-path v0.7.1, git-quote v0.4.1, git-attributes v0.8.2, git-config-value v0.10.1, git-tempfile v3.0.2, git-lock v3.0.2, git-validate v0.7.2, git-object v0.26.1, git-ref v0.24.0, git-sec v0.6.2, git-config v0.16.0, git-command v0.2.3, git-prompt v0.3.2, git-url v0.13.2, git-credentials v0.9.1, git-diff v0.26.1, git-discover v0.13.0, git-hashtable v0.1.1, git-bitmap v0.2.1, git-traverse v0.22.1, git-index v0.12.3, git-mailmap v0.9.2, git-chunk v0.4.1, git-pack v0.30.2, git-odb v0.40.2, git-packetline v0.14.2, git-transport v0.25.4, git-protocol v0.26.3, git-revision v0.10.2, git-refspec v0.7.2, git-worktree v0.12.2, git-repository v0.34.0, safety bump 3 crates (c196d20)
      • Prepare changelogs prior to release (7c846d2)
      • Merge branch 'Lioness100/main' (1e544e8)
      • Fix typos (39ed9ed)
      • Make fmt (e22080e)
      • Break cyclical dev dependencies (1fea18f)
      • Make error handling of split index to seemingly be en-par with 'git' (cec2547)
      • Read shared indices by dissolving them into the current one. (5dc408f)
      • Inline bounds checks (dc3fd48)
      • Remove VerifiedBitmaps structure… (49cf105)
      • Release git-date v0.4.1, git-features v0.26.1, git-glob v0.5.2, git-attributes v0.8.1, git-tempfile v3.0.1, git-ref v0.23.1, git-sec v0.6.1, git-config v0.15.1, git-prompt v0.3.1, git-url v0.13.1, git-discover v0.12.1, git-index v0.12.2, git-mailmap v0.9.1, git-pack v0.30.1, git-odb v0.40.1, git-transport v0.25.3, git-protocol v0.26.2, git-revision v0.10.1, git-refspec v0.7.1, git-worktree v0.12.1, git-repository v0.33.0 (5b5b380)
      • Prepare changelogs prior to release (93bef97)
      • Merge branch 'patch-1' (b93f0c4)
      • Thanks clippy (9e04685)
      • Move error handling into its own function (2b22d91)
      • Release git-index v0.12.1 (8aa5c1d)
      • Merge branch 'various-improvements' (f191c1a)
      • Add impl Debug for State to print all entries in a digestible form. (6d8eb9f)
      • Add State::sort_entries_by(...) to allow comparing by additional criteria. (7c8ba2c)
      • Update documentation to make users of State::dangerously_push_entry() more aware. (b56de39)
      • Release git-date v0.4.0, git-actor v0.17.0, git-object v0.26.0, git-traverse v0.22.0, git-index v0.12.0, safety bump 15 crates (0e3d0a5)
      • Prepare changelogs prior to release (d679f5b)
      • Merge branch 'various-improvements' (9eee8fe)
      • entry::Time can convert from and to system time. (1e3341a)
      • Add State::sort_entries() and State::dangerously_push_entry(). (654bd8f)
      • Improved error handling - panicing version (9509891)
      • Add State::entry_mut_by_path_and_stage() (aa1b6ee)
      • State::write_to() respects the REMOVED flag. (3ebe2d4)
      • Expose git_hash as hash in the root of the crate. (ec36586)
      • Add File::at_or_default(...) to easily open or create an empty in-memory index. (5cc3a15)
      • Add State::new() to create a new empty in-memory index. (0b40951)
      • Remove File::into_state() in favor of From<File> for State. (3753ad5)
      • Add File::set_path() to allow setting the location of an index file on disk. (a7183e2)
      • Release git-features v0.26.0, git-actor v0.16.0, git-attributes v0.8.0, git-object v0.25.0, git-ref v0.22.0, git-config v0.14.0, git-command v0.2.1, git-url v0.13.0, git-credentials v0.9.0, git-diff v0.25.0, git-discover v0.11.0, git-traverse v0.21.0, git-index v0.11.0, git-mailmap v0.8.0, git-pack v0.29.0, git-odb v0.39.0, git-transport v0.25.0, git-protocol v0.26.0, git-revision v0.9.0, git-refspec v0.6.0, git-worktree v0.11.0, git-repository v0.31.0, safety bump 24 crates (5ac9fbe)
      • Prepare changelogs prior to release (30d8ca1)
      • Release git-date v0.3.1, git-features v0.25.0, git-actor v0.15.0, git-glob v0.5.1, git-path v0.7.0, git-attributes v0.7.0, git-config-value v0.10.0, git-lock v3.0.1, git-validate v0.7.1, git-object v0.24.0, git-ref v0.21.0, git-sec v0.6.0, git-config v0.13.0, git-prompt v0.3.0, git-url v0.12.0, git-credentials v0.8.0, git-diff v0.24.0, git-discover v0.10.0, git-traverse v0.20.0, git-index v0.10.0, git-mailmap v0.7.0, git-pack v0.28.0, git-odb v0.38.0, git-packetline v0.14.1, git-transport v0.24.0, git-protocol v0.25.0, git-revision v0.8.0, git-refspec v0.5.0, git-worktree v0.10.0, git-repository v0.30.0, safety bump 26 crates (e6b9906)
      • Prepare chnagelogs prior to git-repository release (7114bbb)
      • Merge branch 'main' into read-split-index (c57bdde)
      • Assure recursive shared indices (possibly malicious) don't crash us (ede718c)
      • Refactor (d6ba366)
      • Refactor (c840c0d)
      • Merge branch 'adjustments-for-cargo' (083909b)
      • Upload missing fixture archive (5cab553)
      • Fix failing test… (1057ee4)
      • Refactor (dfd00e5)
      • Test is green (800fc2b)
      • Sketch resolve_link_extension function (c62a25b)
      • Add test that compares split index with regular index (fc89517)
      • Adjust to changes in git-testtools (4eb842c)
      • Merge branch 'adjustments-for-cargo' (70ccbb2)
      • Upgrade atoi from 1 to 2 (be6c65c)
      • Release git-hash v0.10.1, git-hashtable v0.1.0 (7717170)
      • Merge branch 'main' into http-config (6b9632e)
      • Release git-features v0.24.1, git-actor v0.14.1, git-index v0.9.1 (7893502)
      • Merge branch 'named-threads' (726dd87)
      • Name spawned threads (fd2dd3a)
      • Merge branch 'main' into http-config (bcd9654)
      • Make fmt (0abab7d)
      • Release git-hash v0.10.0, git-features v0.24.0, git-date v0.3.0, git-actor v0.14.0, git-glob v0.5.0, git-path v0.6.0, git-quote v0.4.0, git-attributes v0.6.0, git-config-value v0.9.0, git-tempfile v3.0.0, git-lock v3.0.0, git-validate v0.7.0, git-object v0.23.0, git-ref v0.20.0, git-sec v0.5.0, git-config v0.12.0, git-command v0.2.0, git-prompt v0.2.0, git-url v0.11.0, git-credentials v0.7.0, git-diff v0.23.0, git-discover v0.9.0, git-bitmap v0.2.0, git-traverse v0.19.0, git-index v0.9.0, git-mailmap v0.6.0, git-chunk v0.4.0, git-pack v0.27.0, git-odb v0.37.0, git-packetline v0.14.0, git-transport v0.23.0, git-protocol v0.24.0, git-revision v0.7.0, git-refspec v0.4.0, git-worktree v0.9.0, git-repository v0.29.0, git-commitgraph v0.11.0, gitoxide-core v0.21.0, gitoxide v0.19.0, safety bump 28 crates (b2c301e)
      • Prepare changelogs prior to release (e4648f8)
      • Merge branch 'version2021' (0e4462d)
      • Upgrade edition to 2021 in most crates. (3d8fa8f)
      • Release git-glob v0.4.2, git-config-value v0.8.2, git-lock v2.2.0, git-ref v0.19.0, git-config v0.11.0, git-discover v0.8.0, git-index v0.8.0, git-transport v0.22.0, git-protocol v0.23.0, git-worktree v0.8.0, git-repository v0.28.0, gitoxide-core v0.20.0, gitoxide v0.18.0, safety bump 9 crates (0c253b1)
      • Prepare changelogs prior to release (fe5721f)
      • Merge branch 'main' into http-config (7c5b37d)
      • Release git-diff v0.22.0, git-index v0.7.1, git-pack v0.26.0, git-odb v0.36.0, git-transport v0.21.2, git-repository v0.27.0, safety bump 6 crates (f0cab31)
      • Prepare changelogs prior to release (f5f3a9e)
      • Merge branch 'fixes-for-crates-index-diff' (255be4d)
      • Remove unused import; fix docs (efe0a51)
      • Release git-features v0.23.1, git-glob v0.4.1, git-config-value v0.8.1, git-tempfile v2.0.6, git-object v0.22.1, git-ref v0.18.0, git-sec v0.4.2, git-config v0.10.0, git-prompt v0.1.1, git-url v0.10.1, git-credentials v0.6.1, git-diff v0.21.0, git-discover v0.7.0, git-index v0.7.0, git-pack v0.25.0, git-odb v0.35.0, git-transport v0.21.1, git-protocol v0.22.0, git-refspec v0.3.1, git-worktree v0.7.0, git-repository v0.26.0, git-commitgraph v0.10.0, gitoxide-core v0.19.0, gitoxide v0.17.0, safety bump 9 crates (d071583)
      • Prepare changelogs prior to release (423af90)
      • Merge branch 'write-sparse-index' (ba17db0)
      • Thanks clippy (49b539b)
      • Remove tests and scaffolding code that probably won't be implemented soon. (177d1c8)
      • Refactor (0a74625)
      • Act like git and write a sparse index even if it contains no dir entries anymore. (53af48c)
      • Bake knowledge about sparse related config parameters into types. (e61957e)
      • Merge branch 'main' into write-sparse-index (upgrade to Rust 1.65) (5406630)
      • Thanks clippy (04cfa63)
      • Merge branch 'main' into write-sparse-index (c4e6849)
      • Make fmt (ea2136b)
      • Merge branch 'gix-clone' (def53b3)
      • Add and use checked_is_sparse() instead of cached is_sparse flag (e41ad0f)
      • Refactor (3683963)
      • Thanks clippy (646b868)
      • Added fixture, adjusted tests, refactor (3173c0b)
      • Make clear in code that mandatory extensions will always be written… (3e37443)
      • Respect the current 'is_sparse() state when writing. ([2012b27`](https://github.com/GitoxideLabs/gitoxide/commit/2012b27246e8835b19725862409d2df23a2638c6))
      • Refactor (a929bcf)
      • Thanks clippy (5bfd947)
      • Sketch out how a write implementation could work (4a6d46f)
      • Regenerated archive (cd1c752)
      • Updated docs (77a9d42)
      • Added first tests and implementation for writing the sdir extension (66a675f)
      • Capability to write sdirextension (762e4cb)
      • Added tests for reading sparse indexes (ddaa003)
      • Add temporary sparse index playground testfile (5589a7f)
      • Add sparse index text fixtures (8a8a53e)
      • Add is_sparse access method for State (7f012cf)
      • Merge branch 'main' into gix-clone (de4fe06)
      • Merge branch 'fix-gix-index-from-tree' (da5f63c)
      • write::Options::object_hash is now implied by the State itself. (59f6791)
      • decode::Options::object_hash is now a parameter to methods. (908163a)
      • decode::Options::default_from_object_hash() (9e03110)
      • Refactor (6fb3255)
      • Seal File members to preserve consistency better. (92dda50)
      • decode::Options::default() - remove Default impl. (bd312ac)
      • Fix tests (fc5cee1)
      • Assure we also write V3 files, validate auto-version discovery (abc3cf8)
      • Loose fixtures are usable more easily now (b86012b)
      • Remove write::Options::default(). (2da5a62)
      • File::write() for secure and complete writing of index files. (eedcffa)
      • Prepare test for writing a complete index file from arbitrary state (281f5b8)
      • Merge branch 'gix-index-from-tree' (8c24386)
      • Refactor (08d5c0b)
      • Release git-hash v0.9.11, git-features v0.23.0, git-actor v0.13.0, git-attributes v0.5.0, git-object v0.22.0, git-ref v0.17.0, git-sec v0.4.1, git-config v0.9.0, git-url v0.10.0, git-credentials v0.6.0, git-diff v0.20.0, git-discover v0.6.0, git-traverse v0.18.0, git-index v0.6.0, git-mailmap v0.5.0, git-pack v0.24.0, git-odb v0.34.0, git-packetline v0.13.1, git-transport v0.21.0, git-protocol v0.21.0, git-revision v0.6.0, git-refspec v0.3.0, git-worktree v0.6.0, git-repository v0.25.0, safety bump 24 crates (104d922)
      • Prepare changelogs for release (d232567)
      • Remove the .insert() call… (4bb3e8b)
      • Merge branch 'main' into fetch-pack (d686020)
      • Thanks clippy (b9937ad)
      • Merge branch 'fix-git-features' (82fd251)
      • Merge branch 'diff' (25a7726)
      • Release git-hash v0.9.10, git-features v0.22.5, git-date v0.2.0, git-actor v0.12.0, git-glob v0.4.0, git-path v0.5.0, git-quote v0.3.0, git-attributes v0.4.0, git-config-value v0.8.0, git-tempfile v2.0.5, git-validate v0.6.0, git-object v0.21.0, git-ref v0.16.0, git-sec v0.4.0, git-config v0.8.0, git-discover v0.5.0, git-traverse v0.17.0, git-index v0.5.0, git-worktree v0.5.0, git-testtools v0.9.0, git-command v0.1.0, git-prompt v0.1.0, git-url v0.9.0, git-credentials v0.5.0, git-diff v0.19.0, git-mailmap v0.4.0, git-chunk v0.3.2, git-pack v0.23.0, git-odb v0.33.0, git-packetline v0.13.0, git-transport v0.20.0, git-protocol v0.20.0, git-revision v0.5.0, git-refspec v0.2.0, git-repository v0.24.0, git-commitgraph v0.9.0, gitoxide-core v0.18.0, gitoxide v0.16.0, safety bump 28 crates ([29a043b](https://github.com/Git
    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