diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-18 02:49:42 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-18 02:49:42 +0000 |
commit | 837b550238aa671a591ccf282dddeab29cadb206 (patch) | |
tree | 914b6b8862bace72bd3245ca184d374b08d8a672 /vendor/gix-protocol | |
parent | Adding debian version 1.70.0+dfsg2-1. (diff) | |
download | rustc-837b550238aa671a591ccf282dddeab29cadb206.tar.xz rustc-837b550238aa671a591ccf282dddeab29cadb206.zip |
Merging upstream version 1.71.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/gix-protocol')
-rw-r--r-- | vendor/gix-protocol/.cargo-checksum.json | 2 | ||||
-rw-r--r-- | vendor/gix-protocol/CHANGELOG.md | 185 | ||||
-rw-r--r-- | vendor/gix-protocol/Cargo.toml | 22 | ||||
-rw-r--r-- | vendor/gix-protocol/src/fetch/delegate.rs | 2 | ||||
-rw-r--r-- | vendor/gix-protocol/src/fetch/response/async_io.rs | 13 | ||||
-rw-r--r-- | vendor/gix-protocol/src/fetch/response/blocking_io.rs | 8 | ||||
-rw-r--r-- | vendor/gix-protocol/src/fetch/response/mod.rs | 6 | ||||
-rw-r--r-- | vendor/gix-protocol/src/fetch_fn.rs | 13 | ||||
-rw-r--r-- | vendor/gix-protocol/src/handshake/function.rs | 2 | ||||
-rw-r--r-- | vendor/gix-protocol/src/handshake/mod.rs | 6 | ||||
-rw-r--r-- | vendor/gix-protocol/src/handshake/refs/tests.rs | 27 | ||||
-rw-r--r-- | vendor/gix-protocol/src/remote_progress.rs | 4 |
12 files changed, 252 insertions, 38 deletions
diff --git a/vendor/gix-protocol/.cargo-checksum.json b/vendor/gix-protocol/.cargo-checksum.json index bfbb01335..d60dfbf53 100644 --- a/vendor/gix-protocol/.cargo-checksum.json +++ b/vendor/gix-protocol/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"CHANGELOG.md":"4b0f97afcd6a0c8b193c4c257eec3afdabef40ccfb4f139b009521a89e314636","Cargo.toml":"5a0d0317ab6dc12eef759a63a30251f4e255dc8118d1e792b79b2fff34416874","src/command/mod.rs":"ec473fea3cdc0d956053005bc381a8793419c593a0b5dd91f6e25305d4ba302c","src/command/tests.rs":"42f5c98a4a8cf1f58c4c97c0f6c61ecf5e6f8380032a8452e8dfd8f093e7a975","src/fetch/arguments/async_io.rs":"cdea0d5a8e627ce7658b51425d0a7714b33db77e7b6214bb5186419193155eed","src/fetch/arguments/blocking_io.rs":"310b75ff3d7faae68ce9c4933a125ad7fc31365abb41e8c6df19c242f8137147","src/fetch/arguments/mod.rs":"f802140b51ee9fe641301e0aece3c68dea5c7a47a108fe54875a35fac56532e0","src/fetch/delegate.rs":"c606f6f5b8143eb5feb2e7a285928f112a5cc70df5b39416b50147912ae98638","src/fetch/error.rs":"63d305d921765056e179a5c19cfe1075319eaaa661877f4cefdc4dc247f3bb44","src/fetch/handshake.rs":"374a0b8394a362cd7fab30aaed2a9fa5a1f047c590da4ee7cfd9c432adc4755a","src/fetch/mod.rs":"94db03392ab0e62d5c33fc02dc6889b8d65c304637d7a9d9b27104f81424c460","src/fetch/response/async_io.rs":"7aa03b6e6cfbd797a32599a443a89490fb34a0d8fb2baf3347a84391a80f8c82","src/fetch/response/blocking_io.rs":"edb4f02593603da449730d5567d3ecb75109817f27a073854670d72ce99f4294","src/fetch/response/mod.rs":"f89f3358442b6e45e94a47c941118869137e2a45a530ac966fa700d2564ae9c1","src/fetch/tests.rs":"13d198035baeacc4586eac1f2b0f22c08b21e496591388309321411bd0a4fba2","src/fetch_fn.rs":"fd887d129abf15a259ed19a9ae433f026e2526d440b0f9d2a3291e1d803c5d3d","src/handshake/function.rs":"cc6ebc6d223f545165e7ad4ec97c30537f01ab2cd39269a9f57944a4ab26733e","src/handshake/mod.rs":"1bb0c2ad6ccc2abfe98e81450231538521e735a0f86ea63c455195d716e2dd4f","src/handshake/refs/async_io.rs":"1f8143928517f5dcdbeb01b4f98774cf17afe6e37db75558752599ba7b88fd20","src/handshake/refs/blocking_io.rs":"9475538f6b90e46174438a08f89b0cc5ba938644ae409d5c32a5d9fd3e023862","src/handshake/refs/mod.rs":"2bd46c247a6b61095942992a7f036a6c0ba235aa11bab6bece92995dc31f48f6","src/handshake/refs/shared.rs":"f00a08215aa1e64ca434e7b07db20ee56ba2dbf29535e9cb0cd303c3a5a93cbf","src/handshake/refs/tests.rs":"3df96c2d1a1faf2ada47f53267f6783bd61eea9f1fa3f7b3dc1e6e62c1fda939","src/lib.rs":"37d70654d2b4bca30f53681b62888bd0b69cc143ee3e5239089842065f1c0b52","src/ls_refs.rs":"880d44ff5c874f46d7c0db4761582451faf6783d78e47a5c6521b8542a221504","src/remote_progress.rs":"e271b6a4c21ad1c4a27ff356de3c24160c665f07f5242e813ecd53254250ebbe","src/util.rs":"d83861fd81167f09ba0e93278703f827b201299e1991382f6274b6ba8abce6cd"},"package":"6d372ab11d5d28ac21800e3f1a6603a67c1ead57f6f5fab07e1e73e960f331c1"}
\ No newline at end of file +{"files":{"CHANGELOG.md":"b851b021ae98c001d903539760ee8d2b4f0ab3c9c95aa202be0004fbc6b48a63","Cargo.toml":"2796fb464f9896fdea4ebc70ed1283110ad298ffc82cf7fc57ed69171a50a0d1","src/command/mod.rs":"ec473fea3cdc0d956053005bc381a8793419c593a0b5dd91f6e25305d4ba302c","src/command/tests.rs":"42f5c98a4a8cf1f58c4c97c0f6c61ecf5e6f8380032a8452e8dfd8f093e7a975","src/fetch/arguments/async_io.rs":"cdea0d5a8e627ce7658b51425d0a7714b33db77e7b6214bb5186419193155eed","src/fetch/arguments/blocking_io.rs":"310b75ff3d7faae68ce9c4933a125ad7fc31365abb41e8c6df19c242f8137147","src/fetch/arguments/mod.rs":"f802140b51ee9fe641301e0aece3c68dea5c7a47a108fe54875a35fac56532e0","src/fetch/delegate.rs":"ac7946544846b2c25507a3b8b6c1ee687e99cfc04b1a87d17f444494fd6042d4","src/fetch/error.rs":"63d305d921765056e179a5c19cfe1075319eaaa661877f4cefdc4dc247f3bb44","src/fetch/handshake.rs":"374a0b8394a362cd7fab30aaed2a9fa5a1f047c590da4ee7cfd9c432adc4755a","src/fetch/mod.rs":"94db03392ab0e62d5c33fc02dc6889b8d65c304637d7a9d9b27104f81424c460","src/fetch/response/async_io.rs":"b78aa578466e24e3909937fef37d70f2f5b1717bd19a693113008330793aece0","src/fetch/response/blocking_io.rs":"a2a613b1f4e709210999c94cdc8173111a67932aeb334b991e2ac6b69c5c6325","src/fetch/response/mod.rs":"4f62e89b52c92dd6f1a0649bb228909bf3e443c24dab71abd5cd4e5ad187151a","src/fetch/tests.rs":"13d198035baeacc4586eac1f2b0f22c08b21e496591388309321411bd0a4fba2","src/fetch_fn.rs":"4ca375483f785fd8dc508cabdfcc7a12debb894489a9be1ed89b16b5b4e36c72","src/handshake/function.rs":"6656bb5e87a255c0c043df4a6aa3b92b6eb2d39ec71ab4738c06cb1ad2e7fad4","src/handshake/mod.rs":"49a018f60620ccb7e198bebdef8026996c52aa9374fe5dfd6306605bf6e0a13a","src/handshake/refs/async_io.rs":"1f8143928517f5dcdbeb01b4f98774cf17afe6e37db75558752599ba7b88fd20","src/handshake/refs/blocking_io.rs":"9475538f6b90e46174438a08f89b0cc5ba938644ae409d5c32a5d9fd3e023862","src/handshake/refs/mod.rs":"2bd46c247a6b61095942992a7f036a6c0ba235aa11bab6bece92995dc31f48f6","src/handshake/refs/shared.rs":"f00a08215aa1e64ca434e7b07db20ee56ba2dbf29535e9cb0cd303c3a5a93cbf","src/handshake/refs/tests.rs":"9e7707faafb08d3e2cfb83efe7ee1bee52504ec9ee633eb168732bc18d2936ce","src/lib.rs":"37d70654d2b4bca30f53681b62888bd0b69cc143ee3e5239089842065f1c0b52","src/ls_refs.rs":"880d44ff5c874f46d7c0db4761582451faf6783d78e47a5c6521b8542a221504","src/remote_progress.rs":"cbcb30386c67c86b42f10af863edb72fdc920367aa320bcaf2c54190bd464f43","src/util.rs":"d83861fd81167f09ba0e93278703f827b201299e1991382f6274b6ba8abce6cd"},"package":"877e49417f1730f4dbc2f7d9a2ab0f8b2f49ef08f97270691403ecde3d961e3a"}
\ No newline at end of file diff --git a/vendor/gix-protocol/CHANGELOG.md b/vendor/gix-protocol/CHANGELOG.md index e436516c7..fc6468c1c 100644 --- a/vendor/gix-protocol/CHANGELOG.md +++ b/vendor/gix-protocol/CHANGELOG.md @@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## 0.28.0 (2023-03-04) +## 0.32.0 (2023-04-27) A maintenance release without user-facing changes. @@ -14,6 +14,188 @@ A maintenance release without user-facing changes. <csr-read-only-do-not-edit/> - 2 commits contributed to the release. + - 0 commits were understood as [conventional](https://www.conventionalcommits.org). + - 0 issues like '(#ID)' were seen in commit messages + +### Commit Details + +<csr-read-only-do-not-edit/> + +<details><summary>view details</summary> + + * **Uncategorized** + - Prepare changelogs prior to release ([`0135158`](https://github.com/Byron/gitoxide/commit/013515897215400539bfd53c25548bd054186ba6)) + - Bump gix-path v0.8.0, safety bump 20 crates (gix set to 0.44.1 manually) ([`43ebaf2`](https://github.com/Byron/gitoxide/commit/43ebaf267557218865862538ffc7bdf00558492f)) +</details> + +## 0.31.0 (2023-04-26) + +### New Features (BREAKING) + + - <csr-id-b83ee366a3c65c717beb587ad809268f1c54b8ad/> Rename `serde1` cargo feature to `serde` and use the weak-deps cargo capability. + With it it's possible to not automatically declare all optional dependencies externally visible + features, and thus re-use feature names that oterwise are also a crate name. + + Previously I thought that `serde1` is for future-proofing and supporting multiple serde versions + at the same time. However, it's most definitely a burden I wouldn't want anyway, so using + `serde` seems to be the way to go into the future. + +### Commit Statistics + +<csr-read-only-do-not-edit/> + + - 11 commits contributed to the release over the course of 14 calendar days. + - 27 days passed between releases. + - 1 commit was understood as [conventional](https://www.conventionalcommits.org). + - 1 unique issue was worked on: [#814](https://github.com/Byron/gitoxide/issues/814) + +### Thanks Clippy + +<csr-read-only-do-not-edit/> + +[Clippy](https://github.com/rust-lang/rust-clippy) helped 1 time to make code idiomatic. + +### Commit Details + +<csr-read-only-do-not-edit/> + +<details><summary>view details</summary> + + * **[#814](https://github.com/Byron/gitoxide/issues/814)** + - Rename `serde1` cargo feature to `serde` and use the weak-deps cargo capability. ([`b83ee36`](https://github.com/Byron/gitoxide/commit/b83ee366a3c65c717beb587ad809268f1c54b8ad)) + * **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`](https://github.com/Byron/gitoxide/commit/d7173b2d2cb79685fdf7f618c31c576db24fa648)) + - 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`](https://github.com/Byron/gitoxide/commit/e4df5574c0813a0236319fa6e8b3b41bab179fc8)) + - 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`](https://github.com/Byron/gitoxide/commit/91134a11c8ba0e942f692488ec9bce9fa1086324)) + - Prepare changelogs prior to release ([`30a1a71`](https://github.com/Byron/gitoxide/commit/30a1a71f36f24faac0e0b362ffdfedea7f9cdbf1)) + - Merge branch 'fix-823' ([`6ebd61e`](https://github.com/Byron/gitoxide/commit/6ebd61e548a36a04e413ac725a03e607a3588334)) + - Thanks clippy ([`14e64e7`](https://github.com/Byron/gitoxide/commit/14e64e74649cfb1f2f99da87015939af98fae5c8)) + - 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`](https://github.com/Byron/gitoxide/commit/8dbd0a60557a85acfa231800a058cbac0271a8cf)) + - Merge branch 'main' into dev ([`cdef398`](https://github.com/Byron/gitoxide/commit/cdef398c4a3bd01baf0be2c27a3f77a400172b0d)) + - Rename the serde1 feature to serde ([`19338d9`](https://github.com/Byron/gitoxide/commit/19338d934b6712b7d6bd3fa3b2e4189bf7e6c8a1)) + - Release gix-hash v0.10.4, gix-hashtable v0.1.3 ([`b574a39`](https://github.com/Byron/gitoxide/commit/b574a3904203762a6b9e475e16a7c358d7616599)) +</details> + +## 0.30.2 (2023-03-30) + +### Documentation + + - <csr-id-cc48c35d0ecf35824910c5b6ecc62fe9b2aff1b5/> fix minor typos + +### Commit Statistics + +<csr-read-only-do-not-edit/> + + - 2 commits contributed to the release over the course of 1 calendar day. + - 4 days passed between releases. + - 1 commit was understood as [conventional](https://www.conventionalcommits.org). + - 0 issues like '(#ID)' were seen in commit messages + +### Commit Details + +<csr-read-only-do-not-edit/> + +<details><summary>view details</summary> + + * **Uncategorized** + - Release gix-path v0.7.3, gix-config-value v0.10.2, gix-config v0.20.1, gix-discover v0.16.2, gix-index v0.15.1, gix-odb v0.43.1, gix-packetline v0.15.1, gix-protocol v0.30.2, gix-worktree v0.15.2, gix v0.43.1 ([`38eed1d`](https://github.com/Byron/gitoxide/commit/38eed1d06e7cbb8fbcd54b2cad3163ca45e0baf1)) + - Fix minor typos ([`cc48c35`](https://github.com/Byron/gitoxide/commit/cc48c35d0ecf35824910c5b6ecc62fe9b2aff1b5)) +</details> + +## 0.30.1 (2023-03-26) + +### Bug Fixes + + - <csr-id-d4c82e7e7139ae251300d4b71bcd8ed0255a163a/> don't assume that credential providers always return credentials or error during handshake. + The type-system allows this even though when getting credentials this should never happen and won't + in the default implementation. However, users can of course return nothing and provide no error which + is when we have to create one, instead of panicking. + +### Commit Statistics + +<csr-read-only-do-not-edit/> + + - 3 commits contributed to the release over the course of 5 calendar days. + - 11 days passed between releases. + - 1 commit was understood as [conventional](https://www.conventionalcommits.org). + - 0 issues like '(#ID)' were seen in commit messages + +### Commit Details + +<csr-read-only-do-not-edit/> + +<details><summary>view details</summary> + + * **Uncategorized** + - Release gix-tempfile v5.0.2, gix-validate v0.7.4, gix-config v0.20.0, gix-prompt v0.3.3, gix-diff v0.28.1, gix-discover v0.16.1, gix-pack v0.33.2, gix-transport v0.29.1, gix-protocol v0.30.1, gix-revision v0.12.1, gix-worktree v0.15.1, gix v0.43.0, safety bump gix v0.43.0 ([`5dc1f9f`](https://github.com/Byron/gitoxide/commit/5dc1f9f2bcb8b3e147115fcb6f76558e8f48ffef)) + - Prepare changelogs prior to release ([`3016a28`](https://github.com/Byron/gitoxide/commit/3016a285f566bdfe7de2774fa6f2254c1b1a2c51)) + - Don't assume that credential providers always return credentials or error during handshake. ([`d4c82e7`](https://github.com/Byron/gitoxide/commit/d4c82e7e7139ae251300d4b71bcd8ed0255a163a)) +</details> + +## 0.30.0 (2023-03-14) + +A maintenance release without any user-facing changes. + +### Commit Statistics + +<csr-read-only-do-not-edit/> + + - 7 commits contributed to the release over the course of 3 calendar days. + - 3 days passed between releases. + - 0 commits were understood as [conventional](https://www.conventionalcommits.org). + - 0 issues like '(#ID)' were seen in commit messages + +### Commit Details + +<csr-read-only-do-not-edit/> + +<details><summary>view details</summary> + + * **Uncategorized** + - Release gix-features v0.28.1, gix-tempfile v5.0.1, gix-ref v0.27.1, gix-pack v0.33.1, gix-packetline v0.15.0, gix-transport v0.29.0, gix-protocol v0.30.0, gix v0.42.0, safety bump 3 crates ([`c1f1bfb`](https://github.com/Byron/gitoxide/commit/c1f1bfb8dc0e73993678353e4492d0614b642ed1)) + - Prepare changelogs prior to release ([`c66e298`](https://github.com/Byron/gitoxide/commit/c66e2982577e4cd9faef63798986b8cf8ece93a2)) + - Make fmt ([`3836cc0`](https://github.com/Byron/gitoxide/commit/3836cc0c9c3e1158b56142b924483c8a77217d53)) + - Merge branch 'various-fixes' ([`cc0f506`](https://github.com/Byron/gitoxide/commit/cc0f5061fba27d57022dc616c941034b98fd4875)) + - Adjust to changes in `gix-packetline` ([`4f45814`](https://github.com/Byron/gitoxide/commit/4f45814eea9c20b449effd9b29d31623943ff853)) + - Merge branch 'shallow-protocol' ([`531dd19`](https://github.com/Byron/gitoxide/commit/531dd19502b8b635fb1a60f747eb381fd12e00ca)) + - Merge branch 'fix-cred-helper' ([`01277a6`](https://github.com/Byron/gitoxide/commit/01277a681e4997896e04567490c572b5af606f35)) +</details> + +## 0.29.0 (2023-03-10) + +A maintenance release without user-facing changes. + +### Commit Statistics + +<csr-read-only-do-not-edit/> + + - 4 commits contributed to the release. + - 6 days passed between releases. + - 0 commits were understood as [conventional](https://www.conventionalcommits.org). + - 0 issues like '(#ID)' were seen in commit messages + +### Commit Details + +<csr-read-only-do-not-edit/> + +<details><summary>view details</summary> + + * **Uncategorized** + - Release gix-tempfile v5.0.0, gix-lock v5.0.0, gix-ref v0.27.0, gix-config v0.19.0, gix-url v0.16.0, gix-credentials v0.12.0, gix-discover v0.16.0, gix-index v0.15.0, gix-pack v0.33.0, gix-odb v0.43.0, gix-transport v0.28.0, gix-protocol v0.29.0, gix-worktree v0.15.0, gix v0.41.0, safety bump 12 crates ([`29a0870`](https://github.com/Byron/gitoxide/commit/29a087043d1feb2f127b065341c8028d0bd0301e)) + - Prepare changelogs prior to release ([`e06f5f5`](https://github.com/Byron/gitoxide/commit/e06f5f523e83f4da390eddbebcb9a2d58674587b)) + - Add more fetch::Arguments tests ([`ac34d2e`](https://github.com/Byron/gitoxide/commit/ac34d2e96d7904fdf0c654a64260be0ec106ae0f)) + - Adapt to changes in `gix-transport` and add V2 test for unshallow fetching ([`0eecfab`](https://github.com/Byron/gitoxide/commit/0eecfab26972fe784b7945b299e06624c922fe33)) +</details> + +## 0.28.0 (2023-03-04) + +A maintenance release without user-facing changes. + +### Commit Statistics + +<csr-read-only-do-not-edit/> + + - 3 commits contributed to the release. - 3 days passed between releases. - 0 commits were understood as [conventional](https://www.conventionalcommits.org). - 0 issues like '(#ID)' were seen in commit messages @@ -25,6 +207,7 @@ A maintenance release without user-facing changes. <details><summary>view details</summary> * **Uncategorized** + - Release gix-attributes v0.10.0, gix-ref v0.26.0, gix-config v0.18.0, gix-url v0.15.0, gix-credentials v0.11.0, gix-discover v0.15.0, gix-index v0.14.0, gix-mailmap v0.11.0, gix-odb v0.42.0, gix-transport v0.27.0, gix-protocol v0.28.0, gix-revision v0.12.0, gix-refspec v0.9.0, gix-worktree v0.14.0, gix v0.39.0 ([`93e75fe`](https://github.com/Byron/gitoxide/commit/93e75fed454ed8b342231bde4638db90e407ce52)) - Prepare changelogs prior to release ([`895e482`](https://github.com/Byron/gitoxide/commit/895e482badf01e953bb9144001eebd5e1b1c4d84)) - 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`](https://github.com/Byron/gitoxide/commit/0f411e93ec812592bb9d3a52b751399dd86f76f7)) </details> diff --git a/vendor/gix-protocol/Cargo.toml b/vendor/gix-protocol/Cargo.toml index 168a4be61..150acf93f 100644 --- a/vendor/gix-protocol/Cargo.toml +++ b/vendor/gix-protocol/Cargo.toml @@ -13,7 +13,7 @@ edition = "2021" rust-version = "1.64" name = "gix-protocol" -version = "0.28.0" +version = "0.32.0" authors = ["Sebastian Thiel <sebastian.thiel@icloud.com>"] include = [ "src/**/*", @@ -28,7 +28,7 @@ repository = "https://github.com/Byron/gitoxide" features = [ "blocking-client", "document-features", - "serde1", + "serde", ] rustdoc-args = [ "--cfg", @@ -76,17 +76,17 @@ version = "1.12.0" optional = true [dependencies.gix-credentials] -version = "^0.11.0" +version = "^0.14.0" [dependencies.gix-features] -version = "^0.28.0" +version = "^0.29.0" features = ["progress"] [dependencies.gix-hash] -version = "^0.10.3" +version = "^0.11.1" [dependencies.gix-transport] -version = "^0.27.0" +version = "^0.31.0" [dependencies.maybe-async] version = "0.2.6" @@ -110,7 +110,7 @@ version = "1.9.0" features = ["attributes"] [dev-dependencies.gix-packetline] -version = "^0.14.3" +version = "^0.16.0" [features] async-client = [ @@ -123,9 +123,9 @@ blocking-client = [ "gix-transport/blocking-client", "maybe-async/is_sync", ] -serde1 = [ - "serde", +serde = [ + "dep:serde", "bstr/serde", - "gix-transport/serde1", - "gix-hash/serde1", + "gix-transport/serde", + "gix-hash/serde", ] diff --git a/vendor/gix-protocol/src/fetch/delegate.rs b/vendor/gix-protocol/src/fetch/delegate.rs index b0db2f833..d4b900f66 100644 --- a/vendor/gix-protocol/src/fetch/delegate.rs +++ b/vendor/gix-protocol/src/fetch/delegate.rs @@ -86,7 +86,7 @@ pub trait DelegateBlocking { /// with each call to `negotiate` to find the common base(s). /// /// Note that you should not `want` and object that you already have. - /// `refs` are the the tips of on the server side, effectively the latest objects _they_ have. + /// `refs` are the tips of on the server side, effectively the latest objects _they_ have. /// /// Return `Action::Close` if you know that there are no `haves` on your end to allow the server to send all of its objects /// as is the case during initial clones. diff --git a/vendor/gix-protocol/src/fetch/response/async_io.rs b/vendor/gix-protocol/src/fetch/response/async_io.rs index 7b00d843c..550ed46b6 100644 --- a/vendor/gix-protocol/src/fetch/response/async_io.rs +++ b/vendor/gix-protocol/src/fetch/response/async_io.rs @@ -1,6 +1,5 @@ use std::io; -use futures_lite::AsyncBufReadExt; use gix_transport::{client, Protocol}; use crate::fetch::{ @@ -16,7 +15,7 @@ async fn parse_v2_section<T>( parse: impl Fn(&str) -> Result<T, response::Error>, ) -> Result<bool, response::Error> { line.clear(); - while reader.read_line(line).await? != 0 { + while reader.readline_str(line).await? != 0 { res.push(parse(line)?); line.clear(); } @@ -62,7 +61,7 @@ impl Response { Some(client::MessageKind::Flush), "If this isn't a flush packet, we don't know what's going on" ); - reader.read_line(&mut line).await?; + reader.readline_str(&mut line).await?; reader.reset(Protocol::V1); match reader.peek_data_line().await { Some(Ok(Ok(line))) => String::from_utf8_lossy(line), @@ -76,7 +75,11 @@ impl Response { if Response::parse_v1_ack_or_shallow_or_assume_pack(&mut acks, &mut shallows, &peeked_line) { break 'lines true; } - assert_ne!(reader.read_line(&mut line).await?, 0, "consuming a peeked line works"); + assert_ne!( + reader.readline_str(&mut line).await?, + 0, + "consuming a peeked line works" + ); }; Ok(Response { acks, @@ -94,7 +97,7 @@ impl Response { let mut wanted_refs = Vec::<WantedRef>::new(); let has_pack = 'section: loop { line.clear(); - if reader.read_line(&mut line).await? == 0 { + if reader.readline_str(&mut line).await? == 0 { return Err(response::Error::Io(io::Error::new( io::ErrorKind::UnexpectedEof, "Could not read message headline", diff --git a/vendor/gix-protocol/src/fetch/response/blocking_io.rs b/vendor/gix-protocol/src/fetch/response/blocking_io.rs index ca79724e2..7a3f2deb3 100644 --- a/vendor/gix-protocol/src/fetch/response/blocking_io.rs +++ b/vendor/gix-protocol/src/fetch/response/blocking_io.rs @@ -15,7 +15,7 @@ fn parse_v2_section<T>( parse: impl Fn(&str) -> Result<T, response::Error>, ) -> Result<bool, response::Error> { line.clear(); - while reader.read_line(line)? != 0 { + while reader.readline_str(line)? != 0 { res.push(parse(line)?); line.clear(); } @@ -61,7 +61,7 @@ impl Response { Some(client::MessageKind::Flush), "If this isn't a flush packet, we don't know what's going on" ); - reader.read_line(&mut line)?; + reader.readline_str(&mut line)?; reader.reset(Protocol::V1); match reader.peek_data_line() { Some(Ok(Ok(line))) => String::from_utf8_lossy(line), @@ -75,7 +75,7 @@ impl Response { if Response::parse_v1_ack_or_shallow_or_assume_pack(&mut acks, &mut shallows, &peeked_line) { break 'lines true; } - assert_ne!(reader.read_line(&mut line)?, 0, "consuming a peeked line works"); + assert_ne!(reader.readline_str(&mut line)?, 0, "consuming a peeked line works"); }; Ok(Response { acks, @@ -93,7 +93,7 @@ impl Response { let mut wanted_refs = Vec::<WantedRef>::new(); let has_pack = 'section: loop { line.clear(); - if reader.read_line(&mut line)? == 0 { + if reader.readline_str(&mut line)? == 0 { return Err(response::Error::Io(io::Error::new( io::ErrorKind::UnexpectedEof, "Could not read message headline", diff --git a/vendor/gix-protocol/src/fetch/response/mod.rs b/vendor/gix-protocol/src/fetch/response/mod.rs index 8c99cc872..bfb4beb83 100644 --- a/vendor/gix-protocol/src/fetch/response/mod.rs +++ b/vendor/gix-protocol/src/fetch/response/mod.rs @@ -49,7 +49,7 @@ impl gix_transport::IsSpuriousError for Error { /// An 'ACK' line received from the server. #[derive(PartialEq, Eq, Debug, Hash, Ord, PartialOrd, Clone, Copy)] -#[cfg_attr(feature = "serde1", derive(serde::Serialize, serde::Deserialize))] +#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] pub enum Acknowledgement { /// The contained `id` is in common. Common(gix_hash::ObjectId), @@ -61,7 +61,7 @@ pub enum Acknowledgement { /// A shallow line received from the server. #[derive(PartialEq, Eq, Debug, Hash, Ord, PartialOrd, Clone, Copy)] -#[cfg_attr(feature = "serde1", derive(serde::Serialize, serde::Deserialize))] +#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] pub enum ShallowUpdate { /// Shallow the given `id`. Shallow(gix_hash::ObjectId), @@ -71,7 +71,7 @@ pub enum ShallowUpdate { /// A wanted-ref line received from the server. #[derive(PartialEq, Eq, Debug, Hash, Ord, PartialOrd, Clone)] -#[cfg_attr(feature = "serde1", derive(serde::Serialize, serde::Deserialize))] +#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] pub struct WantedRef { /// The object id of the wanted ref, as seen by the server. pub id: gix_hash::ObjectId, diff --git a/vendor/gix-protocol/src/fetch_fn.rs b/vendor/gix-protocol/src/fetch_fn.rs index 5b2d214ae..5899ed95f 100644 --- a/vendor/gix-protocol/src/fetch_fn.rs +++ b/vendor/gix-protocol/src/fetch_fn.rs @@ -11,6 +11,7 @@ use crate::{ }; /// A way to indicate how to treat the connection underlying the transport, potentially allowing to reuse it. +#[derive(Default, Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum FetchConnection { /// Use this variant if server should be informed that the operation is completed and no further commands will be issued /// at the end of the fetch operation or after deciding that no fetch operation should happen after references were listed. @@ -19,6 +20,7 @@ pub enum FetchConnection { /// Generally it only applies when using persistent transports. /// /// In most explicit client side failure modes the end-of-operation' notification will be sent to the server automatically. + #[default] TerminateOnSuccessfulCompletion, /// Indicate that persistent transport connections can be reused by _not_ sending an 'end-of-operation' notification to the server. @@ -31,12 +33,6 @@ pub enum FetchConnection { AllowReuse, } -impl Default for FetchConnection { - fn default() -> Self { - FetchConnection::TerminateOnSuccessfulCompletion - } -} - /// Perform a 'fetch' operation with the server using `transport`, with `delegate` handling all server interactions. /// **Note** that `delegate` has blocking operations and thus this entire call should be on an executor which can handle /// that. This could be the current thread blocking, or another thread. @@ -49,6 +45,8 @@ impl Default for FetchConnection { /// _Note_ that depending on the `delegate`, the actual action performed can be `ls-refs`, `clone` or `fetch`. #[allow(clippy::result_large_err)] #[maybe_async] +// TODO: remove this without losing test coverage - we have the same but better in `gix` and it's +// not really worth it to maintain the delegates here. pub async fn fetch<F, D, T, P>( mut transport: T, mut delegate: D, @@ -162,7 +160,8 @@ where reader.set_progress_handler(Some(Box::new({ let mut remote_progress = progress.add_child("remote"); move |is_err: bool, data: &[u8]| { - crate::RemoteProgress::translate_to_progress(is_err, data, &mut remote_progress) + crate::RemoteProgress::translate_to_progress(is_err, data, &mut remote_progress); + gix_transport::packetline::read::ProgressAction::Continue } }) as gix_transport::client::HandleProgress)); } diff --git a/vendor/gix-protocol/src/handshake/function.rs b/vendor/gix-protocol/src/handshake/function.rs index c56824cca..1206ee363 100644 --- a/vendor/gix-protocol/src/handshake/function.rs +++ b/vendor/gix-protocol/src/handshake/function.rs @@ -46,7 +46,7 @@ where progress.set_name("authentication"); let credentials::protocol::Outcome { identity, next } = authenticate(credentials::helper::Action::get_for_url(url.clone()))? - .expect("FILL provides an identity or errors"); + .ok_or(Error::EmptyCredentials)?; transport.set_identity(identity)?; progress.step(); progress.set_name("handshake (authenticated)"); diff --git a/vendor/gix-protocol/src/handshake/mod.rs b/vendor/gix-protocol/src/handshake/mod.rs index 4e0741012..6d70ed145 100644 --- a/vendor/gix-protocol/src/handshake/mod.rs +++ b/vendor/gix-protocol/src/handshake/mod.rs @@ -3,7 +3,7 @@ use gix_transport::client::Capabilities; /// A git reference, commonly referred to as 'ref', as returned by a git server before sending a pack. #[derive(PartialEq, Eq, Debug, Hash, Ord, PartialOrd, Clone)] -#[cfg_attr(feature = "serde1", derive(serde::Serialize, serde::Deserialize))] +#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] pub enum Ref { /// A ref pointing to a `tag` object, which in turns points to an `object`, usually a commit Peeled { @@ -46,7 +46,7 @@ pub enum Ref { /// The result of the [`handshake()`][super::handshake()] function. #[derive(Default, Debug, Clone)] -#[cfg_attr(feature = "serde1", derive(serde::Serialize, serde::Deserialize))] +#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] pub struct Outcome { /// The protocol version the server responded with. It might have downgraded the desired version. pub server_protocol_version: gix_transport::Protocol, @@ -68,6 +68,8 @@ mod error { pub enum Error { #[error("Failed to obtain credentials")] Credentials(#[from] credentials::protocol::Error), + #[error("No credentials were returned at all as if the credential helper isn't functioning unknowingly")] + EmptyCredentials, #[error("Credentials provided for \"{url}\" were not accepted by the remote")] InvalidCredentials { url: BString, source: std::io::Error }, #[error(transparent)] diff --git a/vendor/gix-protocol/src/handshake/refs/tests.rs b/vendor/gix-protocol/src/handshake/refs/tests.rs index a7c9171a5..7d995da5c 100644 --- a/vendor/gix-protocol/src/handshake/refs/tests.rs +++ b/vendor/gix-protocol/src/handshake/refs/tests.rs @@ -170,6 +170,20 @@ impl<'a> gix_transport::client::ReadlineBufRead for Fixture<'a> { self.0 = lines.as_bytes(); Some(Ok(Ok(gix_packetline::PacketLineRef::Data(res)))) } + + fn readline_str(&mut self, line: &mut String) -> std::io::Result<usize> { + use bstr::{BStr, ByteSlice}; + let bytes: &BStr = self.0.into(); + let mut lines = bytes.lines(); + let res = match lines.next() { + None => return Ok(0), + Some(line) => line, + }; + self.0 = lines.as_bytes(); + let len = res.len(); + line.push_str(res.to_str().expect("valid UTF8 in fixture")); + Ok(len) + } } #[cfg(feature = "async-client")] @@ -220,4 +234,17 @@ impl<'a> gix_transport::client::ReadlineBufRead for Fixture<'a> { self.0 = lines.as_bytes(); Some(Ok(Ok(gix_packetline::PacketLineRef::Data(res)))) } + async fn readline_str(&mut self, line: &mut String) -> std::io::Result<usize> { + use bstr::{BStr, ByteSlice}; + let bytes: &BStr = self.0.into(); + let mut lines = bytes.lines(); + let res = match lines.next() { + None => return Ok(0), + Some(line) => line, + }; + self.0 = lines.as_bytes(); + let len = res.len(); + line.push_str(res.to_str().expect("valid UTF8 in fixture")); + Ok(len) + } } diff --git a/vendor/gix-protocol/src/remote_progress.rs b/vendor/gix-protocol/src/remote_progress.rs index 50d0eed17..538a767fc 100644 --- a/vendor/gix-protocol/src/remote_progress.rs +++ b/vendor/gix-protocol/src/remote_progress.rs @@ -10,9 +10,9 @@ use nom::{ /// The information usually found in remote progress messages as sent by a git server during /// fetch, clone and push operations. #[derive(PartialEq, Eq, Debug, Hash, Ord, PartialOrd, Clone, Copy)] -#[cfg_attr(feature = "serde1", derive(serde::Serialize, serde::Deserialize))] +#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] pub struct RemoteProgress<'a> { - #[cfg_attr(feature = "serde1", serde(borrow))] + #[cfg_attr(feature = "serde", serde(borrow))] /// The name of the action, like "clone". pub action: &'a bstr::BStr, /// The percentage to indicate progress, between 0 and 100. |