PackageTrack
Sign in Get early access

gix-protocol

A crate of the gitoxide project for implementing git protocols

0.65.0 40M downloads/mo #1429 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 55 of 55 stable releases

1 version withdrawn

withdrawn after publishing

4 years old

56 releases · first in 2023

15 releases in the last 12 months

see the full history below

Release timeline

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

Releases

latest 56
  1. 0.65.0 22 Aug 2026
    Release notes

    Commit Statistics

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

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

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

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

    • Uncategorized
      • Release gix-error v0.3.0, gix-date v0.16.0, gix-actor v0.42.0, gix-validate v0.11.4, gix-path v0.12.5, gix-utils v0.3.6, gix-quote v0.8.0, gix-command v0.10.0, gix-features v0.49.1, gix-hash v0.26.1, gix-fs v0.22.1, gix-object v0.64.0, gix-glob v0.27.1, gix-attributes v0.35.0, gix-filter v0.34.0, gix-chunk v0.8.0, gix-commitgraph v0.39.0, gix-revwalk v0.35.0, gix-traverse v0.61.0, gix-worktree-stream v0.36.0, gix-archive v0.36.0, gix-bitmap v0.4.0, gix-index v0.55.0, gix-pathspec v0.20.0, gix-ignore v0.22.1, gix-worktree v0.56.0, gix-imara-diff v0.2.5, gix-diff v0.67.0, gix-blame v0.17.0, gix-ref v0.67.0, gix-config v0.60.0, gix-prompt v0.17.0, gix-url v0.38.0, gix-credentials v0.40.0, gix-discover v0.55.0, gix-dir v0.29.0, gix-mailmap v0.34.0, gix-revision v0.49.0, gix-merge v0.20.0, gix-negotiate v0.35.0, gix-note v0.1.0, gix-pack v0.74.0, gix-odb v0.84.0, gix-refspec v0.45.0, gix-transport v0.59.0, gix-protocol v0.65.0, gix-status v0.34.0, gix-submodule v0.34.0, gix-worktree-state v0.34.0, gix v0.87.0, gix-fsck v0.25.0, gitoxide-core v0.61.0, gix-tix v0.2.0, gitoxide v0.57.0 (d2af4ed)
      • Update manifests prior to release (ebe9095)
      • 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) </details>
    Open source →
  2. 0.64.0 23 Jul 2026
    Release notes

    Changed (BREAKING)

    • <csr-id-c3f2244541f0b6419d30782fbae825d33bd5fe16/> replace maybe-async with bisync. Replace the globally feature-selected maybe-async dependency with bisync 0.3 and re-export the locally selected macro mode from gix-protocol.

      Also use it to deduplicate portions which previously couldn't be handled.

    • <csr-id-582d7b56cc09cdafaa8db2fb34457f6970c39ce7/> adapt to lifetime-free configuration files in gix-config Update repository configuration storage, snapshots, overrides, and caches to use the self-contained gix_config::File representation. Configuration can now move through repository initialization, cloning, and remote setup without artificial input lifetimes or conversions to 'static.

      • Return owned BString, PathBuf, OsString, and FullName values from configuration-derived lookups.
      • Simplify fallible optional access from Option<Result<T, E>> to Result<Option<T>, E>, allowing errors to propagate naturally with ?.
      • Accept common string and byte-string inputs through AsBStr in configuration setters, converters, remote lookup, and remote saving.
      • Remove widespread Cow construction, into_owned(), and redundant cloning from configuration consumers.
      • Preserve configuration-key context when converting owned values and enriching validation errors.

      Adapt config-tree conversions for the new owned values and optional-result shape, including booleans, integers, paths, URLs, refspecs, timeouts, compression levels, and reference names.

      Return owned remote names, default remote names, branch tracking references, and submodule paths so these results are independent of the repository configuration borrow. Protocol feature values likewise use owned strings.

      Update repository opening, initialization, cloning, remotes, filters, status, submodules, and related tests to use the lifetime-free APIs.

    Commit Statistics

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

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

    Thanks Clippy

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

    Clippy helped 1 time to make code idiomatic.

    Commit Details

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

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

    • Uncategorized
      • Release gix-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)
      • 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 #2728 from GitoxideLabs/try-bisync (adf4b7a)
      • Deduplicate fetch I/O across async and blocking modes (2619919)
      • Replace maybe-async with bisync. (c3f2244)
      • Merge pull request #2722 from GitoxideLabs/reasons (c16b5a1)
      • Replace lint allowances with expectations (43ff87a)
      • Merge pull request #2667 from GitoxideLabs/lifetime-free-config-parser (55b5158)
      • Adapt to changes in gix-config (376e946)
      • Adapt to lifetime-free configuration files in gix-config (582d7b5)
      • 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 #2702 from ameyypawar/fix/2694-exn-source-chain (e9c973d)
      • Thanks clippy (d533f0c)
      • Merge pull request #2646 from GitoxideLabs/report (1b1541e) </details>
    Open source →
  3. 0.63.0 22 Jun 2026
    Release notes

    Bug Fixes

    • <csr-id-6a7e5f432f00481dd2260161a83b5b41d4978fed/> echo object-format in all v2 commands A v2 client must report its object format to the server, otherwise the server assumes SHA-1 and aborts the request with a "mismatched object format" error when talking to a SHA-256 repository.

      This affects both ls-refs and fetch. A persistent connection retains the object format negotiated during ls-refs, but a stateless transport like HTTP sends each command as its own request, so every v2 command must echo the object-format the server advertised.

      So add the echo to Command::default_features so it applies to every v2 command and permit object-format during v2 feature validation.

      Also add v2 wire-format sha256 tests for ls-refs and ref-in-want.

    • <csr-id-96bf6982a8c3f459a10b96314643c50603f6e8f0/> accept sha256 object-format from servers

    Commit Statistics

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

    • 10 commits contributed to the release over the course of 27 calendar days.
    • 27 days passed between releases.
    • 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.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 #2665 from GitoxideLabs/dev/aratiu/sha256-transport (d86b01d)
      • Address auto-review (048d4a5)
      • Merge pull request #2642 from 10ne1/dev/aratiu/sha256-transport (da6b267)
      • Review (ed998d1)
      • Echo object-format in all v2 commands (6a7e5f4)
      • Accept sha256 object-format from servers (96bf698)
      • Merge pull request #2635 from GitoxideLabs/dependabot/cargo/cargo-7b971a5e8c (155ff6d)
      • Bump the cargo group with 40 updates (9402adc)
      • Merge pull request #2618 from GitoxideLabs/report (f7d4f33) </details>
    Open source →
  4. 0.62.0 26 May 2026
    Release notes

    Commit Statistics

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

    • 8 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)
      • sha1 and sha256 forwardings for all crates (09b982c)
      • 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 #2546 from GitoxideLabs/fix-2545 (adb8328) </details>
    Open source →
  5. 0.61.0 27 Apr 2026
    Release notes

    Bug Fixes (BREAKING)

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

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

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

    Commit Statistics

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

    • 3 commits contributed to the release over the course of 2 calendar days.
    • 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
      • 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)
      • Remove winnow and replace it with hand-implemented parsers everywhere. (91c854e)
      • Merge pull request #2540 from GitoxideLabs/reporting (4d5ba23) </details>
    Open source →
  6. 0.60.0 24 Apr 2026
    Release notes

    Refactor (BREAKING)

    • <csr-id-c86b00b50fa756cce4e117878a6e10de489674d3/> Introduce RefPrefixes type The RefPrefixes type captures the intent of building a set of ref-prefix arguments for the ls-refs protocol.

      Since refspecs are the natural type that these are built from, as seen in handshake/mod.rs, a constructor is provided in the form of RefPrefixes::from_refspecs.

      For other, external API users RefSpecs::new and RefSpecs::extend are provided.

      This is also a breaking change to LsRefsCommand::new() which now takes Option<RefPrefixes> as first parameter.

    Commit Statistics

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

    • 10 commits contributed to the release over the course of 32 calendar days.
    • 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
      • Update changelogs prior to release (f9fbcba)
      • 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 #2499 from GitoxideLabs/dependabot/cargo/cargo-17cc682121 (44020e0)
      • Bump the cargo group with 26 updates (9d04035)
      • Merge pull request #2485 from GitoxideLabs/fintohaps/fix-ls-refs-prefixing (700ad9e)
      • Fail on missing explicit refs after exact ls-refs ([df41a64`](https://github.com/GitoxideLabs/gitoxide/commit/df41a64851de31b5b5581b39efe18af4e5becfbc))
      • Refactor (82674cb)
      • Introduce RefPrefixes type (c86b00b)
      • Merge pull request #2480 from GitoxideLabs/report (98bae84) </details>
    Open source →
  7. 0.59.0 22 Mar 2026
    Release notes

    New Features

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    New Features (BREAKING)

    • <csr-id-78b0a6faf821a092c6f2d8a3f469e152062c2532/> encode shallow commit lists as non-empty, and introduced nonempty in gix-protocol

    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.
    • 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.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 #2433 from GitoxideLabs/codex/nonempty-rewrite (29040a8)
      • Encode shallow commit lists as non-empty, and introduced nonempty in gix-protocol (78b0a6f)
      • Merge branch 'release' (9327b73) </details>
    Open source →
  9. 0.57.0 10 Feb 2026
    Release notes

    New Features

    • support cloning a single revision

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

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

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

    Commit Statistics

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

    Commit Details

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

    Commit Statistics

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

    • 4 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 #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 →
    Release notes

    v0.57.0

    Compare

    Choose a tag to compare

    Open source →
  10. 0.56.0 22 Jan 2026
    Release notes

    Commit Statistics

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

    Commit Details

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

    New Features (BREAKING)

    • <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 21 calendar days.
    • 22 days passed between releases.
    • 1 commit was 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)
      • Use std::ops::ControlFlow where possible (5c1bd03)
      • Merge pull request #2364 from GitoxideLabs/changelogs (0a333e5)
      • Merge pull request #2346 from GitoxideLabs/release (c663b3f)
      • Release gix-trace v0.1.17, gix-features v0.45.2, gix-command v0.6.5, gix-hash v0.21.2, gix-date v0.12.1, gix-actor v0.37.1, gix-object v0.54.1, gix-filter v0.24.1, gix-fs v0.18.2, gix-tempfile v20.0.1, gix-lock v20.0.1, gix-traverse v0.51.1, gix-index v0.45.1, gix-diff v0.57.1, gix-pack v0.64.1 (7be8f90)
      • Merge pull request #2333 from GitoxideLabs/improvements (9e1ba5e)
      • Release gix-command v0.6.4, gix-credentials v0.34.1, gix-transport v0.52.1 (3bc0c47)
      • Merge pull request #2322 from GitoxideLabs/report (211b4fb) </details>
    Open source →
    Release notes

    gix-worktree v0.56.0

    Compare

    Choose a tag to compare

    Open source →
  11. 0.55.0 31 Dec 2025
    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.54.0 22 Dec 2025
    Release notes

    New Features

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    <csr-id-37a42bde69d1a80080f91a78514565508b278876/> <csr-id-0f58b0184b34df3b4e530ce4f7ab26369f882f99/> <csr-id-e5498415a704859fe8385b09e46539372df04d9f/> <csr-id-7e08219644fb84550b82e4c36cdec2d08a06136d/> <csr-id-ab3cce472efc4f6469d99a0d3a425d58ac2140b9/> <csr-id-c26efb9e733cb33a38ef885eded915e17e61bd9c/> <csr-id-0021f9daec773f381c6f10bd310cd0f8c5077d54/> <csr-id-7a60e7846a0e077a1c7f6d560461ee81ae0d4e85/> <csr-id-3b4e06ac9f6b600f58c459a034e6cfaac7221514/> <csr-id-3bc580173ca8f6e95f0e8996a05a451dc199dfa3/> <csr-id-c6d76885bdddc2d6a230618b8ba3f4ebae715987/> <csr-id-149bcfca6a35ebfd7493ee8517905a6b6ca58dd5/>

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-date v0.11.1, gix-actor v0.36.1, gix-trace v0.1.16, gix-features v0.45.0, gix-hash v0.21.0, gix-hashtable v0.11.0, gix-object v0.53.0, gix-glob v0.23.0, gix-attributes v0.29.0, gix-filter v0.23.0, gix-fs v0.18.0, gix-commitgraph v0.31.0, gix-revwalk v0.24.0, gix-traverse v0.50.0, gix-worktree-stream v0.25.0, gix-archive v0.25.0, gix-tempfile v20.0.0, gix-lock v20.0.0, gix-index v0.44.0, gix-config-value v0.16.0, gix-pathspec v0.14.0, gix-ignore v0.18.0, gix-worktree v0.45.0, gix-diff v0.56.0, gix-blame v0.6.0, gix-ref v0.56.0, gix-config v0.49.0, gix-prompt v0.12.0, gix-url v0.34.0, gix-credentials v0.33.0, gix-discover v0.44.0, gix-dir v0.18.0, gix-mailmap v0.28.1, gix-revision v0.38.0, gix-merge v0.9.0, gix-negotiate v0.24.0, gix-pack v0.63.0, gix-odb v0.73.0, gix-refspec v0.34.0, gix-shallow v0.7.0, gix-transport v0.51.0, gix-protocol v0.54.0, gix-status v0.23.0, gix-submodule v0.23.0, gix-worktree-state v0.23.0, gix v0.76.0, gix-fsck v0.15.0, gitoxide-core v0.51.0, gitoxide v0.48.0, safety bump 43 crates (21fecdf)
      • Merge pull request #2274 from djc/simplify-ls-refs (eab774c)
      • Refactor (9d936fb)
      • Split async and blocking implementations for Handshake::fetch_or_extract_refmap() (ab3cce4)
      • Split Handshake::fetch_or_extract_refmap() (c26efb9)
      • Inline RefMap::fetch() into Handshake::fetch_or_extract_refmap() (0021f9d)
      • Move prefix argument handling into LsRefsCommand::new() (7a60e78)
      • Attach push_prefix_arguments() to LsRefsCommand (37a42bd)
      • Extract condition from helper function (0f58b01)
      • Extract LsRefsCommand type to split preparation (3b4e06a)
      • Stop taking a callback for test-only uses (3bc5801)
      • Import RefsAction directly (e549841)
      • Rename ls_refs::Action to RefsAction (c6d7688)
      • Take extra arguments as a separate argument (149bcfc)
      • Merge pull request #2275 from GitoxideLabs/dependabot/cargo/cargo-92eaa62a2e (93dd630)
      • Bump the cargo group across 1 directory with 14 updates (703644c)
      • Drop unnecessary argument from DelegateBlocking::prepare_ls_refs() (7e08219) </details>
    Open source →
  13. 0.53.0 22 Nov 2025
    Release notes

    <csr-id-4c40484391c32b4d42b5904a1a0c42639369673e/> <csr-id-36c2be80e61a7a0ef637a5385e1960de13261984/> <csr-id-541a7a6aab6a56fa2949a5577acbacf6dc59a9dd/> <csr-id-19a005135b91641a19a3a70fd714985ce1203333/> <csr-id-50120de92dab3d8347672df7a43df02291162c9a/> <csr-id-37ab03687a940c89131141b882e5ef1a7fef85be/> <csr-id-f05dfab881481de5de1d23e3266cad9c069f59c5/> <csr-id-b05eba5cca4294b9baeafd0c15885cefd21d0d6c/>

    New Features

    • <csr-id-aeee98234002f0cf79bd3629ada5d3ec3d7b86cd/> add Handshake::ref_map() to produce a ref-map from a V1 or V2 handshake.

    New Features (BREAKING)

    • <csr-id-bce8468443dd490d3e2955b623aa3e97e6fe7bfd/> large portions of the API for greater ease of use

    Bug Fixes (BREAKING)

    • <csr-id-87d5419a35298d6627a5695790f91ead698b6fb0/> enable async I/O code independent of blocking_io
    • <csr-id-c2050d0ec74e2c2d1d70b68e57bbb79e196796b9/> make gix-transport I/O mode features additive
    • <csr-id-b6d58225f6760db7a4b3c47c8d72e346d6295ec9/> move TransportWithoutIO::request() method to I/O-specific traits
    • <csr-id-f2c6a19f676f1de9e0b4e0ff77f4e26d817fac7e/> make gix-packeline features additive. For good measure, everything that was touched is marked as breaking change.

    Commit Statistics

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

    • 26 commits contributed to the release.
    • 30 days passed between releases.
    • 14 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 #2250 from djc/rm-handshake-layers (3c2b422)
      • Bring the service parameter back to not hardcode the handshake for fetches. (c9a97db)
      • Simplify gix-protocol handshake API by avoiding duplicates that remove the server parameter. (36c2be8)
      • Merge pull request #2242 from djc/ls-refs (0ac3080)
      • Add Handshake::ref_map() to produce a ref-map from a V1 or V2 handshake. (aeee982)
      • Turn handshake::Outcome into Handshake type. (541a7a6)
      • Refactor (48fdf5d)
      • Hoist handshake ref handling out of transport code (19a0051)
      • Keep Options intact through fetching (4c40484)
      • Store all_refspecs in Options (50120de)
      • Store fetch refspecs in Options (37ab036)
      • Flatten RefMap::new() arguments (f05dfab)
      • Pass user agent into ls_refs() separately (b05eba5)
      • Extract helper utility from RefMap::new() (102077b)
      • Merge pull request #2241 from djc/transport-all (7ce40ef)
      • Enable async I/O code independent of blocking_io (87d5419)
      • Merge pull request #2236 from djc/additive-transport (6e89afa)
      • Make gix-transport I/O mode features additive (c2050d0)
      • Merge pull request #2231 from djc/move-request (6566ec9)
      • Move TransportWithoutIO::request() method to I/O-specific traits (b6d5822)
      • Merge pull request #2220 from djc/dedup-packetline (cbf7445)
      • Refactor (7289a04)
      • Large portions of the API for greater ease of use (bce8468)
      • Make gix-packeline features additive. (f2c6a19)
      • Merge pull request #2230 from yuki0iq/doc_auto_cfg (fbf9c39) </details>
    Open source →
  14. 0.52.1 23 Oct 2025
    Release notes

    New Features

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

    Commit Statistics

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

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

    Thanks Clippy

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

    Clippy helped 1 time to make code idiomatic.

    Commit Details

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

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

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

    <csr-id-6f469a6fea59c88e6c69a5f94b0bc8a5977cb75b/>

    Commit Statistics

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

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

    Commit Details

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

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

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

    Commit Statistics

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

    • 20 commits contributed to the release over the course of 99 calendar days.
    • 99 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-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 (49f8d53)
      • Release gix-date v0.10.6, gix-utils v0.3.1, gix-actor v0.35.5, gix-trace v0.1.14, gix-validate v0.10.1, gix-path v0.10.21, gix-features v0.44.0, gix-hash v0.20.0, gix-hashtable v0.10.0, gix-object v0.51.0, gix-glob v0.22.0, gix-quote v0.6.1, gix-attributes v0.28.0, gix-command v0.6.3, gix-packetline-blocking v0.19.2, gix-filter v0.21.0, gix-fs v0.17.0, gix-chunk v0.4.12, gix-commitgraph v0.30.0, gix-revwalk v0.22.0, gix-traverse v0.48.0, gix-worktree-stream v0.23.0, gix-archive v0.23.0, gix-bitmap v0.2.15, gix-tempfile v19.0.0, gix-lock v19.0.0, gix-index v0.42.0, gix-config-value v0.15.2, gix-pathspec v0.13.0, gix-ignore v0.17.0, gix-worktree v0.43.0, gix-diff v0.54.0, gix-blame v0.4.0, gix-ref v0.54.0, gix-sec v0.12.1, gix-config v0.47.0, gix-prompt v0.11.2, gix-url v0.33.0, gix-credentials v0.31.0, gix-discover v0.42.0, gix-dir v0.16.0, gix-mailmap v0.27.3, gix-revision v0.36.0, gix-merge v0.7.0, gix-negotiate v0.22.0, gix-pack v0.61.0, gix-odb v0.71.0, gix-refspec v0.32.0, gix-shallow v0.6.0, gix-packetline v0.19.2, gix-transport v0.49.0, gix-protocol v0.52.0, gix-status v0.21.0, gix-submodule v0.21.0, gix-worktree-state v0.21.0, gix v0.74.0, gix-fsck v0.13.0, gitoxide-core v0.49.0, gitoxide v0.46.0, safety bump 42 crates (89fb308)
      • Merge pull request #2217 from GitoxideLabs/copilot/update-msrv-to-rust-1-82 (4da2927)
      • Fixup Copilot commits and thank clippy (b188a7d)
      • Update MSRV to 1.82 and replace once_cell with std equivalents (6cc8464)
      • Merge pull request #2202 from GitoxideLabs/dependabot/cargo/cargo-4a7155215a (9365cc3)
      • Bump the cargo group across 1 directory with 64 updates (838ff95)
      • Merge pull request #2163 from cruessler/deprecate-in-place-methods (42f8db5)
      • Adapt to changes in gix-ref (44922d0)
      • 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 #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 →
  16. 0.51.0 15 Jul 2025
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 11 commits contributed to the release over the course of 79 calendar days.
    • 80 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.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 #2062 from rickprice/minor_documentation_fixups (c2eb0c1)
      • Small documentation fixes (bfb1c34)
      • Merge pull request #2033 from GitoxideLabs/dependabot/cargo/cargo-b72232998d (f8d7c0a)
      • Bump the cargo group with 56 updates (151e3a5)
      • 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 #1975 from GitoxideLabs/improvements (28935a5)
      • Thanks clippy (dbf65c9)
      • Merge pull request #1971 from GitoxideLabs/new-release (8d4c4d1) </details>
    Open source →
  17. 0.50.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 →
  18. 0.50.0 25 Apr 2025 withdrawn
    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

    Bug Fixes

    • <csr-id-11bd59f794811e11e48ef8de4db59035434f9da6/> cargo-auditable build error Use futures-lite instead of dep:futures-lite in gix-packetline and gix-protocol.

    Commit Statistics

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

    • 17 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)
      • 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 #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 #1929 from Prince213/fix-cargo-auditable (19f50d0)
      • Cargo-auditable build error (11bd59f)
      • Merge pull request #1919 from GitoxideLabs/release (420e730) </details>
    Open source →
  19. 0.49.0 04 Apr 2025
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 13 commits contributed to the release.
    • 76 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-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 (d248e3d)
      • Release gix-sec v0.10.12, 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 (ada5a94)
      • 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 #1909 from cruessler/take-to-components-in-fs-stack (5cb5337)
      • Use gix_fs::stack::ToNormalPathComponents everywhere. (1f98edb)
      • Merge pull request #1854 from GitoxideLabs/montly-report (16a248b)
      • Thanks clippy (8e96ed3)
      • Merge pull request #1822 from epage/w7 (11ac79c)
      • Upgrade to Winnow 0.7 (fdc57e7)
      • Resolve Winnow deprecations (3cd3e2a)
      • Upgrade to Winnow 0.6.26 (783c4e6)
      • Merge pull request #1778 from GitoxideLabs/new-release (8df0db2) </details>
    Open source →
  20. 0.48.0 18 Jan 2025
    Release notes

    <csr-id-17835bccb066bbc47cc137e8ec5d9fe7d5665af0/>

    Commit Statistics

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

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

    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 #1763 from GitoxideLabs/better-refspec-primitives (af8f201)
      • Adapt to changes in gix-refspec (6d7dd9b)
      • Merge pull request #1762 from GitoxideLabs/fix-1759 (7ec21bb)
      • Bump rust-version to 1.70 (17835bc)
      • Merge pull request #1739 from GitoxideLabs/new-release (d22937f) </details>
    Open source →
  21. 0.47.0 22 Dec 2024
    Release notes

    <csr-id-6f469a6fea59c88e6c69a5f94b0bc8a5977cb75b/>

    New Features

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    Bug Fixes

    • <csr-id-5c21ebc3f523bbe64cb84bbcdf39a2c284ba1df1/> respect interrupt-requests during negotiation It is possible for the negotiation to go on forever if implemented incorrectly on the client side. Hence it's useful to gracefully interrupt it.

    New Features (BREAKING)

    • <csr-id-e59fc09f12a1c6b27d878525ff6074ac846aa87e/> move all possible code from gix to gix-protocol. For now, just move the code down and immediately re-integrate in gix to be able to use its tests to validate it.

      This is a breaking change as some types move and change the layout.

    • <csr-id-6367c7d0a796aff8ee8778916c1a1ddae68b654d/> Add gix-shallow crate and use it from gix and gix-protocol That way it's easier to reuse shallow-handling code from plumbing crates.

      Note that this is a breaking change as gix-protocol now uses the gix-shallow::Update type, which doesn't implement a formerly public from_line() method anymore. Now it is available as fetch::response::shallow_update_from_line().

    Bug Fixes (BREAKING)

    • <csr-id-a5f0d295cfc7183e5c0b35b72610e933f91059d9/> assure that empty fetches due to no objects wanted are terminated early
    • <csr-id-595092629115cd7d2b48140b1c0b211263146028/> remove ref_map from fetch() function. It's only uses for validation of the ref-maps own state, which is something that can be separate.
    • <csr-id-212ea9e8d6bd972d2a73f7ff4f9f35487d1f80f9/> move fetch() to tests so they are the only ones with delegates. This is a first step towards creating a multi-step fetch() which can also be used in the gix crate.

    Commit Statistics

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

    • 14 commits contributed to the release over the course of 28 calendar days.
    • 28 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-dir v0.11.0, gix-revision v0.31.1, gix-merge v0.2.0, gix-pack v0.56.0, gix-odb v0.66.0, gix-shallow v0.1.0, gix-packetline v0.18.2, gix-transport v0.44.0, gix-protocol v0.47.0, gix-status v0.16.0, gix-worktree-state v0.16.0, gix v0.69.0, gitoxide-core v0.44.0, gitoxide v0.40.0 (beb0ea8)
      • Release gix-date v0.9.3, gix-object v0.46.1, gix-command v0.4.0, gix-filter v0.16.0, gix-fs v0.12.1, gix-traverse v0.43.1, gix-worktree-stream v0.18.0, gix-archive v0.18.0, gix-ref v0.49.1, gix-prompt v0.9.0, gix-url v0.28.2, gix-credentials v0.26.0, gix-diff v0.49.0, gix-dir v0.11.0, gix-revision v0.31.1, gix-merge v0.2.0, gix-pack v0.56.0, gix-odb v0.66.0, gix-shallow v0.1.0, gix-packetline v0.18.2, gix-transport v0.44.0, gix-protocol v0.47.0, gix-status v0.16.0, gix-worktree-state v0.16.0, gix v0.69.0, gitoxide-core v0.44.0, gitoxide v0.40.0, safety bump 16 crates (c1ba571)
      • Update changelogs prior to release (7ea8582)
      • Merge pull request #1731 from GitoxideLabs/fix-pack-receive (ca54b8c)
      • Respect interrupt-requests during negotiation (5c21ebc)
      • Assure that empty fetches due to no objects wanted are terminated early (a5f0d29)
      • Merge pull request #1726 from GitoxideLabs/radicle-tuning (a542775)
      • Remove ref_map from fetch() function. (5950926)
      • Merge pull request #1634 from GitoxideLabs/remove-delegates (ddeb97f)
      • Move all possible code from gix to gix-protocol. (e59fc09)
      • Add gix-shallow crate and use it from gix and gix-protocol (6367c7d)
      • Move fetch() to tests so they are the only ones with delegates. (212ea9e)
      • Refactor tests to conform to 'new style' (d7b1cce)
      • Merge pull request #1701 from GitoxideLabs/release (e8b3b41) </details>
    Open source →
  22. 0.46.1 24 Nov 2024
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-glob v0.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 #1690 from EliahKagan/gitattributes (700cfa5)
      • Fix marking gix-packetline-blocking copy auto-generated (325588e)
      • Merge pull request #1662 from paolobarbolini/thiserror-v2 (7a40648)
      • Upgrade thiserror to v2.0.0 (0f0e4fe)
      • Merge pull request #1642 from GitoxideLabs/new-release (db5c9cf) </details>
    Open source →
  23. 0.46.0 22 Oct 2024
    Release notes

    New Features

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    <csr-id-64ff0a77062d35add1a2dd422bb61075647d1a36/>

    Bug Fixes (BREAKING)

    • <csr-id-24da857dbd236ae1cc75a4efd0816e717b885c7f/> make V1 shallow announcements possible

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

      Ultimately, this will lead to drift and subtle incompatibilities.

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

    Commit Statistics

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

    • 18 commits contributed to the release over the course of 60 calendar days.
    • 61 days passed between releases.
    • 3 commits were understood as conventional.
    • 1 unique issue was worked on: #1604

    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>

    • #1604
      • Make V1 shallow announcements possible (24da857)
    • Uncategorized
      • Release 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 (f1364dc)
      • 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 #1604 from Byron/protocol-shallow-v1 (612896d)
      • Reproduce #1598 (6c82f31)
      • Merge pull request #1557 from Byron/merge-base (649f588)
      • Allow empty-docs (beba720)
      • Merge branch 'global-lints' (37ba461)
      • A few more missing semicolons (fc45c93)
      • Workspace Clippy lint management (2e0ce50)
      • Merge pull request #1546 from nyurik/semilocons (f992fb7)
      • Add missing semicolons (ec69c88)
      • Merge branch 'fixes' (46cd1ae)
      • Remove all workspace dependencies (1757377) </details>
    Open source →
  24. 0.45.3 22 Aug 2024
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 10 commits contributed to the release over the course of 28 calendar days.
    • 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-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 (4fe330e)
      • Release gix-attributes v0.22.5, gix-filter v0.12.0, gix-fs v0.11.3, gix-revwalk v0.14.0, gix-traverse v0.40.0, gix-worktree-stream v0.14.0, gix-archive v0.14.0, gix-config-value v0.14.8, gix-tempfile v14.0.2, gix-ref v0.46.0, gix-sec v0.10.8, gix-config v0.39.0, gix-prompt v0.8.7, gix-url v0.27.5, gix-credentials v0.24.5, gix-ignore v0.11.4, gix-index v0.34.0, gix-worktree v0.35.0, gix-diff v0.45.0, gix-discover v0.34.0, gix-pathspec v0.7.7, gix-dir v0.7.0, gix-mailmap v0.23.6, gix-negotiate v0.14.0, gix-pack v0.52.0, gix-odb v0.62.0, gix-packetline v0.17.6, gix-transport v0.42.3, gix-protocol v0.45.3, gix-revision v0.28.0, gix-refspec v0.24.0, gix-status v0.12.0, gix-submodule v0.13.0, gix-worktree-state v0.12.0, gix v0.65.0, gix-fsck v0.5.0, gitoxide-core v0.40.0, gitoxide v0.38.0 (f2b522d)
      • Release gix-glob v0.16.5, gix-filter v0.12.0, gix-fs v0.11.3, gix-revwalk v0.14.0, gix-traverse v0.40.0, gix-worktree-stream v0.14.0, gix-archive v0.14.0, gix-config-value v0.14.8, gix-tempfile v14.0.2, gix-ref v0.46.0, gix-sec v0.10.8, gix-config v0.39.0, gix-prompt v0.8.7, gix-url v0.27.5, gix-credentials v0.24.5, gix-ignore v0.11.4, gix-index v0.34.0, gix-worktree v0.35.0, gix-diff v0.45.0, gix-discover v0.34.0, gix-pathspec v0.7.7, gix-dir v0.7.0, gix-mailmap v0.23.6, gix-negotiate v0.14.0, gix-pack v0.52.0, gix-odb v0.62.0, gix-packetline v0.17.6, gix-transport v0.42.3, gix-protocol v0.45.3, gix-revision v0.28.0, gix-refspec v0.24.0, gix-status v0.12.0, gix-submodule v0.13.0, gix-worktree-state v0.12.0, gix v0.65.0, gix-fsck v0.5.0, gitoxide-core v0.40.0, gitoxide v0.38.0 (a65a17f)
      • Release gix-date v0.9.0, gix-actor v0.31.6, gix-validate v0.9.0, gix-object v0.43.0, gix-path v0.10.10, gix-attributes v0.22.4, gix-command v0.3.9, gix-packetline-blocking v0.17.5, gix-filter v0.12.0, gix-fs v0.11.3, gix-revwalk v0.14.0, gix-traverse v0.40.0, gix-worktree-stream v0.14.0, gix-archive v0.14.0, gix-ref v0.46.0, gix-config v0.39.0, gix-prompt v0.8.7, gix-url v0.27.5, gix-credentials v0.24.5, gix-ignore v0.11.4, gix-index v0.34.0, gix-worktree v0.35.0, gix-diff v0.45.0, gix-discover v0.34.0, gix-dir v0.7.0, gix-mailmap v0.23.6, gix-negotiate v0.14.0, gix-pack v0.52.0, gix-odb v0.62.0, gix-packetline v0.17.6, gix-transport v0.42.3, gix-protocol v0.45.3, gix-revision v0.28.0, gix-refspec v0.24.0, gix-status v0.12.0, gix-submodule v0.13.0, gix-worktree-state v0.12.0, gix v0.65.0, gix-fsck v0.5.0, gitoxide-core v0.40.0, gitoxide v0.38.0, safety bump 25 crates (d19af16)
      • Prepare changelogs prior to release (0f25841)
      • Merge branch 'dependabot/github_actions/github-actions-c4bcf5a8e2' (2e00b5e)
      • Make winnow a workspace dependency (78a7e32)
      • Merge branch 'ag/jiff' (5871fb1)
      • Assure the next release is breaking (9fd1090)
      • Release gix-credentials v0.24.4 (f6a4eb9) </details>
    Open source →
  25. 0.45.2 23 Jul 2024
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 6 commits contributed to the release over the course of 32 calendar days.
    • 62 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.5, gix-filter v0.11.3, gix-fs v0.11.2, gix-commitgraph v0.24.3, gix-revwalk v0.13.2, gix-traverse v0.39.2, gix-worktree-stream v0.13.1, gix-archive v0.13.2, gix-config-value v0.14.7, gix-tempfile v14.0.1, gix-ref v0.45.0, gix-sec v0.10.7, gix-config v0.38.0, gix-prompt v0.8.6, gix-url v0.27.4, gix-credentials v0.24.3, gix-ignore v0.11.3, gix-index v0.33.1, gix-worktree v0.34.1, gix-diff v0.44.1, gix-discover v0.33.0, gix-pathspec v0.7.6, gix-dir v0.6.0, gix-mailmap v0.23.5, gix-negotiate v0.13.2, gix-pack v0.51.1, gix-odb v0.61.1, gix-transport v0.42.2, gix-protocol v0.45.2, gix-revision v0.27.2, gix-refspec v0.23.1, gix-status v0.11.0, gix-submodule v0.12.0, gix-worktree-state v0.11.1, gix v0.64.0, gix-fsck v0.4.1, gitoxide-core v0.39.0, gitoxide v0.37.0 (6232824)
      • Release gix-glob v0.16.4, gix-attributes v0.22.3, gix-command v0.3.8, gix-filter v0.11.3, gix-fs v0.11.2, gix-commitgraph v0.24.3, gix-revwalk v0.13.2, gix-traverse v0.39.2, gix-worktree-stream v0.13.1, gix-archive v0.13.2, gix-config-value v0.14.7, gix-tempfile v14.0.1, gix-ref v0.45.0, gix-sec v0.10.7, gix-config v0.38.0, gix-prompt v0.8.6, gix-url v0.27.4, gix-credentials v0.24.3, gix-ignore v0.11.3, gix-index v0.33.1, gix-worktree v0.34.1, gix-diff v0.44.1, gix-discover v0.33.0, gix-pathspec v0.7.6, gix-dir v0.6.0, gix-mailmap v0.23.5, gix-negotiate v0.13.2, gix-pack v0.51.1, gix-odb v0.61.1, gix-transport v0.42.2, gix-protocol v0.45.2, gix-revision v0.27.2, gix-refspec v0.23.1, gix-status v0.11.0, gix-submodule v0.12.0, gix-worktree-state v0.11.1, gix v0.64.0, gix-fsck v0.4.1, gitoxide-core v0.39.0, gitoxide v0.37.0 (a1b73a6)
      • Update manifests (by cargo-smart-release) (0470df3)
      • Prepare changelog prior to release (99c00cc)
      • Release gix-date v0.8.7, gix-mailmap v0.23.2 (c1d7c02)
      • Merge branch 'main' into config-key-take-2 (9fa1054) </details>
    Open source →
  26. 0.45.1 22 May 2024
    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 8 calendar days.
    • 39 days passed between releases.
    • 0 commits were understood as conventional.
    • 0 issues like '(#ID)' were seen in commit messages

    Commit Details

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

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

    • Uncategorized
      • Release gix-features v0.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)
      • Release gix-date v0.8.6 (d3588ca) </details>
    Open source →
  27. 0.45.0 13 Apr 2024
    Release notes

    New Features

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

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

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

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

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

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    A maintenance release without user-facing changes.

    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-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) </details>
    Open source →
  28. 0.44.2 14 Mar 2024
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-date v0.8.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) </details>
    Open source →
  29. 0.44.1 25 Feb 2024
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-date v0.8.4, gix-utils v0.1.10, gix-actor v0.30.1, gix-object v0.41.1, gix-path v0.10.6, gix-glob v0.16.1, gix-quote v0.4.11, gix-attributes v0.22.1, gix-command v0.3.5, gix-filter v0.10.0, gix-commitgraph v0.24.1, gix-worktree-stream v0.10.0, gix-archive v0.10.0, gix-config-value v0.14.5, gix-ref v0.42.0, gix-sec v0.10.5, gix-config v0.35.0, gix-prompt v0.8.3, gix-url v0.27.1, gix-credentials v0.24.1, gix-ignore v0.11.1, gix-index v0.30.0, gix-worktree v0.31.0, gix-diff v0.41.0, gix-discover v0.30.0, gix-pathspec v0.7.0, gix-dir v0.1.0, gix-pack v0.48.0, gix-odb v0.58.0, gix-transport v0.41.1, gix-protocol v0.44.1, gix-revision v0.26.1, gix-refspec v0.22.1, gix-status v0.6.0, gix-submodule v0.9.0, gix-worktree-state v0.8.0, gix v0.59.0, gix-fsck v0.3.0, gitoxide-core v0.36.0, gitoxide v0.34.0, safety bump 10 crates (45b4470)
      • Prepare changelogs prior to release (f2e111f)
      • Merge branch 'btoi' (5fc379d)
      • Refactor (c5c69bd)
      • Inline btoi code to reduce compile times (f26f298)
      • Merge pull request #1290 from epage/winnow (a663e9f)
      • Update winnow to 0.6 (e175b20)
      • Update winnow to 0.5.40 (516e105)
      • Merge pull request #1267 from epage/winnow (69cb78b)
      • Update from winnow 0.5.31 to 0.5.36 (9470554) </details>
    Open source →
  30. 0.44.0 20 Jan 2024
    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 4 calendar days.
    • 21 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)
      • Release gix-trace v0.1.7, gix-features v0.37.2, gix-commitgraph v0.23.2, gix-traverse v0.36.2, gix-index v0.28.2 (b6c04c8) </details>
    Open source →
  31. 0.43.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 →
  32. 0.43.0 29 Dec 2023
    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

    <csr-id-aea89c3ad52f1a800abb620e9a4701bdf904ff7d/>

    Commit Statistics

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

    • 9 commits contributed to the release over the course of 21 calendar days.
    • 23 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.8.2, gix-hash v0.14.0, gix-trace v0.1.5, gix-features v0.37.0, gix-actor v0.29.0, gix-validate v0.8.2, gix-object v0.40.0, gix-path v0.10.2, gix-glob v0.15.0, gix-quote v0.4.9, gix-attributes v0.21.0, gix-command v0.3.1, gix-packetline-blocking v0.17.1, gix-utils v0.1.7, gix-filter v0.8.0, gix-fs v0.9.0, gix-chunk v0.4.6, gix-commitgraph v0.23.0, gix-hashtable v0.5.0, gix-revwalk v0.11.0, gix-traverse v0.36.0, gix-worktree-stream v0.8.0, gix-archive v0.8.0, gix-config-value v0.14.2, gix-tempfile v12.0.0, gix-lock v12.0.0, gix-ref v0.40.0, gix-sec v0.10.2, gix-config v0.33.0, gix-prompt v0.8.1, gix-url v0.26.0, gix-credentials v0.23.0, gix-ignore v0.10.0, gix-bitmap v0.2.9, gix-index v0.28.0, gix-worktree v0.29.0, gix-diff v0.39.0, gix-discover v0.28.0, gix-macros v0.1.2, gix-mailmap v0.21.0, gix-negotiate v0.11.0, gix-pack v0.46.0, gix-odb v0.56.0, gix-pathspec v0.5.0, gix-packetline v0.17.1, gix-transport v0.40.0, gix-protocol v0.43.0, gix-revision v0.25.0, gix-refspec v0.21.0, gix-status v0.4.0, gix-submodule v0.7.0, gix-worktree-state v0.6.0, gix v0.57.0, gix-fsck v0.2.0, gitoxide-core v0.35.0, gitoxide v0.33.0, safety bump 40 crates (e1aae19)
      • Prepare changelogs of next release (e78a92b)
      • Merge branch 'maintenance' (4454c9d)
      • Upgrade MSRV to v1.70 (aea89c3)
      • Thanks clippy (d38d1cc)
      • Merge branch 'main' into fix-1183 (1691ba6)
      • Release gix-hash v0.13.3, gix-index v0.27.1 (98b08f4)
      • Merge branch '32bit' (ff1542c)
      • Update prodash to latest version (97f62cb) </details>
    Open source →
  33. 0.42.0 06 Dec 2023
    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-6295dec2bdd6c3bb35e45db7a486651ebfe50369/> V1 negotiation won't hang anymore The logic previously tried to estimate when a pack can be expected, and when a NAK is the end of a block, or the beginning of a pack.

      This can be known because a pack (with our settings) needs two things:

      • the server thinks it's ready
    • a done sent by the client

    New Features (BREAKING)

    • <csr-id-c3edef1c0c49accbb037bdf086dade3ed0e5e507/> make it possible to trace incoming and outgoing packetlines. Due to the way this is (and has to be) setup, unfortunately one has to integrate that with two crates, instead of just one.

      This changes touches multiple crates, most of which receive a single boolean as last argument to indicate whether the tracing should happen in the first place.

    Bug Fixes (BREAKING)

    • <csr-id-88f8b342ab317696bcab8a0fe75c042e7290a75c/> Remove unsafe transmute of should_interrupt Adds a lifetime to the ExtendedBufRead trait to specify how long the callback provided must live.

    Commit Statistics

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

    • 15 commits contributed to the release.
    • 54 days passed between releases.
    • 3 commits were understood as conventional.
    • 1 unique issue was worked on: #1061

    Commit Details

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

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

    • #1061
      • V1 negotiation won't hang anymore (6295dec)
    • Uncategorized
      • Release 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 (d3fd11e)
      • 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 'remove-unsafe' (d2ba97c)
      • Remove unsafe transmute of should_interrupt (88f8b34)
      • Upgrade to winnow 0.5.24 (abcfb65)
      • J fmt (51c7abc)
      • Merge branch 'check-cfg' (5a0d93e)
      • Replace all docsrs config by the document-features feature (bb3224c)
      • Merge branch 'size-optimization' (c0e72fb)
      • Remove CHANGELOG.md from all packages (b65a80b)
      • Merge branch 'fix-v1-negotiation' (eb23338)
      • Merge branch 'trace-packetlines' (e7de4c7)
      • Make it possible to trace incoming and outgoing packetlines. (c3edef1) </details>
    Open source →
  34. 0.41.1 13 Oct 2023
    Release notes

    Bug Fixes

    • <csr-id-8011c73ee401bfca03811a249c46a4dd468af1b8/> bump gix-transport version to prevent it from being picked up. gix-transport v0.37.1 could accidentally be picked up by older, incompatible, gix versions which now fail to build.

      Thus v0.37.1 is now yanked and replaced with v0.38.0 along with a new release of gix to go with it.

    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-transport v0.38.0, gix-protocol v0.41.1, gix v0.55.2, gitoxide-core v0.33.1, gitoxide v0.31.1 (1955a57)
      • Prepare changelogs prior to release (12b5caf)
      • Bump gix-transport version to prevent it from being picked up. (8011c73) </details>
    Open source →
  35. 0.41.0 12 Oct 2023
    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

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 3 commits contributed to the release.
    • 18 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-transport v0.37.1, 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 (14ddbd4)
      • 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) </details>
    Open source →
  36. 0.40.0 24 Sep 2023
    Release notes

    New Features

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

    Bug Fixes

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    A maintenance release without user-facing changes.

    Commit Statistics

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

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

    Commit Details

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

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

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

    New Features

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    <csr-id-ed327f6163f54756e58c20f86a563a97efb256ca/>

    New Features (BREAKING)

    • <csr-id-24dd870919ba444aa8099c63a78ea120d47ec28e/> use prodash::Count to indicate that nothing more than counting is performed, in place of prodash::Progress

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

    • 19 commits contributed to the release over the course of 17 calendar days.
    • 17 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-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 (1ff3064)
      • Release gix-date v0.8.0, gix-hash v0.13.0, gix-features v0.34.0, gix-actor v0.26.0, gix-object v0.36.0, gix-path v0.10.0, gix-glob v0.12.0, gix-attributes v0.18.0, gix-packetline-blocking v0.16.6, gix-filter v0.4.0, gix-fs v0.6.0, gix-commitgraph v0.20.0, gix-hashtable v0.4.0, gix-revwalk v0.7.0, gix-traverse v0.32.0, gix-worktree-stream v0.4.0, gix-archive v0.4.0, gix-config-value v0.14.0, gix-tempfile v9.0.0, gix-lock v9.0.0, gix-ref v0.36.0, gix-sec v0.10.0, gix-config v0.29.0, gix-prompt v0.7.0, gix-url v0.23.0, gix-credentials v0.19.0, gix-diff v0.35.0, gix-discover v0.24.0, gix-ignore v0.7.0, gix-index v0.24.0, gix-macros v0.1.0, gix-mailmap v0.18.0, gix-negotiate v0.7.0, gix-pack v0.42.0, gix-odb v0.52.0, gix-pathspec v0.2.0, gix-packetline v0.16.6, gix-transport v0.36.0, gix-protocol v0.39.0, gix-revision v0.21.0, gix-refspec v0.17.0, gix-submodule v0.3.0, gix-worktree v0.25.0, gix-worktree-state v0.2.0, gix v0.53.0, safety bump 39 crates (8bd0456)
      • Prepare changelogs for release (375db06)
      • Merge branch dynification (f658fcc)
      • Use dyn trait where possible. (072ee32)
      • Use prodash::Count to indicate that nothing more than counting is performed, in place of prodash::Progress (24dd870)
      • Merge pull request #1009 from epage/proto (16cac47)
      • Don't bother with error tracking that is ignored (444f970)
      • Upgrade gix-protocol to winnow 0.5 (237657e)
      • Prep for winnow 0.5 upgrade for gix-protocol (8c80dba)
      • Resolve winnow deprecations in gix-protocol (b213889)
      • Upgrade gix-protocol to winnow 0.4 (659ebe9)
      • Prep for winnow 0.4 upgrade for gix-protocol (8609aec)
      • Resolve winnow deprecations in gix-protocol (b46fe9c)
      • Migrate gix-protocol to winnow (0e8edef)
      • Update to the latest prodash (ed327f6)
      • Merge branch 'adjustments-for-cargo' (b7560a2)
      • Release gix-date v0.7.4, gix-index v0.23.0, safety bump 5 crates (3be2b1c)
      • Merge branch 'gix-submodule' (363ee77) </details>
    Open source →
  38. 0.38.0 22 Aug 2023
    Release notes

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

    New Features

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

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

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

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

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

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

    Bug Fixes

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    <csr-id-229bd4899213f749a7cc124aa2b82a1368fba40f/>

    Commit Statistics

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

    • 5 commits contributed to the release over the course of 15 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-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)
      • Don't call crate 'WIP' in manifest anymore. (229bd48)
      • 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) </details>
    Open source →
  39. 0.37.0 02 Aug 2023
    Release notes

    <csr-id-202f3e48a96b38d32b11d28449358c7d1f3546ff/>

    New Features

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

    Commit Statistics

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

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

    Thanks Clippy

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

    Clippy helped 1 time to make code idiomatic.

    Commit Details

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

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

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

    New Features

    • <csr-id-d1f9c63f8a79dcb00766d94edda80ed9add724ea/> add fetch::Arguments::add_feature() for unconditional additions of arguments that are supposed to be features. This differentiation is important to support V1 and V2 correctly, which have a different notion of features with V1 special-casing them, and V2 just sees everything as arguments.

    Bug Fixes (BREAKING)

    • <csr-id-0de7117492fb64c4f2b4f5ee7482813d57b57d40/> handshake::Ref::Symbolic now has a tag field. This allows symbolic refs to be parsed which are in fact pointing to an annotated tag as in-between object.

    Commit Statistics

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

    • 6 commits contributed to the release over the course of 1 calendar day.
    • 11 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.24.2, gix-object v0.33.2, gix-ref v0.33.3, gix-config v0.26.2, gix-prompt v0.5.5, gix-odb v0.50.2, gix-transport v0.34.2, gix-protocol v0.37.0, gix-worktree v0.23.1, gix v0.51.0, safety bump 3 crates (231ac1c)
      • Prepare additional changelogs (db63815)
      • Prepare changelogs (e4d2890)
      • Merge branch 'fixes-and-improvements' (f8b1f55)
      • Add fetch::Arguments::add_feature() for unconditional additions of arguments that are supposed to be features. (d1f9c63)
      • handshake::Ref::Symbolic now has a tag field. (0de7117) </details>
    Open source →
  40. 0.36.1 22 Jul 2023
    Release notes

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 7 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)
      • Update license field following SPDX 2.1 license expression standard (9064ea3) </details>
    Open source →
  41. 0.36.0 19 Jul 2023
    Release notes

    Commit Statistics

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

    Commit Details

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

    New Features

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

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

    Bug Fixes

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

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

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

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

      Note that this issue can be reproduced with:

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    A maintenance release without user-facing changes.

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-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) </details>
    Open source →
    Release notes

    gix-worktree-stream v0.36.0

    Compare

    Choose a tag to compare

    Open source →
  42. 0.35.0 29 Jun 2023
    Release notes

    New Features

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

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

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

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

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

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

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 2 commits contributed to the release.
    • 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) </details>
    Open source →
  43. 0.34.0 22 Jun 2023
    Release notes

    New Features

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    <csr-id-bcad5c22049d56a25ef69d6c7a3344e78f9a1d4d/>

    Changed (BREAKING)

    • <csr-id-9f8fa221b0e15923de5fc015cf6abb3dd578167e/> use SecondsSinceUnixEpoch type where needed. Previously we used usize which isn't correct on 32 bit systems.

    Commit Statistics

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

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

    New Features

    • <csr-id-c8e8b9fc55486215bda4c380d3c84a6c6ae5f602/> support capabilities^{} syntax to announce caps in empty repos under V1 This is supposed to work for existing code, but doesn't in our case as we really want to associate a branch. In this case, we can ignore the ref as it's a null hash anyway.

    Commit Statistics

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

    • 3 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-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)
      • Support capabilities^{} syntax to announce caps in empty repos under V1 (c8e8b9f) </details>
    Open source →
  45. 0.33.1 07 Jun 2023
    Release notes

    Bug Fixes

    • <csr-id-88670c2ff995e4478f4a40b2733c6c8ca811fa15/> assure we don't stop early on NAK if READY was sent to handle V1 specialty. Seeing READY means a pack will follow, which is exactly the kind of knowledge we want. Thus we now either listen to the client OR to what the server says.

      Note that this remedy relies on multi-ack-detailed, which some very old servers might not support. For those we would be out-of-luck, but that seems acceptable.

    Commit Statistics

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

    • 2 commits contributed to the release.
    • 1 day passed between releases.
    • 1 commit was understood as conventional.
    • 1 unique issue was worked on: #882

    Commit Details

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

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

    • #882
      • Assure we don't stop early on NAK if READY was sent to handle V1 specialty. (88670c2)
    • Uncategorized
      • Release gix-protocol v0.33.1 (9c99ed3) </details>
    Open source →
  46. 0.33.0 06 Jun 2023
    Release notes

    New Features

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

    Bug Fixes (BREAKING)

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

      Thanks to @Manishearth for pointing this out.

    Commit Statistics

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

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

    Commit Details

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

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

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

    New Features

    • <csr-id-877aa2921d8491d301945f86d5a69382e40fb081/> Add fetch::Arguments::is_stateless() to aid proper use of arguments. When arguments are used, haves are reset every round in stateless protocols, while everything else is repeated. However, this also means that previously confirmed common commits aren't repeated unless this is specifically implemented by the user of Arguments.

      That caller can now easily determine if negotiations have to be compensated for.

      Please note that Arguments explicitly doesn't implement repeating of all prior arguments, which would also repeat a lot of in-vain haves.

    Bug Fixes

    • <csr-id-c5dc7b4c43f07c04cdfb218de03e6725ff3fdb64/> include-tag is now properly handled in V1 fetch arguments Previously it would be added like it's V2 arguments, which makes using it in V1 impossible.

    Bug Fixes (BREAKING)

    • <csr-id-6a3c02131c9ebca911be5f751e5a6c67fbdbf609/> make V1 stateless negotations work. This is done by working around another V1 negotiation oddity by exploiting client-side knowledge. For very old servers, we probably wouldn't be able to do multi-rounds without dead-locking, but with recent-enough (probably 10 years or so) old git servers all should work fine.

      All this to not actually have to implement the V1 strangeness, allowing our code to work smoothly with all permutations of stateless/stateful connections and V1/V2 interactions, with a single high-level implementation essentially.

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-date v0.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 'integrate-gix-negotiate' (ae845de)
      • Make V1 stateless negotations work. (6a3c021)
      • include-tag is now properly handled in V1 fetch arguments (c5dc7b4)
      • Add fetch::Arguments::is_stateless() to aid proper use of arguments. (877aa29)
      • Adapt to changes in gix-transport (60eaceb)
      • Merge branch 'fix-docs' (420553a)
      • Cleaning up documentation (2578e57)
      • Apply -W clippy::cloned-instead-of-copied (150463c)
      • Merge branch 'main' into auto-clippy (3ef5c90)
      • Merge branch 'blinxen/main' (9375cd7)
      • Include license files in all crates (facaaf6) </details>
    Open source →
  47. 0.32.0 27 Apr 2023
    Release notes

    New Features

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

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

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

    Bug Fixes

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

    Bug Fixes (BREAKING)

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    A maintenance release without user-facing changes.

    Commit Statistics

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

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

    Commit Details

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

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

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

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

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

    New Features

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

    Commit Statistics

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

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

    Commit Details

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

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

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

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

    • 11 commits contributed to the release over the course of 14 calendar days.
    • 27 days passed between releases.
    • 1 commit was 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)
      • Merge branch 'main' into dev (cdef398)
      • Rename the serde1 feature to serde (19338d9)
      • Release gix-hash v0.10.4, gix-hashtable v0.1.3 (b574a39) </details>
    Open source →
  49. 0.30.2 30 Mar 2023
    Release notes

    Documentation

    • <csr-id-cc48c35d0ecf35824910c5b6ecc62fe9b2aff1b5/> fix minor typos

    Commit Statistics

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

    • 2 commits contributed to the release over the course of 1 calendar day.
    • 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
      • 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 (cc48c35) </details>
    Open source →
  50. 0.30.1 26 Mar 2023
    Release notes

    Bug Fixes

    • <csr-id-d4c82e7e7139ae251300d4b71bcd8ed0255a163a/> don't assume that credential providers always return credentials or error during handshake. The type-system allows this even though when getting credentials this should never happen and won't in the default implementation. However, users can of course return nothing and provide no error which is when we have to create one, instead of panicking.

    Commit Statistics

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

    • 3 commits contributed to the release.
    • 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-tempfile v5.0.2, gix-validate v0.7.4, gix-config v0.20.0, gix-prompt v0.3.3, gix-diff v0.28.1, gix-discover v0.16.1, gix-pack v0.33.2, gix-transport v0.29.1, gix-protocol v0.30.1, gix-revision v0.12.1, gix-worktree v0.15.1, gix v0.43.0, safety bump gix v0.43.0 (5dc1f9f)
      • Prepare changelogs prior to release (3016a28)
      • Don't assume that credential providers always return credentials or error during handshake. (d4c82e7) </details>
    Open source →
  51. 0.30.0 14 Mar 2023
    Release notes

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

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

    New Features

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

    Bug Fixes (BREAKING)

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

    Commit Statistics

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

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

    Thanks Clippy

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

    Clippy helped 1 time to make code idiomatic.

    Commit Details

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

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

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

    A maintenance release without any user-facing changes.

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-features v0.28.1, gix-tempfile v5.0.1, gix-ref v0.27.1, gix-pack v0.33.1, gix-packetline v0.15.0, gix-transport v0.29.0, gix-protocol v0.30.0, gix v0.42.0, safety bump 3 crates (c1f1bfb)
      • Prepare changelogs prior to release (c66e298)
      • Make fmt (3836cc0)
      • Merge branch 'various-fixes' (cc0f506)
      • Adjust to changes in gix-packetline (4f45814)
      • Merge branch 'shallow-protocol' (531dd19)
      • Merge branch 'fix-cred-helper' (01277a6) </details>
    Open source →
  52. 0.29.0 10 Mar 2023
    Release notes

    New Features

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

    Commit Statistics

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

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

    Commit Details

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

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

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

    A maintenance release without user-facing changes.

    Commit Statistics

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

    • 4 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)
      • Add more fetch::Arguments tests (ac34d2e)
      • Adapt to changes in gix-transport and add V2 test for unshallow fetching (0eecfab) </details>
    Open source →
  53. 0.28.0 04 Mar 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

    A maintenance release without user-facing changes.

    Commit Statistics

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

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

    Commit Details

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

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

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

    <csr-id-bcad5c22049d56a25ef69d6c7a3344e78f9a1d4d/>

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

    New Features (BREAKING)

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

    New Features

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

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

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

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

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

    Commit Statistics

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

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

    Thanks Clippy

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

    Clippy helped 1 time to make code idiomatic.

    Commit Details

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

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

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

    A maintenance release without user-facing changes.

    Commit Statistics

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

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

    Commit Details

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

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

    • Uncategorized
      • Release gix-tempfile v4.1.0, gix-lock v4.0.0, gix-ref v0.25.0, gix-config v0.17.0, gix-url v0.14.0, gix-credentials v0.10.0, gix-diff v0.27.0, gix-discover v0.14.0, gix-hashtable v0.1.2, gix-bitmap v0.2.2, gix-traverse v0.23.0, gix-index v0.13.0, gix-mailmap v0.10.0, gix-pack v0.31.0, gix-odb v0.41.0, gix-transport v0.26.0, gix-protocol v0.27.0, gix-revision v0.11.0, gix-refspec v0.8.0, gix-worktree v0.13.0, gix v0.38.0, safety bump 6 crates (ea9fd1d)
      • Release gix-features v0.27.0, gix-actor v0.18.0, gix-quote v0.4.3, gix-attributes v0.9.0, gix-object v0.27.0, gix-ref v0.25.0, gix-config v0.17.0, gix-url v0.14.0, gix-credentials v0.10.0, gix-diff v0.27.0, gix-discover v0.14.0, gix-hashtable v0.1.2, gix-bitmap v0.2.2, gix-traverse v0.23.0, gix-index v0.13.0, gix-mailmap v0.10.0, gix-pack v0.31.0, gix-odb v0.41.0, gix-transport v0.26.0, gix-protocol v0.27.0, gix-revision v0.11.0, gix-refspec v0.8.0, gix-worktree v0.13.0, gix v0.38.0 (e6cc618)
      • Adjust manifests prior to release (addd789)
      • Prepare changelogs prior to release (94c99c7) </details>
    Open source →
  55. 0.26.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/>

    • 3 commits contributed to the release over the course of 2 calendar days.
    • 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)
      • Release gix-transport v0.25.5 (f872ba8) </details>
    Open source →
  56. 0.26.3 17 Feb 2023
    Release notes

    <csr-id-f7f136dbe4f86e7dee1d54835c420ec07c96cd78/>

    Bug Fixes (BREAKING)

    • <csr-id-da68bfb8104ecf58e73e3f99d87f81c90712a2ca/> fetch::Ref::Symbolic::target is now an option… …to represent the possibility that the server may not be able to strip its namespace if it is not the currently set namespace.

      Note that the object it points to might still be resolvable and pointing to another namespace.

    New Features (BREAKING)

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

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

    • <csr-id-02e37f04d7dfeab7067c8273bcd76408cb1f4852/> Support for unborn ls-refs capability if server supports it. We can also parse it, adding yet another variant to fetch::Refs.

    • <csr-id-32dc1829a5661f66396d109c8d0a8eaae6b1f532/> use git-credentials in git-protocol

    Changed (BREAKING)

    • <csr-id-09070a7c17f39383730c3a2b809eec677f79f386/> move fetch::refs(…, protocol, …) to the crate root as ls_refs(…). This move also removes the protocol parameter as ls-refs is only available in V2 and the caller is forced to know that after running a handshake(…) anyway which yields the actual protocol used by the server.

      Note that the client can suggest the version to use when connecting, which is specific to the transport at hand.

    • <csr-id-35f7b4df164c130fb50fcffcf5de99816c2ca872/> move fetch::Command into the crate root. This represents much better on how it is actually used, which is for validation of any Command invoked through the protocol independenty.

    • <csr-id-a03f8f6cce34618883e8448dd1c31b41c54d9448/> move fetch::agent|indicate_end_of_interaction to crate root These are generally useful in all interactions, including push.

    • <csr-id-a3bcf82ae50defa4439862943008647d03d09792/> handshake(…) is now generalized to support git-receive-pack as well. Note that fetch::handshake() is still present, selecting the correct service like before, but most of the fetch::Ref parsing is now handled by handshake::Ref in it's more general location.

      There is still fetch::refs(…) which just invokes a V2 ls-refs command (without that being generalized) as git-receive-pack just supports V1 at the moment, and making the fetch::LsRefs Command more general would mean that every command has to be general, at is doesn't matter anymore if it's used for Fetch or Push.

      As long as git won't support V2 for pushes, which it never might, there is no need to introduce this breakage even though it should probably be done before going 1.0.

    • <csr-id-d05b0b800a553e1e380801fb141e9aa054a6cbd0/> fetch::agent() returns agent string only; fetch() takes agent name as parameter.

    • <csr-id-aab278f2a3e07edb6d8109e7ffba003b5d5d7857/> don't auto-insert user agent, instead prepare to insert it later.

    • <csr-id-f957d9a1833af079b01ba6bd6941eb4af6c9e436/> fetch::agent() now returns the agent name, fetch::agent_tuple() returns specific key-value pair. This is in preparation for allowing user-defined agent strings.

    • <csr-id-cd867ade55eaec138029c0cf17fa83e0679ef7fc/> fetch::Ref::unpack() returns Option<oid>. That way the caller has to be aware of the possibility of an unborn branch (probably the only unborn branch) on the remote.

    • <csr-id-91f193f73ae37314319f7d055893b95431fd018e/> fetch::Ref::unpack() returns &BStr instead of &BString as ref name.

    • <csr-id-d2c772e28619f7602ab01285b25e79a7040c9aab/> fetch::Ref::unpack() now returns the peeled object as well.

    • <csr-id-bab586099a6e21e54932218f7a5c14f8bfc6cabd/> rename fetch::Ref::path to fetch::Ref::full_ref_name. Previously it was inaccurately named and described due to an insufficient understanding of the ref database.

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

    • <csr-id-e91c301342d44cff35ebe12fba4ec10afb4a1922/> replace quick-error with this-error

    • <csr-id-12589cc6f08e4d7aabae30bcdadaa0c2b4850229/> adapt to changes in git-url and use BString to represent URLs. They can contain paths, which is why String can't repsent a URL losslessly.

      For HTTP urls these are ultimately UTF-8 strings though.

    Reverted

    • <csr-id-f87b7eb4dc05b73f33ac554b57d50f3eee7f84c1/> client::fetch_pack() isn't worth it after all. The overhead required to make it work isn't worth the logic we are enabling. Instead, it's OK to re-implement custom logic on the consumer side based on this one.

    Bug Fixes

    • <csr-id-5f2276b63129163096be3cb229864fc589348da8/> don't enforce V2 as protocol, but smoothly downgrade like git does. For backward compatibility the shared handshake implementation allows the transport to control which protocol versions it wants to support to allow optiomizing for one special case, namely to prevent it to read all V1 refs on old servers but abort instead, closing the connection without delay.

      Now we leave this feature for custom transports (who usually come with custom servers) and instead support fallbacks to other protocols if the server demands it.

    • <csr-id-a8727824a4c38b27d6ad7c73ccaf7a45839c0aa9/> don't pass 'include-tag' as argument by default. This flag always has to be added by the caller based on configuration.

    • <csr-id-24000fa7ad4607c23f6a4fb4d84d2c85d96ee01f/> don't post packfile-uris capability unless we are able to make use of it. Turns out that this option can be rejected by a server that advertises it, so definitely needs more work to make it work.

    • <csr-id-806b8c2ef392137f3a6ebd0f28da2a3a07a9f3eb/> Parse refs from bytes, not from String. The latter can cause issues around illformed UTF-8 which wouldn't bother git either.

      This comes at the expense of not parsing line by line anymore, but instead reading as fast as possible and parsing afterwards.

      Performance wise I think it doesn't matter, but it will cause more memory to be used. If this ever becomes a problem, for example during pushes where we are stuck with V1, we can consider implementing our own streaming appreach that works with packet lines instead - they are just not exposed here even though they could.

    • <csr-id-d7f62b441700c6d3526517c8c4f369cb9a72c102/> support keepalive packets. Keepalive packets are side-band only empty datalines that should just be ignored. This is now happening, allowing longer git operations to work as they will send keepalive packets every 5 seconds, and previously we would choke on it.

      Note that empty datalines are never send otherwise, making it a previously unused marker that can safely be skipped.

    • <csr-id-266395e18d7cf754f51355098c84fd1c969fc972/> Link up Io error as source for error chaining; add Debug to client::fetch::Response

    • <csr-id-c77bd7a01820110154f2c66cd954c1ccfff173c1/> '(null)' symref targets are turned into direct refs instead… …because that's what 'git' would do if it would care enough. On the client side this means one has to deal with detached heads and it's obvious that these are detached. It's not clear anymore why this is the case, and probably it's good to hide it as the current git behaviour is accidental and may change in future, and do so in a way we predict.

      There is the possibility that git would abort the entire fetch/upload-pack operation, but that's already handled correctly by our implementation as well as we understand ERR messages in packet lines.

    New Features

    • <csr-id-4b8abb0e8a5326662f36b88f04681bdd0eaa8079/> display the underlying permission denied error as source when failng handshake due to authentication.

    • <csr-id-5a50d9599f820237866928df6d24a196a9b86fe3/> fetch::Arguments::use_include_tag() allows to signal include-tag. One can also check for its availability using fetch::Arguments::can_use_include_tag().

      Further there was a bugfix that assues V1 capabilities are correctly interpreted to support include-tag.

    • <csr-id-1c0a6c0edaca4063129c3b06638629b7af17a64c/> due to more specific errors one can differentiate if remote authentication failed repeatedly.

    • <csr-id-2363bcbd3207d1d16f2f95fbd20a7d7715b92240/> some errors support is_spurious() to tell if retrying is possible.

    • <csr-id-68c65a9f8b3927d454164a6f72167b47c0facee5/> expose futures_lite for convenience in downstream crates.

    • <csr-id-aed93d22d7a7faf4d60f1f603830c882175cbcb6/> Allow defaulting fetch::handshake::Outcome. This is useful in conjunction with std::mem::take().

    • <csr-id-0bcb2fd4d5d8692a0e91c70bcbcbff9dff60442f/> fetch::Arguments::is_empty() to help decide if arguments should be sent at all. Furthermore, the Debug trait was added.

    • <csr-id-31a7089f2583832727e2175ada6fb5c30c3beebe/> make some private methods public to give callers more flexibility. This allows to implement the fetch-negotiation part oneself and break free from constraints of the delegate.

    • <csr-id-744ed03cf6648e258affab62ef39ffad75c65397/> add client::fetch_pack() allowing to fetch a pack after a handshake.

    • <csr-id-eaff67c14366f149ccca346acb46af12531a24e6/> helper::main to easily create credential helper implementations

    • <csr-id-5ba9e1d20a8d523571a153f9f4e3e1a5285335b5/> provide a function to gracefully shut donw a fetch transport

    • <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-d6b4878d9832a0279e0dd19c1ca520a282289e69/> re-export maybe_async That way, API users can also provide dynamically sync or async APIs.

    • <csr-id-d2de51d65f9b4ab895e19cc1b307e42a9bb4bbd8/> add fetch::refs() method to invoke ls-refs for V2 and parse the result

    • <csr-id-35d17b4ea80be611607faa774d1ce0ee9c5000f2/> factor fetch handshake into fetch::handshake() function

    • <csr-id-0826cc92717faceff62df48a6e86fbb7ca6e90f5/> in-manifest and in-lib feature documentation

    Changed

    • <csr-id-3a38d1bc4910aab98c9c0b4a309be4a449db92fc/> turn prepare_ls_refs in fetch::refs() into FnOnce.

    Documentation

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

    Commit Statistics

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

    Thanks Clippy

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

    Clippy helped 29 times to make code idiomatic.

    Commit Details

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

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

    • #198
      • Deduplicate conventional message ids (e695eda)
      • Regenerate all changelogs to get links (0c81769)
      • Mention actual issues that where worked on (a517e39)
      • Support writing whole bodies in conventional messages… (c1f3c9d)
      • Support for paragraphs in conventional items (7f52823)
      • Respect release-wide ignore list to allow removing entire conventional headlines (145103d)
      • Rebuild all changelogs to assure properly ordered headlines (4a9a05f)
      • Sort all commits by time, descending… (f536bad)
      • Greatly reduce changelog size now that the traversal fix is applied (a0bc98c)
      • Fixup remaining changelogs… (2f75db2)
      • Generate changelogs with details (e1861ca)
      • Update all changelogs with details (58ab2ae)
      • Update changelogs (c857d61)
      • Fix docs (f1fa6dd)
      • Avoid adding newlines which make writing unstable (6b5c394)
      • Fix section headline level (9d6f263)
      • Write first version of changlogs thus far… (719b6bd)
      • Parse more user generated section content, adapt existing changelogs to work correctly (2f43a54)
    • #200
      • Feat: Lift io::Errors to response::Error::UploadPack(…)… (f293b63)
    • #205
      • '(null)' symref targets are turned into direct refs instead… (c77bd7a)
      • Fetch::Ref::Symbolic::target is now an option… (da68bfb)
    • #222
      • Update changelogs prior to release (9a493d0)
      • Stabilize changelogs (920e832)
      • Update changelogs prior to release (b3e2252)
    • #254
      • Adjust changelogs prior to git-pack release (6776a3f)
    • #279
      • Adjust to changes in git-hash (07aa1bc)
    • #301
      • Update changelogs prior to release (84cb256)
    • #329
      • In-manifest and in-lib feature documentation (0826cc9)
      • Document all features related to serde1 (72b97f2)
    • #386
      • Adapt to changes in git-sec (c5e2346)
      • Use git-credentials in git-protocol (32dc182)
      • Reduce API surface (6df2881)
    • #450
      • Don't degenerate information about the unborn fetch ref's path. (42c977f)
      • fetch::Ref::unpack() returns Option<oid>. (cd867ad)
      • Support for unborn ls-refs capability if server supports it. (02e37f0)
      • Less noisy way of writing trait bounds (b593806)
      • Upgrade to prodash v21 (a0655dc)
      • Improve docs slightly (306ebef)
      • Support keepalive packets. (d7f62b4)
      • Properly implement fetch::Arguments::is_empty() (df36ede)
      • Link up Io error as source for error chaining; add Debug to client::fetch::Response (266395e)
      • Allow defaulting fetch::handshake::Outcome. (aed93d2)
      • fetch::Arguments::is_empty() to help decide if arguments should be sent at all. (0bcb2fd)
      • Make some private methods public to give callers more flexibility. (31a7089)
      • Use &dyn Any instead of unspecified serialization format, as it's the right way. (779eefe)
      • Adapt to changes in git-transport (e842843)
      • client::fetch_pack() isn't worth it after all. (f87b7eb)
      • Add client::fetch_pack() allowing to fetch a pack after a handshake. (744ed03)
      • Refactor (c3e4b2a)
      • Update fetch feature list with wait-for-done (02245a6)
      • Turn prepare_ls_refs in fetch::refs() into FnOnce. (3a38d1b)
      • Improve docs a little (45394d5)
      • Option to print server information about the connection (4720666)
      • Adjust to changes in git-refspec (ffa24a1)
      • fetch::Ref::unpack() returns &BStr instead of &BString as ref name. (91f193f)
      • fetch::Ref::unpack() now returns the peeled object as well. (d2c772e)
      • Rename fetch::Ref::path to fetch::Ref::full_ref_name. (bab5860)
      • Upgrade bstr to 1.0.1 (99905ba)
      • Adjust to changes in git-credentials (32758e8)
      • Adapt to changes in git-credentials (27c9da5)
      • Improved error when identity could not be obtained (08c1287)
      • helper::main to easily create credential helper implementations (eaff67c)
      • Adjust to changes in git-credentials (33f1347)
      • Adjust to changes in git-credentials (fe1a06d)
      • Adjust to changes in git-credentials (40cc1dc)
      • Refactor (077ab57)
      • Provide a function to gracefully shut donw a fetch transport (5ba9e1d)
      • Re-export maybe_async (d6b4878)
      • Fix docs (a6105cb)
      • Use fetch::refs() function in fetch() (37504e6)
      • Add fetch::refs() method to invoke ls-refs for V2 and parse the result (d2de51d)
      • Refactor (41a7391)
      • Use handshake() function in fetch() method (aaa1680)
      • Replace quick-error with this-error (e91c301)
      • Factor fetch handshake into fetch::handshake() function (35d17b4)
      • Sketch of simple delegate to collect listed refs (1c5f561)
      • A first sketch on how connections could be working (e55b43e)
      • Adjust to changes in git-transport (2141585)
      • Adapt to changes in git-url and use BString to represent URLs. (12589cc)
    • #470
      • Update changelogs prior to release (caa7a1b)
    • #63
      • Git-protocol uses oid type (3930a6f)
      • Refactor; better errors for invalid hash sizes (be84b36)
      • Make ObjectId/oid happen! (ca78d15)
      • Remove all public exports of git-hash types in git-object (accf89d)
      • Remove re-export of git_object::borrowed::Id (a3f2816)
      • Make git-hash Error usage explicit (it's for decoding only) (4805cfc)
    • #639
      • Don't post packfile-uris capability unless we are able to make use of it. (24000fa)
    • #691
      • Set rust-version to 1.64 (55066ce)
    • #XXX
      • Prepare changelogs prior to release (8c0bca3)
    • Uncategorized
      • Release 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 (7fc00f8)
      • Release 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 (59e9fac)
      • 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)
      • Rename git-testtools to gix-testtools (b65c33d)
      • Adjust to renaming of git-pack to gix-pack (1ee81ad)
      • Adjust to renaming of git-odb to gix-odb (476e2ad)
      • Adjust to renaming of git-index to gix-index (86db5e0)
      • Adjust to renaming of git-diff to gix-diff (49a163e)
      • Adjust to renaming of git-commitgraph to gix-commitgraph (f1dd0a3)
      • Adjust to renaming of git-mailmap to gix-mailmap (2e28c56)
      • Adjust to renaming of git-discover to gix-discover (53adfe1)
      • Adjust to renaming of git-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)
      • Rename git-protocol to gix-protocol (9a35a90)
      • 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)
      • 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)
      • Thanks clippy (bac57dd)
      • Break cyclical dev dependencies (1fea18f)
      • 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 (b34c9fe)
      • Release git-ref v0.23.0, git-config v0.15.0, git-command v0.2.2, git-diff v0.26.0, git-discover v0.12.0, git-mailmap v0.9.0, git-pack v0.30.0, git-odb v0.40.0, git-transport v0.25.2, git-protocol v0.26.1, git-revision v0.10.0, git-refspec v0.7.0, git-worktree v0.12.0, git-repository v0.32.0 (ffb5b6a)
      • Prepare changelogs prior to release (4381a03)
      • Release git-transport v0.25.1 (e0b12fe)
      • 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)
      • Display the underlying permission denied error as source when failng handshake due to authentication. (4b8abb0)
      • Release git-url v0.12.1, git-transport v0.24.1, git-protocol v0.25.1, git-repository v0.30.1, git-commitgraph v0.12.0, gitoxide-core v0.22.0, gitoxide v0.20.0 (08ec3a9)
      • Prepare changelogs prior to release (68ce15d)
      • Merge branch 'adjustments-for-cargo' (5afa7f5)
      • 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)
      • Don't enforce V2 as protocol, but smoothly downgrade like git does. (5f2276b)
      • Merge branch 'main' into read-split-index (c57bdde)
      • Merge branch 'adjustments-for-cargo' (083909b)
      • fetch::Arguments::use_include_tag() allows to signal include-tag. (5a50d95)
      • Don't pass 'include-tag' as argument by default. (a872782)
      • Merge branch 'adjustments-for-cargo' (94750e1)
      • Due to more specific errors one can differentiate if remote authentication failed repeatedly. (1c0a6c0)
      • Merge branch 'adjustments-for-cargo' (70ccbb2)
      • Some errors support is_spurious() to tell if retrying is possible. (2363bcb)
      • Adapt to changes in git-transport (527c62e)
      • Merge branch 'fix-638' (eb4c5f0)
      • Merge branch 'fixture-async' (eca6705)
      • Async version of ref-line parsing now reads line by line. (dadd896)
      • Add Fixture implementation for async. (b583c2a)
      • Release git-hash v0.10.1, git-hashtable v0.1.0 (7717170)
      • Merge branch 'remove-lines-parsing' (9d8e32d)
      • Parse refs from bytes, not from String. (806b8c2)
      • Adapt to changes in git-transport (49461b1)
      • 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 '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 'http-config' (665b53e)
      • Fix docs (b5c316e)
      • Move fetch::refs(…, protocol, …) to the crate root as ls_refs(…). (09070a7)
      • Move fetch::Command into the crate root. (35f7b4d)
      • Move fetch::agent|indicate_end_of_interaction to crate root (a03f8f6)
      • handshake(…) is now generalized to support git-receive-pack as well. (a3bcf82)
      • Migrate independent parts of ref parsing to generalized handshake. (611a139)
      • Prepare for handshake generalization by copying it into position; parameterize service (7691353)
      • Merge branch 'main' into http-config (f4ff821)
      • Merge branch 'async-fetch' (0c9c48b)
      • Expose futures_lite for convenience in downstream crates. (68c65a9)
      • Set exact patch level for git-transport (b46e3bb)
      • Adjust for changes in git-transport (f88569b)
      • Adapt to changes in git-transport (226f33a)
      • Make trait parameter more open, no need for 'static (68dc86f)
      • fetch::agent() returns agent string only; fetch() takes agent name as parameter. (d05b0b8)
      • Don't auto-insert user agent, instead prepare to insert it later. (aab278f)
      • fetch::agent() now returns the agent name, fetch::agent_tuple() returns specific key-value pair. (f957d9a)
      • 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 'main' into write-sparse-index (upgrade to Rust 1.65) (5406630)
      • Thanks clippy (04cfa63)
      • Merge branch 'main' into write-sparse-index (c4e6849)
      • Merge branch 'gix-clone' (def53b3)
      • Thanks clippy (bc9c780)
      • 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)
      • Merge branch 'main' into new-http-impl (702a161)
      • Merge branch 'fetch-pack' (f47c891)
      • Merge branch 'fetch-pack' (3c49400)
      • Merge branch 'fix-git-features' (82fd251)
      • Merge branch 'diff' (25a7726)
      • Release 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 (f5c36d8)
      • 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)
      • Merge branch 'filter-refs' (3773b92)
      • Merge branch 'filter-refs' (fd14489)
      • Release git-features v0.22.6 (c9eda72)
      • Make fmt (535e967)
      • Merge branch 'filter-refs-by-spec' (5c05198)
      • Merge branch 'main' into filter-refs-by-spec (9aa1d3d)
      • Release git-features v0.22.4, git-url v0.8.0, safety bump 4 crates (1d4600a)
      • Merge branch 'main' into filter-refs-by-spec (1f6e5ab)
      • Merge branch 'fix-522' (5869e9f)
      • Release git-hash v0.9.9 (da0716f)
      • Merge branch 'main' into index-from-tree (bc64b96)
      • Merge branch 'main' into filter-refs-by-spec (cef0b51)
      • Release git-object v0.20.3, git-ref v0.15.4, git-config v0.7.1, git-diff v0.18.0, git-traverse v0.16.3, git-pack v0.22.0, git-odb v0.32.0, git-url v0.7.3, git-transport v0.19.3, git-protocol v0.19.1, git-refspec v0.1.1, git-repository v0.23.0, safety bump 6 crates (85a3bed)
      • Release git-features v0.22.3, git-revision v0.4.4 (c2660e2)
      • Merge branch 'main' into filter-refs-by-spec (cfa1440)
      • Release git-date v0.0.5, git-hash v0.9.8, git-features v0.22.2, git-actor v0.11.3, git-glob v0.3.2, git-quote v0.2.1, git-attributes v0.3.2, git-tempfile v2.0.4, git-lock v2.1.1, git-validate v0.5.5, git-object v0.20.2, git-ref v0.15.2, git-sec v0.3.1, git-config v0.7.0, git-credentials v0.4.0, git-diff v0.17.2, git-discover v0.4.1, git-bitmap v0.1.2, git-index v0.4.2, git-mailmap v0.3.2, git-chunk v0.3.1, git-traverse v0.16.2, git-pack v0.21.2, git-odb v0.31.2, git-packetline v0.12.7, git-url v0.7.2, git-transport v0.19.2, git-protocol v0.19.0, git-revision v0.4.2, git-refspec v0.1.0, git-worktree v0.4.2, git-repository v0.22.0, safety bump 4 crates (4974eca)
      • Merge branch 'remote-ls-refs' (39d585d)
      • 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 attribut
    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