Skip to content

Latest commit

 

History

History
2272 lines (1805 loc) · 211 KB

CHANGELOG.md

File metadata and controls

2272 lines (1805 loc) · 211 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

A maintenance release without user-facing changes, but with a reqwest update that uses more recent tls and hyper versions.

Commit Statistics

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

view details
  • Uncategorized
    • Merge branch 'patch-1' (8fde62b)
    • Turncurl into a workspace package (adee500)
    • Adjust expectations to deal with reqwest Content-Length (3b8f39d)
    • Make reqwest a workspace package (369cf1b)
    • Bump dep reqwest from 0.11.12 to 0.12.0 (cdb128c)

0.41.2 (2024-03-14)

A maintenance release without user-facing changes.

Commit Statistics

  • 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

view details
  • 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)

0.41.1 (2024-02-25)

A maintenance release without user-facing changes.

Commit Statistics

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

Commit Details

view details
  • 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)
    • Release gix-command v0.3.4 (8a62fb5)

0.41.0 (2024-01-20)

A maintenance release without user-facing changes.

Commit Statistics

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

Commit Details

view details
  • 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)

0.40.1 (2023-12-30)

Chore

  • change rust-version manifest field back to 1.65. They didn't actually need to be higher to work, and changing them unecessarily can break downstream CI.

    Let's keep this value as low as possible, and only increase it when more recent features are actually used.

Commit Statistics

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

Commit Details

view details
  • 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)

0.40.0 (2023-12-29)

Chore

  • upgrade MSRV to v1.70 Our MSRV follows the one of helix, which in turn follows Firefox.

Commit Statistics

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

Commit Details

view details
  • 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)
    • Merge branch 'main' into fix-1183 (1691ba6)
    • Merge branch '32bit' (ff1542c)
    • Update prodash to latest version (97f62cb)

0.39.0 (2023-12-06)

New Features

  • trace credential helper invocations. This should make it easier to understand what's going on in case something isn't working as expected.

Bug Fixes

  • http::Error::InitHttpClient adds a missing word that makes the message less confusing Also validate that a source is present.
  • assure we flush before turning a writer into a reader. Otherwise it might be that the write-end still isn't flushed, so the receiver didn't get the message it's waiting on, which wouild cause us to deadlock while waiting for a response from the remote.

New Features (BREAKING)

  • Add ssl_verify field to client::http::Options. Currently this option only works in the curl backend.

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

  • Remove unsafe transmute of should_interrupt Adds a lifetime to the ExtendedBufRead trait to specify how long the callback provided must live.

Commit Statistics

  • 24 commits contributed to the release over the course of 53 calendar days.
  • 54 days passed between releases.
  • 6 commits were understood as conventional.
  • 3 unique issues were worked on: #1061, #1075, #1103

Commit Details

view details
  • #1061
    • Assure we flush before turning a writer into a reader. (9584709)
  • #1075
    • http::Error::InitHttpClient adds a missing word that makes the message less confusing (9e6ae01)
  • #1103
    • Trace credential helper invocations. (bc44497)
  • 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)
    • J fmt (51c7abc)
    • Merge branch 'support_ssl_verify' (5ce9784)
    • Assure ssl_verify is enabled by default, and also affect host verification. (ab6e89c)
    • Add ssl_verify field to client::http::Options. (dfec281)
    • Assure that whitespace can't be used to mask command-line arguments in file:// invocations (f291437)
    • Merge branch 'check-cfg' (5a0d93e)
    • Replace all docsrs config by the document-features feature (bb3224c)
    • Merge branch 'error' (c372321)
    • Merge branch 'fix-1096' (ff99a18)
    • Fix CI failure (c36c95f)
    • Merge branch 'size-optimization' (c0e72fb)
    • Remove CHANGELOG.md from all packages (b65a80b)
    • Merge branch 'trace-packetlines' (e7de4c7)
    • Make it possible to trace incoming and outgoing packetlines. (c3edef1)
    • Merge branch 'fuzz' (c5a7e66)
    • Release gix-url v0.25.1 (47a1241)

0.38.0 (2023-10-13)

Bug Fixes

  • 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

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

Commit Details

view details
  • 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)

0.37.1 (2023-10-12)

A maintenance release without user-facing changes.

Commit Statistics

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

Commit Details

view details
  • 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)
    • Prepare another changelog prior to release (029dbc1)
    • 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)

0.37.0 (2023-09-24)

Bug Fixes

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release gix-features v0.35.0, gix-actor v0.27.0, gix-object v0.37.0, gix-glob v0.13.0, gix-attributes v0.19.0, gix-filter v0.5.0, gix-fs v0.7.0, gix-commitgraph v0.21.0, gix-revwalk v0.8.0, gix-traverse v0.33.0, gix-worktree-stream v0.5.0, gix-archive v0.5.0, gix-tempfile v10.0.0, gix-lock v10.0.0, gix-ref v0.37.0, gix-config v0.30.0, gix-url v0.24.0, gix-credentials v0.20.0, gix-diff v0.36.0, gix-discover v0.25.0, gix-ignore v0.8.0, gix-index v0.25.0, gix-mailmap v0.19.0, gix-negotiate v0.8.0, gix-pack v0.43.0, gix-odb v0.53.0, gix-pathspec v0.3.0, gix-transport v0.37.0, gix-protocol v0.40.0, gix-revision v0.22.0, gix-refspec v0.18.0, gix-status v0.1.0, gix-submodule v0.4.0, gix-worktree v0.26.0, gix-worktree-state v0.3.0, gix v0.54.0, gitoxide-core v0.32.0, gitoxide v0.30.0, safety bump 37 crates (7891fb1)
    • Prepare changelogs prior to release (8a60d5b)
    • Merge branch 'fix-exploit' (c53bbd2)
    • Prevent hosts or paths that look like arguments to be passed to invoked commands. (b06a0dd)

0.36.0 (2023-09-08)

Bug Fixes (BREAKING)

  • use dyn trait where possible. This reduces compile time due to avoiding duplication.

Commit Statistics

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

Commit Details

view details
  • 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 'optimizations' (6135a5e)
    • Adapt to changes in features of gix-pack (6b27ffa)
    • Merge branch dynification (f658fcc)
    • Use dyn trait where possible. (072ee32)
    • Merge branch 'gix-submodule' (363ee77)

0.35.0 (2023-08-22)

Chore

  • don't call crate 'WIP' in manifest anymore.

Commit Statistics

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

Commit Details

view details
  • 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)
    • Merge branch 'fix-redirect' (e83c38f)
    • Set maximum redirect limit to what curl seems to use by default (7663a48)
    • Refactor (1bc42e9)
    • Fix git-transport reqwest client: Support redirect (e642690)

0.34.2 (2023-08-02)

A maintenance release without user-facing changes.

Commit Statistics

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

Commit Details

view details
  • #923
    • Improve reqwest error handling (fadec77)
  • 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)

0.34.1 (2023-07-22)

A maintenance release without user-facing changes.

Commit Statistics

  • 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

view details
  • 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)

0.34.0 (2023-07-19)

A maintenance release without user-facing changes.

Commit Statistics

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

Thanks Clippy

Clippy helped 2 times to make code idiomatic.

Commit Details

view details
  • 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)
    • Thanks clippy (9fbed4b)
    • Thanks clippy (3ef32af)

0.33.1 (2023-06-29)

A maintenance release without user-facing changes.

Commit Statistics

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

view details
  • Uncategorized
    • Release gix-transport v0.33.1, gix v0.48.0 (f27ca12)
    • Prepare changelogs prior to release (4c2fb5f)
    • Align gix-sec version across all crates (7f80ab6)

0.33.0 (2023-06-22)

Chore

  • Add clippy::redundant-closure-for-method-calls lint

Commit Statistics

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

Commit Details

view details
  • 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)

0.32.0 (2023-06-06)

Bug Fixes (BREAKING)

  • parse 'handshake' of file:// based protocol version 0. This special protocol kicks in when git serves file:// directly and no version number is specified. Then it doesn't advertise capabilities at all, but shows 0000 right away. Make sure we can parse it, and show it by adding Version::V0 as well.

Commit Statistics

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

Thanks Clippy

Clippy helped 1 time to make code idiomatic.

Commit Details

view details
  • 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)
    • Parse 'handshake' of file:// based protocol version 0. (aa2d064)
    • Thanks clippy (9525ac8)
    • Merge branch 'fix-docs' (420553a)
    • Cleaning up documentation (2578e57)
    • Apply -W clippy::cloned-instead-of-copied (150463c)
    • Merge branch 'auto-clippy' (dbf8aa1)
    • Disallow non-inlined format args and make respective fixes (bd101f2)
    • Autofix map-or-unwrap clippy lint (and manual fix what was left) (2087032)
    • Release gix-packetline v0.16.1 (d70ce9f)
    • Merge branch 'main' into auto-clippy (3ef5c90)
    • Merge branch 'blinxen/main' (9375cd7)
    • Include custom clippy settings (b057500)
    • Include license files in all crates (facaaf6)

0.31.0 (2023-04-27)

A maintenance release without user-facing changes.

Commit Statistics

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

Commit Details

view details
  • 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)

0.30.0 (2023-04-26)

New Features (BREAKING)

  • 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

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

Thanks Clippy

Clippy helped 1 time to make code idiomatic.

Commit Details

view details
  • #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)

0.29.1 (2023-03-26)

A maintenance release without any user-facing changes.

Commit Statistics

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

Commit Details

view details
  • 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)
    • Correct more typos with typos tool. (2321eb9)

0.29.0 (2023-03-14)

A maintenance release without any user-facing changes.

Commit Statistics

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

Commit Details

view details
  • 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)

0.28.0 (2023-03-10)

Bug Fixes (BREAKING)

  • add ReadLineBufRead::readline_str(&mut String) to get consistent readline behaviour. Previously the async version of the transport implementation would use the default read_line implementation which would search for newlines in packetlines. However, these aren't always emitted which could lead to multiple packetlines to be concatenated.

    Now the we always use our implementation which simply treats one packet line as line, no matter whether or not it ends with optional newline.

Bug Fixes

  • Assure ReadlineBufRead::readline_str() calls our implementation for Box<T: ReadlineBufRead> as well. This fixes a bug where the HTTP implementation would incorrectly concatenate packetlines without newlines as sent by the server for shallow info lines.

New Features (BREAKING)

  • HTTP transport uses url identity if username and password is set. Note that this also changes http::Transport::new(...) to accept a gix_url::Url instead of a string as it's typically the input and makes it easier to derive an identity.

Commit Statistics

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

Commit Details

view details
  • 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)
    • Assure ReadlineBufRead::readline_str() calls our implementation for Box<T: ReadlineBufRead> as well. (397ed90)
    • Add ReadLineBufRead::readline_str(&mut String) to get consistent readline behaviour. (72ec01b)
    • Merge branch 'password-in-urls' (85f8b28)
    • HTTP transport uses url identity if username and password is set. (7830f1e)
    • Adjust to changes in gix-url (66602bb)
    • Fix ssh helper invocation tests under Rust 1.68 (d137a8c)

0.27.0 (2023-03-04)

A maintenance release without user-facing changes.

Commit Statistics

  • 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

view details
  • 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)

0.26.0 (2023-03-01)

A maintenance release without user-facing changes.

Commit Statistics

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

Commit Details

view details
  • 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)

0.25.6 (2023-02-20)

Bug Fixes

  • 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

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

Commit Details

view details
  • 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)

0.25.5 (2023-02-17)

Bug Fixes

  • note that crates have been renamed from git-* to gix-*. This also means that the git-* prefixed crates of the gitoxide project are effectively unmaintained. Use the crates with the gix-* prefix instead.

    If you were using git-repository, then gix is its substitute.

  • failure to set the http.version isn't critical. Failing to set the version isn't critical, and may indeed fail depending on the version of libcurl we are built against. Furthermore, git itself doesn't actually check for errors when configuring curl at all, treating all or most flags as non-critical.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release gix-transport v0.25.5 (f872ba8)
    • Failure to set the http.version isn't critical. (3ee602d)

0.25.4 (2023-02-17)

Bug Fixes (BREAKING)

  • Capabiltiies::from_lines() takes a single buffer. That way it doesn't have to convert to String as intermediary which may fail as illformed UTF8 might be present.

    Performance wise, reading all lines ahead of time, it is the same as it was before as it would collect all lines beforehand anyway.

    We are also seeing only a few lines in V2, and in V1 it was fully streaming already.

  • max-pure now builds without any C build tooling due to lack of openssl-sys. To make this work, we leave the reqwest configuration to downstream crates. Note that this means downstream will have to select their TLS settings themselves, so builds may fail after upgrade until this is done.

    An example for a reqwest configuration can be found in the gitoxide Cargo.toml in the root of the gitoxide repository.

New Features (BREAKING)

  • ptions for client::connect() and support for more than one ssh variant, including permission-denied detection. Options can be passed down to client::ssh::connect() to further configure it similar to what git itself offers. That way, it's possible to use different ssh commands and support all of gits configuration options.

    Support for multiple ssh variants was added to use them (and their flags) correctly.

    Detection of permission-denied errors due to invalid credentials was added so re-authentication in upper layers can be implemented.

  • make streaming otional for any reqwest. One can now indicate when initiating a reqwest that the transport doesn't have to stream the data, even though it will always be provided to an std::io::Write.

    Note that this is at the discretion of the transport implementation and streaming might still be done despite it not being requested.

    Note that the caller should set this 'streaming' flag if the upper bound of data is high for keeping it in memory or can't be estimated. This is generally true when sending packs.

  • Provide support for reading packetlines directly. The handshake response itself now provides a ref read implementation with direct readline support. That way one can avoid having to go through String.

  • interpret the FollowRedirects option for the curl HTTP backend. This comes with changes to the HTTP trait which now requires a base-url to be provided as well.

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

  • add fetch::Transport::configure to generically configure any transport.

  • use git-credentials in git-protocol

Changed (BREAKING)

  • client::TransportWithoutIO::to_url() returns Cow<'_, BStr>. That way, it's possible to efficiently return URLs in the right format, or return generates ones as needed.

  • client::TransportWithoutIO::to_url() returns BString. That way it will not be lossy in case the URL represents a path, which is relevant for transports that refer to paths.

    Note that this doesn't matter when the url actually is a URL, as it's specified to be valid unicode (I think).

  • client::TransportV2Ext::invoke() supports owned capabilities. That way it's easier to pass custom agent strings when invoking.

  • client::http::connect() returns Transport<Impl> directly. It' can't fail, so no need to return Result<_, Infallible>.

  • upgrade bstr to 1.0.1

  • client::connect() supports anything that parses into a git_url::Url; turn http url back to &str The http url is always valid UTF-8 and doesn't contain invalid paths, thus we should have the type system reflect that.

  • client::connect() now takes a &BStr as URL

  • use thiserror instead of quickerror

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

Other

  • try to make the transport configurable after being boxed, but… …that would force it to be 'static, which is something we excplicitly cannot have. We need references to be contained within, if I remember correctly.
  • make capabilities parsing public

New Features

  • add and implement various new http options for the curl backend.
    • schannel_check_revoke as curl-backend specific configuration.

Chore

  • uniformize deny attributes
  • remove default link to cargo doc everywhere

Changed

  • TransportV2Ext::invoke(…,features,…) can take key-value pairs more flexibly. Value can now also be owned, which is useful if the value type is a Cow<'_, String>.

Documentation

  • fix typos

Bug Fixes

  • make clear in docs that the writer needs to be dropped for good measure. Otherwise, some transports might deadlock.

  • Use single quotes for ssh path arg Git uses this method of quoting args for SSH transport too Some Git SSH servers require this method to be used (eg. BitBucket)

  • Place port for PuTTY and derivates in separate argument All three PuTTY clients require the port to be separated from the "-P" argument

  • gix clone ssh://... won't deadlock anymore. For cargo specifically we now parse stderr to see if permission errors occour. This links stderr and stdout and we have to pass information from a supervisor thread that parses stderr to stdout and use the information to return a custom io error in time. Now the algorithm is adjusted to never be able to deadlock, as the problem is inherently racy and somewhat hard to implement it properly especially without a good test suite built-into gitoxde - there are no ssh servers one can easily spin up cross-platform.

  • file:// command invocation won't spill stderr output. This usually doesn't add any benefit to the user as we might see events like the git process' failure to flush to a closed channel even though this is entirely handled by the Rust side of things.

    I can imagine that one day this might become a configurable to help with debugging to help making better-behaved clients, but maybe it won't ever matter once the default file:// transport is built-in and native.

  • improve error message for when an invoked transport program can't be found.

  • assure processing thread is up before continuing. That way one may hope that we never leave stderr output unprocessed.

  • port selections for SSH urls are now respected for protocol V1 as well.

  • propery adjust host argument for ssh program to include a user name. Otherwise it would not use a user at all which then defaults to the currently logged in user, something that typically won't work with servers that demand git.

  • fixes SSH clone from scp-like/relatives URLs

    • Removes git-upload-pack extra parameters (rejected by both github and gitlab)

Commit Statistics

Thanks Clippy

Clippy helped 26 times to make code idiomatic.

Commit Details

view details
  • #198
    • Adjust all changelogs to fulfil requirements for publishing (04b9ca0)
    • Deduplicate conventional message ids (e695eda)
    • Regenerate all changelogs to get links (0c81769)
    • Mention actual issues that where worked on (a517e39)
    • Respect release-wide ignore list to allow removing entire conventional headlines (145103d)
    • Rebuild all changelogs to assure properly ordered headlines (4a9a05f)
    • Sort all commits by time, descending… (f536bad)
    • Greatly reduce changelog size now that the traversal fix is applied (a0bc98c)
    • Fixup remaining changelogs… (2f75db2)
    • Generate changelogs with details (e1861ca)
    • Update all changelogs with details (58ab2ae)
    • Update changelogs (c857d61)
    • Avoid adding newlines which make writing unstable (6b5c394)
    • Fix section headline level (9d6f263)
    • Write first version of changlogs thus far… (719b6bd)
    • Parse more user generated section content, adapt existing changelogs to work correctly (2f43a54)
  • #200
    • Feat: Lift io::Errors to response::Error::UploadPack(…)… (f293b63)
  • #222
    • Update changelogs prior to release (9a493d0)
  • #254
    • Adjust changelogs prior to git-pack release (6776a3f)
  • #279
    • Adjust to changes in git-hash and git-pack (0cae25b)
  • #301
    • Update changelogs prior to release (84cb256)
  • #329
    • In-manifest and in-lib documentation of feature toggles (39778fd)
    • Document all features related to serde1 (72b97f2)
  • #386
    • Adapt to changes in git-sec (c5e2346)
    • Use git-credentials in git-protocol (32dc182)
  • #450
    • client::Capabilities lifetimes now point to 'a instead of 'self. (4b5d6df)
    • Set the protocol version for local git transports as well. (41b0c19)
    • Remove Drop for SpawnProcessOnDemand. (6d8b66a)
    • Allow defaulting client::Capabilities. (e05c1fe)
    • Use &dyn Any instead of unspecified serialization format, as it's the right way. (779eefe)
    • Add fetch::Transport::configure to generically configure any transport. (78ad3df)
    • client::http::connect() returns Transport<Impl> directly. (1cf66c4)
    • Revert "FAIL: try to make the transport configurable after being boxed, but…" (fbb96e4)
    • Try to make the transport configurable after being boxed, but… (5bef0a0)
    • Option to print server information about the connection (4720666)
    • Upgrade bstr to 1.0.1 (99905ba)
    • Adjust to changes in git-url (bb83843)
    • Make async conenct() signature compatible with the blocking implementation. (5220f9a)
    • Sketch of simple delegate to collect listed refs (1c5f561)
    • Adjust to changes in git-transport (94a623b)
    • Fix async connect() to match new signature (eb15a79)
    • client::connect() supports anything that parses into a git_url::Url; turn http url back to &str (9509ce4)
    • client::connect() now takes a &BStr as URL (52e8c14)
    • connect() method is available in when async-std feature is set along with async-client (f6a6a49)
    • Use thiserror instead of quickerror (71a43d0)
    • Better docs for git-transport (30b7b67)
    • Adapt to changes in git-url (9456146)
    • Adapt to changes in git-url and use BString to represent URLs. (12589cc)
  • #470
    • Update changelogs prior to release (caa7a1b)
  • #602
    • Improve compile-time errors if mutually exclusive http-client features are set. (b0083e3)
    • max-pure now builds without any C build tooling due to lack of openssl-sys. (4308a20)
  • #639
    • Correctly display what's actual and expected when failing to parse capabilities. (7ab7c24)
  • #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)
    • Fix git-transport tests (1727fe9)
    • 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)
    • 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)
    • Rename git-transport to gix-transport (8c353ea)
    • 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-worktree to gix-worktree (108bb1a)
    • Adjust to renamining of git-tui to gix-tui (8782262)
    • 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)
    • Make clear in docs that the writer needs to be dropped for good measure. (eff7ad7)
    • Thanks clippy (bac57dd)
    • Make fmt (e22080e)
    • Merge branch 'adjustments-for-cargo' (7bba270)
    • Improve documentation on http options (5bf9547)
    • Merge branch 'ssh-quoting' (cc35025)
    • Refactor (deed1f1)
    • Use single quotes for ssh path arg (acb4c17)
    • Merge pull request #712 from exactly-one-kas/putty-port (021248c)
    • Place port for PuTTY and derivates in separate argument (85c3382)
    • Release git-date v0.4.1, git-features v0.26.1, git-glob v0.5.2, git-attributes v0.8.1, git-tempfile v3.0.1, git-ref v0.23.1, git-sec v0.6.1, git-config v0.15.1, git-prompt v0.3.1, git-url v0.13.1, git-discover v0.12.1, git-index v0.12.2, git-mailmap v0.9.1, git-pack v0.30.1, git-odb v0.40.1, git-transport v0.25.3, git-protocol v0.26.2, git-revision v0.10.1, git-refspec v0.7.1, git-worktree v0.12.1, git-repository v0.33.0 (5b5b380)
    • Prepare changelogs prior to release (93bef97)
    • Merge branch 'patch-1' (b93f0c4)
    • Thanks clippy (9e04685)
    • Upgrade base64 (b5408ba)
    • Export PostBodyDataKind (7fa757f)
    • 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)
    • Merge branch 'gix-clone-improvements' (76c99f3)
    • gix clone ssh://... won't deadlock anymore. (6ba799c)
    • Release git-transport v0.25.1 (e0b12fe)
    • File:// command invocation won't spill stderr output. (ec2f2e3)
    • 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)
    • Improve error message for when an invoked transport program can't be found. (fed38c9)
    • Assure processing thread is up before continuing. (f0997bf)
    • Parse additional ssh messaegs into io-errors. (c60c89d)
    • Make fmt (511ed00)
    • Merge branch 'adjustments-for-cargo' (f8c562a)
    • Ptions for client::connect() and support for more than one ssh variant, including permission-denied detection. (6fa2764)
    • Port selections for SSH urls are now respected for protocol V1 as well. (923278b)
    • Propery adjust host argument for ssh program to include a user name. (0ff127c)
    • Release git-features v0.25.1, git-url v0.12.2, git-odb v0.38.1, git-transport v0.24.2, git-repository v0.30.2 (bb0a07b)
    • Merge branch 'adjustments-for-cargo' (d821fc5)
    • Add and implement various new http options for the curl backend. (d59d362)
    • Merge branch 'fix/ssh-clone' (3678a6a)
    • Refactor (24070a3)
    • Fixes SSH clone from scp-like/relatives URLs (c62e5c7)
    • 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)
    • Make streaming otional for any reqwest. (041eca5)
    • Don't enforce V2 as protocol, but smoothly downgrade like git does. (5f2276b)
    • Merge branch 'adjustments-for-cargo' (94750e1)
    • Improve granularity of IO errors for curl backends. (0a2b135)
    • Http transports can now reuse a connection. (ff0332e)
    • Merge branch 'adjustments-for-cargo' (70ccbb2)
    • Merge branch 'main' into adjustments-for-cargo (bb60d3d)
    • Adapt to changes in git-repository (89230f4)
    • Merge branch 'paulyoung/scheme-ext' (3e27550)
    • IsSpuriousError trait and its implementation. (9a2f7cd)
    • Don't pre-configure curl. (85dcda8)
    • Ssh connection remove '=' in port argument (0d0eb4a)
    • Merge branch 'fix-638' (eb4c5f0)
    • Make it possible to parse handshakes without newlines in packetlines #(639) (4927adf)
    • Merge branch 'fixture-async' (eca6705)
    • Async version of ref-line parsing now reads line by line. (dadd896)
    • Fix hang when reading packetlines lines directly via HTTP (2d033ab)
    • Merge branch 'remove-lines-parsing' (9d8e32d)
    • Provide support for reading packetlines directly. (1204bfc)
    • Capabiltiies::from_lines() takes a single buffer. (08dcda2)
    • Make fmt (747008d)
    • Merge branch 'main' into http-config (6b9632e)
    • client::http::Options::no_proxy to disable a proxy for given hosts. (5034544)
    • client::http::Options::verbose to see more debug output. (e701e7e)
    • Release git-features v0.24.1, git-actor v0.14.1, git-index v0.9.1 (7893502)
    • Interpret the FollowRedirects option for the curl HTTP backend. (8e158c3)
    • Merge branch 'http-config' (a4ff140)
    • 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 'max-pure' (03ff188)
    • Thanks clippy (c7cba33)
    • Merge branch 'version2021' (0e4462d)
    • Upgrade edition to 2021 in most crates. (3d8fa8f)
    • Curl can authenticate the proxy now and store or reject credentials. (63b9050)
    • Support for proxy authentication in http configuration. (68ed6d7)
    • Setup curl proxy authentication method (c048990)
    • Support for reading http.proxyAuthMethod (92f88c9)
    • 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)
    • Merge branch 'push-support' (42356ab)
    • Add test to see if we can correctly read the server response. (4d84a20)
    • client::RequestWriter::into_parts() to obtain a bare write handled along with a buf reader with packetline capabilties. (42acc88)
    • Add simple push request/response as obtained through HTTP proxying (0573107)
    • Avoid hardcoding some arbitrary default for connect timeouts, use curl default instead like git (1766568)
    • Set TCP keepalive just like git does (ee0276c)
    • Set curl proxy-type similar to how git does it (717b09f)
    • Merge branch 'main' into http-config (f4ff821)
    • Merge branch 'async-fetch' (0c9c48b)
    • Fix docs (0d1a00d)
    • Add Debug to client::http::Options (375565f)
    • client::TransportWithoutIO::to_url() returns Cow<'_, BStr>. (07512db)
    • client::TransportWithoutIO::to_url() returns BString. (fe2042b)
    • Add missing Debug impl on transport option types (7ca4dec)
    • Fix build (b9a5eea)
    • client::TransportV2Ext::invoke() supports owned capabilities. (759b5d4)
    • TransportV2Ext::invoke(…,features,…) can take key-value pairs more flexibly. (28615b3)
    • Explain how the user_agent option is going to work on the transport layer (328c069)
    • Implement all straightforward curl options, which includes basic proxy settings. (0b60097)
    • Add all fields we'd like to implement for the curl transport. (cfc1b9c)
    • A note about the status of the http reqwest backend (4724604)
    • Remove double-arc construct in reqwest backend (c6a474c)
    • Sketch of reqwest specific backends can be handled (a8b3f96)
    • A sketch of passing curl options down to curl… (63e24fc)
    • Merge branch 'main' into http-config (7c5b37d)
    • Release git-diff v0.22.0, git-index v0.7.1, git-pack v0.26.0, git-odb v0.36.0, git-transport v0.21.2, git-repository v0.27.0, safety bump 6 crates (f0cab31)
    • Prepare changelogs prior to release (f5f3a9e)
    • Fix build (910d665)
    • Thanks clippy (0dc4c6f)
    • Move HTTP service checks up to the HTTP layer (blocking & async) (3046646)
    • Fix fixture to work with test setup. (cf9a53b)
    • Fix error when no service annoucment is sent by the server (a1d876f)
    • 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 'git_protocol_host' (d13c590)
    • Avoid invalid invocations of git by removing GIT_CONFIG_COUNT (aa315b4)
    • Fix connections over the git:// protocol not specifying the host (8f985d4)
    • Merge branch 'main' into write-sparse-index (c4e6849)
    • Make fmt (ea2136b)
    • Merge branch 'gix-clone' (def53b3)
    • Merge branch 'main' into gix-clone (fa27570)
    • Merge branch 'main' into write-sparse-index (70963f5)
    • Merge branch 'paulyoung/reqwest-body' (c9c1658)
    • Merge branch 'main' into gix-clone (64f81d7)
    • Ensure body can be read before configure_request (9065a88)
    • Merge branch 'paulyoung/reqwest-configuration' (93f2dd8)
    • Turn unwrap into an explicit expectation (57d9078)
    • Allow configure_request to return an error as well. (f5e14c3)
    • Remove unused field (8a0a5d6)
    • Configure Request instead of ClientBuilder (0885e6e)
    • Resolve issues with configure function (9124583)
    • Sketch out configuring a reqwest client builder (74573df)
    • Merge branch 'main' into gix-clone (de4fe06)
    • Allow client::connect() to function with http-client-reqwest enabled. (375051f)
    • Refactor (d3c6ae1)
    • Fix formatting (a962eb5)
    • Fix "http not compiled in" w/ http-client-reqwest (dff418d)
    • 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 'fix-smart-release' (aa80b60)
    • Make fmt (7b9c065)
    • reqwest as blocking HTTP backend via http-client-reqwest feature toggle. (8e17534)
    • Re-enable last remaining test for reqwest (9ef6a54)
    • Merge branch 'main' into new-http-impl (702a161)
    • And another previously hanging test works - content-length is critical (0b0ba03)
    • Clone_v1 now works in reqwest, because… (63d5a01)
    • Make fmt (53acf25)
    • Merge branch 'fetch-pack' (f47c891)
    • Merge branch 'fetch-pack' (3c49400)
    • Merge branch 'main' into fetch-pack (93917cb)
    • Shutdown the stream of the mock server for good measure (4e415a8)
    • Minor fix to test, but now it hangs. 3 hanging to go… (164f5d3)
    • One more test works - strangely enough this one doesn't hang. (c3150dd)
    • Adjust test expectations to pass one part, but now it hangs like clone_v1 (4b731ad)
    • Refactor (569c6f2)
    • Send error on non-success status codes (7ccd4ff)
    • Disable all tests failing under reqwest (except for 1); minor fixes to get it to work (ee4eb69)
    • Properly integrate reqwest to allow testing (even though none of them works yet) (250114a)
    • Revise drop of header writer to prevent remote hang (2981c4d)
    • Revise error handling; better docs to explain the 'protocol' (fd9634d)
    • In theory, that's what's needed for reqwest to work in blocking mode… (ce62f5d)
    • Even more safety when dealing with the remote's error state (b63d69b)
    • Rethink error handling during request creation, completing it (1fb0545)
    • Frame for filling in the reqwest implementation (943fd15)
    • Add 'http-client-reqwest' feature toggle (2c9b63c)
    • Compare 'Content-Type' header case-insensitively, as required by the http spec. (237682a)
    • Merge branch 'paulyoung/git-transport-http-client' (c845c16)
    • Add client::http::Transport::new_http() constructor. (0fd57c6)
    • Introduce http-client feature to decouple from curl (31aa2c9)
    • Make Content-Type header check case-insensitive (7aa8ab8)
    • 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 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 attributes (f7f136d)
    • Pass --cfg docsrs when compiling for https://docs.rs (5176771)
    • Remove default link to cargo doc everywhere (533e887)
    • Merge branch 'main' into remote-ls-refs (bd5f3e8)
    • Release git-date v0.0.3, git-actor v0.11.1, git-attributes v0.3.1, git-tempfile v2.0.3, git-object v0.20.1, git-ref v0.15.1, git-config v0.6.1, git-diff v0.17.1, git-discover v0.4.0, git-bitmap v0.1.1, git-index v0.4.1, git-mailmap v0.3.1, git-traverse v0.16.1, git-pack v0.21.1, git-odb v0.31.1, git-packetline v0.12.6, git-url v0.7.1, git-transport v0.19.1, git-protocol v0.18.1, git-revision v0.4.0, git-worktree v0.4.1, git-repository v0.21.0, safety bump 5 crates (c96473d)
    • Prepare changelogs prior to reelase (c06ae1c)
    • Release git-hash v0.9.7, git-features v0.22.1 (232784a)
    • Merge pull request #2 from SidneyDouw/main (ce885ad)
    • Merge branch 'Byron:main' into main (9b9ea02)
    • Merge branch 'main' into rev-parse-delegate (6da8250)
    • Merge branch 'main' into pathspec (7b61506)
    • Merge branch 'kianmeng-fix-typos' (4e7b343)
    • Fix typos (e9fcb70)
    • Release git-config v0.6.0, git-credentials v0.3.0, git-diff v0.17.0, git-discover v0.3.0, git-index v0.4.0, git-mailmap v0.3.0, git-traverse v0.16.0, git-pack v0.21.0, git-odb v0.31.0, git-url v0.7.0, git-transport v0.19.0, git-protocol v0.18.0, git-revision v0.3.0, git-worktree v0.4.0, git-repository v0.20.0, git-commitgraph v0.8.0, gitoxide-core v0.15.0, gitoxide v0.13.0 (aa639d8)
    • Release git-hash v0.9.6, git-features v0.22.0, git-date v0.0.2, git-actor v0.11.0, git-glob v0.3.1, git-path v0.4.0, git-attributes v0.3.0, git-tempfile v2.0.2, git-object v0.20.0, git-ref v0.15.0, git-sec v0.3.0, git-config v0.6.0, git-credentials v0.3.0, git-diff v0.17.0, git-discover v0.3.0, git-index v0.4.0, git-mailmap v0.3.0, git-traverse v0.16.0, git-pack v0.21.0, git-odb v0.31.0, git-url v0.7.0, git-transport v0.19.0, git-protocol v0.18.0, git-revision v0.3.0, git-worktree v0.4.0, git-repository v0.20.0, git-commitgraph v0.8.0, gitoxide-core v0.15.0, gitoxide v0.13.0, safety bump 22 crates (4737b1e)
    • Prepare changelog prior to release (3c50625)
    • Merge pull request #1 from Byron/main (085e76b)
    • Merge branch 'main' into pathspec (89ea12b)
    • Merge branch 'main' into cont_include_if (daa71c3)
    • Thanks clippy (e1003d5)
    • Merge branch 'main' into cont_include_if (41ea8ba)
    • Release git-path v0.3.0, safety bump 14 crates (400c9be)
    • Release git-date v0.0.1, git-hash v0.9.5, git-features v0.21.1, git-actor v0.10.1, git-path v0.2.0, git-attributes v0.2.0, git-ref v0.14.0, git-sec v0.2.0, git-config v0.5.0, git-credentials v0.2.0, git-discover v0.2.0, git-pack v0.20.0, git-odb v0.30.0, git-url v0.6.0, git-transport v0.18.0, git-protocol v0.17.0, git-revision v0.2.1, git-worktree v0.3.0, git-repository v0.19.0, safety bump 13 crates (a417177)
    • Update changelogs prior to release (bb424f5)
    • Merge branch 'main' into SidneyDouw-pathspec (a22b1d8)
    • Merge branch 'main' into git_includeif (598c853)
    • Release git-ref v0.13.0, git-discover v0.1.0, git-index v0.3.0, git-mailmap v0.2.0, git-traverse v0.15.0, git-pack v0.19.0, git-odb v0.29.0, git-packetline v0.12.5, git-url v0.5.0, git-transport v0.17.0, git-protocol v0.16.0, git-revision v0.2.0, git-worktree v0.2.0, git-repository v0.17.0 (349c590)
    • Release git-hash v0.9.4, git-features v0.21.0, git-actor v0.10.0, git-glob v0.3.0, git-path v0.1.1, git-attributes v0.1.0, git-sec v0.1.0, git-config v0.3.0, git-credentials v0.1.0, git-validate v0.5.4, git-object v0.19.0, git-diff v0.16.0, git-lock v2.1.0, git-ref v0.13.0, git-discover v0.1.0, git-index v0.3.0, git-mailmap v0.2.0, git-traverse v0.15.0, git-pack v0.19.0, git-odb v0.29.0, git-packetline v0.12.5, git-url v0.5.0, git-transport v0.17.0, git-protocol v0.16.0, git-revision v0.2.0, git-worktree v0.2.0, git-repository v0.17.0, safety bump 20 crates (654cf39)
    • Merge branch 'main' into git_includeif (05eb340)
    • Merge branch 'main' into msrv-for-windows (7cb1972)
    • Make fmt (251b6df)
    • Merge branch 'main' into repo-status (9679d6b)
    • Merge branch 'git-sec' (cd723b5)
    • Release git-diff v0.14.0, git-bitmap v0.1.0, git-index v0.2.0, git-tempfile v2.0.1, git-lock v2.0.0, git-mailmap v0.1.0, git-traverse v0.13.0, git-pack v0.17.0, git-quote v0.2.0, git-odb v0.27.0, git-packetline v0.12.4, git-url v0.4.0, git-transport v0.16.0, git-protocol v0.15.0, git-ref v0.12.0, git-worktree v0.1.0, git-repository v0.15.0, cargo-smart-release v0.9.0, safety bump 5 crates (e58dc30)
    • Release git-hash v0.9.3, git-features v0.20.0, git-config v0.2.0, safety bump 12 crates (f0cbb24)
    • Upgrade document-features (c35e62e)
    • Release git-odb v0.26.0, git-packetline v0.12.3, git-url v0.3.5, git-transport v0.15.0, git-protocol v0.14.0, git-ref v0.11.0, git-repository v0.14.0, cargo-smart-release v0.8.0 (42ebb53)
    • Release git-diff v0.13.0, git-tempfile v1.0.4, git-chunk v0.3.0, git-traverse v0.12.0, git-pack v0.16.0, git-odb v0.26.0, git-packetline v0.12.3, git-url v0.3.5, git-transport v0.15.0, git-protocol v0.14.0, git-ref v0.11.0, git-repository v0.14.0, cargo-smart-release v0.8.0 (1b76119)
    • Release git-actor v0.8.0, git-config v0.1.10, git-object v0.17.0, git-diff v0.13.0, git-tempfile v1.0.4, git-chunk v0.3.0, git-traverse v0.12.0, git-pack v0.16.0, git-odb v0.26.0, git-packetline v0.12.3, git-url v0.3.5, git-transport v0.15.0, git-protocol v0.14.0, git-ref v0.11.0, git-repository v0.14.0, cargo-smart-release v0.8.0 (8f57c29)
    • Release git-features v0.19.1, git-actor v0.8.0, git-config v0.1.10, git-object v0.17.0, git-diff v0.13.0, git-tempfile v1.0.4, git-chunk v0.3.0, git-traverse v0.12.0, git-pack v0.16.0, git-odb v0.26.0, git-packetline v0.12.3, git-url v0.3.5, git-transport v0.15.0, git-protocol v0.14.0, git-ref v0.11.0, git-repository v0.14.0, cargo-smart-release v0.8.0 (d78aab7)
    • Release git-hash v0.9.1, git-features v0.19.1, git-actor v0.8.0, git-config v0.1.10, git-object v0.17.0, git-diff v0.13.0, git-tempfile v1.0.4, git-chunk v0.3.0, git-traverse v0.12.0, git-pack v0.16.0, git-odb v0.26.0, git-packetline v0.12.3, git-url v0.3.5, git-transport v0.15.0, git-protocol v0.14.0, git-ref v0.11.0, git-repository v0.14.0, cargo-smart-release v0.8.0, safety bump 4 crates (373cbc8)
    • Prepare changelogs for release (674ec73)
    • Prepar changelogs for cargo-smart-release release (8900d69)
    • Release git-bitmap v0.0.1, git-hash v0.9.0, git-features v0.19.0, git-index v0.1.0, safety bump 9 crates (4624725)
    • Merge branch 'sync-db-draft' (7d2e20c)
    • Thanks clippy (4ca9e07)
    • Release git-actor v0.7.0, git-config v0.1.9, git-object v0.16.0, git-diff v0.12.0, git-traverse v0.11.0, git-pack v0.15.0, git-odb v0.25.0, git-packetline v0.12.2, git-transport v0.14.0, git-protocol v0.13.0, git-ref v0.10.0, git-repository v0.13.0, cargo-smart-release v0.7.0 (d3f9227)
    • Release git-features v0.18.0, git-actor v0.7.0, git-config v0.1.9, git-object v0.16.0, git-diff v0.12.0, git-traverse v0.11.0, git-pack v0.15.0, git-odb v0.25.0, git-packetline v0.12.2, git-transport v0.14.0, git-protocol v0.13.0, git-ref v0.10.0, git-repository v0.13.0, cargo-smart-release v0.7.0, safety bump 12 crates (acd3737)
    • Adjust changelogs prior to release (ec38950)
    • Release git-config v0.1.8, git-object v0.15.1, git-diff v0.11.1, git-traverse v0.10.1, git-pack v0.14.0, git-odb v0.24.0, git-packetline v0.12.1, git-transport v0.13.1, git-protocol v0.12.1, git-ref v0.9.1, git-repository v0.12.0, cargo-smart-release v0.6.0 (f606fa9)
    • Better changelog descriptions. (f69b2d6)
    • Adjusting changelogs prior to release of git-config v0.1.8, git-object v0.15.1, git-diff v0.11.1, git-traverse v0.10.1, git-pack v0.14.0, git-odb v0.24.0, git-packetline v0.12.1, git-transport v0.13.1, git-protocol v0.12.1, git-ref v0.9.1, git-repository v0.12.0, cargo-smart-release v0.6.0, safety bump 5 crates (39b40c8)
    • Fix false positive clippy warning. (9b8363b)
    • Release git-hash v0.8.0, git-features v0.17.0, git-actor v0.6.0, git-object v0.15.0, git-diff v0.11.0, git-traverse v0.10.0, git-pack v0.13.0, git-odb v0.23.0, git-packetline v0.12.0, git-transport v0.13.0, git-protocol v0.12.0, git-ref v0.9.0, git-repository v0.11.0, git-commitgraph v0.6.0, gitoxide-core v0.12.0, gitoxide v0.10.0, cargo-smart-release v0.5.0, safety bump 16 crates (0e02953)
    • Release git-hash v0.7.0, git-features v0.16.5, git-actor v0.5.3, git-config v0.1.7, git-validate v0.5.3, git-object v0.14.1, git-diff v0.10.0, git-tempfile v1.0.3, git-lock v1.0.1, git-traverse v0.9.0, git-pack v0.12.0, git-odb v0.22.0, git-packetline v0.11.0, git-url v0.3.4, git-transport v0.12.0, git-protocol v0.11.0, git-ref v0.8.0, git-repository v0.10.0, cargo-smart-release v0.4.0 (59ffbd9)
    • Adjusting changelogs prior to release of git-hash v0.7.0, git-features v0.16.5, git-actor v0.5.3, git-validate v0.5.3, git-object v0.14.1, git-diff v0.10.0, git-tempfile v1.0.3, git-lock v1.0.1, git-traverse v0.9.0, git-pack v0.12.0, git-odb v0.22.0, git-packetline v0.11.0, git-url v0.3.4, git-transport v0.12.0, git-protocol v0.11.0, git-ref v0.8.0, git-repository v0.10.0, cargo-smart-release v0.4.0, safety bump 3 crates (a474395)
    • Update changelogs just for fun (21541b3)
    • Merge branch 'changelog-generation' (bf0106e)
    • Merge branch 'main' into changelog-generation (c956f33)
    • Bump git-traverse v0.9.0, safety bump 8 crates (d39fabb)
    • Release git-transport v0.11.1 (0952976)
    • [various #184] configure docs.rs build features (cc50249)
    • Bump git-transport v0.11.0 (1149f1b)
    • [transport #174] prepare for release (f8bc517)
    • Bump git-packetline v0.10.0 (b09f391)
    • [packetline #178] refactor (23438fd)
    • [packetline #178] rename PacketLine to PacketLineRef… (d4c16a9)
    • Release git-transport v0.10.1 (dc74d19)
    • Apply nightly rustfmt rules. (5e0edba)
    • Release git-packetline v0.9.0 (7ffbd60)
    • Remove dev-dependency cycles by removing their version (c40faca)
    • Release git-diff v0.8.0, git-odb v0.20.0, git-pack v0.8.0, git-traverse v0.7.0 (f123f69)
    • Release git-diff v0.7.0, git-odb v0.19.0, git-pack v0.7.0, git-traverse v0.6.0 (c67291f)
    • Bump transport version to 0.10 (f26a3d3)
    • (cargo-release) version 0.8.0 (ad6d7f9)
    • (cargo-release) version 0.6.0 (d704bca)
    • (cargo-release) version 0.7.0 (2ef3106)
    • (cargo-release) version 0.5.0 (c2f94a5)
    • (cargo-release) version 0.4.0 (d69d0ac)
    • [transport] A much better name for 'is_stateful() ([f15f1e8`](https://github.com/Byron/gitoxide/commit/f15f1e85fda76eef72c3754d625cf51e3c454eea))
    • (cargo-release) version 0.3.0 (0e9c73a)
    • (cargo-release) version 0.16.0 (1231dbd)
    • Clippy on tests and thanks clippy (a77a71c)
    • Thanks clippy (e1964e4)
    • Bump async-trait from 0.1.50 to 0.1.51 (ce0b81e)
    • [transport] more convenient check for available capabilities (e9ed952)
    • Bump futures-io from 0.3.15 to 0.3.16 (3c23820)
    • Remove unnecessary pub(crate) exports (3d2456e)
    • Bump thiserror from 1.0.25 to 1.0.26 (9682590)
    • [transport] remove Transport::close()… (4268a9b)
    • [transport] implement Transport for &mut T: Transport as well (372fb81)
    • [transport] tests for extra parameters (fffd926)
    • [protocol] extra_parameters are forwarded from delegate to handshake (03e3db3)
    • [transport] allow setting a custom URL in git::Connection (f7437e0)
    • [transport] async transports support extra params (a0d6756)
    • [transport] extra_headers for http (6026dcc)
    • [transport] extra-parameters for the http protocol (d30bcf1)
    • [transport] git::Connection handles extra-parameters (961b6a4)
    • [transport] File implementation doesn't need to inherit git::Connection's… (951b1e2)
    • [transport] unsupported protocol versions now abort the fetch operation (812aa3b)
    • [transport] flexible version of version support check doesn't actually work :D (2b220f0)
    • [transport] improve docs for is_stateful() (22f7e67)
    • Merge branch 'pubcap' (292f8ff)
    • Add missing docs (a6cbbde)
    • Make capabilities parsing public (2f3725e)
    • Thanks clippy (6200ed9)
    • [async-client] unblock the async delegate in the cheapest possible way… (a3b5d75)
    • Revert "[async-client] Try to bring 'Send' back but…" (52eb953)
    • [async-client] Try to bring 'Send' back but… (3a06adb)
    • Refactor (2a406d6)
    • [async-client] frame for async connect (9ada080)
    • Prevent selecting mutually exclusive features (7f5da18)
    • [git-transport] Fix http build (3469e99)
    • [git-protocol] fetch in sync and async… (4776039)
    • Bump maybe-async from 0.2.4 to 0.2.6 (d99a1a8)
    • Fix docs (bca7594)
    • [git-protocol] fix build (4cce648)
    • [git-transport] refactor (d09153f)
    • [git-transport] Properly implement Transport for Boxed types (47b10c9)
    • [git-transport] refactor (3b0baee)
    • Refactor (2eefe17)
    • Refactor (14c9093)
    • [git-protocol] async capabilities and arguments abstractions (aa3eacb)
    • [git-transport] see how things can be moved to a different thread… (c271d32)
    • [git-transport] partial transfer to thread doesn't work in test… (4a6dfd4)
    • [git-transport] allow fetch processing to be offloading to another thread (a1302e0)
    • Revert "[git-transport] async-executor (Local) hangs…" (ec8bcd0)
    • [git-transport] async-executor (Local) hangs… (68ac51b)
    • Revert "[git-transport] attempt to mix 'blocking' but realize that now things need to be static." (e367753)
    • [git-transport] attempt to mix 'blocking' but realize that now things need to be static. (3d296fa)
    • [git-transport] V2 transport tests work on async (e04a1c9)
    • [git-transport] first V2 test (f9da975)
    • [git-transport] adapt extension trait in blocking code to match async version (95eee30)
    • [git-transport] extension trait working (28fbd28)
    • [git-transport] a first step towards getting the extension trait to compile (b692979)
    • [git-transport] no warnings when building without any choice of client (3dc568a)
    • [git-transport] upgrade to futures-lite 1.12 with BufRead support (ee01c79)
    • [git-transport] Show how to use blocking git-pack code in non-blocking transports (de2ba3c)
    • [git-transport] handshakeV1 tests run in async! (d1c0e35)
    • [git-transport] And a chance to have V1 working in async (2bf93fc)
    • [git-transport] refactor (64bb8b3)
    • [git-transport] improve error handling considerably… (7b7d314)
    • [git-transport] Add remaninig git connection method… (73fcf38)
    • [git-transport] refactor (db83600)
    • [git-transport] the first part of async transport for git connections (d94fbf8)
    • [git-transport] Split git connection into shared and blocking parts (0bfe693)
    • [git-transport] refactor (2342e8a)
    • [git-transport] refactor (957403e)
    • [git-transport] refactor (e580354)
    • [git-transport] re-enable request() method of main trait… (3adbade)
    • [git-transport] RequestWriter complete (a05fff3)
    • [git-transport] refactor (03a3aed)
    • [git-transport] ARGH: PIN!!! (71379ac)
    • [git-transport] naive attempt to make Request async… (b819546)
    • [git-transport] ExtendedBufRead for Async… (d4e56c8)
    • [git-transport] First stab at ExtendedBufRead, but… (13f73d2)
    • [git-transport] put request writer into general spot… (af07ebf)
    • [git-transport] refactor (5f98ac1)
    • [git-transport] fix docs (fbfc827)
    • [git-transport] refactor (011ece0)
    • [git-transport] the first async trait (2abac2a)
    • [git-transport] refactor (73df129)
    • [git-transport] the first async-only type (88109a5)
    • [git-transport] all non-IO types are now shared (209c780)
    • [git-transport] feature toggle for async-client; prepare for test (95e6801)
    • [git-transport] refactor (592d9ac)
    • [git-transport] remove maybe_async from dependencies, add async-client feature (e57aad3)
    • (cargo-release) version 0.15.0 (d69d9fb)
    • [git-packetline] Use io::(Result|Error) everywhere (374f129)
    • [git-packetline] refactor (f038ca1)
    • [git-packetline] document feature toggle (8b8a1aa)
    • [git-packetline] refactor (1328c5b)
    • (cargo-release) version 0.6.0 (ec5a54e)
    • [git-packetline] refactor (e5769d1)
    • [git-packetline] refactor (fef3c9f)
    • (cargo-release) version 0.9.0 (18f6d01)
    • [git-transport] simplify parsing capabilities from lines (401af09)
    • Refactor (8ce28e7)
    • [git-transport] test capabilities in blocking and async mode (66eb2a5)
    • Refactor (558b208)
    • [git-transport] first round of getting capabilities into 'dual' mode… (3af353b)
    • [git-transport] remove default features to force being explicit everywhere (d1b39f8)
    • [git-transport] A first async test, right now there is nothing to test though (9741ae1)
    • Tests follow crate structure closely (again) (8d6e46a)
    • Make the blocking client the default… (9d62ca3)
    • Revert "Remove maybe-async for now" (ebd5701)
    • Refactor (84d1509)
    • Refactor (1412282)
    • Refactor (f16d057)
    • Refactor (976da51)
    • Refactor (7ac6a05)
    • Refactor (cd02749)
    • Remove maybe-async for now (97e96f4)
    • Refactor (6e6f4ac)
    • Refactor git-transport test in preparation for async testing (42d5bf7)
    • (cargo-release) version 0.8.0 (411a05e)
    • (cargo-release) version 0.5.0 (8c4cc3f)
    • [async-transport] Cargo.toml and traits to be more 'realistic' (9a617a5)
    • [async-transport] The very first step (b9e5559)
    • (cargo-release) version 0.14.0 (a760f8c)
    • (cargo-release) version 0.13.0 (ac2eddb)
    • (cargo-release) version 0.7.0 (334b7e1)
    • (cargo-release) version 0.12.0 (3b71e7e)
    • (cargo-release) version 0.6.0 (50fb6f2)
    • (cargo-release) version 0.3.0 (d5c6643)
    • Thanks clippy (749ceba)
    • Merge pull request #50 from Byron/edward-shen/odb-zlib-ng (acb90d7)
    • [gix] Add optional zlib feature (f1f9665)
    • (cargo-release) version 0.11.0 (1aa1f5e)
    • (cargo-release) version 0.2.0 (0c39373)
    • Support for radicle urls (2c5b955)
    • (cargo-release) version 0.5.1 (0cf1d06)
    • Silence so far unknown clippy lints (b5f2a4b)
    • Thanks clippy (343ab9a)
    • Complete git-transport docs (fa2dc9d)
    • Documentation for capabilities in git-transport (5ec79fa)
    • More docs for git-transport (3a867e9)
    • More git-transport docs (6cd69b9)
    • (cargo-release) version 0.5.0 (28df5e9)
    • Use git-hash in git-features (5b307e0)
    • (cargo-release) version 0.4.0 (32aefc0)
    • (cargo-release) version 0.4.0 (72eaece)
    • (cargo-release) version 0.9.0 (a89fdb9)
    • (cargo-release) version 0.3.0 (d19ee35)
    • (cargo-release) version 0.3.0 (eade7d1)
    • Thanks clippy (ba9b3c2)
    • Uograde everything else (0cd79d0)
    • (cargo-release) version 0.8.0 (47c00c2)
    • Refactor (b3a8bb5)
    • Refactor (f9e8d29)
    • Cargo clippy Rust 1.48 (475a68c)
    • (cargo-release) version 0.7.0 (7fa7bae)
    • Remove dash in all repository links (98c1360)
    • Merge from main. (b59bd5e)
    • Refactor (ba1d883)
    • (cargo-release) version 0.2.1 (ebf3419)
    • (cargo-release) version 0.6.0 (9ef184e)
    • (cargo-release) version 0.2.0 (779e9d0)
    • (cargo-release) version 0.2.0 (da830de)
    • (cargo-release) version 0.5.0 (82b7313)
    • Thanks clippy (e5d80b1)
    • [clone] make cloning the linux kernel work (e780526)
    • [clone] Assure we don't hang due to unprocessed headers when peeking lines! (d9ced27)
    • [clone] none the wiser - it really looks like everything is alright… (3b8d613)
    • [clone] reassure ourselves that ERR lines are handled, always (925370b)
    • [clone] Response parsing up to (optional) pack (24064c7)
    • [clone] properly handle V2 response parsing (0d7d768)
    • [ref-ls] A way to abort on multiple delimiters; first tests work (8d44912)
    • Refactor (feec5be)
    • [ref-ls] Allow multiple delimiters at the same time (cfae63a)
    • [ref-ls] It would be practical to simply have access to the line provider… (5fba787)
    • Thanks clippy (27f30df)
    • [ref-ls] don't leak the PacketLine error type in Transport interface (58ddd29)
    • [ref-ls] support for line peeking in packet line readers (0c0c575)
    • [ref-ls] don't enforce V1 for local interactions (7b33336)
    • [ref-ls] don't do anything on drop (9f18d9b)
    • [ref-ls] Transport layer knows whether it's stateful or not (22c3640)
    • [ref-ls] Always send a flush before closing the connection (918f19f)
    • [ref-ls] git protocol now supports user expansion… (d88e9da)
    • Refactor (e07fbd6)
    • Refactor (7b5ce69)
    • [ref-ls] allow ssh to work with tildes in paths (301ae81)
    • [ref-ls] first stab at leaving path resolution to upload pack (51dad09)
    • [ref-ls] verify also ssh works (1ef39ae)
    • [ref-ls] tune request to actually work in all cases, particularly for github (6bab2f3)
    • [ref-ls] Make credentials helper truly work (7f3c3a7)
    • [ref-ls] Finally fix http content encoding (and fixtures to go with it) (49b7ad9)
    • [ref-ls] This actually makes things work in real-life (24ebc59)
    • [ref-ls] provide blanket impl at least to be less specific (0223e7f)
    • [ref-ls] Make things compile (b6506a4)
    • Refactor (b38290e)
    • Refactor (202383a)
    • Thanks clippy (b060f42)
    • [clone] support automatic downgrade to protocol version 1 (4cf3643)
    • [clone] transport provides desired protocol version (c39b645)
    • [clone] update README, improve delegate docs (dc7908f)
    • [clone] features for V1 fetch (5b24a55)
    • [clone] Support explicitly closing (v2) connections (41e4cb2)
    • Refactor (dda62fc)
    • [clone] Prevent accidental leakage by transforming back to the 'right' type (2d469c6)
    • Refactor (88ecda1)
    • [clone] support for git-credentials helper (a6546da)
    • [clone] make URL available in transport layer (6778447)
    • [clone] http basic auth support for all kinds of calls (572fb54)
    • [clone] first sketch of basic authentication support for http (c5b2d04)
    • [clone] sketch for identity handling (b23f470)
    • Refactor (22cb37d)
    • [clone] Add (hardcoded) timeout when connecting via TCP (02c195b)
    • Thanks clippy (712527f)
    • [clone] Finish implementing ssh access, which might even work (8b843f2)
    • [clone] Add support for SSH prefixes in otherwise local service invocations (a1db217)
    • [clone] once again, for SSH we need to delay calling the actual service (2c70275)
    • [clone] Support for the probably very unnkown VIRTUAL_HOST env var (36fe20c)
    • [clone] Allow connecting via the protocol (eb7be2b)
    • [clone] be sure to wait on the spawned child on drop to prevent resource depletion (768d7f2)
    • Thanks clippy (2528c82)
    • [clone] implement file based protocol using git- processes (be254a9)
    • [clone] add 'Process' mode for git connection (e38c7bf)
    • Refactor (2ecb975)
    • [clone] first steps towards launching git-upload-pack while… (41f05f1)
    • [clone] Http fetch test for V2 (81618ae)
    • [clone] http test for ls-refs V2 (3ef1e47)
    • [clone] finish test for git-based V2 command invocation (9384f32)
    • [clone] support for V2 arguments (8d56e79)
    • Refactor (f46c89d)
    • Refactor (9ed859a)
    • [clone] Using a normal writer, we can't produce delimiter packets (1877b5f)
    • [clone] first sketch of extension trait to invoke V2 commands (90eed9d)
    • [clone] Finally, HTTP requests are properly handled, it all works out! (a6121d9)
    • [clone] Helper now integrates with Http trait, neat (b462bc7)
    • [clone] first sketch of 'HeaderAndBody' helper (226f096)
    • Refactor (f2ff90d)
    • [clone] a way to change progress handling on the fly (c1bcc0a)
    • [clone] first steps towards more flexible sideband switching (3d959e6)
    • [clone] Issue: shoehorning header handling into the body reader (4c304f1)
    • Thanks clippy (bdcaf36)
    • [clone] Now we get to the point where uploads start, but… (8bd6182)
    • [clone] first steps towards testing posting via http… (b6a7e75)
    • Refactor (a810f9f)
    • Refactor (5c2bd5f)
    • [clone] make on-drop messages do the right thing (5a39d70)
    • [clone] first test for request - ideally we manage to add a lifetime to the closure box… (db1a5b8)
    • Thanks clippy (913e55d)
    • Refactor (de22323)
    • Refactor (bad8361)
    • Refactor (466557c)
    • [clone] on-demand line writer, it's cheap (8ddd0fa)
    • [clone] it shows that the packetline writer is better to be owned (f2c6e9f)
    • Refactor (aceaaed)
    • Refactor (2cdda7a)
    • Refactor (521516f)
    • Refactor (3738897)
    • Refactor (2e68315)
    • [clone] first sketch of http request (8b4befb)
    • Refactor (23af7e1)
    • [clone] support writing multiple messages on drop for the 'clone' case (9266442)
    • Thanks clippy (2ed10de)
    • [clone] Sketch 'request()' implementation for git protocol (fd0e0e9)
    • [clone] Allow progress callback to know if it's an error line (0c41844)
    • [clone] sketch for generic request/response pattern suitable for clone/fetch (e0fd5a6)
    • Thanks clippy (what would I do without you <3) (631af04)
    • [clone] Capabilities now can have multiple values (per command) for V2 (44dcea6)
    • [clone] First step towards http V2 handshake shows capabilities are… (f58a785)
    • [clone] remaining handshake V2 assertions (1a58955)
    • [clone] first sketch of git handshake, V2 (bf1f05b)
    • [clone] git protocol sends in packet line format, which is now enforced (4ce5916)
    • Refactor (44b06a7)
    • Thanks clippy (ee5abfc)
    • [clone] Configure http timeouts, just so that it is done (070855a)
    • Refactor (8b1dc48)
    • [clone] Allow differentiating HTTP permission errors (4c9c413)
    • [clone] abort early on HTTP status errors (e829c0a)
    • Refactor (791c05e)
    • [clone] more http test validations (e697b8c)
    • Revert "[clone] FAIL: try to communicate error codes after request" (350de7c)
    • [clone] FAIL: try to communicate error codes after request (2501ddd)
    • [clone] Check for 'smart' protcols (2960645)
    • [clone] validate expected http service announcement (a224a2c)
    • [clone] Keep line reader around in http transport (feb2596)
    • Thanks clippy (I really tried) (e8880fb)
    • [clone] unbelievable, but it now seems to work as expected (88dbbf5)
    • [clone] quick hack to finish http set service, but something is seriously wrong… (dd93504)
    • [clone] non-deterministic behaviour when parsing HTML, despite ignoring the encoding (bab3ec3)
    • [clone] It definitely doesn't want to read the data to the end with 'chunked' (49f1aca)
    • [clone] for good measure: configure posts (more) correctly (e491e58)
    • [clone] Disabling transfer decoding makes it better, but… (3a1b8bc)
    • [clone] It looks like curl is stumbling over the 'chunked' header (279a386)
    • [clone] Fix deadlock - classic, and obvious (72a165e)
    • [clone] possibly correct impl of Handler; still hangs though :D (aefd8d4)
    • [clone] Fair enough - it locks up somewhere, let's see :D (33a1a22)
    • [clone] Improve usability of posts… (e1b944e)
    • [clone] Actually use that abstraction (d0bdbe4)
    • [clone] generalization of get and post (e62adc9)
    • [clone] Curl can now use remote to perform operations (get only for now) (a82f028)
    • [clone] try sending curl error even harder… (b450bfc)
    • [clone] first sketch of remote-curl, a way to transform curl into Read/Write (22b4b39)
    • [clone] Send headers with BufReaders (6a95aaa)
    • Refactor (d427671)
    • [clone] Fixed shortcomings of http error handling, with thiserror (424e159)
    • [clone] Allow to use specific HttpErrors, at the expense of source (b16a8c5)
    • [clone] Fix 'small' compile (without http) (29ca5e8)
    • [clone] First step towards 'remote http executor' (f1e48d7)
    • [clone] things get more complicated…take a step back maybe? (f778637)
    • [clone] Right before actually performing the http call… (5bf9e6a)
    • [clone] better user agent header (4396587)
    • [clone] in small steps to getting the http 'interface' right (43f2a92)
    • [clone] A utility to respond with mock replies on a socket (1bf7ef7)
    • [clone] improvements to Http trait; prep for curl tests (9f69d6a)
    • [clone] a piped iterator (5148c85)
    • Thanks clippy (c4f570f)
    • [clone] frame for implementing 'pipe' support (c555681)
    • Refactor (bfda633)
    • [clone] sketch for http infrastructure to get going with curl (8351299)
    • [clone] an easy way to get a few HTTP replies for consumption by the client (8b082d0)
    • Refactor (0bbd87e)
    • Refactor (bbce340)
    • Thanks clippy (73a6868)
    • [clone] Make it optional to abort the packet line reader on 'ERR ' (abf9c3b)
    • [clone] Finally it all works exactly as desired… (c5bbb57)
    • [clone] Most of the V1 handshake works, but… (318024b)
    • [clone] YES! Boxes with dyn traits and lifetimes… (5e35d0a)
    • [clone] FAIL: Right, need a box after all (6e57927)
    • [clone] FAIL: can't pass line reader as box (633341d)
    • [clone] sketching how to possibly return Line readers while keeping it sane… (4ba123b)
    • Thanks clippy (81c0185)
    • Refactor (f8ff1c7)
    • [clone] capability parsing (5b019af)
    • Refactor (2b40961)
    • [clone] a little closer to handling the client handshake (1a4f84d)
    • [clone] first frame for testing transport layer interactions (e1100c8)
    • Refactor (f3c5c05)
    • Bump git-features to 0.4 to allow publishes after breaking changes (9d6b879)
    • [clone] move packet-line code into own crate (879af67)
    • [clone] http protocol is now optional (06c0816)
    • [clone] (very) First stab at http protocol connection (218a5eb)
    • [clone] Better error handling for generalized connect(…) (713808c)
    • [clone] fix git-transport crate size (720f444)
    • [clone] enable git-transport tests (8e07be4)
    • Refactor (104b7fe)
    • Thanks clippy (c62bfa2)
    • [clone] expand-path should be server-side (8a38856)
    • [clone] the return of actually parsing remote progress (c465fde)
    • [clone] move packet-lint into transport layer (c0dd831)
    • [clone] sample on how SSH connection fits in (a562059)
    • [clone] first sketch of transport layer's connection logic (f10cee5)
    • Allow dual-licensing with Apache 2.0 (ea353eb)
    • Add missing license description (2b80181)
    • Make crates publishable (5688a34)
    • #[forbid(unsafe)] for all crates (afda803)
    • Cleanup - don't build and run tests while there is nothing to test (4a153da)
    • Prepare git-transport just so that we don't forget to take the name (2c3ad7d)

0.25.3 (2023-01-10)

A maintenance release without user-facing changes.

0.25.2 (2023-01-09)

Bug Fixes

  • gix clone ssh://... won't deadlock anymore. For cargo specifically we now parse stderr to see if permission errors occour. This links stderr and stdout and we have to pass information from a supervisor thread that parses stderr to stdout and use the information to return a custom io error in time. Now the algorithm is adjusted to never be able to deadlock, as the problem is inherently racy and somewhat hard to implement it properly especially without a good test suite built-into gitoxde - there are no ssh servers one can easily spin up cross-platform.

0.25.1 (2022-12-31)

Bug Fixes

  • file:// command invocation won't spill stderr output. This usually doesn't add any benefit to the user as we might see events like the git process' failure to flush to a closed channel even though this is entirely handled by the Rust side of things.

    I can imagine that one day this might become a configurable to help with debugging to help making better-behaved clients, but maybe it won't ever matter once the default file:// transport is built-in and native.

0.25.0 (2022-12-30)

Bug Fixes

  • improve error message for when an invoked transport program can't be found.
  • assure processing thread is up before continuing. That way one may hope that we never leave stderr output unprocessed.
  • port selections for SSH urls are now respected for protocol V1 as well.
  • propery adjust host argument for ssh program to include a user name. Otherwise it would not use a user at all which then defaults to the currently logged in user, something that typically won't work with servers that demand git.

New Features (BREAKING)

  • ptions for client::connect() and support for more than one ssh variant, including permission-denied detection. Options can be passed down to client::ssh::connect() to further configure it similar to what git itself offers. That way, it's possible to use different ssh commands and support all of gits configuration options.

    Support for multiple ssh variants was added to use them (and their flags) correctly.

    Detection of permission-denied errors due to invalid credentials was added so re-authentication in upper layers can be implemented.

0.24.2 (2022-12-26)

New Features

  • add and implement various new http options for the curl backend.
    • schannel_check_revoke as curl-backend specific configuration.

Bug Fixes

  • fixes SSH clone from scp-like/relatives URLs
    • Removes git-upload-pack extra parameters (rejected by both github and gitlab)

0.24.1 (2022-12-22)

A maintenance release without user-facing changes.

0.24.0 (2022-12-19)

New Features

  • improve granularity of IO errors for curl backends. That way it should be possible to tell if curl caused an IO error due to someting that can be considered spurious.
  • IsSpuriousError trait and its implementation. That way all transports can tell if the operation failed due to an issue that's probably passing, so retrying may be a way to resolve the issue.
  • client::http::Options::no_proxy to disable a proxy for given hosts. This is a curl-first option which can reasonably be implemented for other backends as well and thus retains its curl-ish roots in full.
  • client::http::Options::verbose to see more debug output. This means different things depending on the backend, and for curl it means a lot of debug-output on stderr.

Bug Fixes

  • http transports can now reuse a connection. This makes connections more efficient generally and cargo relies on that behaviour in their tests as well.

  • don't pre-configure curl. These settings can interact strangly with other users of the curl package within the same dependency tree, so it's paramount to only activate features we truly need.

  • ssh connection remove '=' in port argument

  • make it possible to parse handshakes without newlines in packetlines #(639)

  • correctly display what's actual and expected when failing to parse capabilities.

  • improve compile-time errors if mutually exclusive http-client features are set.

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

New Features (BREAKING)

  • Provide support for reading packetlines directly. The handshake response itself now provides a ref read implementation with direct readline support. That way one can avoid having to go through String.

  • interpret the FollowRedirects option for the curl HTTP backend. This comes with changes to the HTTP trait which now requires a base-url to be provided as well.

  • make streaming otional for any reqwest. One can now indicate when initiating a reqwest that the transport doesn't have to stream the data, even though it will always be provided to an std::io::Write.

    Note that this is at the discretion of the transport implementation and streaming might still be done despite it not being requested.

    Note that the caller should set this 'streaming' flag if the upper bound of data is high for keeping it in memory or can't be estimated. This is generally true when sending packs.

Bug Fixes (BREAKING)

  • Capabiltiies::from_lines() takes a single buffer. That way it doesn't have to convert to String as intermediary which may fail as illformed UTF8 might be present.

    Performance wise, reading all lines ahead of time, it is the same as it was before as it would collect all lines beforehand anyway.

    We are also seeing only a few lines in V2, and in V1 it was fully streaming already.

0.23.0 (2022-11-21)

New Features

  • Support for proxy authentication in http configuration.

New Features (BREAKING)

  • 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 gix-features and gix-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.

Bug Fixes (BREAKING)

  • max-pure now builds without any C build tooling due to lack of openssl-sys. To make this work, we leave the reqwest configuration to downstream crates. Note that this means downstream will have to select their TLS settings themselves, so builds may fail after upgrade until this is done.

    An example for a reqwest configuration can be found in the gitoxide Cargo.toml in the root of the gitoxide repository.

0.22.0 (2022-11-17)

Changed

  • TransportV2Ext::invoke(…,features,…) can take key-value pairs more flexibly. Value can now also be owned, which is useful if the value type is a Cow<'_, String>.

New Features

  • client::RequestWriter::into_parts() to obtain a bare write handled along with a buf reader with packetline capabilties. That way it's possible to perform interactions akin to a V1 puash.

Changed (BREAKING)

  • client::TransportWithoutIO::to_url() returns Cow<'_, BStr>. That way, it's possible to efficiently return URLs in the right format, or return generates ones as needed.

  • client::TransportWithoutIO::to_url() returns BString. That way it will not be lossy in case the URL represents a path, which is relevant for transports that refer to paths.

    Note that this doesn't matter when the url actually is a URL, as it's specified to be valid unicode (I think).

  • client::TransportV2Ext::invoke() supports owned capabilities. That way it's easier to pass custom agent strings when invoking.

0.21.2 (2022-11-08)

Fixes

  • enable clones from kernel.org via https. This failed as it wouldn't send the service announcement in protocol V2, which was thought to be mandatory at least when judging from github.com.

0.21.1 (2022-11-06)

Bug Fixes

  • Allow client::connect() to function with http-client-reqwest enabled.
  • client::Capabilities lifetimes now point to 'a instead of 'self. This generally makes returned values longer, and as long as one would expect.

0.21.0 (2022-10-10)

New Features

  • reqwest as blocking HTTP backend via http-client-reqwest feature toggle. Note that despite passing the same tests that curl passes, for bulletproof HTTP connections to untrusted servers, the curl backend should be preferred. reqwest is known to hang if content-length: HTTP headers are longer than the actual content, and no timeout is kicking in to stop the hanging. curl has no trouble with this for example.
  • Add client::http::Transport::new_http() constructor. This goes along with client::http::connect_http() to support connections to via custom transports which are passed from calling crates, without relying on the implementation to be built-in.
  • Allow defaulting client::Capabilities. This can be useful in conjunction with std::mem::take(), even though an empty data structure like that doesn't bear any significance beyond that.

Bug Fixes

  • set the protocol version for local git transports as well. Previously this was only done for ssh based connections, and requires setting an environment variable.

  • remove Drop for SpawnProcessOnDemand. It is well-intended but is likely to hang the calling process if for any reason not all process output was consumed.

    Even though not waiting for the process leaves it running, it will stop naturally once its output pipe breaks once once our handles for it are inevitable dropped at the same time.

  • compare 'Content-Type' header case-insensitively, as required by the http spec.

Other

  • try to make the transport configurable after being boxed, but… …that would force it to be 'static, which is something we explicitly cannot have. We need references to be contained within, if I remember correctly.

Changed (BREAKING)

  • client::http::connect() returns Transport<Impl> directly. It' can't fail, so no need to return Result<_, Infallible>.

New Features (BREAKING)

  • add fetch::Transport::configure to generically configure any transport.

0.20.0 (2022-09-20)

Changed (BREAKING)

  • upgrade bstr to 1.0.1

0.19.3 (2022-08-28)

Maintenance release without user-facing changes.

0.19.2 (2022-08-24)

Chore

  • uniformize deny attributes
  • remove default link to cargo doc everywhere

New Features

  • use docsrs feature in code to show what is feature-gated automatically on docs.rs
  • pass --cfg docsrs when compiling for https://docs.rs

Bug Fixes

  • Make async conenct() signature compatible with the blocking implementation.

0.19.1 (2022-08-17)

A maintenance release without user facing changes.

Changed (BREAKING)

  • client::connect() supports anything that parses into a gix_url::Url; turn http url back to &str The http url is always valid UTF-8 and doesn't contain invalid paths, thus we should have the type system reflect that.

  • client::connect() now takes a &BStr as URL

  • use thiserror instead of quickerror

  • adapt to changes in gix-url and use BString to represent URLs. They can contain paths, which is why String can't represent a URL losslessly.

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

New Features

  • connect() method is available in when async-std feature is set along with async-client This makes some async support available even trough the base crate, which otherwise would require establishing a connection (with a runtime of choice) by hand.

0.19.0 (2022-07-22)

This is a maintenance release with no functional changes.

0.18.0 (2022-06-13)

A maintenance release without user-facing changes.

0.17.0 (2022-05-18)

New Features (BREAKING)

  • use gix-credentials in gix-protocol

0.16.0 (2022-04-03)

New Features

  • in-manifest and in-lib documentation of feature toggles

0.15.0 (2022-01-23)

A maintenance release with no relevant changes.

0.14.0 (2021-11-29)

A maintenance release, triggered by putting too many adjustments into a single commit.

0.13.1 (2021-11-16)

A maintenance release triggered by changes to gix-pack and changelog rewrites.

v0.13.0 (2021-10-19)

A maintenance release due to properly dealing with previously breaking changes in gix-hash.

v0.12.0 (2021-10-15)

Dependency Upgrade (BREAKING)

  • gix-traverse saw a breaking change moving to v0.9, which triggered this crate to signal a breaking change, too.

Improvements

  • gix-packetline is now publicly re-exported as packetline.

    This helps to avoid additional dependencies which in turn may have breaking changes. Re-using packetline assures it's usable.

v0.11.1 (2021-08-29)

  • instruct docs.rs which features to use for more useful documentation

v0.11.0 (2021-08-27)

v0.10.1 (2021-08-17)

v0.10.0 (2021-08-13)

v0.9.0 (2021-08-10)

Other

  • make capabilities parsing public

v0.8.0 (2021-05-09)

v0.7.0 (2021-04-08)

v0.6.0 (2021-03-26)

v0.5.1 (2021-01-05)

v0.5.0 (2020-12-16)

v0.4.0 (2020-12-15)

v0.3.0 (2020-12-15)

v0.2.1 (2020-09-14)

v0.2.0 (2020-09-12)

v0.0.0 (2020-07-12)