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.
0.40.0 (2023-09-24)
A maintenance release without user-facing changes.
Commit Statistics
- 1 commit contributed to the release.
- 15 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Prepare changelogs prior to release (
8a60d5b
)
0.39.0 (2023-09-08)
Chore (BREAKING)
- update to the latest
prodash
It makes proper usage of Progress
types easier and allows them to be used as dyn
traits as well.
New Features (BREAKING)
- use
prodash::Count
to indicate that nothing more than counting is performed, in place of prodash::Progress
Bug Fixes (BREAKING)
- use
dyn
trait where possible. This reduces compile time due to avoiding duplication.
Commit Statistics
- 19 commits contributed to the release over the course of 17 calendar days.
- 17 days passed between releases.
- 3 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- 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
dyn
ification (f658fcc
) - Use
dyn
trait where possible. (072ee32
) - Use
prodash::Count
to indicate that nothing more than counting is performed, in place of prodash::Progress
(24dd870
) - Merge pull request #1009 from epage/proto (
16cac47
) - Don't bother with error tracking that is ignored (
444f970
) - Upgrade gix-protocol to winnow 0.5 (
237657e
) - Prep for winnow 0.5 upgrade for gix-protocol (
8c80dba
) - Resolve winnow deprecations in gix-protocol (
b213889
) - Upgrade gix-protocol to winnow 0.4 (
659ebe9
) - Prep for winnow 0.4 upgrade for gix-protocol (
8609aec
) - Resolve winnow deprecations in gix-protocol (
b46fe9c
) - Migrate gix-protocol to winnow (
0e8edef
) - Update to the latest
prodash
(ed327f6
) - Merge branch ‘adjustments-for-cargo’ (
b7560a2
) - Release gix-date v0.7.4, gix-index v0.23.0, safety bump 5 crates (
3be2b1c
) - Merge branch ‘gix-submodule’ (
363ee77
)
0.38.0 (2023-08-22)
Chore
- don't call crate ‘WIP’ in manifest anymore.
Commit Statistics
- 5 commits contributed to the release over the course of 15 calendar days.
- 19 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit 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
) - Release gix-glob v0.10.2, gix-date v0.7.2, gix-validate v0.8.0, gix-object v0.34.0, gix-ref v0.34.0, gix-config v0.27.0, gix-commitgraph v0.18.2, gix-revwalk v0.5.0, gix-revision v0.19.0, gix-refspec v0.15.0, gix-submodule v0.1.0, safety bump 18 crates (
4604f83
)
0.37.0 (2023-08-02)
New Features
- add
fetch::Arguments::add_feature()
for unconditional additions of arguments that are supposed to be features. This differentiation is important to support V1 and V2 correctly, which have a different notion of features with V1 special-casing them, and V2 just sees everything as arguments.
Bug Fixes (BREAKING)
-
handshake::Ref::Symbolic
now has a tag
field. This allows symbolic refs to be parsed which are in fact pointing to an annotated tag as in-between object.
Commit Statistics
- 6 commits contributed to the release over the course of 1 calendar day.
- 10 days passed between releases.
- 2 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-actor v0.24.2, gix-object v0.33.2, gix-ref v0.33.3, gix-config v0.26.2, gix-prompt v0.5.5, gix-odb v0.50.2, gix-transport v0.34.2, gix-protocol v0.37.0, gix-worktree v0.23.1, gix v0.51.0, safety bump 3 crates (
231ac1c
) - Prepare additional changelogs (
db63815
) - Prepare changelogs (
e4d2890
) - Merge branch ‘fixes-and-improvements’ (
f8b1f55
) - Add
fetch::Arguments::add_feature()
for unconditional additions of arguments that are supposed to be features. (d1f9c63
) handshake::Ref::Symbolic
now has a tag
field. (0de7117
)
0.36.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
- 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.36.0 (2023-07-19)
A maintenance release without user-facing changes.
Commit Statistics
- 4 commits contributed to the release.
- 19 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit 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
)
0.35.0 (2023-06-29)
A maintenance release without user-facing changes.
Commit Statistics
- 2 commits contributed to the release.
- 6 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.7.0, gix-trace v0.1.2, gix-actor v0.23.0, gix-commitgraph v0.17.1, gix-utils v0.1.4, gix-object v0.32.0, gix-ref v0.32.0, gix-config v0.25.0, gix-diff v0.32.0, gix-discover v0.21.0, gix-hashtable v0.2.3, gix-revwalk v0.3.0, gix-traverse v0.29.0, gix-index v0.20.0, gix-mailmap v0.15.0, gix-negotiate v0.4.0, gix-pack v0.39.0, gix-odb v0.49.0, gix-protocol v0.35.0, gix-revision v0.17.0, gix-refspec v0.13.0, gix-worktree v0.21.0, gix v0.48.0, safety bump 20 crates (
27e8c18
) - Prepare changelogs prior to release (
00f96fb
)
0.34.0 (2023-06-22)
Chore
- Add
clippy::redundant-closure-for-method-calls
lint
Changed (BREAKING)
- use
SecondsSinceUnixEpoch
type where needed. Previously we used usize
which isn't correct on 32 bit systems.
Commit Statistics
- 8 commits contributed to the release over the course of 11 calendar days.
- 12 days passed between releases.
- 2 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.6.0, gix-hash v0.11.3, gix-trace v0.1.1, gix-features v0.31.0, gix-actor v0.22.0, gix-path v0.8.2, gix-glob v0.9.0, gix-quote v0.4.5, gix-attributes v0.14.0, gix-chunk v0.4.3, gix-commitgraph v0.17.0, gix-config-value v0.12.2, gix-fs v0.3.0, gix-tempfile v7.0.0, gix-utils v0.1.3, gix-lock v7.0.0, gix-validate v0.7.6, gix-object v0.31.0, gix-ref v0.31.0, gix-sec v0.8.2, gix-config v0.24.0, gix-command v0.2.6, gix-prompt v0.5.2, gix-url v0.20.0, gix-credentials v0.16.0, gix-diff v0.31.0, gix-discover v0.20.0, gix-hashtable v0.2.2, gix-ignore v0.4.0, gix-bitmap v0.2.5, gix-revwalk v0.2.0, gix-traverse v0.28.0, gix-index v0.19.0, gix-mailmap v0.14.0, gix-negotiate v0.3.0, gix-pack v0.38.0, gix-odb v0.48.0, gix-packetline v0.16.3, gix-transport v0.33.0, gix-protocol v0.34.0, gix-revision v0.16.0, gix-refspec v0.12.0, gix-worktree v0.20.0, gix v0.47.0, gitoxide-core v0.29.0, gitoxide v0.27.0, safety bump 30 crates (
ea9f942
) - Prepare changelogs prior to release (
18b0a37
) - Merge branch ‘corpus’ (
aa16c8c
) - Change MSRV to 1.65 (
4f635fc
) - Merge branch ‘help-874-redundant-closures’ (
fe59956
) - Add
clippy::redundant-closure-for-method-calls
lint (bcad5c2
) - Merge branch ‘future-dates’ (
8d2e6a9
) - Use
SecondsSinceUnixEpoch
type where needed. (9f8fa22
)
0.33.2 (2023-06-10)
New Features
- support
capabilities^{}
syntax to announce caps in empty repos under V1 This is supposed to work for existing code, but doesn‘t in our case as we really want to associate a branch. In this case, we can ignore the ref as it’s a null hash anyway.
Commit Statistics
- 3 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
- Uncategorized
- Release gix-attributes v0.13.1, gix-diff v0.30.1, gix-revwalk v0.1.0, gix-traverse v0.27.0, gix-index v0.18.0, gix-revision v0.15.2, gix-negotiate v0.2.1, gix-pack v0.37.0, gix-odb v0.47.0, gix-protocol v0.33.2, gix-worktree v0.19.0, gix v0.46.0, safety bump 7 crates (
2560a2c
) - Prepare changelogs prior to release (
298f3d7
) - Support
capabilities^{}
syntax to announce caps in empty repos under V1 (c8e8b9f
)
0.33.1 (2023-06-07)
Bug Fixes
assure we don't stop early on NAK if READY was sent to handle V1 specialty. Seeing READY means a pack will follow, which is exactly the kind of knowledge we want. Thus we now either listen to the client OR to what the server says.
Note that this remedy relies on multi-ack-detailed
, which some very old servers might not support. For those we would be out-of-luck, but that seems acceptable.
Commit Statistics
- 2 commits contributed to the release.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #882
Commit Details
- #882
- Assure we don't stop early on NAK if READY was sent to handle V1 specialty. (
88670c2
)
- Uncategorized
- Release gix-protocol v0.33.1 (
9c99ed3
)
0.33.0 (2023-06-06)
New Features
Add fetch::Arguments::is_stateless()
to aid proper use of arguments. When arguments are used, haves are reset every round in stateless protocols, while everything else is repeated. However, this also means that previously confirmed common commits aren't repeated unless this is specifically implemented by the user of Arguments
.
That caller can now easily determine if negotiations have to be compensated for.
Please note that Arguments
explicitly doesn't implement repeating of all prior arguments, which would also repeat a lot of in-vain haves.
Bug Fixes
-
include-tag
is now properly handled in V1 fetch arguments Previously it would be added like it's V2 arguments, which makes using it in V1 impossible.
Bug Fixes (BREAKING)
make V1 stateless negotations work. This is done by working around another V1 negotiation oddity by exploiting client-side knowledge. For very old servers, we probably wouldn't be able to do multi-rounds without dead-locking, but with recent-enough (probably 10 years or so) old git servers all should work fine.
All this to not actually have to implement the V1 strangeness, allowing our code to work smoothly with all permutations of stateless/stateful connections and V1/V2 interactions, with a single high-level implementation essentially.
Commit Statistics
- 13 commits contributed to the release over the course of 12 calendar days.
- 40 days passed between releases.
- 3 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.5.1, gix-hash v0.11.2, gix-features v0.30.0, gix-actor v0.21.0, gix-path v0.8.1, gix-glob v0.8.0, gix-quote v0.4.4, gix-attributes v0.13.0, gix-chunk v0.4.2, gix-commitgraph v0.16.0, gix-config-value v0.12.1, gix-fs v0.2.0, gix-tempfile v6.0.0, gix-utils v0.1.2, gix-lock v6.0.0, gix-validate v0.7.5, gix-object v0.30.0, gix-ref v0.30.0, gix-sec v0.8.1, gix-config v0.23.0, gix-command v0.2.5, gix-prompt v0.5.1, gix-url v0.19.0, gix-credentials v0.15.0, gix-diff v0.30.0, gix-discover v0.19.0, gix-hashtable v0.2.1, gix-ignore v0.3.0, gix-bitmap v0.2.4, gix-traverse v0.26.0, gix-index v0.17.0, gix-mailmap v0.13.0, gix-revision v0.15.0, gix-negotiate v0.2.0, gix-pack v0.36.0, gix-odb v0.46.0, gix-packetline v0.16.2, gix-transport v0.32.0, gix-protocol v0.33.0, gix-refspec v0.11.0, gix-worktree v0.18.0, gix v0.45.0, safety bump 29 crates (
9a9fa96
) - Prepare changelogs prior to release (
8f15cec
) - Merge branch ‘integrate-gix-negotiate’ (
ae845de
) - Make V1 stateless negotations work. (
6a3c021
) include-tag
is now properly handled in V1 fetch arguments (c5dc7b4
)- Add
fetch::Arguments::is_stateless()
to aid proper use of arguments. (877aa29
) - Adapt to changes in
gix-transport
(60eaceb
) - Merge branch ‘fix-docs’ (
420553a
) - Cleaning up documentation (
2578e57
) - Apply -W clippy::cloned-instead-of-copied (
150463c
) - Merge branch ‘main’ into auto-clippy (
3ef5c90
) - Merge branch ‘blinxen/main’ (
9375cd7
) - Include license files in all crates (
facaaf6
)
0.32.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
- 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.31.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
- 11 commits contributed to the release over the course of 14 calendar days.
- 27 days passed between releases.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #814
Thanks Clippy
Clippy helped 1 time to make code idiomatic.
Commit 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
) - Release gix-hash v0.10.4, gix-hashtable v0.1.3 (
b574a39
)
0.30.2 (2023-03-30)
Documentation
Commit Statistics
- 2 commits contributed to the release over the course of 1 calendar day.
- 4 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-path v0.7.3, gix-config-value v0.10.2, gix-config v0.20.1, gix-discover v0.16.2, gix-index v0.15.1, gix-odb v0.43.1, gix-packetline v0.15.1, gix-protocol v0.30.2, gix-worktree v0.15.2, gix v0.43.1 (
38eed1d
) - Fix minor typos (
cc48c35
)
0.30.1 (2023-03-26)
Bug Fixes
- don‘t assume that credential providers always return credentials or error during handshake. The type-system allows this even though when getting credentials this should never happen and won’t in the default implementation. However, users can of course return nothing and provide no error which is when we have to create one, instead of panicking.
Commit Statistics
- 3 commits contributed to the release over the course of 5 calendar days.
- 11 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit 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
) - Don't assume that credential providers always return credentials or error during handshake. (
d4c82e7
)
0.30.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
- 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.29.0 (2023-03-10)
A maintenance release without user-facing changes.
Commit Statistics
- 4 commits contributed to the release.
- 6 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-tempfile v5.0.0, gix-lock v5.0.0, gix-ref v0.27.0, gix-config v0.19.0, gix-url v0.16.0, gix-credentials v0.12.0, gix-discover v0.16.0, gix-index v0.15.0, gix-pack v0.33.0, gix-odb v0.43.0, gix-transport v0.28.0, gix-protocol v0.29.0, gix-worktree v0.15.0, gix v0.41.0, safety bump 12 crates (
29a0870
) - Prepare changelogs prior to release (
e06f5f5
) - Add more fetch::Arguments tests (
ac34d2e
) - Adapt to changes in
gix-transport
and add V2 test for unshallow fetching (0eecfab
)
0.28.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
- 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.27.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
- 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.26.4 (2023-02-20)
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.
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
- 3 commits contributed to the release over the course of 2 calendar days.
- 3 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.4.3, gix-hash v0.10.3, gix-features v0.26.5, gix-actor v0.17.2, gix-glob v0.5.5, gix-path v0.7.2, gix-quote v0.4.2, gix-attributes v0.8.3, gix-validate v0.7.3, gix-object v0.26.2, gix-ref v0.24.1, gix-config v0.16.2, gix-command v0.2.4, gix-url v0.13.3, gix-credentials v0.9.2, gix-discover v0.13.1, gix-index v0.12.4, gix-mailmap v0.9.3, gix-pack v0.30.3, gix-packetline v0.14.3, gix-transport v0.25.6, gix-protocol v0.26.4, gix-revision v0.10.4, gix-refspec v0.7.3, gix-worktree v0.12.3, gix v0.36.1 (
9604783
) - Compatibility with
bstr
v1.3, use *.as_bytes()
instead of .as_ref()
. (135d317
) - Release gix-transport v0.25.5 (
f872ba8
)
0.26.3 (2023-02-17)
Bug Fixes (BREAKING)
fetch::Ref::Symbolic::target is now an option… …to represent the possibility that the server may not be able to strip its namespace if it is not the currently set namespace.
Note that the object it points to might still be resolvable and pointing to another namespace.
New Features (BREAKING)
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.
Support for unborn
ls-refs capability if server supports it. We can also parse it, adding yet another variant to fetch::Refs
.
use git-credentials
in git-protocol
Changed (BREAKING)
move fetch::refs(…, protocol, …)
to the crate root as ls_refs(…)
. This move also removes the protocol
parameter as ls-refs is only available in V2 and the caller is forced to know that after running a handshake(…)
anyway which yields the actual protocol used by the server.
Note that the client can suggest the version to use when connecting, which is specific to the transport at hand.
move fetch::Command
into the crate root. This represents much better on how it is actually used, which is for validation of any Command invoked through the protocol independenty.
move fetch::agent|indicate_end_of_interaction
to crate root These are generally useful in all interactions, including push.
handshake(…)
is now generalized to support git-receive-pack
as well. Note that fetch::handshake()
is still present, selecting the correct service like before, but most of the fetch::Ref
parsing is now handled by handshake::Ref
in it's more general location.
There is still fetch::refs(…)
which just invokes a V2 ls-refs command (without that being generalized) as git-receive-pack
just supports V1 at the moment, and making the fetch::LsRefs
Command more general would mean that every command has to be general, at is doesn‘t matter anymore if it’s used for Fetch or Push.
As long as git won't support V2 for pushes, which it never might, there is no need to introduce this breakage even though it should probably be done before going 1.0.
fetch::agent()
returns agent string only; fetch()
takes agent name as parameter.
don't auto-insert user agent, instead prepare to insert it later.
fetch::agent()
now returns the agent name, fetch::agent_tuple()
returns specific key-value pair. This is in preparation for allowing user-defined agent strings.
fetch::Ref::unpack()
returns Option<oid>
. That way the caller has to be aware of the possibility of an unborn branch (probably the only unborn branch) on the remote.
fetch::Ref::unpack()
returns &BStr
instead of &BString
as ref name.
fetch::Ref::unpack()
now returns the peeled object as well.
rename fetch::Ref::path
to fetch::Ref::full_ref_name
. Previously it was inaccurately named and described due to an insufficient understanding of the ref database.
upgrade bstr
to 1.0.1
replace quick-error
with this-error
adapt to changes in git-url
and use BString
to represent URLs. They can contain paths, which is why String
can't repsent a URL losslessly.
For HTTP urls these are ultimately UTF-8 strings though.
Reverted
-
client::fetch_pack()
isn‘t worth it after all. The overhead required to make it work isn’t worth the logic we are enabling. Instead, it's OK to re-implement custom logic on the consumer side based on this one.
Bug Fixes
don't enforce V2 as protocol, but smoothly downgrade like git does. For backward compatibility the shared handshake implementation allows the transport to control which protocol versions it wants to support to allow optiomizing for one special case, namely to prevent it to read all V1 refs on old servers but abort instead, closing the connection without delay.
Now we leave this feature for custom transports (who usually come with custom servers) and instead support fallbacks to other protocols if the server demands it.
don't pass ‘include-tag’ as argument by default. This flag always has to be added by the caller based on configuration.
don't post packfile-uris
capability unless we are able to make use of it. Turns out that this option can be rejected by a server that advertises it, so definitely needs more work to make it work.
Parse refs from bytes, not from String. The latter can cause issues around illformed UTF-8 which wouldn't bother git either.
This comes at the expense of not parsing line by line anymore, but instead reading as fast as possible and parsing afterwards.
Performance wise I think it doesn't matter, but it will cause more memory to be used. If this ever becomes a problem, for example during pushes where we are stuck with V1, we can consider implementing our own streaming appreach that works with packet lines instead - they are just not exposed here even though they could.
support keepalive packets. Keepalive packets are side-band only empty datalines that should just be ignored. This is now happening, allowing longer git operations to work as they will send keepalive packets every 5 seconds, and previously we would choke on it.
Note that empty datalines are never send otherwise, making it a previously unused marker that can safely be skipped.
Link up Io error as source for error chaining; add Debug
to client::fetch::Response
‘(null)’ symref targets are turned into direct refs instead… …because that‘s what ‘git’ would do if it would care enough. On the client side this means one has to deal with detached heads and it’s obvious that these are detached. It‘s not clear anymore why this is the case, and probably it’s good to hide it as the current git behaviour is accidental and may change in future, and do so in a way we predict.
There is the possibility that git would abort the entire fetch/upload-pack operation, but that's already handled correctly by our implementation as well as we understand ERR messages in packet lines.
New Features
display the underlying permission denied error as source when failng handshake due to authentication.
fetch::Arguments::use_include_tag()
allows to signal include-tag
. One can also check for its availability using fetch::Arguments::can_use_include_tag()
.
Further there was a bugfix that assues V1 capabilities are correctly interpreted to support include-tag.
due to more specific errors one can differentiate if remote authentication failed repeatedly.
some errors support is_spurious()
to tell if retrying is possible.
expose futures_lite
for convenience in downstream crates.
Allow defaulting fetch::handshake::Outcome
. This is useful in conjunction with std::mem::take()
.
fetch::Arguments::is_empty()
to help decide if arguments should be sent at all. Furthermore, the Debug
trait was added.
make some private methods public to give callers more flexibility. This allows to implement the fetch-negotiation part oneself and break free from constraints of the delegate.
add client::fetch_pack()
allowing to fetch a pack after a handshake.
helper::main
to easily create credential helper implementations
provide a function to gracefully shut donw a fetch transport
use docsrs feature in code to show what is feature-gated automatically on docs.rs
pass --cfg docsrs when compiling for https://docs.rs
re-export maybe_async That way, API users can also provide dynamically sync or async APIs.
add fetch::refs()
method to invoke ls-refs
for V2 and parse the result
factor fetch handshake into fetch::handshake()
function
in-manifest and in-lib feature documentation
Chore
- uniformize deny attributes
Changed
- turn
prepare_ls_refs
in fetch::refs()
into FnOnce
.
Documentation
Commit Statistics
- 672 commits contributed to the release over the course of 918 calendar days.
- 46 commits were understood as conventional.
- 15 unique issues were worked on: #198, #200, #205, #222, #254, #279, #301, #329, #386, #450, #470, #63, #639, #691, #XXX
Thanks Clippy
Clippy helped 29 times to make code idiomatic.
Commit Details
- #198
- Deduplicate conventional message ids (
e695eda
) - Regenerate all changelogs to get links (
0c81769
) - Mention actual issues that where worked on (
a517e39
) - Support writing whole bodies in conventional messages… (
c1f3c9d
) - Support for paragraphs in conventional items (
7f52823
) - Respect release-wide ignore list to allow removing entire conventional headlines (
145103d
) - Rebuild all changelogs to assure properly ordered headlines (
4a9a05f
) - Sort all commits by time, descending… (
f536bad
) - Greatly reduce changelog size now that the traversal fix is applied (
a0bc98c
) - Fixup remaining changelogs… (
2f75db2
) - Generate changelogs with details (
e1861ca
) - Update all changelogs with details (
58ab2ae
) - Update changelogs (
c857d61
) - Fix docs (
f1fa6dd
) - Avoid adding newlines which make writing unstable (
6b5c394
) - Fix section headline level (
9d6f263
) - Write first version of changlogs thus far… (
719b6bd
) - Parse more user generated section content, adapt existing changelogs to work correctly (
2f43a54
)
- #200
- Feat: Lift io::Errors to response::Error::UploadPack(…)… (
f293b63
)
- #205
- ‘(null)’ symref targets are turned into direct refs instead… (
c77bd7a
) - Fetch::Ref::Symbolic::target is now an option… (
da68bfb
)
- #222
- Update changelogs prior to release (
9a493d0
) - Stabilize changelogs (
920e832
) - Update changelogs prior to release (
b3e2252
)
- #254
- Adjust changelogs prior to git-pack release (
6776a3f
)
- #279
- Adjust to changes in git-hash (
07aa1bc
)
- #301
- Update changelogs prior to release (
84cb256
)
- #329
- In-manifest and in-lib feature documentation (
0826cc9
) - Document all features related to serde1 (
72b97f2
)
- #386
- Adapt to changes in git-sec (
c5e2346
) - Use
git-credentials
in git-protocol
(32dc182
) - Reduce API surface (
6df2881
)
- #450
- Don‘t degenerate information about the unborn fetch ref’s path. (
42c977f
) fetch::Ref::unpack()
returns Option<oid>
. (cd867ad
)- Support for
unborn
ls-refs capability if server supports it. (02e37f0
) - Less noisy way of writing trait bounds (
b593806
) - Upgrade to
prodash
v21 (a0655dc
) - Improve docs slightly (
306ebef
) - Support keepalive packets. (
d7f62b4
) - Properly implement
fetch::Arguments::is_empty()
(df36ede
) - Link up Io error as source for error chaining; add
Debug
to client::fetch::Response
(266395e
) - Allow defaulting
fetch::handshake::Outcome
. (aed93d2
) fetch::Arguments::is_empty()
to help decide if arguments should be sent at all. (0bcb2fd
)- Make some private methods public to give callers more flexibility. (
31a7089
) - Use
&dyn Any
instead of unspecified serialization format, as it's the right way. (779eefe
) - Adapt to changes in
git-transport
(e842843
) client::fetch_pack()
isn't worth it after all. (f87b7eb
)- Add
client::fetch_pack()
allowing to fetch a pack after a handshake. (744ed03
) - Refactor (
c3e4b2a
) - Update fetch feature list with
wait-for-done
(02245a6
) - Turn
prepare_ls_refs
in fetch::refs()
into FnOnce
. (3a38d1b
) - Improve docs a little (
45394d5
) - Option to print server information about the connection (
4720666
) - Adjust to changes in
git-refspec
(ffa24a1
) fetch::Ref::unpack()
returns &BStr
instead of &BString
as ref name. (91f193f
)fetch::Ref::unpack()
now returns the peeled object as well. (d2c772e
)- Rename
fetch::Ref::path
to fetch::Ref::full_ref_name
. (bab5860
) - Upgrade
bstr
to 1.0.1
(99905ba
) - Adjust to changes in git-credentials (
32758e8
) - Adapt to changes in
git-credentials
(27c9da5
) - Improved error when identity could not be obtained (
08c1287
) helper::main
to easily create credential helper implementations (eaff67c
)- Adjust to changes in
git-credentials
(33f1347
) - Adjust to changes in
git-credentials
(fe1a06d
) - Adjust to changes in
git-credentials
(40cc1dc
) - Refactor (
077ab57
) - Provide a function to gracefully shut donw a fetch transport (
5ba9e1d
) - Re-export maybe_async (
d6b4878
) - Fix docs (
a6105cb
) - Use
fetch::refs()
function in fetch()
(37504e6
) - Add
fetch::refs()
method to invoke ls-refs
for V2 and parse the result (d2de51d
) - Refactor (
41a7391
) - Use handshake() function in
fetch()
method (aaa1680
) - Replace
quick-error
with this-error
(e91c301
) - Factor fetch handshake into
fetch::handshake()
function (35d17b4
) - Sketch of simple delegate to collect listed refs (
1c5f561
) - A first sketch on how connections could be working (
e55b43e
) - Adjust to changes in
git-transport
(2141585
) - Adapt to changes in
git-url
and use BString
to represent URLs. (12589cc
)
- #470
- Update changelogs prior to release (
caa7a1b
)
- #63
- Git-protocol uses
oid
type (3930a6f
) - Refactor; better errors for invalid hash sizes (
be84b36
) - Make ObjectId/oid happen! (
ca78d15
) - Remove all public exports of git-hash types in git-object (
accf89d
) - Remove re-export of git_object::borrowed::Id (
a3f2816
) - Make git-hash Error usage explicit (it's for decoding only) (
4805cfc
)
- #639
- Don't post
packfile-uris
capability unless we are able to make use of it. (24000fa
)
- #691
- #XXX
- Prepare changelogs prior to release (
8c0bca3
)
- Uncategorized
- Release gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
7fc00f8
) - Release gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
59e9fac
) - Release gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
48f5bd2
) - Release gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
a5869e0
) - Release gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
41d57b9
) - Release gix-attributes v0.8.2, gix-config-value v0.10.1, gix-tempfile v3.0.2, gix-lock v3.0.2, gix-validate v0.7.2, gix-object v0.26.1, gix-ref v0.24.0, gix-sec v0.6.2, gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
e313112
) - Release gix-features v0.26.4, gix-actor v0.17.1, gix-glob v0.5.3, gix-path v0.7.1, gix-quote v0.4.1, gix-attributes v0.8.2, gix-config-value v0.10.1, gix-tempfile v3.0.2, gix-lock v3.0.2, gix-validate v0.7.2, gix-object v0.26.1, gix-ref v0.24.0, gix-sec v0.6.2, gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
6efd0d3
) - Release gix-date v0.4.2, gix-hash v0.10.2, gix-features v0.26.4, gix-actor v0.17.1, gix-glob v0.5.3, gix-path v0.7.1, gix-quote v0.4.1, gix-attributes v0.8.2, gix-config-value v0.10.1, gix-tempfile v3.0.2, gix-lock v3.0.2, gix-validate v0.7.2, gix-object v0.26.1, gix-ref v0.24.0, gix-sec v0.6.2, gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
6ccc88a
) - Merge branch ‘rename-crates’ into inform-about-gix-rename (
c9275b9
) - Rename
git-testtools
to gix-testtools
(b65c33d
) - Adjust to renaming of
git-pack
to gix-pack
(1ee81ad
) - Adjust to renaming of
git-odb
to gix-odb
(476e2ad
) - Adjust to renaming of
git-index
to gix-index
(86db5e0
) - Adjust to renaming of
git-diff
to gix-diff
(49a163e
) - Adjust to renaming of
git-commitgraph
to gix-commitgraph
(f1dd0a3
) - Adjust to renaming of
git-mailmap
to gix-mailmap
(2e28c56
) - Adjust to renaming of
git-discover
to gix-discover
(53adfe1
) - Adjust to renaming of
git-chunk
to gix-chunk
(59194e3
) - Adjust to renaming of
git-bitmap
to gix-bitmap
(75f2a07
) - Adjust to renaming for
git-protocol
to gix-protocol
(823795a
) - Rename
git-protocol
to gix-protocol
(9a35a90
) - Adjust to renaming of
git-refspec
to gix-refspec
(c958802
) - Adjust to renaming of
git-revision
to gix-revision
(ee0ee84
) - Adjust to renaming of
git-transport
to gix-transport
(b2ccf71
) - Adjust to renaming of
git-credentials
to gix-credentials
(6b18abc
) - Adjust to renaming of
git-prompt
to gix-prompt
(6a4654e
) - Adjust to renaming of
git-command
to gix-command
(d26b8e0
) - Adjust to renaming of
git-packetline
to gix-packetline
(5cbd22c
) - Adjust to renaming of
git-worktree
to gix-worktree
(73a1282
) - Adjust to renamining of
git-hashtable
to gix-hashtable
(26a0c98
) - Adjust to renamining of
git-worktree
to gix-worktree
(108bb1a
) - Adjust to renaming of
git-url
to gix-url
(b50817a
) - Adjust to renaming of
git-date
to gix-date
(9a79ff2
) - Adjust to renamining of
git-attributes
to gix-attributes
(4a8b3b8
) - Adjust to renaminig of
git-quote
to gix-quote
(648025b
) - Adjust to renaming of
git-config
to gix-config
(3a861c8
) - Adjust to renaming of
git-ref
to gix-ref
(1f5f695
) - Adjust to renaming of
git-lock
to gix-lock
(2028e78
) - Adjust to renaming of
git-tempfile
to gix-tempfile
(b6cc3eb
) - Adjust to renaming of
git-object
to gix-object
(fc86a1e
) - Adjust to renaming of
git-actor
to gix-actor
(4dc9b44
) - Adjust to renaming of
git-validate
to gix-validate
(5e40ad0
) - Adjust to renaming of
git-hash
to gix-hash
(4a9d025
) - Adjust to renaming of
git-features
to gix-features
(e2dd68a
) - Adjust to renaming of
git-glob
to gix-glob
(35b2a3a
) - Adjust to renaming of
git-sec
to gix-sec
(eabbb92
) - Adapt to renaming of
git-path
to gix-path
(d3bbcfc
) - Adjust to rename of
git-config-value
to gix-config-value
(622b3e1
) - Release git-features v0.26.4 (
109f434
) - Release git-features v0.26.3 (
1ecfb7f
) - Release git-date v0.4.2, git-hash v0.10.2, git-features v0.26.2, git-actor v0.17.1, git-glob v0.5.3, git-path v0.7.1, git-quote v0.4.1, git-attributes v0.8.2, git-config-value v0.10.1, git-tempfile v3.0.2, git-lock v3.0.2, git-validate v0.7.2, git-object v0.26.1, git-ref v0.24.0, git-sec v0.6.2, git-config v0.16.0, git-command v0.2.3, git-prompt v0.3.2, git-url v0.13.2, git-credentials v0.9.1, git-diff v0.26.1, git-discover v0.13.0, git-hashtable v0.1.1, git-bitmap v0.2.1, git-traverse v0.22.1, git-index v0.12.3, git-mailmap v0.9.2, git-chunk v0.4.1, git-pack v0.30.2, git-odb v0.40.2, git-packetline v0.14.2, git-transport v0.25.4, git-protocol v0.26.3, git-revision v0.10.2, git-refspec v0.7.2, git-worktree v0.12.2, git-repository v0.34.0, safety bump 3 crates (
c196d20
) - Prepare changelogs prior to release (
7c846d2
) - Merge branch ‘Lioness100/main’ (
1e544e8
) - Fix typos (
39ed9ed
) - Thanks clippy (
bac57dd
) - Break cyclical dev dependencies (
1fea18f
) - Release git-date v0.4.1, git-features v0.26.1, git-glob v0.5.2, git-attributes v0.8.1, git-tempfile v3.0.1, git-ref v0.23.1, git-sec v0.6.1, git-config v0.15.1, git-prompt v0.3.1, git-url v0.13.1, git-discover v0.12.1, git-index v0.12.2, git-mailmap v0.9.1, git-pack v0.30.1, git-odb v0.40.1, git-transport v0.25.3, git-protocol v0.26.2, git-revision v0.10.1, git-refspec v0.7.1, git-worktree v0.12.1, git-repository v0.33.0 (
5b5b380
) - Prepare changelogs prior to release (
93bef97
) - Merge branch ‘patch-1’ (
b93f0c4
) - Thanks clippy (
b34c9fe
) - Release git-ref v0.23.0, git-config v0.15.0, git-command v0.2.2, git-diff v0.26.0, git-discover v0.12.0, git-mailmap v0.9.0, git-pack v0.30.0, git-odb v0.40.0, git-transport v0.25.2, git-protocol v0.26.1, git-revision v0.10.0, git-refspec v0.7.0, git-worktree v0.12.0, git-repository v0.32.0 (
ffb5b6a
) - Prepare changelogs prior to release (
4381a03
) - Release git-transport v0.25.1 (
e0b12fe
) - Release git-features v0.26.0, git-actor v0.16.0, git-attributes v0.8.0, git-object v0.25.0, git-ref v0.22.0, git-config v0.14.0, git-command v0.2.1, git-url v0.13.0, git-credentials v0.9.0, git-diff v0.25.0, git-discover v0.11.0, git-traverse v0.21.0, git-index v0.11.0, git-mailmap v0.8.0, git-pack v0.29.0, git-odb v0.39.0, git-transport v0.25.0, git-protocol v0.26.0, git-revision v0.9.0, git-refspec v0.6.0, git-worktree v0.11.0, git-repository v0.31.0, safety bump 24 crates (
5ac9fbe
) - Prepare changelogs prior to release (
30d8ca1
) - Display the underlying permission denied error as source when failng handshake due to authentication. (
4b8abb0
) - Release git-url v0.12.1, git-transport v0.24.1, git-protocol v0.25.1, git-repository v0.30.1, git-commitgraph v0.12.0, gitoxide-core v0.22.0, gitoxide v0.20.0 (
08ec3a9
) - Prepare changelogs prior to release (
68ce15d
) - Merge branch ‘adjustments-for-cargo’ (
5afa7f5
) - Release git-date v0.3.1, git-features v0.25.0, git-actor v0.15.0, git-glob v0.5.1, git-path v0.7.0, git-attributes v0.7.0, git-config-value v0.10.0, git-lock v3.0.1, git-validate v0.7.1, git-object v0.24.0, git-ref v0.21.0, git-sec v0.6.0, git-config v0.13.0, git-prompt v0.3.0, git-url v0.12.0, git-credentials v0.8.0, git-diff v0.24.0, git-discover v0.10.0, git-traverse v0.20.0, git-index v0.10.0, git-mailmap v0.7.0, git-pack v0.28.0, git-odb v0.38.0, git-packetline v0.14.1, git-transport v0.24.0, git-protocol v0.25.0, git-revision v0.8.0, git-refspec v0.5.0, git-worktree v0.10.0, git-repository v0.30.0, safety bump 26 crates (
e6b9906
) - Prepare chnagelogs prior to git-repository release (
7114bbb
) - Don't enforce V2 as protocol, but smoothly downgrade like git does. (
5f2276b
) - Merge branch ‘main’ into read-split-index (
c57bdde
) - Merge branch ‘adjustments-for-cargo’ (
083909b
) fetch::Arguments::use_include_tag()
allows to signal include-tag
. (5a50d95
)- Don't pass ‘include-tag’ as argument by default. (
a872782
) - Merge branch ‘adjustments-for-cargo’ (
94750e1
) - Due to more specific errors one can differentiate if remote authentication failed repeatedly. (
1c0a6c0
) - Merge branch ‘adjustments-for-cargo’ (
70ccbb2
) - Some errors support
is_spurious()
to tell if retrying is possible. (2363bcb
) - Adapt to changes in
git-transport
(527c62e
) - Merge branch ‘fix-638’ (
eb4c5f0
) - Merge branch ‘fixture-async’ (
eca6705
) - Async version of ref-line parsing now reads line by line. (
dadd896
) - Add
Fixture
implementation for async
. (b583c2a
) - Release git-hash v0.10.1, git-hashtable v0.1.0 (
7717170
) - Merge branch ‘remove-lines-parsing’ (
9d8e32d
) - Parse refs from bytes, not from String. (
806b8c2
) - Adapt to changes in
git-transport
(49461b1
) - Merge branch ‘main’ into http-config (
6b9632e
) - Release git-features v0.24.1, git-actor v0.14.1, git-index v0.9.1 (
7893502
) - Merge branch ‘main’ into http-config (
bcd9654
) - Make fmt (
0abab7d
) - Release git-hash v0.10.0, git-features v0.24.0, git-date v0.3.0, git-actor v0.14.0, git-glob v0.5.0, git-path v0.6.0, git-quote v0.4.0, git-attributes v0.6.0, git-config-value v0.9.0, git-tempfile v3.0.0, git-lock v3.0.0, git-validate v0.7.0, git-object v0.23.0, git-ref v0.20.0, git-sec v0.5.0, git-config v0.12.0, git-command v0.2.0, git-prompt v0.2.0, git-url v0.11.0, git-credentials v0.7.0, git-diff v0.23.0, git-discover v0.9.0, git-bitmap v0.2.0, git-traverse v0.19.0, git-index v0.9.0, git-mailmap v0.6.0, git-chunk v0.4.0, git-pack v0.27.0, git-odb v0.37.0, git-packetline v0.14.0, git-transport v0.23.0, git-protocol v0.24.0, git-revision v0.7.0, git-refspec v0.4.0, git-worktree v0.9.0, git-repository v0.29.0, git-commitgraph v0.11.0, gitoxide-core v0.21.0, gitoxide v0.19.0, safety bump 28 crates (
b2c301e
) - Prepare changelogs prior to release (
e4648f8
) - Merge branch ‘version2021’ (
0e4462d
) - Upgrade edition to 2021 in most crates. (
3d8fa8f
) - Release git-glob v0.4.2, git-config-value v0.8.2, git-lock v2.2.0, git-ref v0.19.0, git-config v0.11.0, git-discover v0.8.0, git-index v0.8.0, git-transport v0.22.0, git-protocol v0.23.0, git-worktree v0.8.0, git-repository v0.28.0, gitoxide-core v0.20.0, gitoxide v0.18.0, safety bump 9 crates (
0c253b1
) - Prepare changelogs prior to release (
fe5721f
) - Merge branch ‘http-config’ (
665b53e
) - Fix docs (
b5c316e
) - Move
fetch::refs(…, protocol, …)
to the crate root as ls_refs(…)
. (09070a7
) - Move
fetch::Command
into the crate root. (35f7b4d
) - Move
fetch::agent|indicate_end_of_interaction
to crate root (a03f8f6
) handshake(…)
is now generalized to support git-receive-pack
as well. (a3bcf82
)- Migrate independent parts of ref parsing to generalized handshake. (
611a139
) - Prepare for handshake generalization by copying it into position; parameterize service (
7691353
) - Merge branch ‘main’ into http-config (
f4ff821
) - Merge branch ‘async-fetch’ (
0c9c48b
) - Expose
futures_lite
for convenience in downstream crates. (68c65a9
) - Set exact patch level for
git-transport
(b46e3bb
) - Adjust for changes in
git-transport
(f88569b
) - Adapt to changes in
git-transport
(226f33a
) - Make trait parameter more open, no need for
'static
(68dc86f
) fetch::agent()
returns agent string only; fetch()
takes agent name as parameter. (d05b0b8
)- Don't auto-insert user agent, instead prepare to insert it later. (
aab278f
) fetch::agent()
now returns the agent name, fetch::agent_tuple()
returns specific key-value pair. (f957d9a
)- Release git-features v0.23.1, git-glob v0.4.1, git-config-value v0.8.1, git-tempfile v2.0.6, git-object v0.22.1, git-ref v0.18.0, git-sec v0.4.2, git-config v0.10.0, git-prompt v0.1.1, git-url v0.10.1, git-credentials v0.6.1, git-diff v0.21.0, git-discover v0.7.0, git-index v0.7.0, git-pack v0.25.0, git-odb v0.35.0, git-transport v0.21.1, git-protocol v0.22.0, git-refspec v0.3.1, git-worktree v0.7.0, git-repository v0.26.0, git-commitgraph v0.10.0, gitoxide-core v0.19.0, gitoxide v0.17.0, safety bump 9 crates (
d071583
) - Prepare changelogs prior to release (
423af90
) - Merge branch ‘main’ into write-sparse-index (upgrade to Rust 1.65) (
5406630
) - Thanks clippy (
04cfa63
) - Merge branch ‘main’ into write-sparse-index (
c4e6849
) - Merge branch ‘gix-clone’ (
def53b3
) - Thanks clippy (
bc9c780
) - Release git-hash v0.9.11, git-features v0.23.0, git-actor v0.13.0, git-attributes v0.5.0, git-object v0.22.0, git-ref v0.17.0, git-sec v0.4.1, git-config v0.9.0, git-url v0.10.0, git-credentials v0.6.0, git-diff v0.20.0, git-discover v0.6.0, git-traverse v0.18.0, git-index v0.6.0, git-mailmap v0.5.0, git-pack v0.24.0, git-odb v0.34.0, git-packetline v0.13.1, git-transport v0.21.0, git-protocol v0.21.0, git-revision v0.6.0, git-refspec v0.3.0, git-worktree v0.6.0, git-repository v0.25.0, safety bump 24 crates (
104d922
) - Prepare changelogs for release (
d232567
) - Merge branch ‘main’ into new-http-impl (
702a161
) - Merge branch ‘fetch-pack’ (
f47c891
) - Merge branch ‘fetch-pack’ (
3c49400
) - Merge branch ‘fix-git-features’ (
82fd251
) - Merge branch ‘diff’ (
25a7726
) - Release git-command v0.1.0, git-prompt v0.1.0, git-url v0.9.0, git-credentials v0.5.0, git-diff v0.19.0, git-mailmap v0.4.0, git-chunk v0.3.2, git-pack v0.23.0, git-odb v0.33.0, git-packetline v0.13.0, git-transport v0.20.0, git-protocol v0.20.0, git-revision v0.5.0, git-refspec v0.2.0, git-repository v0.24.0, git-commitgraph v0.9.0, gitoxide-core v0.18.0, gitoxide v0.16.0 (
f5c36d8
) - Release git-hash v0.9.10, git-features v0.22.5, git-date v0.2.0, git-actor v0.12.0, git-glob v0.4.0, git-path v0.5.0, git-quote v0.3.0, git-attributes v0.4.0, git-config-value v0.8.0, git-tempfile v2.0.5, git-validate v0.6.0, git-object v0.21.0, git-ref v0.16.0, git-sec v0.4.0, git-config v0.8.0, git-discover v0.5.0, git-traverse v0.17.0, git-index v0.5.0, git-worktree v0.5.0, git-testtools v0.9.0, git-command v0.1.0, git-prompt v0.1.0, git-url v0.9.0, git-credentials v0.5.0, git-diff v0.19.0, git-mailmap v0.4.0, git-chunk v0.3.2, git-pack v0.23.0, git-odb v0.33.0, git-packetline v0.13.0, git-transport v0.20.0, git-protocol v0.20.0, git-revision v0.5.0, git-refspec v0.2.0, git-repository v0.24.0, git-commitgraph v0.9.0, gitoxide-core v0.18.0, gitoxide v0.16.0, safety bump 28 crates (
29a043b
) - Merge branch ‘filter-refs’ (
3773b92
) - Merge branch ‘filter-refs’ (
fd14489
) - Release git-features v0.22.6 (
c9eda72
) - Make fmt (
535e967
) - Merge branch ‘filter-refs-by-spec’ (
5c05198
) - Merge branch ‘main’ into filter-refs-by-spec (
9aa1d3d
) - Release git-features v0.22.4, git-url v0.8.0, safety bump 4 crates (
1d4600a
) - Merge branch ‘main’ into filter-refs-by-spec (
1f6e5ab
) - Merge branch ‘fix-522’ (
5869e9f
) - Release git-hash v0.9.9 (
da0716f
) - Merge branch ‘main’ into index-from-tree (
bc64b96
) - Merge branch ‘main’ into filter-refs-by-spec (
cef0b51
) - Release git-object v0.20.3, git-ref v0.15.4, git-config v0.7.1, git-diff v0.18.0, git-traverse v0.16.3, git-pack v0.22.0, git-odb v0.32.0, git-url v0.7.3, git-transport v0.19.3, git-protocol v0.19.1, git-refspec v0.1.1, git-repository v0.23.0, safety bump 6 crates (
85a3bed
) - Release git-features v0.22.3, git-revision v0.4.4 (
c2660e2
) - Merge branch ‘main’ into filter-refs-by-spec (
cfa1440
) - Release git-date v0.0.5, git-hash v0.9.8, git-features v0.22.2, git-actor v0.11.3, git-glob v0.3.2, git-quote v0.2.1, git-attributes v0.3.2, git-tempfile v2.0.4, git-lock v2.1.1, git-validate v0.5.5, git-object v0.20.2, git-ref v0.15.2, git-sec v0.3.1, git-config v0.7.0, git-credentials v0.4.0, git-diff v0.17.2, git-discover v0.4.1, git-bitmap v0.1.2, git-index v0.4.2, git-mailmap v0.3.2, git-chunk v0.3.1, git-traverse v0.16.2, git-pack v0.21.2, git-odb v0.31.2, git-packetline v0.12.7, git-url v0.7.2, git-transport v0.19.2, git-protocol v0.19.0, git-revision v0.4.2, git-refspec v0.1.0, git-worktree v0.4.2, git-repository v0.22.0, safety bump 4 crates (
4974eca
) - Merge branch ‘remote-ls-refs’ (
39d585d
) - Merge branch ‘main’ into remote-ls-refs (
e2ee3de
) - Merge branch ‘docsrs-show-features’ (
31c2351
) - Use docsrs feature in code to show what is feature-gated automatically on docs.rs (
b1c40b0
) - Uniformize deny attributes (
f7f136d
) - Pass --cfg docsrs when compiling for https://docs.rs (
5176771
) - 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
) - Thanks clippy (
f48ac49
) - 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 (
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 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
) - Merge branch ‘short-id’ (
5849d5b
) - Thanks clippy (
4618f8a
) - Upgrade document-features (
c35e62e
) - Release git-hash v0.9.2, git-object v0.17.1, git-pack v0.16.1 (
0db19b8
) - Release git-protocol v0.14.0, git-ref v0.11.0, git-repository v0.14.0, cargo-smart-release v0.8.0 (
b286b24
) - 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
) - Thanks clippy (
7dd2313
) - 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
) - 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
) - Make fmt, but now it picked up some parts that usually don't get altered… (
01f7b72
) - 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-protocol v0.10.4 (
898ee08
) - Thanks clippy (
4701296
) - Release git-protocol v0.10.3 (
aa90f98
) - Merge branch ‘repository-integration’ (
49f5453
) - Bump git-hash v0.6.0 (
6efd90d
) - Release git-protocol v0.10.2 (
54a4400
) - [various #184] configure docs.rs build features (
cc50249
) - Release git-protocol v0.10.1 (
cec8ee3
) - [protocol #174] fix tests… (
cdc16fc
) - Bump git-protocol v0.10.0 (
82d5a0b
) - Bump git-transport v0.11.0 (
1149f1b
) - Bump git-packetline v0.10.0 (
b09f391
) - [packetline #178] rename PacketLine to PacketLineRef… (
d4c16a9
) - [stability #171] Prime git-tempfile and git-lock for release (
01278fe
) - Merge branch ‘Byron:main’ into main (
dc58eca
) - Upgrade to nom-7 (
f0aa3e1
) - [protocol] prepare release to fix crates-io instalations (
83d7423
) - Bump git-protocol to v0.9.0 as there are breaking changes (
b4e3340
) - Apply nightly rustfmt rules. (
5e0edba
) - Release git-protocol v0.8.1 (
b57c339
) - Release git-transport v0.10.0 (
b944278
) - Release git-packetline v0.9.0 (
7ffbd60
) - Remove dev-dependency cycles by removing their version (
c40faca
) - Bump transport version to 0.10 (
f26a3d3
) - (cargo-release) version 0.8.0 (
ad6d7f9
) - (cargo-release) version 0.7.0 (
2ef3106
) - [transport] A much better name for 'is_stateful()
([
f15f1e8`](https://github.com/Byron/gitoxide/commit/f15f1e85fda76eef72c3754d625cf51e3c454eea)) - [protocol] Make fetch-connection usage explicit (
29696f9
) - (cargo-release) version 0.5.0 (
ae02dab
) - (cargo-release) version 0.16.0 (
1231dbd
) - [protocol RL-#741] Respect delegate configuration when running only ls-refs (
65ce8e1
) - [protocol #145] Unify the
previous
and previous_result
parameters… (96f77c7
) - Merge pull request #145 from kim/ref-in-want-corrections (
8dfc943
) - [protocol] remove misleading documentation about ref-in-want (
9a8f6b5
) - Clippy on tests and thanks clippy (
a77a71c
) - Thanks clippy (
e1964e4
) - Bump async-trait from 0.1.50 to 0.1.51 (
ce0b81e
) - Bump futures-io from 0.3.15 to 0.3.16 (
3c23820
) - [protocol] Delegate will indicate end-of-operation when fetch is done (
928f75a
) - [protocol] Let ‘fetch()’ only be used via
git_protocol::fetch
(4bae2f9
) - Thanks clippy (
eccbecb
) - [protocol] fix build (
38aca40
) - [protocol] Allow both preparation delegate methods to fail (
d89393b
) - [protocol] start trying LsRefsAction::Abort(Box)… (
660b9dc
) - Merge branch ‘negotiate-fallible’ (
27c8abe
) - [protocol] adjust description of fetch::Error to match io::Error sources (
23dafc6
) - [protocol] fallible negotiation (
e269a2c
) - Revert “[ref] Try using BorrowMut to avoid blanket trait impls, but…” (
8212536
) - [ref] Try using BorrowMut to avoid blanket trait impls, but… (
4bb9bba
) - [protocol] only send flush packets in stateful connections (
0995c22
) - [transport] remove Transport::close()… (
4268a9b
) - [ref] rename Action::Close to Action::Cancel… (
cac1f6c
) - [transport] impl Delegate for &mut T: Delegate; refactor fetch() signature (
2ded7f9
) - [transport] implement Transport for &mut T: Transport as well (
372fb81
) - Merge branch ‘ref-in-want’ (
f248557
) - [protocol] refactor (
11b2fd1
) - [protocol] refactor (
967946a
) - [protocol] refactor (
8dc425f
) - [protocol] assure we don't coerce refs into UTF-8 representation (
5ceb64d
) - [protocol] support ref-in-want (
b6df400
) - [transport] tests for extra parameters (
fffd926
) - [protocol] extra_parameters are forwarded from delegate to handshake (
03e3db3
) - [transport] unsupported protocol versions now abort the fetch operation (
812aa3b
) - [transport] flexible version of version support check doesn't actually work :D (
2b220f0
) - [protocol] make refs parsing functionality public (
d6da891
) - [protocol] async-io path handles improved refs parsing (
328ab9c
) - [protocol] first step towards keeping InternalRef internal in blocking-io (
6c4ed2d
) - Refactor (
24697bc
) - [async-client] cleanup Send bounds! (
c7dee44
) - [async-client] refactor (
b252932
) - [async-client] unblock the async delegate in the cheapest possible way… (
a3b5d75
) - Revert “[async-client] a taste of what it means to unblock the delegate” (
2ba452f
) - [async-client] a taste of what it means to unblock the delegate (
4d6c10a
) - [async-client] prepare for unblocking the protocol delegate (
796c7d5
) - [async-client] refactor (
0d5b911
) - Revert “[async-client] Try to bring ‘Send’ back but…” (
52eb953
) - [async-client] Try to bring ‘Send’ back but… (
3a06adb
) - [git-protocol] fix test (
e30ea36
) - [git-protocol] no warnings when building without client (
2f30666
) - [git-protocol] remove compile warnings if no client type is specified… (
478a980
) - Thanks clippy (
57106e2
) - [git-protocol] builds without features work (
a1945ff
) - [git-protocol] async fetch tests work (
fe434a5
) - [git-protocol] fetch tests nearly compile in async (
97fb186
) - [git-protocol] fetch in sync and async… (
4776039
) - [git-protocol] refactor (
80379fd
) - [git-protocol] build should fail if mutually exclusiive features are set (
72cf940
) - Bump maybe-async from 0.2.4 to 0.2.6 (
d99a1a8
) - [git-protocol] fix build (
4cce648
) - [git-protocol] async Delegate (
1aa6781
) - Thanks clippy (
0759ade
) - [git-protocol] refactor (
94d7be4
) - [git-protocol] refactor (
990099b
) - [git-protocol] refactor (
d623cf7
) - [git-protocol] async response (
c498557
) - [git-protocol] refactor (
a8dc078
) - Refactor (
2eefe17
) - [git-protocol] prepare response module for async (
08b891b
) - [git-protocol] fix tests without any feature toggles (
1da0b1a
) - Thanks clippy (
91fdfba
) - [git-protocol] refs now available in async (
3a5b2cf
) - [git-protocol] refactor (
abf0b9d
) - [git-protocol] prepare to translate refs (
bf79c91
) - [git-protocol] no warnings if there is no client feature set (
335e831
) - [git-protocol] fix tests in case there is no client feature set (
1ee5518
) - [git-protocol] refactor (
0b4ff16
) - [git-protocol] refactor (
e99a03b
) - [git-protocol] async capabilities and arguments abstractions (
aa3eacb
) - [git-protocol] now just a dummy async transport impl and… (
c7f0b80
) - [git-protocol] a big step towards getting ‘Arguments’ test into async (
5d1c30f
) - [git-protocol] move everything into
blocking_io
for later translation… (fa03374
) - [git-protocol] all blocking fetch tests (
0d39b5d
) - [git-protocol] re-introduce credentials helper code (
6a5575f
) - [git-protocol] separate test configuration for async mode (
62a117c
) - [git-transport] fix git-protocol (
0cc9537
) - [git-protocol] simplify test setup (
189ed2c
) - Refactor (
2ba9f91
) - (cargo-release) version 0.4.0 (
866f86f
) - Switch to latest nom (
859e57e
) - (cargo-release) version 0.15.0 (
d69d9fb
) - Put prodash behind a feature toggle, too (
966058d
) - [git-packetline] refactor (
1328c5b
) - (cargo-release) version 0.6.0 (
ec5a54e
) - [git-packetline] refactor (
e5769d1
) - (cargo-release) version 0.8.0 (
ccea4b6
) - (cargo-release) version 0.9.0 (
18f6d01
) - [git-transport] simplify parsing capabilities from lines (
401af09
) - [git-protocol] separate tests those who need feature toggles (
4a49d64
) - [git-transport] remove default features to force being explicit everywhere (
d1b39f8
) - Fix git-protocol (
284f8af
) - Refactor (
1412282
) - (cargo-release) version 0.7.0 (
069184e
) - (cargo-release) version 0.8.0 (
411a05e
) - (cargo-release) version 0.5.0 (
8c4cc3f
) - Thanks clippy (
17258cc
) - (cargo-release) version 0.14.0 (
a760f8c
) - (cargo-release) version 0.3.0 (
e9665c7
) - (cargo-release) version 0.13.0 (
ac2eddb
) - (cargo-release) version 0.6.0 (
8513f0f
) - (cargo-release) version 0.7.0 (
334b7e1
) - (cargo-release) version 0.12.0 (
3b71e7e
) - (cargo-release) version 0.2.0 (
4ec09f4
) - (cargo-release) version 0.5.0 (
3cc4a57
) - (cargo-release) version 0.6.0 (
50fb6f2
) - Thanks clippy (
0fc239c
) - Thanks clippy (
749ceba
) - (cargo-release) version 0.11.0 (
1aa1f5e
) - (cargo-release) version 0.4.1 (
6244fb4
) - Finish docs for
git-protocol
crate (598f700
) - Revise trait documentation of git-protocol (
5271128
) - Docs for response in git-protocol (
487de13
) - More docs for git-protocol (
bca0cbd
) - Docs for fetch::refs (
6a97a3e
) - Docs for git credentials helper utilities (
eb6bb6e
) - First pieces of docs for git-protocol (
12d8a83
) - Thanks clippy (
343ab9a
) - (cargo-release) version 0.5.0 (
28df5e9
) - All crates use git-hash::Kind and its types, sometimes through git-object (
124c171
) - Use git-hash in git-features (
5b307e0
) - (cargo-release) version 0.3.0 (
e60dbe6
) - (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.5.0 (
fc7d600
) - (cargo-release) version 0.2.0 (
a476a46
) - (cargo-release) version 0.3.0 (
d19ee35
) - (cargo-release) version 0.3.0 (
eade7d1
) - (cargo-release) version 0.8.0 (
47c00c2
) - Cargo clippy Rust 1.48 (
475a68c
) - (cargo-release) version 0.7.0 (
7fa7bae
) - Thanks clippy (
b9e0a87
) - Remove dash in all repository links (
98c1360
) - Merge from main. (
b59bd5e
) - Refactor (
7c3c80a
) - (cargo-release) version 0.6.0 (
9ef184e
) - (cargo-release) version 0.1.1 (
bb38c6b
) - Support V2 shallow-info section (
6679c91
) - Tests for V2 shallow section parsing (
5bf58ab
) - Support for the ‘deepen-relative’ argument (
b86fed6
) - V1 parsing of shallow and unshallow lines… (
8bcf535
) - Remove unused fixtures (
6ae69f5
) - Fix wants/haves separator handling for stateful V1 (
1629575
) - Make really clear that V2 is stateless no matter what the transport supports :D (
c296845
) - Assure the first ‘want’ in V1 is always first (
e729ec8
) - Properly handle statelessness in V2 protocol (
1b49f1e
) - Add some samples for deepen clones (
61bc41a
) - Switch to prodash 10 and safe a lot of trait bounds in the process (
e2fb1d9
) - (cargo-release) version 0.4.0 (
0d7b60e
) - (cargo-release) version 0.2.0 (
779e9d0
) - (cargo-release) version 0.2.0 (
da830de
) - (cargo-release) version 0.5.0 (
82b7313
) - [clone] Assure we don't hang due to unprocessed headers when peeking lines! (
d9ced27
) - [clone] more correct handling of ‘no-done’/done when sending wants/haves… (
50f4516
) - [clone] Don't try to explicitly close the connection… (
17200b3
) - [clone] Fix encoding of V1 capabilities in first want (
b68a5c5
) - [clone] When unpacking peeled refs, use the object that refers to the tag… (
fe8bb39
) - [clone] none the wiser - it really looks like everything is alright… (
3b8d613
) - [clone] it looks like in order to figure out the issue, it needs tests higher up… (
edf1540
) - [clone] Don‘t send V2 capabilities that don’t have a value… (
9c9a4ee
) - [clone] Handle remote progress name prefixing (more) correctly (
51d4d15
) - [clone] This actually works: first MVP of retrieving packs via clone (
c06d819
) - Use git attributes to prevent crlf conversion of fixtures on windows (
80ca8b2
) - [clone] Support for reading multi-step negoritaions, but… (
507d342
) - [clone] refactor (
ded46fd
) - [clone] support for progress that can handle writing pack files (
46e0055
) - [clone] leave aborting the negotiation loop in the hands of the delegate (
ea83ce7
) - [clone] sideband-all support (
ecc8e09
) - [clone] Actually pass pack file to the delegate (
94c5e62
) - [clone] Response parsing up to (optional) pack (
24064c7
) - [clone] FAIL: try to model pack reading using ownership… (
4ee14e3
) - [clone] properly handle V2 response parsing (
0d7d768
) - Refactor (
f2c31ec
) - Refactor (
fab9f99
) - [clone] Provide a handle to the packfile, if it is present in the response (
fcb4cc1
) - [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] basic V2 acknowledgement and packfile parsing, but… (
549f404
) - Thanks clippy (
ac88eef
) - [ref-ls] parse all V1 acknowledgements, without duplication (
f7c1580
) - [ref-ls] first stab at V1 acknowledgement parsing (
1d21cd4
) - [ref-ls] It would be practical to simply have access to the line provider… (
5fba787
) - Thanks clippy (
27f30df
) - [ref-ls] support for line peeking in packet line readers (
0c0c575
) - [ref-ls] Let's make Acks copy, because owned::Id is as well (
1f9cc44
) - Refactor (
935d5fe
) - [ref-ls] first sketch of V1 tests for result parsing (ack + pack) (
fd16a5f
) - [ref-ls] tests for stateless V1/V2 (
d34afc6
) - [ref-ls] first step towards parsing negotiation result (
51ecf7e
) - Refactor (
61e9812
) - Thanks clippy (
6b1294a
) - [ref-ls] Argument tests for fetches (
50cd260
) - [ref-ls] first argument tests for clone (
83490ef
) - [ref-ls] Also add ‘haves’ in V2; some more assertions (
3e6bfb1
) - [ref-ls] Do feature assertions to not have to support old servers (
9980ff9
) - [ref-ls] don't do anything on drop (
9f18d9b
) - [ref-ls] A step towards getting the negotiation right, really need tests (
abb56d8
) - [ref-ls] Transport layer knows whether it's stateful or not (
22c3640
) - [ref-ls] Also re-send V1 features in each request, independently of statefulness for now (
f8669d6
) - [ref-ls] potentially fix ‘is-done’ logic (
f9e338f
) - [ref-ls] Sketch of sending arguments in V1 & V2 (
e1d27b6
) - [ref-ls] first step towards supporting negotiation (
27b6d2d
) - [ref-ls] probably all it takes to handle all capabilities of fetch arguments (
d956ecc
) - [ref-ls] first sketch of argument utility to help creating wants/haves (
b0b0166
) - [ref-ls] fix feature validation in V2 (
eb387d2
) - Update tasks (
079fc02
) - [ref-ls] Always send a flush before closing the connection (
918f19f
) - [ref-ls] Make credentials helper truly work (
7f3c3a7
) - [ref-ls] And it even doesn't work if it is the very same transport (
4ba50fe
) - [clone] support automatic downgrade to protocol version 1 (
4cf3643
) - [clone] basic progress for fetch in protocol (
1925d02
) - Refactor (
aa7e8b1
) - Refactor (
b97507e
) - [clone] update README, improve delegate docs (
dc7908f
) - [clone] test ls-remote V2 (
0907771
) - Thanks clippy (
baf0b2c
) - [clone] more tests for fetch features and arguments (
a946861
) - [clone] features for V1 fetch (
5b24a55
) - [clone] assert on ref-prefix for ls-refs command (
70347a5
) - Thanks clippy (
d55cd56
) - Refactor (
f02232d
) - [clone] Getting there with feature handling for ls-refs (
27c5adc
) - [clone] Remove intermediary mutable Capabilities implementation (
f59344a
) - Refactor (
5ea42ba
) - [clone] first step towards better organizing features/capabilities/argument names (
7d45f3a
) - Dependency update (
dea0028
) - [clone] first sign of somethign working: ls-remote (
df58fa1
) - Refactor; thanks clippy (
03c3d17
) - Refactor (
25122f2
) - [clone] V2 ref parsing (
455fa0f
) - [clone] A better way to set the agent in V2 invocations (
325d3a2
) - [clone] Make the actual ls-refs call (
898cb8b
) - [clone] sketch of delegating simple commands along with arg/feature verification (
c2ebc48
) - Refactor (
a6bcdc4
) - Ignore keep-alive packages in case of ‘sideband-all’ (
2e77b86
) - Refactor (
ad0b2e9
) - Thanks clippy (
8b1ea29
) - [clone] apply another mild workaround to be able to use ‘transport.close()’ (
ea636ae
) - [clone] remove workaround (
55cf167
) - [clone] more safety checks (
6f5a9f3
) - Thanks clippy (
423458e
) - Refactor (
f29ea65
) - [clone] proper parsing of V1 refs (
d262307
) - [clone] A little more ref V1 parsing (
4bc7842
) - [clone] preparation of test for proper ref parsing (V1) (
85cd580
) - Refactor (
99247f4
) - Refactor (
c985370
) - [clone] symref parsing from capabilities (
8c2ff64
) - [clone] A step closer to parsing symrefs correctly (
250a340
) - [clone] attempt to make refs more accessible… (
fa1112c
) - Refactor (
c138059
) - [clone] Prevent accidental leakage by transforming back to the ‘right’ type (
2d469c6
) - Thanks clippy (
9afa7f9
) - [clone] a better workaround for the ‘drop scope’ issue (
3ccf32b
) - [clone] First step of workarounding rusts drop rules (
6b47923
) - [clone] update tracking ticket information (
650c452
) - [clone] add Rustc issue to see if this is just my bad (
ccb9b53
) - Thanks clippy (
fd6f9e5
) - [clone] Workaround for the drop-issue (
43c6159
) - [clone] first attempt at adding authentication logic, but… (
a36d14a
) - [clone] first rough sketch of (mutable) capabailities in the protocol side (
13f7ecb
) - Refactor (
a567b24
) - Refactor (
88ecda1
) - [clone] frame for first ‘fetch’ tests (
2da70f6
) - Refactor (
89aabde
) - Refactor (
51f6142
) - [clone] support for git-credentials helper (
a6546da
) - Refactor (
cf0e45a
) - [clone] decoding of credential message replies (
1c2f56d
) - [clone] encode message for git credentials helper (
143549e
) - [clone] sketch for identity handling (
b23f470
) - [clone] put remaining remote progress parsing code into protocol (
e03e0e5
) - Refactor - decouple protocol from packetline (
dc98db2
) - [clone] move packet-line code into own crate (
879af67
) - [clone] move packet-lint into transport layer (
c0dd831
) - [clone] link up lean plumbing command with gitoxide-core: pack-receive (
5ea49c8
) - [url] basic frame and first failing test (
60aacf0
) - [protocol] properly implement remote progress reporting (
a81954a
) - Refactor (
66e9cd1
) - Thanks clippy (
7f6e290
) - [protocol] prepare passing most of remote progress on to prodash… (
b8a34e5
) - Refactor (
df8ebdc
) - Refactor (
2ea3288
) - Refactor (
2102cab
) - [protocol] remote::Progress can now parse the usual progress (
b0e5601
) - [protocol] first steps towards parsing remote progress (
c3d0e7a
) - [protocol] even starting to parse remote progress by hand is painful… (
d68db3c
) - Less ambiguous name for ‘index-from-pack’: ‘pack-index-from-data’ (
386673c
) - [protocol] handle errors as well; transmit progress (first part) (
c484398
) - [protocol] first successful test with pack reading (
ad1e8bf
) - [protocol] first stab at decoding sidebands in Read (
51fe596
) - [protocol] allow Reader delimiter to be configured (
5a01596
) - Refactor (
78f27d8
) - Revert “[protocol] an alternative version with external buffer” (
157d810
) - Revert “[protocol] But external buffers also don't help at all” (
579a697
) - [protocol] But external buffers also don't help at all (
8e711df
) - [protocol] an alternative version with external buffer (
a862d22
) - [protocol] a struggle - putting buffers in Read adapters = bad idea (
e257426
) - [protocol] FAIL: keep referenced PacketLine for minimal copy (
7e4d1f3
) - [protocol] sketch of Read impl for pack line iterator (
fe3b050
) - Refactor (
c81caa3
) - Revert “[protocol] FAIL: attempt to add an actual Iterator impl for packet lines” (
2989781
) - [protocol] FAIL: attempt to add an actual Iterator impl for packet lines (
a6e4cb1
) - Refactor (
20b10c5
) - [protocol] thanks clippy (
10b9017
) - [protocol] tests for the reader (
86d1a40
) - [protocol] A chance for the reader to actually work (
d6aebed
) - Refactor (
8ebdcbd
) - [protocol] FAIL: finally the reader compiles with the ‘slice split technique’… (
58543cb
) - [protocol] FAIL3: giving up - it's quite impossible to do that without ‘bytes’ (
047d67c
) - [protocol] reader FAIL: wherever the loop moves, it will not borrowcheck (
cb154f2
) - [protocol] FAIL2: lifetime issues with loop (
c2ff070
) - [protocol] decode-band can fail on malformed input (
0f468f9
) - Refactor (
ed1f364
) - [protocol] better handling of text-lines (
7ad1db0
) - [protocol] attempt to implement a streaming pack line reader (FAIL :D) (
cc45cec
) - [protocol] add cargo-diet assertions (
831b758
) - Refactor (
73e24c9
) - [protocol] side-band channel encoding and decoding (
9b4fb3e
) - [protocol] suppot for V2 special lines (
4e46719
) - Encode and decode errors (
3f4fd90
) - Decode ERR lines as actual errors (
1f58568
) - More tests (
c34d88b
) - The first succeeding tests for streaming decoding :D (
7ea25c5
) - First stab at implementing streaming decoding of packet line… (
843c6fb
) - Cargo fmt (
60cd21b
) - Allow dual-licensing with Apache 2.0 (
ea353eb
) - Refactor (
7e3f67d
) - Packet line encoding with flush support (
e924a59
) - First bunch of tasks I see after studying parts of the protocol docs (
9bd97ba
)
0.26.2 (2023-01-10)
A maintenance release without user-facing changes.
0.26.1 (2023-01-09)
A maintenance release without user-facing changes.
0.26.0 (2022-12-30)
New Features
- display the underlying permission denied error as source when failing handshake due to authentication.
0.25.1 (2022-12-22)
A maintenance release without user-facing changes.
0.25.0 (2022-12-19)
New Features
fetch::Arguments::use_include_tag()
allows to signal include-tag
. One can also check for its availability using fetch::Arguments::can_use_include_tag()
.
Further there was a bugfix that assumes V1 capabilities are correctly interpreted to support include-tag.
due to more specific errors one can differentiate if remote authentication failed repeatedly.
some errors support is_spurious()
to tell if retrying is possible.
Bug Fixes
don't pass ‘include-tag’ as argument by default. This flag always has to be added by the caller based on configuration.
don't post packfile-uris
capability unless we are able to make use of it. Turns out that this option can be rejected by a server that advertises it, so definitely needs more work to make it work.
Parse refs from bytes, not from String. The latter can cause issues around illformed UTF-8 which wouldn't bother git either.
This comes at the expense of not parsing line by line anymore, but instead reading as fast as possible and parsing afterwards.
Performance wise I think it doesn't matter, but it will cause more memory to be used. If this ever becomes a problem, for example during pushes where we are stuck with V1, we can consider implementing our own streaming approach that works with packet lines instead - they are just not exposed here even though they could.
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.
0.24.0 (2022-11-21)
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.
0.23.0 (2022-11-17)
New Features
- expose
futures_lite
for convenience in downstream crates.
Changed (BREAKING)
move fetch::refs(…, protocol, …)
to the crate root as ls_refs(…)
. This move also removes the protocol
parameter as ls-refs is only available in V2 and the caller is forced to know that after running a handshake(…)
anyway which yields the actual protocol used by the server.
Note that the client can suggest the version to use when connecting, which is specific to the transport at hand.
move fetch::Command
into the crate root. This represents much better on how it is actually used, which is for validation of any Command invoked through the protocol independently.
move fetch::agent|indicate_end_of_interaction
to crate root These are generally useful in all interactions, including push.
handshake(…)
is now generalized to support git-receive-pack
as well. Note that fetch::handshake()
is still present, selecting the correct service like before, but most of the fetch::Ref
parsing is now handled by handshake::Ref
in it's more general location.
There is still fetch::refs(…)
which just invokes a V2 ls-refs command (without that being generalized) as git-receive-pack
just supports V1 at the moment, and making the fetch::LsRefs
Command more general would mean that every command has to be general, at is doesn‘t matter anymore if it’s used for Fetch or Push.
As long as git won't support V2 for pushes, which it never might, there is no need to introduce this breakage even though it should probably be done before going 1.0.
fetch::agent()
returns agent string only; fetch()
takes agent name as parameter.
don't auto-insert user agent, instead prepare to insert it later.
fetch::agent()
now returns the agent name, fetch::agent_tuple()
returns specific key-value pair. This is in preparation for allowing user-defined agent strings.
0.22.0 (2022-11-06)
Changed (BREAKING)
-
fetch::Ref::unpack()
returns Option<oid>
. That way the caller has to be aware of the possibility of an unborn branch (probably the only unborn branch) on the remote.
New Features (BREAKING)
- Support for
unborn
ls-refs capability if server supports it. We can also parse it, adding yet another variant to fetch::Refs
.
0.21.0 (2022-10-10)
Changed
- turn
prepare_ls_refs
in fetch::refs()
into FnOnce
.
New Features
- Allow defaulting
fetch::handshake::Outcome
. This is useful in conjunction with std::mem::take()
. -
fetch::Arguments::is_empty()
to help decide if arguments should be sent at all. Furthermore, the Debug
trait was added. - make some private methods public to give callers more flexibility. This allows to implement the fetch-negotiation part oneself and break free from constraints of the delegate.
- add
client::fetch_pack()
allowing to fetch a pack after a handshake.
Bug Fixes
support keepalive packets. Keepalive packets are side-band only empty datalines that should just be ignored. This is now happening, allowing longer git operations to work as they will send keepalive packets every 5 seconds, and previously we would choke on it.
Note that empty datalines are never send otherwise, making it a previously unused marker that can safely be skipped.
Link up Io error as source for error chaining; add Debug
to client::fetch::Response
Reverted
-
client::fetch_pack()
isn‘t worth it after all. The overhead required to make it work isn’t worth the logic we are enabling. Instead, it's OK to re-implement custom logic on the consumer side based on this one.
0.20.0 (2022-09-20)
Changed (BREAKING)
-
fetch::Ref::unpack()
returns &BStr
instead of &BString
as ref name. -
fetch::Ref::unpack()
now returns the peeled object as well. - rename
fetch::Ref::path
to fetch::Ref::full_ref_name
. Previously it was inaccurately named and described due to an insufficient understanding of the ref database. - upgrade
bstr
to 1.0.1
0.19.1 (2022-08-28)
Maintenance release without user-facing changes.
New Features
-
helper::main
to easily create credential helper implementations
0.19.0 (2022-08-24)
Chore
- uniformize deny attributes
New Features
- provide a function to gracefully shut down a fetch transport
- use docsrs feature in code to show what is feature-gated automatically on docs.rs
- pass --cfg docsrs when compiling for https://docs.rs
- re-export maybe_async That way, API users can also provide dynamically sync or async APIs.
0.18.1 (2022-08-17)
A maintenance release without user facing changes.
Changed (BREAKING)
replace quick-error
with this-error
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
- add
fetch::refs()
method to invoke ls-refs
for V2 and parse the result - factor fetch handshake into
fetch::handshake()
function
0.18.0 (2022-07-22)
This is a maintenance release with no functional changes.
0.17.0 (2022-06-13)
A maintenance release without user-facing changes.
0.16.0 (2022-05-18)
New Features (BREAKING)
- use
gix-credentials
in gix-protocol
0.15.0 (2022-04-03)
New Features
- in-manifest and in-lib feature documentation
0.14.0 (2022-01-23)
A maintenance release with no relevant changes.
0.13.0 (2021-11-29)
A maintenance release, triggered by putting too many adjustments into a single commit.
0.12.1 (2021-11-16)
A maintenance release triggered by changes to gix-pack and changelog rewrites.
v0.12.0 (2021-10-19)
A maintenance release to properly dealing with previously breaking changes in gix-hash
.
v0.11.0 (2021-10-15)
Bug Fixes
‘(null)’ symref targets are turned into direct refs instead
because that‘s what ‘git’ would do if it would care enough. On the client side this means one has to deal with detached heads and it’s obvious that these are detached. It‘s not clear anymore why this is the case, and probably it’s good to hide it as the current git behaviour is accidental and may change in future, and do so in a way we predict.
There is the possibility that git would abort the entire fetch/upload-pack operation, but that's already handled correctly by our implementation as well as we understand ERR messages in packet lines.
v0.10.4 (2021-09-10)
v0.10.3 (2021-09-07)
v0.10.2 (2021-08-29)
v0.10.1 (2021-08-27)
- instruct docs.rs which features to use for more useful documentation
v0.10.0 (2021-08-27)
- Various minor updates of pre-release dependencies
v0.9.0 (2021-08-17)
BREAKING
- Add fifth argument to
fetch(…)
v0.8.1 (2021-08-13)
v0.8.0 (2021-08-10)
v0.7.0 (2021-05-09)
v0.6.0 (2021-04-08)
v0.5.0 (2021-03-26)
v0.4.1 (2021-01-05)
v0.4.0 (2020-12-16)
v0.3.0 (2020-12-15)
v0.2.0 (2020-12-15)
v0.1.1 (2020-09-14)
v0.1.0 (2020-09-12)
v0.0.0 (2020-08-13)