PackageTrack
Sign in Get early access

gix-blame

A crate of the gitoxide project dedicated to implementing a 'blame' algorithm

0.17.0 4.5M downloads/mo #4759 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 18 of 18 stable releases

1 version withdrawn

withdrawn after publishing

2 years old

19 releases · first in 2025

14 releases in the last 12 months

see the full history below

Release timeline

19 releases · Jan 2025 to Aug 2026
2026
Release Pre-release Withdrawn

Releases

latest 19
  1. 0.17.0 22 Aug 2026
    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 →
  2. 0.16.0 23 Jul 2026
    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

    Commit Statistics

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

    • 7 commits contributed to the release.
    • 31 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
      • Update changelogs prior to release (cb6ec7d)
      • Release gix-trace v0.1.21, gix-validate v0.11.3, gix-path v0.12.3, gix-utils v0.3.5, gix-config-value v0.19.0, gix-prompt v0.16.0, gix-sec v0.14.2, gix-url v0.37.0, gix-credentials v0.39.0, safety bump 18 crates (f0ec710)
      • Merge pull request #2722 from GitoxideLabs/reasons (c16b5a1)
      • Replace lint allowances with expectations (43ff87a)
      • Merge pull request #2714 from GitoxideLabs/fix-credentials-parsing (cf3053a)
      • Release gix-path v0.12.2, gix-error v0.2.5, gix-utils v0.3.4, gix-date v0.15.6, gix-url v0.36.2, gix-credentials v0.38.2 (27aec47)
      • Merge pull request #2646 from GitoxideLabs/report (1b1541e) </details>
    Open source →
  3. 0.15.0 22 Jun 2026
    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

    Commit Statistics

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

    • 2 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 #2618 from GitoxideLabs/report (f7d4f33) </details>
    Open source →
  4. 0.14.0 26 May 2026
    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

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-error v0.2.4, gix-date v0.15.4, gix-actor v0.41.1, gix-trace v0.1.20, gix-validate v0.11.2, gix-path v0.12.1, gix-utils v0.3.3, gix-features v0.48.1, gix-hash v0.25.1, gix-hashtable v0.15.1, gix-object v0.61.0, gix-glob v0.26.1, gix-quote v0.7.2, gix-attributes v0.33.1, gix-command v0.9.1, gix-packetline v0.21.4, gix-filter v0.31.0, gix-fs v0.21.2, gix-chunk v0.7.2, gix-commitgraph v0.37.1, gix-revwalk v0.32.0, gix-traverse v0.58.0, gix-worktree-stream v0.33.0, gix-archive v0.33.0, gix-bitmap v0.3.2, gix-tempfile v23.0.1, gix-lock v23.0.1, gix-index v0.52.0, gix-config-value v0.18.1, gix-pathspec v0.18.1, gix-ignore v0.21.1, gix-worktree v0.53.0, gix-imara-diff v0.2.2, gix-diff v0.64.0, gix-blame v0.14.0, gix-ref v0.64.0, gix-sec v0.14.1, gix-config v0.57.0, gix-prompt v0.15.1, gix-url v0.36.1, gix-credentials v0.38.1, gix-discover v0.52.0, gix-dir v0.26.0, gix-mailmap v0.33.1, gix-revision v0.46.0, gix-merge v0.17.0, gix-negotiate v0.32.0, gix-pack v0.71.0, gix-odb v0.81.0, gix-refspec v0.42.0, gix-shallow v0.12.1, gix-transport v0.57.1, gix-protocol v0.62.0, gix-status v0.31.0, gix-submodule v0.31.0, gix-worktree-state v0.31.0, gix v0.84.0, gix-fsck v0.22.0, gitoxide-core v0.58.0, gitoxide v0.54.0, safety bump 27 crates (10c58bb)
      • Merge pull request #2573 from cruessler/run-gix-traverse-tests-with-sha-256 (278d7ec)
      • Cleanup the justfile and automate feature tests (db7b97b)
      • Cleanup sha1 feature in gix to just set what's needed. (16a6fc4)
      • 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)
      • 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 #2542 from cruessler/run-gix-blame-tests-with-sha-256 (fbb2e6e)
      • Review (e20122a)
      • Use GIX_TEST_FIXTURE_HASH for gix-blame (cd028f4)
      • Merge pull request #2546 from GitoxideLabs/fix-2545 (adb8328) </details>
    Open source →
  5. 0.13.0 27 Apr 2026
    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

    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.12.0 24 Apr 2026
    Release notes

    New Features

    • <csr-id-7e99e6aeee9bf200a561d215c586301f5e4a8cbc/> Add gix repo commit describe It supports typical but basic flags mostly similar to the ones in git.

    Commit Statistics

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

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

    Commit Details

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

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

    • #298
      • Use all tags by default, instead of requiring annotated tags (00c42ca)
      • Support for the --max-candidates flag (b9e6754)
      • Reduce amount of max candidates, add --debug flag (c8c13e3)
      • Add gix repo commit describe (7e99e6a)
      • A first sketch of the gix repo describe plumbing command (2d6ccef) </details>
    Open source →
    Release notes

    Chore

    • <csr-id-3e05ca352597ef5966fa4dc4f52456c2424cddad/> add package.include directives to control which files are packaged.

    New Features (BREAKING)

    • <csr-id-8094f5dcd4f24f4d54f7fbe7f716f80f2974b586/> Use imara-diff-v2 with git sliders processing The slider post-processing imrpoves the diff quality for about 8% slower diffs. Line-counts, however, will be 50% faster to compute.

    Commit Statistics

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

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

    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
      • Update changelogs prior to release (f9fbcba)
      • Merge pull request #2513 from GitoxideLabs/v2-diff (2a5db88)
      • Thanks clippy (e4f380e)
      • Use imara-diff-v2 with git sliders processing (8094f5d)
      • Merge pull request #2518 from GitoxideLabs/improvements (444a92b)
      • Add package.include directives to control which files are packaged. (3e05ca3)
      • Merge pull request #2480 from GitoxideLabs/report (98bae84) </details>
    Open source →
  7. 0.11.0 22 Mar 2026
    Release notes

    <csr-id-4d2d433e7e98ac42db858688edac06e68ee4d10d/>

    Adapt to changes in gix-features which change Send + Sync to Send + Clone. This happens to allow non-sync implementations (i.e. thread-local), along with Sync ones which usually are Clone too as they are passed by immutable reference (which is Clone + Copy).

    Changed (BREAKING)

    • <csr-id-bf04644ab75ed1969507f957dc8d4868790d462d/> remove Option<impl Progress> in favor of impl Progress
    • <csr-id-d851bede97801096d188ff6af06c98a79fe276db/> remove unnecessary Arc around should_interrupt flag
    • <csr-id-c2679a03358b9c19d63ed1af1cd57324c6381447/> remove Sha1 mentions in index::verify::Mode::* variants The hash is repository defined and not hard-coded
    • <csr-id-51bf03feaa94bebb26690dff92262b2134070a44/> Remove lean plumbing CLI

    Bug Fixes

    • <csr-id-57ca0456cf02073099bfd403f9155290af756ecd/> Collect all stdout messages in line renderer as well Otherwise the threaded line renderer will interfere with genuine program output.

    New Features

    • <csr-id-384ed665c7423feca1b1ee1f81db10867fa813a8/> gix mailmap verify command
    • <csr-id-70109bee679d33a5c5fb3a78a708b479684b03b1/> ein find --debug to learn why it is slow
    • <csr-id-00909619ff04e247aabc9ffe3c025f0064c3092d/> --counting-threads flag to configure amount of threads when counting The efficiency of multi-threaded counting is low per core, and despite some speedups might be desirable, one might not want to commit all cores to this amount of waste.
    • <csr-id-25da30f3652bd72c157e84439dd6e3957471fa08/> in-manifest and in-bin documentation of feature toggles Unfortunately, these don't show up on docs.rs due to it being a binary only crate. One could consider throwing in a lib just for good measure.

    Commit Statistics

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

    Commit Details

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

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

    • #215
      • Collect all stdout messages in line renderer as well (57ca045)
      • Fix compile warning (e4514a8)
      • Remove reference of pretty-cli in code tree (4bd2f29)
      • Remove lean plumbing CLI (51bf03f)
      • Remove light* features, add 'lean-async' in its place; remove termion support (4d2d433)
    • #263
      • Fmt (fbeddeb)
      • A mad attempt to use thread-local everywhere and avoid Sync… (0af5077)
    • #266
      • Provide handle with a snapshot of the store's state (6e0cd6d)
    • #279
      • Fast-path multi-pack index verification in the CLI (bcde935)
      • Basic multi-pack index creation (89428b2)
      • 'index' with its own sub-commands (c4c5678)
      • Even nicer printing (d2bea27)
      • Remove Option<impl Progress> in favor of impl Progress (bf04644)
      • Remove unnecessary Arc around should_interrupt flag (d851bed)
      • Remove Sha1 mentions in index::verify::Mode::* variants (c2679a0)
    • #287
      • Share and pass cli arguments for pack verification (db43e47)
      • Very rough version of repository verification (80a4a7a)
      • Adjustments to deal with changes to git-pack/git-odb (fcf8fde)
    • #289
      • 'pack' with its own sub-commands (fb64af4)
      • 'remote' with its own sub-commands (8677f7e)
      • 'commitgraph' with its own sub-commands (db0251e)
    • #293
      • Faster writing to stdout/stderr for plumbing commands (d04dc01)
      • Add 'index verify' subcommand to 'gix' (1ac2c21)
      • Flag to hide extension details (34ea001)
      • Print basic index information, including the tree extension (9277cf8)
      • Basic entry information (239e7b2)
      • Refactor (8bf585d)
      • JSON output for index entries (3fc1622)
    • #298
      • Simplify command-line options declaration (f790a55)
      • Frame for printing index information (9ea98fd)
    • #301
      • Greatly simplify render-line logic (a8fa53a)
      • Pass thread-limit along to checkout (07e9081)
      • Add thread-count and chunk-size computation; interrupt capability (8cbe85d)
      • A first sketch of access odb information using a sub-command (89b628a)
      • Sub-command to print multi-index entries (6c10e09)
      • Pack multi-index info subcommand (21c2dd5)
      • Refactor (e6a3d43)
      • Detailed report about issues after checkout (613483b)
      • Keep-going support on the command-line (73a7393)
      • Add tree-info subcommand to more easily test actual tree-traversal performance (29fb0c8)
      • Frame for traversing tree entries (0e55fbb)
      • Properly use 'max-performance' feature toggle to get pack caches :D (a39d476)
      • Allow writing empty files during checkout but also query the odb (5388d80)
      • Support for repo to write actual objects (5494fb3)
      • Basic version of index checkout via command-line (f23b8d2)
      • Support for unicode-precomposition for gix apps (e90c123)
    • #329
      • In-manifest and in-bin documentation of feature toggles (25da30f)
    • #366
      • Frame for printing mailmap entries using git-repository (2a01f47)
      • Gix mailmap verify can now detect collisions (f89fe2f)
      • gix mailmap verify command (384ed66)
    • #67
      • --counting-threads flag to configure amount of threads when counting (0090961)
    • Uncategorized
      • Make fmt (7cf3545)
      • Small build now uses the line renderer as well (652a0ac)
      • Upgrade to prodash 19 (90c6c5a)
      • ein find --debug to learn why it is slow (70109be)
      • Fix clap warnings (aa51e05)
      • Merge branch 'index-verification' (ad3c803)
      • Merge branch 'index-information' (025f157)
      • Improve CLI docs (866530a)
      • Rename 'gix commitgraph' back to 'gix commit-graph' (d6a72e7)
      • Merge branch 'use-midx-in-store' (338521b)
      • Merge branch 'sync-db-draft' (7d2e20c)
      • Thanks clippy (b0f7328) </details>
    Open source →
    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/>

    • 4 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 #2441 from cruessler/remove-sha-1-from-default-features (e8bf096)
      • Add sha1 and sha256 features to gix. (3832916)
      • Merge pull request #2442 from GitoxideLabs/report (f7277f3) </details>
    Open source →
  8. 0.10.0 22 Feb 2026
    Release notes

    This release pins beta versions of clap to avoid it to automatically fetch the latest one during installation.

    This is made possible due to clap itself pinning its dependency to the clap-derive crate.

    Commit Statistics

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

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

    Commit Details

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

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

    Open source →
    Release notes

    Commit Statistics

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

    • 2 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 branch 'release' (9327b73) </details>
    Open source →
  9. 0.9.0 10 Feb 2026
    Release notes

    A first usable version of gix to make using gitoxide from your applications so much easier. It serves as a one-stop shop for application developers without sacrificing performance by default while making common use-cases more convenient.

    Feature list

    • gix as hub crate for application development with focus on usability without sacrificing any knob to tune performance.
    • opt-in async for gix-packetline, gix-transport and gix-protocol for fully async git clients, along with the light-async feature toggle to build a gix pack-receive with an async client instead of a blocking one.
    • Statistics for gix pack-create with the -s/--statistics flag to have data indicating the cost of the operation. Currently it's doing a lot of work that has to be avoided in order to be useable in production and the numbers underline that. Future iterations will cause key metrics to go down.
    • Packs are now reproducible by default, which means that the same tip will always generate a pack with the same hash. This may be a desirable property for some kinds of packs, but not for others which is why it can be turned off for a considerable speed boost.
    • gix-tempfile crate
    • gix-lock crate
    • gix-ref crate with complete loose-ref, packed-ref and transaction support.

    Performance

    • On M1, thanks to a new release, Sha1 is now computed much faster which unlocks a massive performance boost. In my test, verifying/decoding the entire linux kernel pack now happens in 17s, as compared to 37s for canonical git.
    • gix-object parsing is a few percent faster thanks a reworked error handling for objects. By default, error collection is disabled entirely making the error case zero-sized. If needed, verbose and stacked errors can be turned on using a feature toggle for applications who expect repositories with malformed objects and need detailed diagnostics.

    New Features

    • <csr-id-60c9fad8002b4e3f6b9607bba6361871752f4d3d/> control pack and object cache size in megabytes in some sub-commands

    Commit Statistics

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

    • 5 commits contributed to the release over the course of 26 calendar days.
    • 35 days passed between releases.
    • 1 commit was understood as conventional.
    • 2 unique issues were worked on: #200, #67
    Open source →
    Release notes

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-error v0.1.0, gix-date v0.14.0, gix-actor v0.39.0, gix-trace v0.1.18, gix-path v0.11.1, gix-features v0.46.1, gix-hash v0.22.1, gix-object v0.56.0, gix-quote v0.6.2, gix-attributes v0.30.1, gix-command v0.7.1, gix-packetline v0.21.1, gix-filter v0.26.0, gix-fs v0.19.1, gix-chunk v0.6.0, gix-commitgraph v0.33.0, gix-revwalk v0.27.0, gix-traverse v0.53.0, gix-worktree-stream v0.28.0, gix-archive v0.28.0, gix-bitmap v0.2.16, gix-tempfile v21.0.1, gix-lock v21.0.1, gix-index v0.47.0, gix-config-value v0.17.1, gix-pathspec v0.15.1, gix-worktree v0.48.0, gix-diff v0.59.0, gix-blame v0.9.0, gix-ref v0.59.0, gix-sec v0.13.1, gix-config v0.52.0, gix-prompt v0.13.1, gix-url v0.35.1, gix-credentials v0.36.0, gix-discover v0.47.0, gix-dir v0.21.0, gix-mailmap v0.31.0, gix-revision v0.41.0, gix-merge v0.12.0, gix-negotiate v0.27.0, gix-pack v0.66.0, gix-odb v0.76.0, gix-refspec v0.37.0, gix-shallow v0.8.1, gix-transport v0.54.0, gix-protocol v0.57.0, gix-status v0.26.0, gix-submodule v0.26.0, gix-worktree-state v0.26.0, gix v0.79.0, safety bump 35 crates (d66ac10)
      • Merge pull request #2420 from cruessler/remove-imara-diff-0-1-in-gix-blame (28fbeb8)
      • Refactor (f4064e5)
      • Don't remove blob feature (0392a6d)
      • Switch to imara-diff 0.2 in gix-blame (90b4769)
      • 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.8.0 22 Jan 2026
    Release notes

    New Features (BREAKING)

    • <csr-id-5c1bd0387f98eee37265a42ba4b6624c783c9a71/> Use std::ops::ControlFlow where possible
    • <csr-id-5ab19a7a3344c58ad1185a23a789848ed5e02241/> Use gix-error in gix-date This will make for easier introspection for users of these errors.

    Commit Statistics

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

    • 12 commits contributed to the release over the course of 21 calendar days.
    • 22 days passed between releases.
    • 2 commits were understood as conventional.
    • 2 unique issues were worked on: #2363, #2366

    Commit Details

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

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

    • #2363
      • Regenerate all changelogs with a more recent CSR version (cbbdef5)
    • #2366
      • Add a test combining renames and edits on multiple branches (83c1dfb)
    • 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 #2378 from GitoxideLabs/gix-error (6cff657)
      • Adapt to changes in gix-commitgraph (1f58905)
      • Use std::ops::ControlFlow where possible (5c1bd03)
      • Merge pull request #2352 from GitoxideLabs/gix-error (ae23762)
      • Merge pull request #2364 from GitoxideLabs/changelogs (0a333e5)
      • Use gix-error in gix-date (5ab19a7)
      • Merge pull request #2346 from GitoxideLabs/release (c663b3f)
      • Release gix-trace v0.1.17, gix-features v0.45.2, gix-command v0.6.5, gix-hash v0.21.2, gix-date v0.12.1, gix-actor v0.37.1, gix-object v0.54.1, gix-filter v0.24.1, gix-fs v0.18.2, gix-tempfile v20.0.1, gix-lock v20.0.1, gix-traverse v0.51.1, gix-index v0.45.1, gix-diff v0.57.1, gix-pack v0.64.1 (7be8f90)
      • Merge pull request #2322 from GitoxideLabs/report (211b4fb) </details>
    Open source →
  11. 0.7.0 31 Dec 2025
    Release notes

    Commit Statistics

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

    • 32 commits contributed to the release over the course of 128 calendar days.
    • 144 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 3 times to make code idiomatic.

    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 →
  12. 0.6.0 22 Dec 2025
    Release notes

    Maintenance release without any new features.

    These are created to account for breaking changes within the dependency graph of gitoxide crates. Due to some blunders in the past the version on crates.io could not be installed anymore. This was eventually fixed with new minor releases across the ecosystem.

    Finally, yet another breaking change due to the introduction of the gix-hash crate to break a dependency cycle between gix-object and gix-features caused yet another maintenance release.

    Open source →
    Release notes

    Commit Statistics

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

    • 6 commits contributed to the release over the course of 14 calendar days.
    • 30 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-date v0.11.1, gix-actor v0.36.1, gix-trace v0.1.16, gix-features v0.45.0, gix-hash v0.21.0, gix-hashtable v0.11.0, gix-object v0.53.0, gix-glob v0.23.0, gix-attributes v0.29.0, gix-filter v0.23.0, gix-fs v0.18.0, gix-commitgraph v0.31.0, gix-revwalk v0.24.0, gix-traverse v0.50.0, gix-worktree-stream v0.25.0, gix-archive v0.25.0, gix-tempfile v20.0.0, gix-lock v20.0.0, gix-index v0.44.0, gix-config-value v0.16.0, gix-pathspec v0.14.0, gix-ignore v0.18.0, gix-worktree v0.45.0, gix-diff v0.56.0, gix-blame v0.6.0, gix-ref v0.56.0, gix-config v0.49.0, gix-prompt v0.12.0, gix-url v0.34.0, gix-credentials v0.33.0, gix-discover v0.44.0, gix-dir v0.18.0, gix-mailmap v0.28.1, gix-revision v0.38.0, gix-merge v0.9.0, gix-negotiate v0.24.0, gix-pack v0.63.0, gix-odb v0.73.0, gix-refspec v0.34.0, gix-shallow v0.7.0, gix-transport v0.51.0, gix-protocol v0.54.0, gix-status v0.23.0, gix-submodule v0.23.0, gix-worktree-state v0.23.0, gix v0.76.0, gix-fsck v0.15.0, gitoxide-core v0.51.0, gitoxide v0.48.0, safety bump 43 crates (21fecdf)
      • Merge pull request #2287 from cruessler/update-to-imara-diff-0-2-in-gix-blame (691a205)
      • Refactor (0b7c1dd)
      • Thanks clippy (ca9e4b9)
      • Add feature flag blob-experimental to gix-blame (ed9c437)
      • Update gix-blame to imara-diff 0.2 (2c88262) </details>
    Open source →
  13. 0.5.0 22 Nov 2025
    Release notes

    Maintenance release without any new features.

    Commit Statistics

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

    • 5 commits contributed to the release over the course of 78 calendar days.
    • 84 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 'commit-graph' into main (9cb09b2)
      • Add lean-plumbing docs for path of commit-graph-verify (5c7b52d)
      • [commitgraph] Implement basic commit-graph file verification. (2571113)
      • [commitgraph] Stub out commit-graph-verify plumbing command. (aacf0f0)
      • Merge branch 'main' into commit-graph (ca5b801) </details>
    Open source →
    Release notes

    Commit Statistics

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

    • 3 commits contributed to the release.
    • 31 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 #2204 from cruessler/improve-blame-ranges (663b41e)
      • Merge pull request #2224 from GitoxideLabs/report (3313233) </details>
    Open source →
  14. 0.4.0 22 Oct 2025
    Release notes
    • add remote-ref-list and pack-receive subcommands to gix

    CLI Breaking

    • rename plumbing sub-command from index-from-pack to pack-index-from-data

    Commit Statistics

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

    • 14 commits contributed to the release over the course of 29 calendar days.
    • 31 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
      • [clone] refs can now be written into a specified directory (fb1f048)
      • [clone] First version of writing references, but… (445be27)
      • [clone] first journey test for pack-receive (46a3511)
      • [clone] This actually works: first MVP of retrieving packs via clone (c06d819)
      • [ref-ls] add pretty version for ls-refs (487d06d)
      • [ref-ls] Fix progress display (2fcb557)
      • Refactor (b38290e)
      • [ref-ls] refactor (35e26fc)
      • Refactor (f90b92f)
      • [ref-ls] Frame for remote-ref-ls command in gitoxide-core (161e7df)
      • [clone] link up lean plumbing command with gitoxide-core: pack-receive (5ea49c8)
      • Refactor (40a6412)
      • Less ambiguous name for 'index-from-pack': 'pack-index-from-data' (386673c)
      • Refactor (b4a6e16) </details>
    Open source →
    Release notes

    New Features (BREAKING)

    • <csr-id-2230fde962a0832dd3f54d30da88eec8993f847e/> support multiple range formats in BlameRanges This modification introduces changes to the BlameRanges struct, converting it into an enum to support both PartialFile and WholeFile. Internally the ranges in BlameRanges are stored as zero-based exclusive ranges now.
    • <csr-id-7ecbec0fa235a719df2964a883607a9a20563af9/> rename range to ranges

    Commit Statistics

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

    • 26 commits contributed to the release over the course of 99 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
      • Release gix-date v0.10.6, gix-utils v0.3.1, gix-actor v0.35.5, gix-trace v0.1.14, gix-validate v0.10.1, gix-path v0.10.21, gix-features v0.44.0, gix-hash v0.20.0, gix-hashtable v0.10.0, gix-object v0.51.0, gix-glob v0.22.0, gix-quote v0.6.1, gix-attributes v0.28.0, gix-command v0.6.3, gix-packetline-blocking v0.19.2, gix-filter v0.21.0, gix-fs v0.17.0, gix-chunk v0.4.12, gix-commitgraph v0.30.0, gix-revwalk v0.22.0, gix-traverse v0.48.0, gix-worktree-stream v0.23.0, gix-archive v0.23.0, gix-bitmap v0.2.15, gix-tempfile v19.0.0, gix-lock v19.0.0, gix-index v0.42.0, gix-config-value v0.15.2, gix-pathspec v0.13.0, gix-ignore v0.17.0, gix-worktree v0.43.0, gix-diff v0.54.0, gix-blame v0.4.0, gix-ref v0.54.0, gix-sec v0.12.1, gix-config v0.47.0, gix-prompt v0.11.2, gix-url v0.33.0, gix-credentials v0.31.0, gix-discover v0.42.0, gix-dir v0.16.0, gix-mailmap v0.27.3, gix-revision v0.36.0, gix-merge v0.7.0, gix-negotiate v0.22.0, gix-pack v0.61.0, gix-odb v0.71.0, gix-refspec v0.32.0, gix-shallow v0.6.0, gix-packetline v0.19.2, gix-transport v0.49.0, gix-protocol v0.52.0, gix-status v0.21.0, gix-submodule v0.21.0, gix-worktree-state v0.21.0, gix v0.74.0, gix-fsck v0.13.0, gitoxide-core v0.49.0, gitoxide v0.46.0, safety bump 42 crates (89fb308)
      • Merge pull request #2217 from GitoxideLabs/copilot/update-msrv-to-rust-1-82 (4da2927)
      • Update MSRV to 1.82 and replace once_cell with std equivalents (6cc8464)
      • Cut or ignore ranges that exceed max_lines (9d5b033)
      • Fix comment (5f6d416)
      • Support multiple range formats in BlameRanges (2230fde)
      • Rename range to ranges (7ecbec0)
      • 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 #2163 from cruessler/deprecate-in-place-methods (42f8db5)
      • Adapt to changes in gix-ref (44922d0)
      • Merge pull request #2157 from cruessler/more-impl-from-for-unblamed-hunk (9222666)
      • Reduce noise in gix-blame tests (58cb884)
      • Merge pull request #2156 from cruessler/impl-from-for-unblamed-hunk (c78af3c)
      • Reduce noise in gix-blame tests (4ad2be8)
      • Merge pull request #2153 from cruessler/add-blame-file-on-repository (bd47fb5)
      • Fix typo, add missing slashes (1ad3da6)
      • 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 #2110 from jpgrayson/fix/gix-date-parse-raw (651f9fa)
      • Release gix-date v0.10.5 (4289ae6)
      • 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 #2097 from GitoxideLabs/fix-gix-date (589d63e)
      • Release gix-date v0.10.4 (007e3f6)
      • Merge pull request #2075 from GitoxideLabs/improvements (784c046) </details>
    Open source →
  15. 0.3.0 15 Jul 2025
    Release notes
    • add pack-explode and pack-index-from-data sub-commands
    • massive speed improvements for pack-verify

    Many small and possibly breaking changes are not mentioned here.

    Commit Statistics

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

    • 46 commits contributed to the release over the course of 30 calendar days.
    • 31 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
      • Make obvious that interrupt request was received (34b2373)
      • Make interrupt handler work reliably (e71da0f)
      • Unify used ranges for line renderer amond pretty and lean interface (f59f66e)
      • Add percentage and throughput to tasks that matter (763d7ca)
      • Upgrade to latest iteration of prodash (3a4faec)
      • Support for JSON format output (1931575)
      • First pieces of the index-from-pack journey tests (181d69c)
      • Add versions back to main command, remove from sub-commands (e509373)
      • Ditch structopt in favor of clap 3.0 beta1 (d7591e2)
      • Move common flags to common plac (c0352c2)
      • Write about user interfaces and the use/non-use of async (91ba045)
      • Interrupt support for pretty plumbing (bca7ce2)
      • Revert "Less memory for look up mode, faster start" - too slow (584350a)
      • Less memory for look up mode, faster start (395c7e7)
      • Remove memory mode entirely (and some complexity with it) (8812e91)
      • Turns out you never want to keep deltas in memory (657aa2c)
      • Remove support for keeping compressed memory to reduce the index size (1e2ec7e)
      • …but there seem to be issues with the kernel pack… (cc147bc)
      • Minor fixes after first local tests - it's up to twice as fast!! (43c7fd1)
      • Quick and dirty impl of lean command-line for index-from-pack (9660bbf)
      • Upgrade dependencies (44b8221)
      • Remove invalid clap configuration (665696f)
      • Prepare full 'verify' implementation (ee45c7f)
      • Refactor (0a33b24)
      • Allow sink-compress configuration; choose best algorithm (29b9c23)
      • Nice error message on failure (adbc82c)
      • The first 'explode' implementation… (0d31ad1)
      • Get all pieces ready for action (1805d64)
      • Pass option for safety checks down to explode(…) (0bcb790)
      • Refactor (f66b116)
      • Basic tests and CLI args for explode pack (f932256)
      • Rename verify-pack to pack-verify (keeping it more formal) (ec8c48a)
      • Refactor (d3c00c8)
      • Change bin names from 'gio' to 'gix' and 'gixp' (5e23137)
      • Revert "Invert --statitics switch to become --no-statistics" (93a9b30)
      • Invert --statitics switch to become --no-statistics (aeb8778)
      • Use faster algorithm by default (bb45c3d)
      • Fix clippy (ec40e09)
      • Change course and do pack streaming first (bcb275e)
      • Get rid of annoying warnings - there is no better and easier way (41f38c4)
      • Fully implement --encode and --re-encode flags (a7cfac8)
      • Prepare for re-encoding each pack object (afae684)
      • Fix naming change, which was introduced accidentally (fbb9f98)
      • Refactor (2888f1b)
      • Pass threadlimit down from CLIs (f98c5b1)
      • Add new Context argument to support more configuration options (7c5d8b8) </details>
    Open source →
    Release notes

    New Features (BREAKING)

    • <csr-id-81297cf2b85072ad13824f9821a0102dc6497f80/> add debug_track_path and blame_path

    • <csr-id-d2e98f3cf458121da3d23933d6a7421d70309a20/> follow renames in blame

    • <csr-id-f1890313c42d8f5b347feef1f48ec53f054dff08/> Add BlameRanges to enable multi-range blame support This update replaces single-range handling with the BlameRanges type, allowing multiple 1-based inclusive line ranges to be specified for blame operations.

      It hides some of the implementation details of the range logic, prepares for compatibility with git behavior, and adds tests to validate multi-range scenarios.

    Commit Statistics

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

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

    Thanks Clippy

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

    Clippy helped 2 times to make code idiomatic.

    Commit Details

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

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

    • Uncategorized
      • Release gix-date v0.10.3, gix-actor v0.35.2, gix-trace v0.1.13, gix-path v0.10.19, gix-features v0.43.0, gix-hash v0.19.0, gix-hashtable v0.9.0, gix-object v0.50.0, gix-glob v0.21.0, gix-attributes v0.27.0, gix-command v0.6.2, gix-packetline-blocking v0.19.1, gix-filter v0.20.0, gix-fs v0.16.0, gix-commitgraph v0.29.0, gix-revwalk v0.21.0, gix-traverse v0.47.0, gix-worktree-stream v0.22.0, gix-archive v0.22.0, gix-tempfile v18.0.0, gix-lock v18.0.0, gix-index v0.41.0, gix-config-value v0.15.1, gix-pathspec v0.12.0, gix-ignore v0.16.0, gix-worktree v0.42.0, gix-diff v0.53.0, gix-blame v0.3.0, gix-ref v0.53.0, gix-sec v0.12.0, gix-config v0.46.0, gix-prompt v0.11.1, gix-url v0.32.0, gix-credentials v0.30.0, gix-discover v0.41.0, gix-dir v0.15.0, gix-mailmap v0.27.2, gix-revision v0.35.0, gix-merge v0.6.0, gix-negotiate v0.21.0, gix-pack v0.60.0, gix-odb v0.70.0, gix-refspec v0.31.0, gix-shallow v0.5.0, gix-packetline v0.19.1, gix-transport v0.48.0, gix-protocol v0.51.0, gix-status v0.20.0, gix-submodule v0.20.0, gix-worktree-state v0.20.0, gix v0.73.0, gix-fsck v0.12.0, gitoxide-core v0.48.0, gitoxide v0.45.0, safety bump 43 crates (5a919c4)
      • Update changelogs prior to release (65037b5)
      • Merge pull request #2070 from GitoxideLabs/dependabot/cargo/cargo-827bceb7eb (dab97f7)
      • Bump the cargo group across 1 directory with 68 updates (a9a8ea1)
      • Merge pull request #2066 from cruessler/add-test-for-file-added-in-two-different-branches (8007f1d)
      • Add test for file with two roots (92751b7)
      • Merge pull request #2041 from cruessler/add-blame-extraction (dd5f0a4)
      • Refactor (378b1be)
      • Thanks clippy (c7a2e80)
      • Only add entry when blame was passed (5d748af)
      • Add index to BlamePathEntry (90c2bb8)
      • Add debug_track_path and blame_path (81297cf)
      • Merge pull request #2042 from cruessler/remove-unwrap-in-tests (e09825a)
      • Remove most .unwrap()'s in gix-blame tests (4bf61f5)
      • Merge pull request #2039 from cruessler/add-test-for-rename-tracking (073487b)
      • Refactor (8e2bc0f)
      • Remove obsolete comment (2541378)
      • Add test for source file name tracking per hunk (8ba513c)
      • Merge pull request #2022 from cruessler/add-rename-tracking-to-blame (76eddf8)
      • Refactor (3e5365c)
      • Get current file_path from unblamed hunk (7435ed5)
      • Follow renames in blame (d2e98f3)
      • Use pretty_assertion::assert_equal (6e6836b)
      • Merge pull request #2023 from cruessler/add-tests-for-blame-in-sub-directory (f606bd5)
      • Add test for blame in sub-directory (cca22e2)
      • Merge pull request #2009 from GitoxideLabs/release-gix-index (c3f06ae)
      • Release gix-path v0.10.18, gix-date v0.10.2, gix-traverse v0.46.2, gix-index v0.40.1 (d2b4c44)
      • Merge pull request #1983 from cruessler/make-process-changes-work-with-overlapping-ranges (83e1b73)
      • Refactor (b2121bc)
      • Thanks clippy (ee6f5cc)
      • Use Blamed File and Source File more consistently (2f6786b)
      • Correctly process overlapping unblamed hunks (6e1ea6d)
      • Provide more context in assertion (d46766a)
      • Merge pull request #1978 from cruessler/make-mutation-more-idiomatic (dc3c7c9)
      • Make mutation more idiomatic (4423cae)
      • Remove obsolete comment (2d2365e)
      • Merge pull request #1974 from cruessler/move-commit-time-to-either (8be3193)
      • Make use of gix_traverse::commit::Either::commit_time() (f59a794)
      • Merge pull request #1973 from holodorum/feature/blame-range-support (de13b16)
      • Refactor (d4461e7)
      • Add BlameRanges to enable multi-range blame support (f189031)
      • Merge pull request #1971 from GitoxideLabs/new-release (8d4c4d1) </details>
    Open source →
  16. 0.2.1 26 Apr 2025
    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 →
  17. 0.2.0 25 Apr 2025 withdrawn
    Release notes

    Bug Fixes

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

    Commit Statistics

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

    • 12 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
      • Release gix-path v0.10.16, gix-features v0.42.0, gix-hash v0.17.1, gix-object v0.49.0, gix-glob v0.19.1, gix-quote v0.5.1, gix-attributes v0.25.1, gix-command v0.5.1, gix-packetline-blocking v0.18.4, gix-filter v0.19.0, gix-fs v0.14.1, gix-commitgraph v0.27.1, gix-revwalk v0.20.0, gix-traverse v0.46.0, gix-worktree-stream v0.21.0, gix-archive v0.21.0, gix-tempfile v17.0.1, gix-lock v17.0.1, gix-index v0.39.1, gix-config-value v0.14.13, gix-pathspec v0.10.1, gix-ignore v0.14.1, gix-worktree v0.40.1, gix-diff v0.52.0, gix-blame v0.2.0, gix-ref v0.52.0, gix-sec v0.10.13, gix-config v0.45.0, gix-prompt v0.10.1, gix-url v0.30.1, gix-credentials v0.28.1, gix-discover v0.40.0, gix-dir v0.14.0, gix-mailmap v0.27.0, gix-revision v0.34.0, gix-merge v0.5.0, gix-negotiate v0.20.0, gix-pack v0.59.0, gix-odb v0.69.0, gix-refspec v0.30.0, gix-shallow v0.3.1, gix-packetline v0.18.5, gix-transport v0.46.1, gix-protocol v0.50.0, gix-status v0.19.0, gix-submodule v0.19.0, gix-worktree-state v0.18.1, gix v0.72.0, gix-fsck v0.11.0, gitoxide-core v0.47.0, gitoxide v0.43.0 (cc5b696)
      • Adjusting changelogs prior to release of gix-path v0.10.16, gix-features v0.42.0, gix-hash v0.17.1, gix-object v0.49.0, gix-glob v0.19.1, gix-quote v0.5.1, gix-attributes v0.25.1, gix-command v0.5.1, gix-packetline-blocking v0.18.4, gix-filter v0.19.0, gix-fs v0.14.1, gix-commitgraph v0.27.1, gix-revwalk v0.20.0, gix-traverse v0.46.0, gix-worktree-stream v0.21.0, gix-archive v0.21.0, gix-tempfile v17.0.1, gix-lock v17.0.1, gix-index v0.39.1, gix-config-value v0.14.13, gix-pathspec v0.10.1, gix-ignore v0.14.1, gix-worktree v0.40.1, gix-diff v0.52.0, gix-blame v0.2.0, gix-ref v0.52.0, gix-sec v0.10.13, gix-config v0.45.0, gix-prompt v0.10.1, gix-url v0.30.1, gix-credentials v0.28.1, gix-discover v0.40.0, gix-dir v0.14.0, gix-mailmap v0.27.0, gix-revision v0.34.0, gix-merge v0.5.0, gix-negotiate v0.20.0, gix-pack v0.59.0, gix-odb v0.69.0, gix-refspec v0.30.0, gix-shallow v0.3.1, gix-packetline v0.18.5, gix-transport v0.46.1, gix-protocol v0.50.0, gix-status v0.19.0, gix-submodule v0.19.0, gix-worktree-state v0.18.1, gix v0.72.0, gix-fsck v0.11.0, gitoxide-core v0.47.0, gitoxide v0.43.0, safety bump 7 crates (49fa9f3)
      • Release gix-date v0.10.0, gix-utils v0.2.1, gix-actor v0.35.0, gix-validate v0.9.5, gix-path v0.10.15, gix-features v0.42.0, gix-hash v0.17.1, gix-object v0.49.0, gix-glob v0.19.1, gix-quote v0.5.1, gix-attributes v0.25.0, gix-command v0.5.1, gix-packetline-blocking v0.18.4, gix-filter v0.19.0, gix-fs v0.14.0, gix-commitgraph v0.27.1, gix-revwalk v0.20.0, gix-traverse v0.46.0, gix-worktree-stream v0.21.0, gix-archive v0.21.0, gix-tempfile v17.0.1, gix-lock v17.0.1, gix-index v0.39.0, gix-config-value v0.14.13, gix-pathspec v0.10.1, gix-ignore v0.14.1, gix-worktree v0.40.0, gix-diff v0.52.0, gix-blame v0.2.0, gix-ref v0.51.0, gix-sec v0.10.13, gix-config v0.45.0, gix-prompt v0.10.1, gix-url v0.30.1, gix-credentials v0.28.1, gix-discover v0.40.0, gix-dir v0.14.0, gix-mailmap v0.27.0, gix-revision v0.34.0, gix-merge v0.5.0, gix-negotiate v0.20.0, gix-pack v0.59.0, gix-odb v0.69.0, gix-refspec v0.30.0, gix-shallow v0.3.1, gix-packetline v0.18.5, gix-transport v0.46.0, gix-protocol v0.50.0, gix-status v0.19.0, gix-submodule v0.19.0, gix-worktree-state v0.18.0, gix v0.72.0, gix-fsck v0.11.0, gitoxide-core v0.46.0, gitoxide v0.43.0, safety bump 30 crates (db0b095)
      • Update changelogs prior to release (0bf84db)
      • Merge pull request #1935 from pierrechevalier83/fix_1923 (3b1bef7)
      • J fmt (c3c6504)
      • Adapt to changes in gix-actor (b07f907)
      • Merge pull request #1949 from GitoxideLabs/dependabot/cargo/cargo-6893e2988a (b5e9059)
      • Merge pull request #1945 from cruessler/replace-btreemap-by-smallvec (c75bc44)
      • Bump the cargo group with 21 updates (68e6b2e)
      • Replace BTreeMap by SmallVec (75b842b)
      • Merge pull request #1919 from GitoxideLabs/release (420e730) </details>
    Open source →
  18. 0.1.0 04 Apr 2025
    Release notes
    • Initial release with pack-verify

    Commit Statistics

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

    • 54 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
      • Bring color back to 'max' versions (c68d9ab)
      • Support for disabling the cursor in the pretty line renderer (48c4bbd)
      • Allow TUI to terminate action properly (1f1b725)
      • Refactor (cce71aa)
      • Refactor (f276a05)
      • Preliminary support for line renderer in max version (4aa8022)
      • Unify frame rate across plumbing (and later potentially porcelain) (e2a7bdd)
      • Refactor (41e01a5)
      • Proper implementation of line renderer into 'lean' CLI (e98e7c2)
      • Mild improvements to look of verbose log (5fff552)
      • First very basic version of line renderer progress - works… (0cc1bf2)
      • Prepare for optional addition of line renderer for lean version (aac0d34)
      • Upgrade to prodash version 7 (af02b46)
      • Make --version flags work as expected. (a4d978c)
      • Merge branch 'release' (a1a0b13)
      • Rename 'pretty' target into 'max', a better fit for what it is (5acecc5)
      • Make gio commands less cumbersome, self-document their build type (pretty, lean) (1f9bc03)
      • Allow to limit the logging depth for less cluttered output (fce7035)
      • Support for json in pretty-plumbing and gitoxide (on demand) (b3780f8)
      • Simplify the 'keep open' logic of TUI progress window (13cd8ce)
      • Attempt to implement progress with a mode enum (ac490c2)
      • Allow for more screen space when formatting (6794300)
      • Assure pretty progress doesn't occlude the output (122d69f)
      • Fix pretty build (6adf615)
      • Pass average stats through to the top level (5b4979c)
      • Refactor (7add82c)
      • Now ACTUALLY stop TUI when there is no progress anymore :D (3bf3321)
      • Automatically close the TUI when there is no progress anymore. (c416152)
      • Assure we wait for GUI thread to finish (60eaea0)
      • Pretty progress in a generalized form (caa883b)
      • Neater progress log messages: don't show the module it originates from (026a0dd)
      • Refactor (30925e6)
      • Support for logging in pretty binaries (67026e4)
      • --verbose flag for lean plumbing binary (aaf4825)
      • First very basic progress implementation (b820717)
      • Pass progress everywhere, for now just to discard it (da3ae1c)
      • Split plumbing into separate binary (b1e51d6)
      • Refactor (0fbba9f)
      • Refactor (ba6a8ef)
      • Add initial version of 'lean-cli' feature toggle, but… (f01c298)
      • Support for verifying pack files and index files (b09b4e1)
      • Reorganize crates to make 'gitoxide' the CLI, and 'gitoxide-core' the library (0ac9c5a)
      • Add simple pack verification to gio (8c0e0b5)
      • Goodbye git-core, hello git-repository (7cec2b6)
      • Document existing use of unsafe, deny everywhere else (41f4bce)
      • Cargo clippy (1179ac1)
      • Move parsing tests close to actual parsing (3ca2c59)
      • Color for all grit commands/subcommands (aa8efdd)
      • Use structopt instead of clap (eb7388c)
      • Remove failure from grit binary, too (417c34b)
      • Refactor (87c8a2e)
      • Cargo fmt (2aa0857)
      • Implement git-init (57737c2)
      • Initial commit - based on standard project template (c3d319f) </details>
    Open source →
    Release notes

    <csr-id-f7f136dbe4f86e7dee1d54835c420ec07c96cd78/> <csr-id-533e887e80c5f7ede8392884562e1c5ba56fb9a8/>

    New Features (BREAKING)

    • <csr-id-e9a493c204979d1a155c198331277662d26aec58/> add diff_algorithm to blame::file()

    • <csr-id-e08cf8811e25c91ca410963703ce98db32be3681/> add since to blame::file()

    • <csr-id-1250df3f9c10f66e4b8e227809831f3088482960/> skip uninteresting commits for blame This is breaking because it takes a commitgraph cache as argument , and because it replaces the traverse by suspect.

      Switch to date order for traversing the commit history, as opposed to topo order. This is also what git blame does.

      Skip suspects that have no associated unblamed hunks

      Pass blame to parent in process_change. git’s algorithm only seems to keep the current suspect for unblamed hunks that were the direct result of splitting an existing unblamed hunk because it matched with a change. All other hunks appear to be blamed on the parent without further checks.

      Add assertion that lines always match.

    Commit Statistics

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

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

    Thanks Clippy

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

    Clippy helped 1 time to make code idiomatic.

    Commit Details

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

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

    • Uncategorized
      • Release gix-date v0.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 #1910 from cruessler/add-tree-id-to-either (544cdaf)
      • Make use gix_traverse::commit::Either::tree_id() (3fad860)
      • Merge pull request #1901 from cruessler/make-either-copy (85b060c)
      • Derive Clone and Copy for Either (3c1b1df)
      • Merge pull request #1888 from cruessler/respect-diff-algorithm-in-blame (dce127e)
      • Add diff_algorithm to blame::file() (e9a493c)
      • Merge pull request #1858 from cruessler/add-git-blame-since (7059609)
      • Add since to blame::file() (e08cf88)
      • Merge pull request #1854 from GitoxideLabs/montly-report (16a248b)
      • Thanks clippy (8e96ed3)
      • Merge pull request #1824 from cruessler/replace-find-commit-by-find (8ab0a6b)
      • Replace odb.find_commit by gix_traverse::commit::find (e09ec3e)
      • Merge pull request #1743 from cruessler/skip-uninteresting-commits-for-blame (aa05ef0)
      • Refactor (4428838)
      • Skip uninteresting commits for blame (1250df3)
      • Merge pull request #1823 from cruessler/add-test-for-differing-date-and-topo-order (18e163e)
      • Add test for commits not ordered chronologically (a9de4f0)
      • Merge pull request #1778 from GitoxideLabs/new-release (8df0db2) </details>
    Open source →
  19. 0.0.0 18 Jan 2025
    Release notes

    <csr-id-17835bccb066bbc47cc137e8ec5d9fe7d5665af0/> <csr-id-64ff0a77062d35add1a2dd422bb61075647d1a36/>

    New Features (BREAKING)

    • <csr-id-787cf6f5a838a96da49330c99a8530ac3206de50/> add range to blame::file()

    New Features

    • <csr-id-4ffe6eb8f7921c6a03db0aa6d796cc2e3cc328e0/> Add support for statistics and additional performance information.
    • <csr-id-25efbfb72e5a043ce8f7d196c1f7104ef93394df/> Add blame plumbing crate to the top-level. For now, it doesn't come with a simplified gix API though.

    Commit Statistics

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

    • 47 commits contributed to the release.
    • 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
      • Release gix-utils v0.1.14, gix-actor v0.33.2, gix-hash v0.16.0, gix-trace v0.1.12, gix-features v0.40.0, gix-hashtable v0.7.0, gix-path v0.10.14, gix-validate v0.9.3, gix-object v0.47.0, gix-glob v0.18.0, gix-quote v0.4.15, gix-attributes v0.24.0, gix-command v0.4.1, gix-packetline-blocking v0.18.2, gix-filter v0.17.0, gix-fs v0.13.0, gix-chunk v0.4.11, gix-commitgraph v0.26.0, gix-revwalk v0.18.0, gix-traverse v0.44.0, gix-worktree-stream v0.19.0, gix-archive v0.19.0, gix-bitmap v0.2.14, gix-tempfile v16.0.0, gix-lock v16.0.0, gix-index v0.38.0, gix-config-value v0.14.11, gix-pathspec v0.9.0, gix-ignore v0.13.0, gix-worktree v0.39.0, gix-diff v0.50.0, gix-blame v0.0.0, gix-ref v0.50.0, gix-sec v0.10.11, gix-config v0.43.0, gix-prompt v0.9.1, gix-url v0.29.0, gix-credentials v0.27.0, gix-discover v0.38.0, gix-dir v0.12.0, gix-mailmap v0.25.2, gix-revision v0.32.0, gix-merge v0.3.0, gix-negotiate v0.18.0, gix-pack v0.57.0, gix-odb v0.67.0, gix-refspec v0.28.0, gix-shallow v0.2.0, gix-packetline v0.18.3, gix-transport v0.45.0, gix-protocol v0.48.0, gix-status v0.17.0, gix-submodule v0.17.0, gix-worktree-state v0.17.0, gix v0.70.0, gix-fsck v0.9.0, gitoxide-core v0.45.0, gitoxide v0.41.0, safety bump 42 crates (dea106a)
      • Don't specify version numbers in dev-dependencies (7570daa)
      • Update all changelogs prior to release (1f6390c)
      • Merge pull request #1766 from cruessler/add-range-to-gix-blame (90fef01)
      • Refactor (1500c08)
      • Add range to blame::file() (787cf6f)
      • Merge pull request #1762 from GitoxideLabs/fix-1759 (7ec21bb)
      • Bump rust-version to 1.70 (17835bc)
      • Merge pull request #1756 from cruessler/extract-object-ids-in-tests (f18a312)
      • Extract hard-coded ObjectIds in tests (50ba3d6)
      • Merge pull request #1755 from cruessler/shortcut-tree-diffing-minor-cleanups (25c2646)
      • Prefix variant to disambiguate from continue (ec3cdf1)
      • Merge pull request #1754 from GitoxideLabs/fix-ci (34096a5)
      • Fix clippy (6805beb)
      • Merge pull request #1753 from GitoxideLabs/wip-changes-against-more-than-one-parent (a22f13b)
      • Refactor (360bf38)
      • Rework how blame is passed to parents (a3d92b4)
      • Merge pull request #1747 from cruessler/shortcut-tree-diffing (59bd978)
      • Update doc-string (9ac36bd)
      • Rename to FindChangeToPath and move to where it's used (f857ca8)
      • Simplify Recorder by wrapping gix_diff::tree::Recorder (7d1416a)
      • Don't ignore gix_diff::tree errors (f049b00)
      • Cancel tree diffing early when matching path is found (74565bc)
      • Merge pull request #1453 from cruessler/gix-blame (6ed9976)
      • For linear histories, avoid redoing path lookup work (8196a43)
      • Don't panic when suspect isn't known when converting unblamed to blame-entry (667e626)
      • Additional pass of refactoring, focus on the algorithm itself. (3ac8be1)
      • Review and remove all TODOs where possible, update docs and comments (63ee0f9)
      • Swap blamed-file and original-file variable names. (b7f1468)
      • Replace todos!() with assertions or remove them. (b736ace)
      • Add Error type (845d96a)
      • Add support for statistics and additional performance information. (4ffe6eb)
      • Remove duplication and unnecessary parameter (a158d22)
      • Unify how lines in blame results are accessed (f2790a9)
      • Modularlize gix-blame/lib.rs (26bfd2d)
      • First review round (983ec7d)
      • Add blame plumbing crate to the top-level. (25efbfb)
      • Add initial implementation and tests for gix-blame. (d27adf7)
      • Merge pull request #1624 from EliahKagan/update-repo-url (795962b)
      • Update gitoxide repository URLs (64ff0a7)
      • Merge pull request #1589 from EliahKagan/maintenance (7c2af44)
      • Add missing executable bits (694ebad)
      • Merge branch 'global-lints' (37ba461)
      • Workspace Clippy lint management (2e0ce50)
      • Merge branch 'gix-blame' (e6fbea9)
      • Add sample fixture (6d71e0d)
      • Add new gix-blame crate (f5f616d) </details>
    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