summaryrefslogtreecommitdiffstats
path: root/vendor/gix
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-07 05:48:48 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-07 05:48:48 +0000
commitef24de24a82fe681581cc130f342363c47c0969a (patch)
tree0d494f7e1a38b95c92426f58fe6eaa877303a86c /vendor/gix
parentReleasing progress-linux version 1.74.1+dfsg1-1~progress7.99u1. (diff)
downloadrustc-ef24de24a82fe681581cc130f342363c47c0969a.tar.xz
rustc-ef24de24a82fe681581cc130f342363c47c0969a.zip
Merging upstream version 1.75.0+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/gix')
-rw-r--r--vendor/gix/.cargo-checksum.json2
-rw-r--r--vendor/gix/CHANGELOG.md138
-rw-r--r--vendor/gix/Cargo.lock180
-rw-r--r--vendor/gix/Cargo.toml74
-rw-r--r--vendor/gix/src/clone/fetch/mod.rs4
-rw-r--r--vendor/gix/src/clone/fetch/util.rs2
-rw-r--r--vendor/gix/src/config/cache/access.rs10
-rw-r--r--vendor/gix/src/config/tree/keys.rs2
-rw-r--r--vendor/gix/src/config/tree/sections/core.rs3
-rw-r--r--vendor/gix/src/filter.rs4
-rw-r--r--vendor/gix/src/head/peel.rs4
-rw-r--r--vendor/gix/src/lib.rs8
-rw-r--r--vendor/gix/src/object/blob.rs26
-rw-r--r--vendor/gix/src/object/commit.rs8
-rw-r--r--vendor/gix/src/object/impls.rs56
-rw-r--r--vendor/gix/src/object/mod.rs19
-rw-r--r--vendor/gix/src/object/tag.rs26
-rw-r--r--vendor/gix/src/object/tree/mod.rs26
-rw-r--r--vendor/gix/src/reference/errors.rs23
-rw-r--r--vendor/gix/src/reference/mod.rs2
-rw-r--r--vendor/gix/src/repository/cache.rs2
-rw-r--r--vendor/gix/src/repository/index.rs10
-rw-r--r--vendor/gix/src/repository/location.rs1
-rw-r--r--vendor/gix/src/repository/object.rs49
-rw-r--r--vendor/gix/src/repository/reference.rs9
-rw-r--r--vendor/gix/src/types.rs20
26 files changed, 540 insertions, 168 deletions
diff --git a/vendor/gix/.cargo-checksum.json b/vendor/gix/.cargo-checksum.json
index 4c3735e08..7ac96fdd7 100644
--- a/vendor/gix/.cargo-checksum.json
+++ b/vendor/gix/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{"CHANGELOG.md":"1d19c01836b4304d7ff947d7d708c920c82bb3e890c409bc3a595f04e8a53f7c","Cargo.lock":"a6d5cde82a8ae844af84ae8aeea87244b431b9d89625e5fcc7fd75659dd40a0b","Cargo.toml":"411958a94d8058aaffc2ba36b91605162a10d5387475e58cf8f48e49eedb874c","LICENSE-APACHE":"cb4780590812826851ba250f90bed0ed19506ec98f6865a0e2e20bbf62391ff9","LICENSE-MIT":"49df47913ab2beafe8dc45607877ae64198bf0eee64aaad3e82ed9e4d27424e8","src/assets/init/HEAD":"28d25bf82af4c0e2b72f50959b2beb859e3e60b9630a5e8c603dad4ddb2b6e80","src/assets/init/description":"47aad2f8621afc777c66085c31f5ed14656df9bcfa5a2ae445680f175d0d2d0c","src/assets/init/hooks/applypatch-msg.sample":"1ae81b995a5c8c54582e1977084babed1e947a5a5c247ad29563142e432955ab","src/assets/init/hooks/commit-msg.sample":"b1451a4c89ee4406ba56f003a7e3d142e24a7452861fddddc23bfc77163c8650","src/assets/init/hooks/docs.url":"4424200fb80650f5063a3ec0a3864af4aaa3103f1319fe576b64d3bfc74f8a67","src/assets/init/hooks/fsmonitor-watchman.sample":"99ed87d785ada3687b4d86b8d9aa562f3430ce7061834e5381166b6a35a0d495","src/assets/init/hooks/post-update.sample":"e6d88132de729f20c45f66c2df51cc2e223a4b8b1512a2ce1cfdd0033ee53e53","src/assets/init/hooks/pre-applypatch.sample":"4c9754cac1c73109e4113ffd76070ae528a42667a85135e87fb826d572d13a4c","src/assets/init/hooks/pre-commit.sample":"1dd0fb2a11956784eb184e72af2fd87feca9050903400f163b90d4db7f19ce78","src/assets/init/hooks/pre-merge-commit.sample":"fca192309544e8e23638bd0987be7a5d00e271599b55382c1c6a4812070da223","src/assets/init/hooks/pre-push.sample":"0e6762e0b35b2475849d11c71d504cfae10cab2be0b947d7caa1e0d5959f2cec","src/assets/init/hooks/pre-rebase.sample":"d7c629ddbaa5f984d21c97a14889599d2019230220d3459aa103648316500968","src/assets/init/hooks/prepare-commit-msg.sample":"f804b4efd22ef832b49506a815a6a6b1103b8f77b6d6556fc3756232727396d8","src/assets/init/info/exclude":"df4c844761dc873ca9ea2f6fabcc2e2460b2f804ca65f8470e39ffbda7c3446e","src/attribute_stack.rs":"835abb1ed1477b26d6e57eb25b418096ad09b3c2d4781bc5f21bf72741846a42","src/clone/access.rs":"285795cc8f32a66cfb7a98ad7458dad29415ef8331eff995ca0b87a63aa39410","src/clone/checkout.rs":"bfb9f26cb9e471e0af0cdcd417a87bbbf28f4f7cabe3443480be5471f35c0be1","src/clone/fetch/mod.rs":"f00acfadcd4f9a1759ca029593be6692a1a913b5b41308464d163e9eac2f6bbe","src/clone/fetch/util.rs":"27ab217f25aa73690e3a31acf5655bd412c1f47653860bcb6a9a668d0b7ef01d","src/clone/mod.rs":"f4238d146b6cd29bbb12c77f08efc25efd33f50eb4834daecead2176154fab79","src/commit.rs":"3cf4f1f485c025982e9bb398c48d356af321d9fd8775de7c1a911de1052a1ece","src/config/cache/access.rs":"d7942372d42748ee5a04c8cb8dbff8c0fcb710109c9b56f53eb4edfe0ac0914c","src/config/cache/incubate.rs":"75a949861c7c2d11eec84dea92c80059b68a6ebedaf399690305544836e0a7d3","src/config/cache/init.rs":"37fee4c9c661a37d2186940b832c2a067cfcaa2ea9ebc185ce8fb4bbb6ec72f5","src/config/cache/mod.rs":"3cce2cf0fafbc4f828870b85fef411a826ad6d1fe3ac5b6cbd2f5e049331aebf","src/config/cache/util.rs":"6dbd15b84e47d3d32c6535d1b9f6a9ad73171137411d5a8bb764c5d1f60b005e","src/config/mod.rs":"7895c0860c3b84faaf5df05a2cf06065fc2ade4b0e01e1322040713b559d8d67","src/config/overrides.rs":"ca3b08e3ab4d292c904ef3a0746e937c4e90440ae19389b03321c5645177e39e","src/config/snapshot/_impls.rs":"edae9b731c69828effbdfe01d32b7caa8c536df81d33de1cb67b88ece01a7218","src/config/snapshot/access.rs":"c08dfa7bb0c969913efb6e08692203c5bed7ef2502053a89f6181846aec5918a","src/config/snapshot/credential_helpers.rs":"cd269ffb60aab86a752839294b3514b31bd59de5b4ae941f25111dfba25aad33","src/config/snapshot/mod.rs":"21f6eaeb511e470df6f3d8948dfd65b688741b39d534fbaf78e3ee620bc6a5c5","src/config/tree/keys.rs":"16b9625821e1d7bba9dc79181fbf34b0266cea4ffda5108c36fd23325c157253","src/config/tree/mod.rs":"be9654a1c844b8444c2f5d0003937fbc06bae7f934073eb206e0541df3b81425","src/config/tree/sections/author.rs":"a27cf6ad5150aa5ccbd64d2786183983e1567c094a221b016875864c9e8f6980","src/config/tree/sections/branch.rs":"105211bb0eefbdc718923d5e770261889163a5d61dc8f0c22af33473cfb32100","src/config/tree/sections/checkout.rs":"329ebe10cca7c5414f9e6229d6dce3178cdb5821a1b7e72bbfac3a60b5b42dc2","src/config/tree/sections/clone.rs":"bbc86890044721ac34ae7610b14987035ab8714c856cec2787fae49c286a6d6d","src/config/tree/sections/committer.rs":"2f99b8bc6e2c4ad9bdba3a85bc6b717acb5b09d1ada2723d3ba5954f804368eb","src/config/tree/sections/core.rs":"e5f04b31611fab9252ff0f00b8e95e1e06ad36c0e5e8fcc2fa5495537152c9f4","src/config/tree/sections/credential.rs":"e1ce72dc24b9d2f06827b9fc6e8c963f888844ab5a4b48f6d867ad8542909b94","src/config/tree/sections/diff.rs":"9c577772d544d9c9c0d06485955aecab0c64d8e1a0117e71a33f75dd281baa83","src/config/tree/sections/extensions.rs":"f73c444f2e2c8fbc8d1b1991c0d63532c792362e42833f3ae06059c07387cf66","src/config/tree/sections/fetch.rs":"437a6a13df2e1da4a06e9a28d9da020eccab395f13150d398e94bf4cd3e690f8","src/config/tree/sections/gitoxide.rs":"a483361a58e3221bbaf64847cfe70698fc4a73d24ce80875e4970af889fbf5b7","src/config/tree/sections/http.rs":"58c9a9b8abcee4066eb4e20f9679dbbf888c04c21f4dbfff0d2ad7f0a18d4fcd","src/config/tree/sections/index.rs":"30166326b339c9d0b171ebfd1c1f0fb90e38dc8b2edcd66dfead2a87c38eb938","src/config/tree/sections/init.rs":"e87e33ac5091797bde302f78c8fb7cefce0fb1752610409c1db53c3f7b4179af","src/config/tree/sections/mod.rs":"31f480fde038af3532667fb3ff511b6b978de262fa6cef4e19e1e64655060bc8","src/config/tree/sections/pack.rs":"0a6dcdc7603b0d7a84159a70789b63b6c26d539f98808c520a8e644fc9dbd2f3","src/config/tree/sections/protocol.rs":"feae4977f6576adb446d0599f018d41421a7b1b0871a74e8fcfe5e2b7104de74","src/config/tree/sections/remote.rs":"eb06d89125dc72b5754b642cf561e6e430cad4fbbd57dcd1049d306291afc41f","src/config/tree/sections/safe.rs":"4e96f49ff56d6ebb8944406fe2ae3c4a1fa80c5383f08935015ddc6036b583c3","src/config/tree/sections/ssh.rs":"7db83236912bcb7aa1770f0eb1a388ee0fac94c1548bd9a19051b34c25622841","src/config/tree/sections/url.rs":"e342edcd20979feaf54663a919a0751aaf32b4e1f2e47cf5d028faec62e6b731","src/config/tree/sections/user.rs":"8f02172a5db830832b4edf28693fdef33cece6ba1990c4d7a338e4c9291375ab","src/config/tree/traits.rs":"524f1752e9131c27db3a9016ee6c3abc61175345c2167426ffd5a41602cb950d","src/create.rs":"7da6fbdf8c18a32ad4ab9cea8a062fb8aadb08d8478c9d1c3de09c7e6e4448fe","src/diff.rs":"52bc752a2a8decff56b7a41d1ae97b90c0f3422332f999ced67fc884d6b25d18","src/discover.rs":"41631f880b7880f62d77bfb0511f4d85a82a574ca5f53b8cb8fe35edd5b886f6","src/env.rs":"57da96b315b6fe057a326639cd3e85849793449c4c8f3477b79a032b1a029b31","src/ext/mod.rs":"cc6a4c10c2eb53eb261e0186ee51411dada06bbb245c205356fce1de9d4628f5","src/ext/object_id.rs":"a70afd79c84731df0023d738332b3688a2adbcbdda802f8ee70297fc8fe0ca38","src/ext/reference.rs":"a51fe4f63e5708afa4fbabd13638b88c34845a64263db77308cd1b974a0f325f","src/ext/rev_spec.rs":"c196f21a3981b7ad84e9385ba3924a554accf9c7a3b4f8e2bba13cb74f108ec8","src/ext/tree.rs":"60753a38cfd6cbb43b794236de0258a5af40f0a88864dde9e1f7d6cdb8cbb04f","src/filter.rs":"5f106fe06646beb2beb3f181258e7b717f7b3111ed41380c5e22fb3db215bd89","src/head/log.rs":"0de9d5f834b633756001bdd246e98266084d521d7f775537e6e6ead5ed93d7e4","src/head/mod.rs":"5be9b17e6ffb5dd4c9548b8a4d9e25d6ab6600450762293c43ca0bcbd2a6284f","src/head/peel.rs":"4d92eb96c94abfcc653fbd00fcb0800985105d9b7804f5dbe81756da3b8b8bae","src/id.rs":"1f5f97d24d8c00460d085e2815c08b89632ae1e3cde283a4362798cc4b1276ea","src/init.rs":"ac6f329feb2d33cd8a5f0ce21bb77a166e18656a9952d4cba147196242558c9a","src/interrupt.rs":"217d8611ebe2932e7cb52f77a90cec4a6dbe0bd69eb16b951a70fbd8b5e95853","src/lib.rs":"28fabd0194e9cb3168a46f6552752dd02f21736dc42b301653e74ae619d21428","src/mailmap.rs":"415301bdcb3d6991675c7ea86a92eea152cf65df7b2d14da4b58b3b605039e4e","src/object/blob.rs":"5b613976f017190b857e1ace8140ae0b2656da5d94389dfc84525919eeea54f6","src/object/commit.rs":"533da4ff0639db444548bcb3345fb34db505af997dd477f7ad53a8000ef24e75","src/object/errors.rs":"b2b456480e10dc4cdd213650dacb619d96bd9770e19d6042a80621991acd5255","src/object/impls.rs":"6b9f76d332da496148adaa9b5b5de5dcf98c3fd92deba245dd2e6c2a3895eb77","src/object/mod.rs":"158263fe6f6a8db6ecebc741dac012a517508d5041e70909228e1c0ae9cee1c7","src/object/peel.rs":"c23ac9baac1216d9320c71926f56548d18f7f3964bdbcccd8ca81f6b756f7ad9","src/object/tag.rs":"b40e2b908de9dd500d297f1bcbd969facfe7beadcf62cc6a7cb975169f2da8be","src/object/tree/diff/change.rs":"95df7e1fb3b58fa2a0086f205c39940fb590ccdac92aee53a6cff5f29181f30c","src/object/tree/diff/for_each.rs":"da534722f9dbfdf26e66dc564de0c7e694e92cf54f33e29f3364ed056cea8c78","src/object/tree/diff/mod.rs":"672ef727e70da7a6f214e59ea45b16833c68c5b57a95fe7e71c89aac054eaaf4","src/object/tree/diff/rewrites.rs":"d91983f629bf3f0256da17d0067daf8271503345423f725d3a23fb5a40eac4d2","src/object/tree/diff/tracked.rs":"4b8226a3722b08e41b00c800efc81ee611f801cf42606203c26d568f2d6d16fa","src/object/tree/iter.rs":"cf3ae9dfd5018b55228ccc0b4b707b39a3fa2c5d2b130e209da5dcf9080e10ca","src/object/tree/mod.rs":"b0ba34a7227ce7ff82cc7686061251e8e6789d9ef04f5b9d6590cc5242488909","src/object/tree/traverse.rs":"ae0342857d42b6afb82167423dfdac9611ce1b7281b6b9b542e230960c564c0f","src/open/mod.rs":"d25c11246536e7d57172b375569bd8545b8060f13bbfbc49cbf0f85636627076","src/open/options.rs":"1ffda0517724d1328b2fb296a782d89305a482be65ed24a1d9d867bead8eb5a5","src/open/permissions.rs":"5a55970e738ba7a9af7b51cdeb03955af533b3306baaef278b398cf99f8a312b","src/open/repository.rs":"ae4100ee1dd30890d961dc12a57dcf03dee1ffa9a99c54a6704dde5493416764","src/path.rs":"3cd4c92a626384f8f4db89b2f7594923b922d7b841681c167748a01abc7dc3f7","src/pathspec.rs":"bddfa7360ee13ac72a97fa0e1388c9605518da3fc96fd35e76e245f25b73b813","src/prelude.rs":"8dc6fa25bb01fbc1e012364949982e406b17ab22bde464e154f12286fba293cf","src/progress.rs":"a9ba8ec6cc21eea78121b02d1feaba8f6aab04be441bfe8be9f3dffe4c5e0ba5","src/reference/edits.rs":"5d857cd65d7415d4de5aed1ea8acc9c227000a71b2e202293546cd23be1f62b2","src/reference/errors.rs":"f0699048b34163a8e9fb19306827f16dd0d8376660787646ee75e73c70fe7497","src/reference/iter.rs":"1feb3aaed665b39780136f0d703f67f4b34f6239e90cd2a0c632aad40523e025","src/reference/log.rs":"f1eab69b8272b15bd23beeb68e88a8b53f003f74d86783196b2de4a84f0497fd","src/reference/mod.rs":"1920cf8657100d1ea50efdc510333fc073ae756d9778553d06ee0a17ea5f4414","src/reference/remote.rs":"4467c1bf9d463d1781a3254a3874c7fc763201e33d51e1a92a6f0dcbc6776135","src/remote/access.rs":"76e75baca0155710c2eea0e439df0774ecb0cd6c7e6b950876dd9e6e75be5e9f","src/remote/build.rs":"0bfcf98ee6b96c401a410c71b749426e84a78c17eff944ea7d6229ef2dc3e5e8","src/remote/connect.rs":"a147cf33f7ac1413e07d7b5aae0c6a557ee9b29f9172e7ea2413446d670ac71b","src/remote/connection/access.rs":"075f04705680959074cf3db6856bf34180d68d1a3065011ca56b67a861e2b168","src/remote/connection/fetch/config.rs":"93b1392fdc409dba073e96272f13ad7ab996522d59df819edc800431ee36975b","src/remote/connection/fetch/error.rs":"21ccf5ff0cba287247581849c510aa3dd1acdd510cfbb858a579dd85b2c7b050","src/remote/connection/fetch/mod.rs":"c88b8b968debe3192ecc6a5e46a1587f590b1ae45b76df4c13d8a64df956860c","src/remote/connection/fetch/negotiate.rs":"7258ddb2d5adf92f5041709bda16f1d19313ec867717ed270c6a191fdc92b3b9","src/remote/connection/fetch/receive_pack.rs":"d3d4809a7e4ae52868d5975c5de8d16e1218f662ee83e35498291ee582accdc9","src/remote/connection/fetch/update_refs/mod.rs":"f28b33d42f0992b3e91b7eba3672d6fe4d41811f8ea170e9bf11fac688c6e882","src/remote/connection/fetch/update_refs/tests.rs":"69a25df4dc1f84b5a7cb603e2451114cf0a7e356c026317995f3d14bfd07a345","src/remote/connection/fetch/update_refs/update.rs":"729ae1cfef895df37ae5a34c19d9aac9b77e664f107f3adf81a79ae58412e960","src/remote/connection/mod.rs":"863f4a7f2476f5b5d8622959d5069424decea29ba7f66619f679344e6fb5a5d1","src/remote/connection/ref_map.rs":"35913d6c4d8976025ff880ac71bd8e5af0b73fd83e6ca53be1ec275b6dc009e4","src/remote/errors.rs":"6c4986618c55c2a86e4623b02837918dc61849c3d634e7d474a123eb7e01bcbc","src/remote/fetch.rs":"cf78b682074ad700ea6eb4d511401a737a905bd4af0dcfd639b7f850227f5978","src/remote/init.rs":"87576486ae399945b2134dbce70e960ff4c2b3a3046988449f6da0c25f6d646c","src/remote/mod.rs":"14a1532470cc76cf3b727657439923f3515dd781ebfc7030d9481056c6bbf162","src/remote/name.rs":"9fa7e81a157375ecb40ddfba5da850fef7513296a68014a50f5148d57f40b8b7","src/remote/save.rs":"a8b2160cde235c9a2ecddc0181d1cca57a01e046eae8d3b11fa7b29e43ca6866","src/remote/url/mod.rs":"a3279f5330fc83193e583f2b839ab08006c293b0040db6cc74969d50813fbbaa","src/remote/url/rewrite.rs":"4d43167909020458abc5e3e7310e3efaddb9fc7c783581fbc9422fa8b057d95d","src/remote/url/scheme_permission.rs":"4f6e528260c67af54171477d97707050f048c0c35e77f088f8ddc4ae135e6386","src/repository/attributes.rs":"6c28910869eafda6c4c9d6a2b06a2a881f2d5fcf6f5c084ac501850ced2af810","src/repository/cache.rs":"72d41c8f90d2e49c10b884582613fa5941ea0e1d15cc7d0a4d0d7be0b0243d4d","src/repository/config/mod.rs":"b6d7d9b3fb86f0e76cc585efb110aec0bdee4b82c8bdbe6a3bb67d65ffd31de9","src/repository/config/transport.rs":"78683c40947e95d9835809d6b9adc89bbce4e8a06345279c56554b2a76dc4e7c","src/repository/filter.rs":"cc65692a78e3cc28166f595d3bf05c0d3f12757fc8d320512638f6edb724c209","src/repository/graph.rs":"07763932b3215ac25e3981a60ab0750449af992475da7fd47bb0412cdf0fc727","src/repository/identity.rs":"0d7c575578eef869d16d99ce465696f41b1c7e8d2bdba93945219d7453b3d717","src/repository/impls.rs":"b07dd79074b3a175df1ec43042c6cd0ad98b884885e25deae6828a59cc290e2a","src/repository/index.rs":"44e74a6f5be41da88a42a1b5fc5f9b4a70fb42302696a6b4394822fab918ba05","src/repository/init.rs":"f72f56ff1ebb225d043a088c922adb24495d4031d4de2edf6a144156f1f6305e","src/repository/kind.rs":"a32375689f9de7c74d29079caa2f025db8a4b13a3dc31a587039548343b23ade","src/repository/location.rs":"31204869db066e0a1ea58be0b5c41b247f581b16a2ea011942d8d6b5702403b8","src/repository/mailmap.rs":"3ca35665ac2d2c6f100826169822750e1b6647b1f284206f408126e749718030","src/repository/mod.rs":"2154ccecc6167644cd02b88906597d735632a8ed8c5f60dfac5934a7dc7198ea","src/repository/object.rs":"dd2ea672c630aacfda15366349562f3e2dbabcf8bc9201775dc4c0e86633f488","src/repository/pathspec.rs":"6da21d9a2f75ace735cc96aa6dd709bf323f2c5fc05daa40dfc3d393b2485187","src/repository/permissions.rs":"9f7f41fd250d043cea7ee6ff0cdc315838dbb6226bde3dca2a7666f01d648090","src/repository/reference.rs":"9a5f7109bee3bb165bf7da31ef7ae3b3a9018573da1b82407fe158a0ffb13851","src/repository/remote.rs":"4ecc9021f3369d9530a130fe2dbe3c98dc50b593a5194c8584293808fc2bc4a4","src/repository/revision.rs":"c2d50c2bed8b465e5e2f24483d5cc54791fa68c6f558feea5871dfdcc7f6c4ec","src/repository/shallow.rs":"ce0b3358ed0ccca6ac52a985555793013f7c2d5de83291cd9810181ac22e714a","src/repository/state.rs":"040cca4a26463211aef85e4539d084969240f30d985c1bd3ae9bb3cd01009d1d","src/repository/submodule.rs":"a44ebd1132a898bbd8454628888bb8ce41611066ca8d78004242fcc522aac27c","src/repository/thread_safe.rs":"40e455ea3b5637da6e2acae4f5d13c4b8e8a25b8944a4c2870243e31f7f13632","src/repository/worktree.rs":"1a7eaf3eb18d55018fd5a3a04b9faa8db96d05aa9debf553cd15ea1ad4e9e928","src/revision/mod.rs":"d3c83f7ae1ac71a18f79cb73a95997432936b11b94f2ad6a2fe6b3fc23554f96","src/revision/spec/mod.rs":"aa1516ed667a49bfa0db55fdea0bfbcc3227411be105496f0867bd7efb5d5dda","src/revision/spec/parse/delegate/mod.rs":"8ee9c646a16c8f46551c03f1bdf450a71fda79ce691dfcd0e1b56631a3fa3d9a","src/revision/spec/parse/delegate/navigate.rs":"2d720500c83e9b80ff1e33e8ad3faf59502116a9e29ee44385510c9a6c8114c8","src/revision/spec/parse/delegate/revision.rs":"b3ee71f7ec701a202c8e1b9fcc6a9397a8dfb251f195fa218429e630b0280ab4","src/revision/spec/parse/error.rs":"48c0c2e7dcffe80aac5563094787e0502c4275619fc35467a2687499bbad0fef","src/revision/spec/parse/mod.rs":"5f16d2141f7e5959b0a83b4f4035ceaadbaef6b7f563bc05d45257fcec9d340e","src/revision/spec/parse/types.rs":"8876e1b5caf323d4c671f31fc06c07043df10592cecec6dcd62714826ba09bfe","src/revision/walk.rs":"aa84696ba6ea7a293e834121ae2e6b79428b637333d2f7673083adbd1a18c522","src/shallow.rs":"4296fb5298ef71eb1d78aae21d11bfb129a4f5a5f3cf43bf6d5256fec40f8dc3","src/state.rs":"1e3c5e1df4016e8b3e60028def84b0f706c4fcffaba11b1152d9240e144f21e8","src/submodule/errors.rs":"996617b2e707f903de4316e775b8bac03a925959c2c70278aa84f56fa68a9fb0","src/submodule/mod.rs":"00c860ed710f4eab48dfdf54b640750f24721be89fda168cfc1c529492901f9c","src/tag.rs":"f60043aaa7afb54652ab6cf64765ebd61607f19a83dd5960abf8077d2cb91d44","src/types.rs":"daa1706f19f9b257de8d875b73553561da107429e0988f610972354d1d8a85e3","src/worktree/mod.rs":"2053c334a780377e12679a363df6441605f5ca1893237304490cb69b8d7068ca","src/worktree/proxy.rs":"07ff3cfc6a8f326fb7d62f6762f682498e9e5f131ece935acfd26b5223a338f1"},"package":"ad6d32e74454459690d57d18ea4ebec1629936e6b130b51d12cb4a81630ac953"} \ No newline at end of file
+{"files":{"CHANGELOG.md":"d7458903f64e1f690bc0e45ecc850476dafe90ff0618e92db40ed38c865070fd","Cargo.lock":"a680b27e388f17f6d528775fbddde500223fa88744892913394b693762e92710","Cargo.toml":"52ccf36b026646ed3d9763311a33138b1f38c80b1445323fb765df7d83cf2b78","LICENSE-APACHE":"cb4780590812826851ba250f90bed0ed19506ec98f6865a0e2e20bbf62391ff9","LICENSE-MIT":"49df47913ab2beafe8dc45607877ae64198bf0eee64aaad3e82ed9e4d27424e8","src/assets/init/HEAD":"28d25bf82af4c0e2b72f50959b2beb859e3e60b9630a5e8c603dad4ddb2b6e80","src/assets/init/description":"47aad2f8621afc777c66085c31f5ed14656df9bcfa5a2ae445680f175d0d2d0c","src/assets/init/hooks/applypatch-msg.sample":"1ae81b995a5c8c54582e1977084babed1e947a5a5c247ad29563142e432955ab","src/assets/init/hooks/commit-msg.sample":"b1451a4c89ee4406ba56f003a7e3d142e24a7452861fddddc23bfc77163c8650","src/assets/init/hooks/docs.url":"4424200fb80650f5063a3ec0a3864af4aaa3103f1319fe576b64d3bfc74f8a67","src/assets/init/hooks/fsmonitor-watchman.sample":"99ed87d785ada3687b4d86b8d9aa562f3430ce7061834e5381166b6a35a0d495","src/assets/init/hooks/post-update.sample":"e6d88132de729f20c45f66c2df51cc2e223a4b8b1512a2ce1cfdd0033ee53e53","src/assets/init/hooks/pre-applypatch.sample":"4c9754cac1c73109e4113ffd76070ae528a42667a85135e87fb826d572d13a4c","src/assets/init/hooks/pre-commit.sample":"1dd0fb2a11956784eb184e72af2fd87feca9050903400f163b90d4db7f19ce78","src/assets/init/hooks/pre-merge-commit.sample":"fca192309544e8e23638bd0987be7a5d00e271599b55382c1c6a4812070da223","src/assets/init/hooks/pre-push.sample":"0e6762e0b35b2475849d11c71d504cfae10cab2be0b947d7caa1e0d5959f2cec","src/assets/init/hooks/pre-rebase.sample":"d7c629ddbaa5f984d21c97a14889599d2019230220d3459aa103648316500968","src/assets/init/hooks/prepare-commit-msg.sample":"f804b4efd22ef832b49506a815a6a6b1103b8f77b6d6556fc3756232727396d8","src/assets/init/info/exclude":"df4c844761dc873ca9ea2f6fabcc2e2460b2f804ca65f8470e39ffbda7c3446e","src/attribute_stack.rs":"835abb1ed1477b26d6e57eb25b418096ad09b3c2d4781bc5f21bf72741846a42","src/clone/access.rs":"285795cc8f32a66cfb7a98ad7458dad29415ef8331eff995ca0b87a63aa39410","src/clone/checkout.rs":"bfb9f26cb9e471e0af0cdcd417a87bbbf28f4f7cabe3443480be5471f35c0be1","src/clone/fetch/mod.rs":"155a0ef9d742ee32325a60c613590bfe8dbb6ec393a2c84b272569d50904a921","src/clone/fetch/util.rs":"7a630bb12215431b5f9ea2f54b14819cc8611b6a78b60a08dce76f4112ca6262","src/clone/mod.rs":"f4238d146b6cd29bbb12c77f08efc25efd33f50eb4834daecead2176154fab79","src/commit.rs":"3cf4f1f485c025982e9bb398c48d356af321d9fd8775de7c1a911de1052a1ece","src/config/cache/access.rs":"9284a3cfa5e95c843f37f813129e269bf6515dc02c6ee1cce69da213a9144bc1","src/config/cache/incubate.rs":"75a949861c7c2d11eec84dea92c80059b68a6ebedaf399690305544836e0a7d3","src/config/cache/init.rs":"37fee4c9c661a37d2186940b832c2a067cfcaa2ea9ebc185ce8fb4bbb6ec72f5","src/config/cache/mod.rs":"3cce2cf0fafbc4f828870b85fef411a826ad6d1fe3ac5b6cbd2f5e049331aebf","src/config/cache/util.rs":"6dbd15b84e47d3d32c6535d1b9f6a9ad73171137411d5a8bb764c5d1f60b005e","src/config/mod.rs":"7895c0860c3b84faaf5df05a2cf06065fc2ade4b0e01e1322040713b559d8d67","src/config/overrides.rs":"ca3b08e3ab4d292c904ef3a0746e937c4e90440ae19389b03321c5645177e39e","src/config/snapshot/_impls.rs":"edae9b731c69828effbdfe01d32b7caa8c536df81d33de1cb67b88ece01a7218","src/config/snapshot/access.rs":"c08dfa7bb0c969913efb6e08692203c5bed7ef2502053a89f6181846aec5918a","src/config/snapshot/credential_helpers.rs":"cd269ffb60aab86a752839294b3514b31bd59de5b4ae941f25111dfba25aad33","src/config/snapshot/mod.rs":"21f6eaeb511e470df6f3d8948dfd65b688741b39d534fbaf78e3ee620bc6a5c5","src/config/tree/keys.rs":"604c522d4b456d162a33adfef52ec0ef35dd83b0ab86a6a9bdcedb0c5de7e46a","src/config/tree/mod.rs":"be9654a1c844b8444c2f5d0003937fbc06bae7f934073eb206e0541df3b81425","src/config/tree/sections/author.rs":"a27cf6ad5150aa5ccbd64d2786183983e1567c094a221b016875864c9e8f6980","src/config/tree/sections/branch.rs":"105211bb0eefbdc718923d5e770261889163a5d61dc8f0c22af33473cfb32100","src/config/tree/sections/checkout.rs":"329ebe10cca7c5414f9e6229d6dce3178cdb5821a1b7e72bbfac3a60b5b42dc2","src/config/tree/sections/clone.rs":"bbc86890044721ac34ae7610b14987035ab8714c856cec2787fae49c286a6d6d","src/config/tree/sections/committer.rs":"2f99b8bc6e2c4ad9bdba3a85bc6b717acb5b09d1ada2723d3ba5954f804368eb","src/config/tree/sections/core.rs":"48ffa3a7c71706287a85ad2867b97f04983069bc274c22d02c309294376ca112","src/config/tree/sections/credential.rs":"e1ce72dc24b9d2f06827b9fc6e8c963f888844ab5a4b48f6d867ad8542909b94","src/config/tree/sections/diff.rs":"9c577772d544d9c9c0d06485955aecab0c64d8e1a0117e71a33f75dd281baa83","src/config/tree/sections/extensions.rs":"f73c444f2e2c8fbc8d1b1991c0d63532c792362e42833f3ae06059c07387cf66","src/config/tree/sections/fetch.rs":"437a6a13df2e1da4a06e9a28d9da020eccab395f13150d398e94bf4cd3e690f8","src/config/tree/sections/gitoxide.rs":"a483361a58e3221bbaf64847cfe70698fc4a73d24ce80875e4970af889fbf5b7","src/config/tree/sections/http.rs":"58c9a9b8abcee4066eb4e20f9679dbbf888c04c21f4dbfff0d2ad7f0a18d4fcd","src/config/tree/sections/index.rs":"30166326b339c9d0b171ebfd1c1f0fb90e38dc8b2edcd66dfead2a87c38eb938","src/config/tree/sections/init.rs":"e87e33ac5091797bde302f78c8fb7cefce0fb1752610409c1db53c3f7b4179af","src/config/tree/sections/mod.rs":"31f480fde038af3532667fb3ff511b6b978de262fa6cef4e19e1e64655060bc8","src/config/tree/sections/pack.rs":"0a6dcdc7603b0d7a84159a70789b63b6c26d539f98808c520a8e644fc9dbd2f3","src/config/tree/sections/protocol.rs":"feae4977f6576adb446d0599f018d41421a7b1b0871a74e8fcfe5e2b7104de74","src/config/tree/sections/remote.rs":"eb06d89125dc72b5754b642cf561e6e430cad4fbbd57dcd1049d306291afc41f","src/config/tree/sections/safe.rs":"4e96f49ff56d6ebb8944406fe2ae3c4a1fa80c5383f08935015ddc6036b583c3","src/config/tree/sections/ssh.rs":"7db83236912bcb7aa1770f0eb1a388ee0fac94c1548bd9a19051b34c25622841","src/config/tree/sections/url.rs":"e342edcd20979feaf54663a919a0751aaf32b4e1f2e47cf5d028faec62e6b731","src/config/tree/sections/user.rs":"8f02172a5db830832b4edf28693fdef33cece6ba1990c4d7a338e4c9291375ab","src/config/tree/traits.rs":"524f1752e9131c27db3a9016ee6c3abc61175345c2167426ffd5a41602cb950d","src/create.rs":"7da6fbdf8c18a32ad4ab9cea8a062fb8aadb08d8478c9d1c3de09c7e6e4448fe","src/diff.rs":"52bc752a2a8decff56b7a41d1ae97b90c0f3422332f999ced67fc884d6b25d18","src/discover.rs":"41631f880b7880f62d77bfb0511f4d85a82a574ca5f53b8cb8fe35edd5b886f6","src/env.rs":"57da96b315b6fe057a326639cd3e85849793449c4c8f3477b79a032b1a029b31","src/ext/mod.rs":"cc6a4c10c2eb53eb261e0186ee51411dada06bbb245c205356fce1de9d4628f5","src/ext/object_id.rs":"a70afd79c84731df0023d738332b3688a2adbcbdda802f8ee70297fc8fe0ca38","src/ext/reference.rs":"a51fe4f63e5708afa4fbabd13638b88c34845a64263db77308cd1b974a0f325f","src/ext/rev_spec.rs":"c196f21a3981b7ad84e9385ba3924a554accf9c7a3b4f8e2bba13cb74f108ec8","src/ext/tree.rs":"60753a38cfd6cbb43b794236de0258a5af40f0a88864dde9e1f7d6cdb8cbb04f","src/filter.rs":"484a6b55008eb4a1a337dffdde477ad6013dcaacb5383ab7791ef7d8f53a2b3d","src/head/log.rs":"0de9d5f834b633756001bdd246e98266084d521d7f775537e6e6ead5ed93d7e4","src/head/mod.rs":"5be9b17e6ffb5dd4c9548b8a4d9e25d6ab6600450762293c43ca0bcbd2a6284f","src/head/peel.rs":"ee6a605878d5146e388417db7dce963b70a6ccfd2659bb0f6a14c7291b042537","src/id.rs":"1f5f97d24d8c00460d085e2815c08b89632ae1e3cde283a4362798cc4b1276ea","src/init.rs":"ac6f329feb2d33cd8a5f0ce21bb77a166e18656a9952d4cba147196242558c9a","src/interrupt.rs":"217d8611ebe2932e7cb52f77a90cec4a6dbe0bd69eb16b951a70fbd8b5e95853","src/lib.rs":"ae780106efabe63365db85d404dc289c52b9006283d4706e135e6d772a1419e8","src/mailmap.rs":"415301bdcb3d6991675c7ea86a92eea152cf65df7b2d14da4b58b3b605039e4e","src/object/blob.rs":"6afd58e1ac97490e22e46abc948f08a3843df53fd0fe7480426d9961beba199e","src/object/commit.rs":"d61d8de2c8ae76afab284e38a18b33a9c3ca1ae872a1cfc37aea59d7286702be","src/object/errors.rs":"b2b456480e10dc4cdd213650dacb619d96bd9770e19d6042a80621991acd5255","src/object/impls.rs":"16467413024515d6805b1f0d47ed568d19f70a317b3fb806023028a31357bbbd","src/object/mod.rs":"e436e50c2b4d24e24215481213951404f73d2726499b4ef650c75d147654efec","src/object/peel.rs":"c23ac9baac1216d9320c71926f56548d18f7f3964bdbcccd8ca81f6b756f7ad9","src/object/tag.rs":"ab212a0d5d82e787000fbac1aa3769b97b01a0df8b851f31c7d5c8534fe2191a","src/object/tree/diff/change.rs":"95df7e1fb3b58fa2a0086f205c39940fb590ccdac92aee53a6cff5f29181f30c","src/object/tree/diff/for_each.rs":"da534722f9dbfdf26e66dc564de0c7e694e92cf54f33e29f3364ed056cea8c78","src/object/tree/diff/mod.rs":"672ef727e70da7a6f214e59ea45b16833c68c5b57a95fe7e71c89aac054eaaf4","src/object/tree/diff/rewrites.rs":"d91983f629bf3f0256da17d0067daf8271503345423f725d3a23fb5a40eac4d2","src/object/tree/diff/tracked.rs":"4b8226a3722b08e41b00c800efc81ee611f801cf42606203c26d568f2d6d16fa","src/object/tree/iter.rs":"cf3ae9dfd5018b55228ccc0b4b707b39a3fa2c5d2b130e209da5dcf9080e10ca","src/object/tree/mod.rs":"151d4e50a054aa0dbeecb1e084aac5a1f6f35044a4edda1289e9ee4ed5fb0bba","src/object/tree/traverse.rs":"ae0342857d42b6afb82167423dfdac9611ce1b7281b6b9b542e230960c564c0f","src/open/mod.rs":"d25c11246536e7d57172b375569bd8545b8060f13bbfbc49cbf0f85636627076","src/open/options.rs":"1ffda0517724d1328b2fb296a782d89305a482be65ed24a1d9d867bead8eb5a5","src/open/permissions.rs":"5a55970e738ba7a9af7b51cdeb03955af533b3306baaef278b398cf99f8a312b","src/open/repository.rs":"ae4100ee1dd30890d961dc12a57dcf03dee1ffa9a99c54a6704dde5493416764","src/path.rs":"3cd4c92a626384f8f4db89b2f7594923b922d7b841681c167748a01abc7dc3f7","src/pathspec.rs":"bddfa7360ee13ac72a97fa0e1388c9605518da3fc96fd35e76e245f25b73b813","src/prelude.rs":"8dc6fa25bb01fbc1e012364949982e406b17ab22bde464e154f12286fba293cf","src/progress.rs":"a9ba8ec6cc21eea78121b02d1feaba8f6aab04be441bfe8be9f3dffe4c5e0ba5","src/reference/edits.rs":"5d857cd65d7415d4de5aed1ea8acc9c227000a71b2e202293546cd23be1f62b2","src/reference/errors.rs":"1ac9e6e902ee561b0c6ad08ebf110216a34405948200a9aff177ebe0395a23a4","src/reference/iter.rs":"1feb3aaed665b39780136f0d703f67f4b34f6239e90cd2a0c632aad40523e025","src/reference/log.rs":"f1eab69b8272b15bd23beeb68e88a8b53f003f74d86783196b2de4a84f0497fd","src/reference/mod.rs":"29610488dc03b6a98cbdfb06e1c29b80d2d2ade9f4e555f4acaf4b5948688e19","src/reference/remote.rs":"4467c1bf9d463d1781a3254a3874c7fc763201e33d51e1a92a6f0dcbc6776135","src/remote/access.rs":"76e75baca0155710c2eea0e439df0774ecb0cd6c7e6b950876dd9e6e75be5e9f","src/remote/build.rs":"0bfcf98ee6b96c401a410c71b749426e84a78c17eff944ea7d6229ef2dc3e5e8","src/remote/connect.rs":"a147cf33f7ac1413e07d7b5aae0c6a557ee9b29f9172e7ea2413446d670ac71b","src/remote/connection/access.rs":"075f04705680959074cf3db6856bf34180d68d1a3065011ca56b67a861e2b168","src/remote/connection/fetch/config.rs":"93b1392fdc409dba073e96272f13ad7ab996522d59df819edc800431ee36975b","src/remote/connection/fetch/error.rs":"21ccf5ff0cba287247581849c510aa3dd1acdd510cfbb858a579dd85b2c7b050","src/remote/connection/fetch/mod.rs":"c88b8b968debe3192ecc6a5e46a1587f590b1ae45b76df4c13d8a64df956860c","src/remote/connection/fetch/negotiate.rs":"7258ddb2d5adf92f5041709bda16f1d19313ec867717ed270c6a191fdc92b3b9","src/remote/connection/fetch/receive_pack.rs":"d3d4809a7e4ae52868d5975c5de8d16e1218f662ee83e35498291ee582accdc9","src/remote/connection/fetch/update_refs/mod.rs":"f28b33d42f0992b3e91b7eba3672d6fe4d41811f8ea170e9bf11fac688c6e882","src/remote/connection/fetch/update_refs/tests.rs":"69a25df4dc1f84b5a7cb603e2451114cf0a7e356c026317995f3d14bfd07a345","src/remote/connection/fetch/update_refs/update.rs":"729ae1cfef895df37ae5a34c19d9aac9b77e664f107f3adf81a79ae58412e960","src/remote/connection/mod.rs":"863f4a7f2476f5b5d8622959d5069424decea29ba7f66619f679344e6fb5a5d1","src/remote/connection/ref_map.rs":"35913d6c4d8976025ff880ac71bd8e5af0b73fd83e6ca53be1ec275b6dc009e4","src/remote/errors.rs":"6c4986618c55c2a86e4623b02837918dc61849c3d634e7d474a123eb7e01bcbc","src/remote/fetch.rs":"cf78b682074ad700ea6eb4d511401a737a905bd4af0dcfd639b7f850227f5978","src/remote/init.rs":"87576486ae399945b2134dbce70e960ff4c2b3a3046988449f6da0c25f6d646c","src/remote/mod.rs":"14a1532470cc76cf3b727657439923f3515dd781ebfc7030d9481056c6bbf162","src/remote/name.rs":"9fa7e81a157375ecb40ddfba5da850fef7513296a68014a50f5148d57f40b8b7","src/remote/save.rs":"a8b2160cde235c9a2ecddc0181d1cca57a01e046eae8d3b11fa7b29e43ca6866","src/remote/url/mod.rs":"a3279f5330fc83193e583f2b839ab08006c293b0040db6cc74969d50813fbbaa","src/remote/url/rewrite.rs":"4d43167909020458abc5e3e7310e3efaddb9fc7c783581fbc9422fa8b057d95d","src/remote/url/scheme_permission.rs":"4f6e528260c67af54171477d97707050f048c0c35e77f088f8ddc4ae135e6386","src/repository/attributes.rs":"6c28910869eafda6c4c9d6a2b06a2a881f2d5fcf6f5c084ac501850ced2af810","src/repository/cache.rs":"daa9e03d59475b99d3e5c736a66f8b2f82035566906e900502195cf93adc3e1b","src/repository/config/mod.rs":"b6d7d9b3fb86f0e76cc585efb110aec0bdee4b82c8bdbe6a3bb67d65ffd31de9","src/repository/config/transport.rs":"78683c40947e95d9835809d6b9adc89bbce4e8a06345279c56554b2a76dc4e7c","src/repository/filter.rs":"cc65692a78e3cc28166f595d3bf05c0d3f12757fc8d320512638f6edb724c209","src/repository/graph.rs":"07763932b3215ac25e3981a60ab0750449af992475da7fd47bb0412cdf0fc727","src/repository/identity.rs":"0d7c575578eef869d16d99ce465696f41b1c7e8d2bdba93945219d7453b3d717","src/repository/impls.rs":"b07dd79074b3a175df1ec43042c6cd0ad98b884885e25deae6828a59cc290e2a","src/repository/index.rs":"92902245189577362acd6e0f2ef58d9b55def7dfa4ad4409759ca020ddd889ca","src/repository/init.rs":"f72f56ff1ebb225d043a088c922adb24495d4031d4de2edf6a144156f1f6305e","src/repository/kind.rs":"a32375689f9de7c74d29079caa2f025db8a4b13a3dc31a587039548343b23ade","src/repository/location.rs":"542c6db1c9781de566a6996c4211ddcb748d5c48ce3a49004c638fa6a461bc12","src/repository/mailmap.rs":"3ca35665ac2d2c6f100826169822750e1b6647b1f284206f408126e749718030","src/repository/mod.rs":"2154ccecc6167644cd02b88906597d735632a8ed8c5f60dfac5934a7dc7198ea","src/repository/object.rs":"76dd9b13d79e3ebef592410285681d85ea0c91ad295fe724dafb5617b7045491","src/repository/pathspec.rs":"6da21d9a2f75ace735cc96aa6dd709bf323f2c5fc05daa40dfc3d393b2485187","src/repository/permissions.rs":"9f7f41fd250d043cea7ee6ff0cdc315838dbb6226bde3dca2a7666f01d648090","src/repository/reference.rs":"51a794c69e54bbf441ad27a98289167c338c37107c680e6e57042acc33647e3b","src/repository/remote.rs":"4ecc9021f3369d9530a130fe2dbe3c98dc50b593a5194c8584293808fc2bc4a4","src/repository/revision.rs":"c2d50c2bed8b465e5e2f24483d5cc54791fa68c6f558feea5871dfdcc7f6c4ec","src/repository/shallow.rs":"ce0b3358ed0ccca6ac52a985555793013f7c2d5de83291cd9810181ac22e714a","src/repository/state.rs":"040cca4a26463211aef85e4539d084969240f30d985c1bd3ae9bb3cd01009d1d","src/repository/submodule.rs":"a44ebd1132a898bbd8454628888bb8ce41611066ca8d78004242fcc522aac27c","src/repository/thread_safe.rs":"40e455ea3b5637da6e2acae4f5d13c4b8e8a25b8944a4c2870243e31f7f13632","src/repository/worktree.rs":"1a7eaf3eb18d55018fd5a3a04b9faa8db96d05aa9debf553cd15ea1ad4e9e928","src/revision/mod.rs":"d3c83f7ae1ac71a18f79cb73a95997432936b11b94f2ad6a2fe6b3fc23554f96","src/revision/spec/mod.rs":"aa1516ed667a49bfa0db55fdea0bfbcc3227411be105496f0867bd7efb5d5dda","src/revision/spec/parse/delegate/mod.rs":"8ee9c646a16c8f46551c03f1bdf450a71fda79ce691dfcd0e1b56631a3fa3d9a","src/revision/spec/parse/delegate/navigate.rs":"2d720500c83e9b80ff1e33e8ad3faf59502116a9e29ee44385510c9a6c8114c8","src/revision/spec/parse/delegate/revision.rs":"b3ee71f7ec701a202c8e1b9fcc6a9397a8dfb251f195fa218429e630b0280ab4","src/revision/spec/parse/error.rs":"48c0c2e7dcffe80aac5563094787e0502c4275619fc35467a2687499bbad0fef","src/revision/spec/parse/mod.rs":"5f16d2141f7e5959b0a83b4f4035ceaadbaef6b7f563bc05d45257fcec9d340e","src/revision/spec/parse/types.rs":"8876e1b5caf323d4c671f31fc06c07043df10592cecec6dcd62714826ba09bfe","src/revision/walk.rs":"aa84696ba6ea7a293e834121ae2e6b79428b637333d2f7673083adbd1a18c522","src/shallow.rs":"4296fb5298ef71eb1d78aae21d11bfb129a4f5a5f3cf43bf6d5256fec40f8dc3","src/state.rs":"1e3c5e1df4016e8b3e60028def84b0f706c4fcffaba11b1152d9240e144f21e8","src/submodule/errors.rs":"996617b2e707f903de4316e775b8bac03a925959c2c70278aa84f56fa68a9fb0","src/submodule/mod.rs":"00c860ed710f4eab48dfdf54b640750f24721be89fda168cfc1c529492901f9c","src/tag.rs":"f60043aaa7afb54652ab6cf64765ebd61607f19a83dd5960abf8077d2cb91d44","src/types.rs":"285a14e8447c1b646c690cdb1b8430463adb4d4a236370447c81f26cad2e7887","src/worktree/mod.rs":"2053c334a780377e12679a363df6441605f5ca1893237304490cb69b8d7068ca","src/worktree/proxy.rs":"07ff3cfc6a8f326fb7d62f6762f682498e9e5f131ece935acfd26b5223a338f1"},"package":"002667cd1ebb789313d0d0afe3d23b2821cf3b0e91605095f0e6d8751f0ceeea"} \ No newline at end of file
diff --git a/vendor/gix/CHANGELOG.md b/vendor/gix/CHANGELOG.md
index eec514b03..5aea6d751 100644
--- a/vendor/gix/CHANGELOG.md
+++ b/vendor/gix/CHANGELOG.md
@@ -5,6 +5,141 @@ 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.55.2 (2023-10-13)
+
+### Bug Fixes
+
+ - <csr-id-8011c73ee401bfca03811a249c46a4dd468af1b8/> bump `gix-transport` version to prevent it from being picked up.
+ `gix-transport` v0.37.1 could accidentally be picked up by older, incompatible,
+ `gix` versions which now fail to build.
+
+ Thus v0.37.1 is now yanked and replaced with v0.38.0 along with a new
+ release of `gix` to go with it.
+
+### Commit Statistics
+
+<csr-read-only-do-not-edit/>
+
+ - 2 commits contributed to the release.
+ - 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**
+ - Prepare changelogs prior to release ([`12b5caf`](https://github.com/Byron/gitoxide/commit/12b5cafc49baf07d00313de468970a2db33ac1f8))
+ - Bump `gix-transport` version to prevent it from being picked up. ([`8011c73`](https://github.com/Byron/gitoxide/commit/8011c73ee401bfca03811a249c46a4dd468af1b8))
+</details>
+
+## 0.55.1 (2023-10-12)
+
+### New Features
+
+ - <csr-id-5732303180d26374016b70bdd7fa0278dd84cff3/> Add `take_data()` to all primitive object types.
+ That is the new, most direct way to obtain its data which otherwise
+ is immovable.
+ - <csr-id-88f2e6c4c540b9c8032e6eee9c5da65a9bcfeef8/> Add `detach()` and `detached()` too all object types.
+ That way, the detachment API is symmetric.
+ It's required to overcome the `Drop` implementation of each of these types
+ which prevents moving data out of the object (easily).
+
+### Commit Statistics
+
+<csr-read-only-do-not-edit/>
+
+ - 3 commits contributed to the release.
+ - 2 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 v0.55.1 ([`4642c0c`](https://github.com/Byron/gitoxide/commit/4642c0c78f45b1956837bc874f6757fc302bee4a))
+ - Add `take_data()` to all primitive object types. ([`5732303`](https://github.com/Byron/gitoxide/commit/5732303180d26374016b70bdd7fa0278dd84cff3))
+ - Add `detach()` and `detached()` too all object types. ([`88f2e6c`](https://github.com/Byron/gitoxide/commit/88f2e6c4c540b9c8032e6eee9c5da65a9bcfeef8))
+</details>
+
+## 0.55.0 (2023-10-12)
+
+<csr-id-f478a3722f0be35c109ea60b79cd4ac6e607480b/>
+
+This release contains a complete rewrite of the internal url parsing logic, the public interface stays mostly the same however. Gitoxide will now be
+more correct, interpreting more urls the same way Git does. Improvements include the added support for ssh aliases (`github:byron/gitoxide` has previously
+been parsed as local path), adjustments around the interpretation of colons in file names (previously we disallowed colons that were not followed up
+with a slash character) and some smaller changes that bring the interpretation of file urls more in line with Git's implementation. Additionally, the
+error types have been adjusted to print a more comprehensive message by default, making sure they stay helpful even when bubbled up through multiple abstraction
+layers.
+
+There are still many (edge) cases in Git's url parsing implementation which are not handled correctly by Gitoxide. If you notice any such deviation please
+open a new issue to help us making Gitoxide even more correct.
+
+### Other
+
+ - <csr-id-f478a3722f0be35c109ea60b79cd4ac6e607480b/> inform about the absence of strict hash verification and strict object creation.
+ Those are present in `git2` and enabled by default, and `gitoxde` definitely
+ wants to do the same at some point.
+
+### New Features
+
+ - <csr-id-c79a7daa30fe90d14d8e3387ec48116b37faf460/> add `Repository::head_tree()` to more easily obtain the current tree.
+ - <csr-id-787a9aa91c1abaa7572f5d19f8a2acbb7ecc0732/> Add `Repository::has_object()` as a high-level alternative.
+ Previously, one would have to call `repo.objects.contains()`, which
+ is fine, but this method is necessary for symmetry of the API
+ and one shouldn't have to drop down a level to do this.
+
+ This method also knows empty trees as special case.
+ - <csr-id-3cec935e692eeb33ffcac98988e34a390f755bf3/> add `Object::try_into_blob()` and `into_blob()` and `Repository::empty_blob()`
+ This way it's easier to assert that an object is actually a blob.
+ - <csr-id-7d9ecdd1c230204468a965f703d5efd00fa7fb79/> add `Repository::index_or_empty()`.
+ This is useful if a missing index should mean it's empty.
+
+### Commit Statistics
+
+<csr-read-only-do-not-edit/>
+
+ - 15 commits contributed to the release over the course of 16 calendar days.
+ - 17 days passed between releases.
+ - 5 commits were understood as [conventional](https://www.conventionalcommits.org).
+ - 0 issues like '(#ID)' were seen in commit messages
+
+### 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>
+
+ * **Uncategorized**
+ - Release gix-transport v0.37.1, gix-protocol v0.41.0, gix-revision v0.23.0, gix-refspec v0.19.0, gix-worktree v0.27.0, gix-status v0.2.0, gix-submodule v0.5.0, gix-worktree-state v0.4.0, gix v0.55.0 ([`14ddbd4`](https://github.com/Byron/gitoxide/commit/14ddbd4c15128b1d5631a2388a00e024842b7b83))
+ - Release gix-hash v0.13.1, gix-features v0.36.0, gix-actor v0.28.0, gix-object v0.38.0, gix-glob v0.14.0, gix-attributes v0.20.0, gix-command v0.2.10, gix-filter v0.6.0, gix-fs v0.8.0, gix-commitgraph v0.22.0, gix-revwalk v0.9.0, gix-traverse v0.34.0, gix-worktree-stream v0.6.0, gix-archive v0.6.0, gix-tempfile v11.0.0, gix-lock v11.0.0, gix-ref v0.38.0, gix-config v0.31.0, gix-url v0.25.0, gix-credentials v0.21.0, gix-diff v0.37.0, gix-discover v0.26.0, gix-ignore v0.9.0, gix-index v0.26.0, gix-mailmap v0.20.0, gix-negotiate v0.9.0, gix-pack v0.44.0, gix-odb v0.54.0, gix-pathspec v0.4.0, gix-packetline v0.16.7, gix-transport v0.37.0, gix-protocol v0.41.0, gix-revision v0.23.0, gix-refspec v0.19.0, gix-worktree v0.27.0, gix-status v0.2.0, gix-submodule v0.5.0, gix-worktree-state v0.4.0, gix v0.55.0, safety bump 37 crates ([`68e5432`](https://github.com/Byron/gitoxide/commit/68e54326e527a55dd5b5079921fc251615833040))
+ - Prepare changelogs prior to release ([`1347a54`](https://github.com/Byron/gitoxide/commit/1347a54f84599d8f0aa935d6e64b16c2298d25cf))
+ - Merge branch 'improvements' ([`429e7b2`](https://github.com/Byron/gitoxide/commit/429e7b25f93c8a7947db19bafa74babf199a1aa6))
+ - Inform about the absence of strict hash verification and strict object creation. ([`f478a37`](https://github.com/Byron/gitoxide/commit/f478a3722f0be35c109ea60b79cd4ac6e607480b))
+ - Add `Repository::head_tree()` to more easily obtain the current tree. ([`c79a7da`](https://github.com/Byron/gitoxide/commit/c79a7daa30fe90d14d8e3387ec48116b37faf460))
+ - Add `Repository::has_object()` as a high-level alternative. ([`787a9aa`](https://github.com/Byron/gitoxide/commit/787a9aa91c1abaa7572f5d19f8a2acbb7ecc0732))
+ - Add `Object::try_into_blob()` and `into_blob()` and `Repository::empty_blob()` ([`3cec935`](https://github.com/Byron/gitoxide/commit/3cec935e692eeb33ffcac98988e34a390f755bf3))
+ - Thanks clippy ([`345712d`](https://github.com/Byron/gitoxide/commit/345712dcdfddcccc630bbfef2ed4f461b21550d3))
+ - Merge branch 'reset' ([`b842691`](https://github.com/Byron/gitoxide/commit/b8426919a491dc3a7df01ee3f258fc0d8a3a327c))
+ - Trust Ctime again ([`f929d42`](https://github.com/Byron/gitoxide/commit/f929d420cb768f2df1d7886564ca03b3c3254a82))
+ - Add `Repository::index_or_empty()`. ([`7d9ecdd`](https://github.com/Byron/gitoxide/commit/7d9ecdd1c230204468a965f703d5efd00fa7fb79))
+ - Adapt to changes in `gix-status` ([`54fb7c2`](https://github.com/Byron/gitoxide/commit/54fb7c24a97cb2339a67ad269344ce65166a545d))
+ - Merge branch 'gix-url-parse-rewrite' ([`a12e4a8`](https://github.com/Byron/gitoxide/commit/a12e4a88d5f5636cd694c72ce45a8b75aa754d28))
+ - Update changelogs ([`4349353`](https://github.com/Byron/gitoxide/commit/43493531bbf3049bee3d7b14b7a6dbe874e37ebc))
+</details>
+
## 0.54.1 (2023-09-25)
### Bug Fixes
@@ -19,7 +154,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
<csr-read-only-do-not-edit/>
- - 1 commit contributed to the release.
+ - 2 commits contributed to the release.
- 1 commit was understood as [conventional](https://www.conventionalcommits.org).
- 0 issues like '(#ID)' were seen in commit messages
@@ -30,6 +165,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
<details><summary>view details</summary>
* **Uncategorized**
+ - Release gix v0.54.1 ([`f603fd7`](https://github.com/Byron/gitoxide/commit/f603fd7a68206a6989a9f959216eba6cca0a6733))
- Local refs created during fetching will now always be valid. ([`300a838`](https://github.com/Byron/gitoxide/commit/300a83821358f2a43649515606ebb84741e82780))
</details>
diff --git a/vendor/gix/Cargo.lock b/vendor/gix/Cargo.lock
index 9f8f5a075..b87494c7e 100644
--- a/vendor/gix/Cargo.lock
+++ b/vendor/gix/Cargo.lock
@@ -290,12 +290,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "38fcc2979eff34a4b84e1cf9a1e3da42a7d44b3b690a40cdcb23e3d556cfb2e5"
[[package]]
-name = "byteyarn"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7534301c0ea17abb4db06d75efc7b4b0fa360fce8e175a4330d721c71c942ff"
-
-[[package]]
name = "cc"
version = "1.0.79"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -751,7 +745,7 @@ checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e"
[[package]]
name = "gix"
-version = "0.54.1"
+version = "0.55.2"
dependencies = [
"anyhow",
"async-std",
@@ -818,9 +812,9 @@ dependencies = [
[[package]]
name = "gix-actor"
-version = "0.27.0"
+version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08c60e982c5290897122d4e2622447f014a2dadd5a18cb73d50bb91b31645e27"
+checksum = "948a5f9e43559d16faf583694f1c742eb401ce24ce8e6f2238caedea7486433c"
dependencies = [
"bstr",
"btoi",
@@ -833,9 +827,9 @@ dependencies = [
[[package]]
name = "gix-archive"
-version = "0.5.0"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab71635f7fb38ad4cc7da7e98af79e3010e35b05de5cb6eb79b2da68ab93eac7"
+checksum = "909f8417346ebae6a8ca4e947966541a30a1eaac0d67c816f735cba03f0ff09d"
dependencies = [
"bstr",
"gix-date",
@@ -846,16 +840,16 @@ dependencies = [
[[package]]
name = "gix-attributes"
-version = "0.19.0"
+version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2451665e70709ba4753b623ef97511ee98c4a73816b2c5b5df25678d607ed820"
+checksum = "dca120f0c6562d2d7cae467f2466e576d9f7f189beec2af2e026145107c729e2"
dependencies = [
"bstr",
- "byteyarn",
"gix-glob",
"gix-path",
"gix-quote",
"gix-trace",
+ "kstring",
"serde",
"smallvec",
"thiserror",
@@ -882,18 +876,18 @@ dependencies = [
[[package]]
name = "gix-command"
-version = "0.2.9"
+version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f28f654184b5f725c5737c7e4f466cbd8f0102ac352d5257eeab19647ee4256"
+checksum = "3c576cfbf577f72c097b5f88aedea502cd62952bdc1fb3adcab4531d5525a4c7"
dependencies = [
"bstr",
]
[[package]]
name = "gix-commitgraph"
-version = "0.21.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e75a975ee22cf0a002bfe9b5d5cb3d2a88e263a8a178cd7509133cff10f4df8a"
+checksum = "7e8bc78b1a6328fa6d8b3a53b6c73997af37fd6bfc1d6c49f149e63bda5cbb36"
dependencies = [
"bstr",
"gix-chunk",
@@ -906,9 +900,9 @@ dependencies = [
[[package]]
name = "gix-config"
-version = "0.30.0"
+version = "0.31.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c171514b40487d3f677ae37efc0f45ac980e3169f23c27eb30a70b47fdf88ab5"
+checksum = "5cae98c6b4c66c09379bc35274b172587d6b0ac369a416c39128ad8c6454f9bb"
dependencies = [
"bstr",
"gix-config-value",
@@ -940,9 +934,9 @@ dependencies = [
[[package]]
name = "gix-credentials"
-version = "0.20.0"
+version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46900b884cc5af6a6c141ee741607c0c651a4e1d33614b8d888a1ba81cc0bc8a"
+checksum = "1c5c5d74069b842a1861e581027ac6b7ad9ff66f5911c89b9f45484d7ebda6a4"
dependencies = [
"bstr",
"gix-command",
@@ -970,9 +964,9 @@ dependencies = [
[[package]]
name = "gix-diff"
-version = "0.36.0"
+version = "0.37.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "788ddb152c388206e81f36bcbb574e7ed7827c27d8fa62227b34edc333d8928c"
+checksum = "931394f69fb8c9ed6afc0aae3487bd869e936339bcc13ed8884472af072e0554"
dependencies = [
"gix-hash",
"gix-object",
@@ -982,9 +976,9 @@ dependencies = [
[[package]]
name = "gix-discover"
-version = "0.25.0"
+version = "0.26.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69507643d75a0ea9a402fcf73ced517d2b95cc95385904ac09d03e0b952fde33"
+checksum = "a45d5cf0321178883e38705ab2b098f625d609a7d4c391b33ac952eff2c490f2"
dependencies = [
"bstr",
"dunce",
@@ -997,9 +991,9 @@ dependencies = [
[[package]]
name = "gix-features"
-version = "0.35.0"
+version = "0.36.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b9ff423ae4983f762659040d13dd7a5defbd54b6a04ac3cc7347741cec828cd"
+checksum = "51f4365ba17c4f218d7fd9ec102b8d2d3cb0ca200a835e81151ace7778aec827"
dependencies = [
"bytes",
"bytesize",
@@ -1021,9 +1015,9 @@ dependencies = [
[[package]]
name = "gix-filter"
-version = "0.5.0"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1be40d28cd41445bb6cd52c4d847d915900e5466f7433eaee6a9e0a3d1d88b08"
+checksum = "92f674d3fdb6b1987b04521ec9a5b7be8650671f2c4bbd17c3c81e2a364242ff"
dependencies = [
"bstr",
"encoding_rs",
@@ -1041,18 +1035,18 @@ dependencies = [
[[package]]
name = "gix-fs"
-version = "0.7.0"
+version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09815faba62fe9b32d918b75a554686c98e43f7d48c43a80df58eb718e5c6635"
+checksum = "8cd171c0cae97cd0dc57e7b4601cb1ebf596450e263ef3c02be9107272c877bd"
dependencies = [
"gix-features",
]
[[package]]
name = "gix-glob"
-version = "0.13.0"
+version = "0.14.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9d76e85f11251dcf751d2c5e918a14f562db5be6f727fd24775245653e9b19d"
+checksum = "8fac08925dbc14d414bd02eb45ffb4cecd912d1fce3883f867bd0103c192d3e4"
dependencies = [
"bitflags 2.3.3",
"bstr",
@@ -1063,9 +1057,9 @@ dependencies = [
[[package]]
name = "gix-hash"
-version = "0.13.0"
+version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ccf425543779cddaa4a7c62aba3fa9d90ea135b160be0a72dd93c063121ad4a"
+checksum = "1884c7b41ea0875217c1be9ce91322f90bde433e91d374d0e1276073a51ccc60"
dependencies = [
"faster-hex",
"serde",
@@ -1085,9 +1079,9 @@ dependencies = [
[[package]]
name = "gix-ignore"
-version = "0.8.0"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b048f443a1f6b02da4205c34d2e287e3fd45d75e8e2f06cfb216630ea9bff5e3"
+checksum = "1e73c07763a8005ae02cb5cf83040729cea9bb70c7cef68ec6c24159904c499a"
dependencies = [
"bstr",
"gix-glob",
@@ -1098,9 +1092,9 @@ dependencies = [
[[package]]
name = "gix-index"
-version = "0.25.0"
+version = "0.26.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f54d63a9d13c13088f41f5a3accbec284e492ac8f4f707fcc307c139622e17b7"
+checksum = "c83a4fcc121b2f2e109088f677f89f85e7a8ebf39e8e6659c0ae54d4283b1650"
dependencies = [
"bitflags 2.3.3",
"bstr",
@@ -1122,9 +1116,9 @@ dependencies = [
[[package]]
name = "gix-lock"
-version = "10.0.0"
+version = "11.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47fc96fa8b6b6d33555021907c81eb3b27635daecf6e630630bdad44f8feaa95"
+checksum = "f4feb1dcd304fe384ddc22edba9dd56a42b0800032de6537728cea2f033a4f37"
dependencies = [
"gix-tempfile",
"gix-utils",
@@ -1144,9 +1138,9 @@ dependencies = [
[[package]]
name = "gix-mailmap"
-version = "0.19.0"
+version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40f00fa96e29e066ef208f5d13e0f5f95fa70c3ae4bd4f0234272ed4d708a7db"
+checksum = "496141bc97ca2074401dfd3049a958554ab5a80c7f00a9dcfb41d29a7396f9e2"
dependencies = [
"bstr",
"gix-actor",
@@ -1157,9 +1151,9 @@ dependencies = [
[[package]]
name = "gix-negotiate"
-version = "0.8.0"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f1697bf9911c6d1b8d709b9e6ef718cb5ea5821a1b7991520125a8134448004"
+checksum = "2a5cdcf491ecc9ce39dcc227216c540355fe0024ae7c38e94557752ca5ebb67f"
dependencies = [
"bitflags 2.3.3",
"gix-commitgraph",
@@ -1173,9 +1167,9 @@ dependencies = [
[[package]]
name = "gix-object"
-version = "0.37.0"
+version = "0.38.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e7e19616c67967374137bae83e950e9b518a9ea8a605069bd6716ada357fd6f"
+checksum = "740f2a44267f58770a1cb3a3d01d14e67b089c7136c48d4bddbb3cfd2bf86a51"
dependencies = [
"bstr",
"btoi",
@@ -1193,9 +1187,9 @@ dependencies = [
[[package]]
name = "gix-odb"
-version = "0.53.0"
+version = "0.54.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d6a392c6ba3a2f133cdc63120e9bc7aec81eef763db372c817de31febfe64bf"
+checksum = "8630b56cb80d8fa684d383dad006a66401ee8314e12fbf0e566ddad8c115143b"
dependencies = [
"arc-swap",
"gix-date",
@@ -1213,9 +1207,9 @@ dependencies = [
[[package]]
name = "gix-pack"
-version = "0.43.0"
+version = "0.44.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7536203a45b31e1bc5694bbf90ba8da1b736c77040dd6a520db369f371eb1ab3"
+checksum = "1431ba2e30deff1405920693d54ab231c88d7c240dd6ccc936ee223d8f8697c3"
dependencies = [
"clru",
"gix-chunk",
@@ -1235,9 +1229,9 @@ dependencies = [
[[package]]
name = "gix-packetline"
-version = "0.16.6"
+version = "0.16.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6df0b75361353e7c0a6d72d49617a37379a7a22cba4569ae33a7720a4c8755a"
+checksum = "8a8384b1e964151aff0d5632dd9b191059d07dff358b96bd940f1b452600d7ab"
dependencies = [
"bstr",
"faster-hex",
@@ -1273,9 +1267,9 @@ dependencies = [
[[package]]
name = "gix-pathspec"
-version = "0.3.0"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3e26c9b47c51be73f98d38c84494bd5fb99334c5d6fda14ef5d036d50a9e5fd"
+checksum = "e9cc7194fdcf43b4a1ccfa13ffae1d79f83beb4becff7761d88dd99faeafe625"
dependencies = [
"bitflags 2.3.3",
"bstr",
@@ -1301,9 +1295,9 @@ dependencies = [
[[package]]
name = "gix-protocol"
-version = "0.40.0"
+version = "0.41.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc7b700dc20cc9be8a5130a1fd7e10c34117ffa7068431c8c24d963f0a2e0c9b"
+checksum = "391e3feabdfa5f90dad6673ce59e3291ac28901b2ff248d86c5a7fbde0391e0e"
dependencies = [
"async-trait",
"bstr",
@@ -1334,9 +1328,9 @@ dependencies = [
[[package]]
name = "gix-ref"
-version = "0.37.0"
+version = "0.38.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22e6b749660b613641769edc1954132eb8071a13c32224891686091bef078de4"
+checksum = "0ec2f6d07ac88d2fb8007ee3fa3e801856fb9d82e7366ec0ca332eb2c9d74a52"
dependencies = [
"gix-actor",
"gix-date",
@@ -1356,9 +1350,9 @@ dependencies = [
[[package]]
name = "gix-refspec"
-version = "0.18.0"
+version = "0.19.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0895cb7b1e70f3c3bd4550c329e9f5caf2975f97fcd4238e05754e72208ef61e"
+checksum = "ccb0974cc41dbdb43a180c7f67aa481e1c1e160fcfa8f4a55291fd1126c1a6e7"
dependencies = [
"bstr",
"gix-hash",
@@ -1370,9 +1364,9 @@ dependencies = [
[[package]]
name = "gix-revision"
-version = "0.22.0"
+version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8c4b15cf2ab7a35f5bcb3ef146187c8d36df0177e171ca061913cbaaa890e89"
+checksum = "2ca97ac73459a7f3766aa4a5638a6e37d56d4c7962bc1986fbaf4883d0772588"
dependencies = [
"bstr",
"gix-date",
@@ -1387,9 +1381,9 @@ dependencies = [
[[package]]
name = "gix-revwalk"
-version = "0.8.0"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9870c6b1032f2084567710c3b2106ac603377f8d25766b8a6b7c33e6e3ca279"
+checksum = "a16d8c892e4cd676d86f0265bf9d40cefd73d8d94f86b213b8b77d50e77efae0"
dependencies = [
"gix-commitgraph",
"gix-date",
@@ -1415,27 +1409,29 @@ dependencies = [
[[package]]
name = "gix-status"
-version = "0.1.0"
+version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "082801c42ba707f2407b5cce3d99b89cfa84f3794962946dc94cfdc00ae522fa"
+checksum = "1c54271ffb47bce5826be9214a3993d595c5285c1ec23c036d9b1012920f6ab0"
dependencies = [
"bstr",
"filetime",
"gix-features",
+ "gix-filter",
"gix-fs",
"gix-hash",
"gix-index",
"gix-object",
"gix-path",
"gix-pathspec",
+ "gix-worktree",
"thiserror",
]
[[package]]
name = "gix-submodule"
-version = "0.4.0"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd0150e82e9282d3f2ab2dd57a22f9f6c3447b9d9856e5321ac92d38e3e0e2b7"
+checksum = "bba78c8d12aa24370178453ec3a472ff08dfaa657d116229f57f2c9cd469a1c2"
dependencies = [
"bstr",
"gix-config",
@@ -1448,9 +1444,9 @@ dependencies = [
[[package]]
name = "gix-tempfile"
-version = "10.0.0"
+version = "11.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ae0978f3e11dc57290ee75ac2477c815bca1ce2fa7ed5dc5f16db067410ac4d"
+checksum = "05cc2205cf10d99f70b96e04e16c55d4c7cf33efc151df1f793e29fd12a931f8"
dependencies = [
"dashmap",
"gix-fs",
@@ -1470,9 +1466,9 @@ checksum = "96b6d623a1152c3facb79067d6e2ecdae48130030cf27d6eb21109f13bd7b836"
[[package]]
name = "gix-transport"
-version = "0.37.0"
+version = "0.38.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9ec726e6a245e68ace59a34126a1d679de60360676612985e70b0d3b102fb4e"
+checksum = "2f209a93364e24f20319751bc11092272e2f3fe82bb72592b2822679cf5be752"
dependencies = [
"async-std",
"async-trait",
@@ -1496,9 +1492,9 @@ dependencies = [
[[package]]
name = "gix-traverse"
-version = "0.33.0"
+version = "0.34.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22ef04ab3643acba289b5cedd25d6f53c0430770b1d689d1d654511e6fb81ba0"
+checksum = "14d050ec7d4e1bb76abf0636cf4104fb915b70e54e3ced9a4427c999100ff38a"
dependencies = [
"gix-commitgraph",
"gix-date",
@@ -1512,9 +1508,9 @@ dependencies = [
[[package]]
name = "gix-url"
-version = "0.24.0"
+version = "0.25.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6125ecf46e8c68bf7202da6cad239831daebf0247ffbab30210d72f3856e420f"
+checksum = "fa9a4e69d57162242b32cc05e1b96681cb8e513210e3a0b4e89ff647a5b2ab50"
dependencies = [
"bstr",
"gix-features",
@@ -1546,9 +1542,9 @@ dependencies = [
[[package]]
name = "gix-worktree"
-version = "0.26.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f5e32972801bd82d56609e6fc84efc358fa1f11f25c5e83b7807ee2280f14fe"
+checksum = "ddaf79e721dba64fe726a42f297a3c8ed42e55cdc0d81ca68452f2def3c2d7fd"
dependencies = [
"bstr",
"gix-attributes",
@@ -1565,9 +1561,9 @@ dependencies = [
[[package]]
name = "gix-worktree-state"
-version = "0.3.0"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3aeb06960f2c5ac9e4cdb6b38eb3c2b99d5e525e68285fef21ed17dfbd597ad"
+checksum = "34a2fcccdcaf3c71c00a03df31c9aa459d444cabbec4ed9ca1fa64e43406bed4"
dependencies = [
"bstr",
"gix-features",
@@ -1585,9 +1581,9 @@ dependencies = [
[[package]]
name = "gix-worktree-stream"
-version = "0.5.0"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c89fe93a12e45cc3ad6ba429a7dd7506b03d7d406374a65ad9998b5cb2627569"
+checksum = "ee4b34b6f8c9347327682064627e3e72c1fc545849b6d4c183fdfa84af71af2c"
dependencies = [
"gix-attributes",
"gix-features",
@@ -1888,6 +1884,16 @@ dependencies = [
]
[[package]]
+name = "kstring"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec3066350882a1cd6d950d055997f379ac37fd39f81cd4d8ed186032eb3c5747"
+dependencies = [
+ "serde",
+ "static_assertions",
+]
+
+[[package]]
name = "kv-log-macro"
version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2721,6 +2727,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
[[package]]
+name = "static_assertions"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
+
+[[package]]
name = "syn"
version = "1.0.109"
source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/vendor/gix/Cargo.toml b/vendor/gix/Cargo.toml
index a6ec392f3..bedeebaeb 100644
--- a/vendor/gix/Cargo.toml
+++ b/vendor/gix/Cargo.toml
@@ -13,7 +13,7 @@
edition = "2021"
rust-version = "1.65"
name = "gix"
-version = "0.54.1"
+version = "0.55.2"
authors = ["Sebastian Thiel <sebastian.thiel@icloud.com>"]
include = [
"src/**/*",
@@ -55,90 +55,90 @@ version = "0.2.0"
optional = true
[dependencies.gix-actor]
-version = "^0.27.0"
+version = "^0.28.0"
[dependencies.gix-archive]
-version = "^0.5.0"
+version = "^0.6.0"
optional = true
default-features = false
[dependencies.gix-attributes]
-version = "^0.19.0"
+version = "^0.20.0"
optional = true
[dependencies.gix-commitgraph]
-version = "^0.21.0"
+version = "^0.22.0"
[dependencies.gix-config]
-version = "^0.30.0"
+version = "^0.31.0"
[dependencies.gix-credentials]
-version = "^0.20.0"
+version = "^0.21.0"
optional = true
[dependencies.gix-date]
version = "^0.8.0"
[dependencies.gix-diff]
-version = "^0.36.0"
+version = "^0.37.0"
default-features = false
[dependencies.gix-discover]
-version = "^0.25.0"
+version = "^0.26.0"
[dependencies.gix-features]
-version = "^0.35.0"
+version = "^0.36.0"
features = [
"progress",
"once_cell",
]
[dependencies.gix-filter]
-version = "^0.5.0"
+version = "^0.6.0"
optional = true
[dependencies.gix-fs]
-version = "^0.7.0"
+version = "^0.8.0"
[dependencies.gix-glob]
-version = "^0.13.0"
+version = "^0.14.0"
[dependencies.gix-hash]
-version = "^0.13.0"
+version = "^0.13.1"
[dependencies.gix-hashtable]
version = "^0.4.0"
[dependencies.gix-ignore]
-version = "^0.8.0"
+version = "^0.9.0"
optional = true
[dependencies.gix-index]
-version = "^0.25.0"
+version = "^0.26.0"
optional = true
[dependencies.gix-lock]
-version = "^10.0.0"
+version = "^11.0.0"
[dependencies.gix-macros]
version = "^0.1.0"
[dependencies.gix-mailmap]
-version = "^0.19.0"
+version = "^0.20.0"
optional = true
[dependencies.gix-negotiate]
-version = "^0.8.0"
+version = "^0.9.0"
optional = true
[dependencies.gix-object]
-version = "^0.37.0"
+version = "^0.38.0"
[dependencies.gix-odb]
-version = "^0.53.0"
+version = "^0.54.0"
[dependencies.gix-pack]
-version = "^0.43.0"
+version = "^0.44.0"
features = ["object-cache-dynamic"]
default-features = false
@@ -146,7 +146,7 @@ default-features = false
version = "^0.10.0"
[dependencies.gix-pathspec]
-version = "^0.3.0"
+version = "^0.4.0"
optional = true
[dependencies.gix-prompt]
@@ -154,49 +154,49 @@ version = "^0.7.0"
optional = true
[dependencies.gix-protocol]
-version = "^0.40.0"
+version = "^0.41.1"
optional = true
[dependencies.gix-ref]
-version = "^0.37.0"
+version = "^0.38.0"
[dependencies.gix-refspec]
-version = "^0.18.0"
+version = "^0.19.0"
[dependencies.gix-revision]
-version = "^0.22.0"
+version = "^0.23.0"
default-features = false
[dependencies.gix-revwalk]
-version = "^0.8.0"
+version = "^0.9.0"
[dependencies.gix-sec]
version = "^0.10.0"
[dependencies.gix-status]
-version = "^0.1.0"
+version = "^0.2.0"
optional = true
[dependencies.gix-submodule]
-version = "^0.4.0"
+version = "^0.5.0"
optional = true
[dependencies.gix-tempfile]
-version = "^10.0.0"
+version = "^11.0.0"
default-features = false
[dependencies.gix-trace]
version = "^0.1.3"
[dependencies.gix-transport]
-version = "^0.37.0"
+version = "^0.38.0"
optional = true
[dependencies.gix-traverse]
-version = "^0.33.0"
+version = "^0.34.0"
[dependencies.gix-url]
-version = "^0.24.0"
+version = "^0.25.0"
[dependencies.gix-utils]
version = "^0.1.5"
@@ -205,16 +205,16 @@ version = "^0.1.5"
version = "^0.8.0"
[dependencies.gix-worktree]
-version = "^0.26.0"
+version = "^0.27.0"
optional = true
default-features = false
[dependencies.gix-worktree-state]
-version = "^0.3.0"
+version = "^0.4.0"
optional = true
[dependencies.gix-worktree-stream]
-version = "^0.5.0"
+version = "^0.6.0"
optional = true
[dependencies.once_cell]
diff --git a/vendor/gix/src/clone/fetch/mod.rs b/vendor/gix/src/clone/fetch/mod.rs
index c03b8f839..663822212 100644
--- a/vendor/gix/src/clone/fetch/mod.rs
+++ b/vendor/gix/src/clone/fetch/mod.rs
@@ -94,7 +94,7 @@ impl PrepareFetch {
.expect("valid static spec");
let mut clone_fetch_tags = None;
if let Some(f) = self.configure_remote.as_mut() {
- remote = f(remote).map_err(|err| Error::RemoteConfiguration(err))?;
+ remote = f(remote).map_err(Error::RemoteConfiguration)?;
} else {
clone_fetch_tags = remote::fetch::Tags::All.into();
}
@@ -117,7 +117,7 @@ impl PrepareFetch {
let pending_pack: remote::fetch::Prepare<'_, '_, _> = {
let mut connection = remote.connect(remote::Direction::Fetch).await?;
if let Some(f) = self.configure_connection.as_mut() {
- f(&mut connection).map_err(|err| Error::RemoteConnection(err))?;
+ f(&mut connection).map_err(Error::RemoteConnection)?;
}
connection
.prepare_fetch(&mut *progress, {
diff --git a/vendor/gix/src/clone/fetch/util.rs b/vendor/gix/src/clone/fetch/util.rs
index ab90435d0..db9bc0a1c 100644
--- a/vendor/gix/src/clone/fetch/util.rs
+++ b/vendor/gix/src/clone/fetch/util.rs
@@ -189,7 +189,7 @@ fn setup_branch_config(
remote_name: &BStr,
) -> Result<(), Error> {
let short_name = match branch.category_and_short_name() {
- Some((cat, shortened)) if cat == gix_ref::Category::LocalBranch => match shortened.to_str() {
+ Some((gix_ref::Category::LocalBranch, shortened)) => match shortened.to_str() {
Ok(s) => s,
Err(_) => return Ok(()),
},
diff --git a/vendor/gix/src/config/cache/access.rs b/vendor/gix/src/config/cache/access.rs
index 352bc9712..3e763c028 100644
--- a/vendor/gix/src/config/cache/access.rs
+++ b/vendor/gix/src/config/cache/access.rs
@@ -158,13 +158,7 @@ impl Cache {
pub(crate) fn stat_options(&self) -> Result<gix_index::entry::stat::Options, config::stat_options::Error> {
use crate::config::tree::gitoxide;
Ok(gix_index::entry::stat::Options {
- trust_ctime: boolean(
- self,
- "core.trustCTime",
- &Core::TRUST_C_TIME,
- // For now, on MacOS it's known to not be trust-worthy at least with the Rust STDlib, being 2s off
- !cfg!(target_os = "macos"),
- )?,
+ trust_ctime: boolean(self, "core.trustCTime", &Core::TRUST_C_TIME, true)?,
use_nsec: boolean(self, "gitoxide.core.useNsec", &gitoxide::Core::USE_NSEC, false)?,
use_stdev: boolean(self, "gitoxide.core.useStdev", &gitoxide::Core::USE_STDEV, false)?,
check_stat: self
@@ -309,7 +303,7 @@ impl Cache {
&gitoxide::Pathspec::LITERAL,
]
.iter()
- .find_map(|key| (key.environment_override().expect("set") == name).then_some(key))
+ .find(|key| key.environment_override().expect("set") == name)
.expect("we must know all possible input variable names");
let val = self
diff --git a/vendor/gix/src/config/tree/keys.rs b/vendor/gix/src/config/tree/keys.rs
index 5a5257af5..15cfba2d9 100644
--- a/vendor/gix/src/config/tree/keys.rs
+++ b/vendor/gix/src/config/tree/keys.rs
@@ -237,7 +237,7 @@ mod lock_timeout {
let value = value.map_err(|err| config::lock_timeout::Error::from(self).with_source(err))?;
Ok(match value {
val if val < 0 => Fail::AfterDurationWithBackoff(Duration::from_secs(u64::MAX)),
- val if val == 0 => Fail::Immediately,
+ 0 => Fail::Immediately,
val => Fail::AfterDurationWithBackoff(Duration::from_millis(
val.try_into().expect("i64 to u64 always works if positive"),
)),
diff --git a/vendor/gix/src/config/tree/sections/core.rs b/vendor/gix/src/config/tree/sections/core.rs
index ab3e2bab9..2ec5c279e 100644
--- a/vendor/gix/src/config/tree/sections/core.rs
+++ b/vendor/gix/src/config/tree/sections/core.rs
@@ -45,8 +45,7 @@ impl Core {
/// The `core.symlinks` key.
pub const SYMLINKS: keys::Boolean = keys::Boolean::new_boolean("symlinks", &config::Tree::CORE);
/// The `core.trustCTime` key.
- pub const TRUST_C_TIME: keys::Boolean = keys::Boolean::new_boolean("trustCTime", &config::Tree::CORE)
- .with_deviation("Currently the default is false, instead of true, as it seems to be 2s off in tests");
+ pub const TRUST_C_TIME: keys::Boolean = keys::Boolean::new_boolean("trustCTime", &config::Tree::CORE);
/// The `core.worktree` key.
pub const WORKTREE: keys::Any = keys::Any::new("worktree", &config::Tree::CORE)
.with_environment_override("GIT_WORK_TREE")
diff --git a/vendor/gix/src/filter.rs b/vendor/gix/src/filter.rs
index 935c91108..b106840a7 100644
--- a/vendor/gix/src/filter.rs
+++ b/vendor/gix/src/filter.rs
@@ -150,8 +150,8 @@ impl<'repo> Pipeline<'repo> {
&mut |_, attrs| {
entry.matching_attributes(attrs);
},
- &mut |rela_path, buf| -> Result<_, gix_odb::find::Error> {
- let entry = match index.entry_by_path(rela_path) {
+ &mut |buf| -> Result<_, gix_odb::find::Error> {
+ let entry = match index.entry_by_path(gix_path::into_bstr(rela_path).as_ref()) {
None => return Ok(None),
Some(entry) => entry,
};
diff --git a/vendor/gix/src/head/peel.rs b/vendor/gix/src/head/peel.rs
index a4f7c71b0..88e23636f 100644
--- a/vendor/gix/src/head/peel.rs
+++ b/vendor/gix/src/head/peel.rs
@@ -47,6 +47,10 @@ impl<'repo> Head<'repo> {
}
// TODO: tests
+ // TODO: Fix this! It's not consistently peeling tags. The whole peeling business should be reconsidered to do what people usually
+ // want which is to peel references, if present, and then peel objects with control over which object type to end at.
+ // Finding a good interface for that isn't easy as ideally, it's an iterator that shows the intermediate objects so the user
+ // can select which tag of a chain to choose.
/// Follow the symbolic reference of this head until its target object and peel it by following tag objects until there is no
/// more object to follow, and return that object id.
///
diff --git a/vendor/gix/src/lib.rs b/vendor/gix/src/lib.rs
index 672d5c91c..8218defc8 100644
--- a/vendor/gix/src/lib.rs
+++ b/vendor/gix/src/lib.rs
@@ -75,6 +75,11 @@
//! * [`git2::build::CheckoutBuilder::disable_filters()](https://docs.rs/git2/*/git2/build/struct.CheckoutBuilder.html#method.disable_filters) ➡ ❌ *(filters are always applied during checkouts)*
//! * [`git2::Repository::submodule_status()`](https://docs.rs/git2/*/git2/struct.Repository.html#method.submodule_status) ➡ [`Submodule::state()`] - status provides more information and conveniences though, and an actual worktree status isn't performed.
//!
+//! #### Integrity checks
+//!
+//! `git2` by default performs integrity checks via [`strict_hash_verification()`](https://docs.rs/git2/latest/git2/opts/fn.strict_hash_verification.html) and
+//! [`strict_object_creation`](https://docs.rs/git2/latest/git2/opts/fn.strict_object_creation.html) which `gitoxide` *currently* **does not have**.
+//!
//! ### Feature Flags
#![cfg_attr(
feature = "document-features",
@@ -158,7 +163,8 @@ mod types;
#[cfg(any(feature = "excludes", feature = "attributes"))]
pub use types::AttributeStack;
pub use types::{
- Commit, Head, Id, Object, ObjectDetached, Reference, Remote, Repository, Tag, ThreadSafeRepository, Tree, Worktree,
+ Blob, Commit, Head, Id, Object, ObjectDetached, Reference, Remote, Repository, Tag, ThreadSafeRepository, Tree,
+ Worktree,
};
#[cfg(feature = "attributes")]
pub use types::{Pathspec, PathspecDetached, Submodule};
diff --git a/vendor/gix/src/object/blob.rs b/vendor/gix/src/object/blob.rs
index 00b3519ed..ef19c302a 100644
--- a/vendor/gix/src/object/blob.rs
+++ b/vendor/gix/src/object/blob.rs
@@ -1,3 +1,5 @@
+use crate::{Blob, ObjectDetached};
+
///
#[cfg(feature = "blob-diff")]
pub mod diff {
@@ -147,3 +149,27 @@ pub mod diff {
}
}
}
+
+/// Remove Lifetime
+impl Blob<'_> {
+ /// Create an owned instance of this object, copying our data in the process.
+ pub fn detached(&self) -> ObjectDetached {
+ ObjectDetached {
+ id: self.id,
+ kind: gix_object::Kind::Blob,
+ data: self.data.clone(),
+ }
+ }
+
+ /// Sever the connection to the `Repository` and turn this instance into a standalone object.
+ pub fn detach(self) -> ObjectDetached {
+ self.into()
+ }
+
+ /// Retrieve this instance's data, leaving its own data empty.
+ ///
+ /// This method works around the immovability of members of this type.
+ pub fn take_data(&mut self) -> Vec<u8> {
+ std::mem::take(&mut self.data)
+ }
+}
diff --git a/vendor/gix/src/object/commit.rs b/vendor/gix/src/object/commit.rs
index 1fb9eff67..bb2e3a99e 100644
--- a/vendor/gix/src/object/commit.rs
+++ b/vendor/gix/src/object/commit.rs
@@ -20,6 +20,7 @@ mod error {
pub use error::Error;
+/// Remove Lifetime
impl<'repo> Commit<'repo> {
/// Create an owned instance of this object, copying our data in the process.
pub fn detached(&self) -> ObjectDetached {
@@ -34,6 +35,13 @@ impl<'repo> Commit<'repo> {
pub fn detach(self) -> ObjectDetached {
self.into()
}
+
+ /// Retrieve this instance's encoded data, leaving its own data empty.
+ ///
+ /// This method works around the immovability of members of this type.
+ pub fn take_data(&mut self) -> Vec<u8> {
+ std::mem::take(&mut self.data)
+ }
}
impl<'repo> Commit<'repo> {
diff --git a/vendor/gix/src/object/impls.rs b/vendor/gix/src/object/impls.rs
index 3453b1b3c..5d2ad8160 100644
--- a/vendor/gix/src/object/impls.rs
+++ b/vendor/gix/src/object/impls.rs
@@ -1,13 +1,13 @@
use std::convert::TryFrom;
-use crate::{object, Commit, Object, ObjectDetached, Tag, Tree};
+use crate::{object, Blob, Commit, Object, ObjectDetached, Tag, Tree};
impl<'repo> From<Object<'repo>> for ObjectDetached {
fn from(mut v: Object<'repo>) -> Self {
ObjectDetached {
id: v.id,
kind: v.kind,
- data: std::mem::take(&mut v.data),
+ data: steal_from_freelist(&mut v.data),
}
}
}
@@ -17,7 +17,7 @@ impl<'repo> From<Commit<'repo>> for ObjectDetached {
ObjectDetached {
id: v.id,
kind: gix_object::Kind::Commit,
- data: std::mem::take(&mut v.data),
+ data: steal_from_freelist(&mut v.data),
}
}
}
@@ -27,7 +27,27 @@ impl<'repo> From<Tag<'repo>> for ObjectDetached {
ObjectDetached {
id: v.id,
kind: gix_object::Kind::Tag,
- data: std::mem::take(&mut v.data),
+ data: steal_from_freelist(&mut v.data),
+ }
+ }
+}
+
+impl<'repo> From<Blob<'repo>> for ObjectDetached {
+ fn from(mut v: Blob<'repo>) -> Self {
+ ObjectDetached {
+ id: v.id,
+ kind: gix_object::Kind::Blob,
+ data: steal_from_freelist(&mut v.data),
+ }
+ }
+}
+
+impl<'repo> From<Tree<'repo>> for ObjectDetached {
+ fn from(mut v: Tree<'repo>) -> Self {
+ ObjectDetached {
+ id: v.id,
+ kind: gix_object::Kind::Tree,
+ data: steal_from_freelist(&mut v.data),
}
}
}
@@ -59,11 +79,11 @@ impl<'repo> TryFrom<Object<'repo>> for Commit<'repo> {
type Error = Object<'repo>;
fn try_from(mut value: Object<'repo>) -> Result<Self, Self::Error> {
- let handle = value.repo;
+ let repo = value.repo;
match value.kind {
object::Kind::Commit => Ok(Commit {
id: value.id,
- repo: handle,
+ repo,
data: steal_from_freelist(&mut value.data),
}),
_ => Err(value),
@@ -75,11 +95,11 @@ impl<'repo> TryFrom<Object<'repo>> for Tag<'repo> {
type Error = Object<'repo>;
fn try_from(mut value: Object<'repo>) -> Result<Self, Self::Error> {
- let handle = value.repo;
+ let repo = value.repo;
match value.kind {
object::Kind::Tag => Ok(Tag {
id: value.id,
- repo: handle,
+ repo,
data: steal_from_freelist(&mut value.data),
}),
_ => Err(value),
@@ -91,11 +111,27 @@ impl<'repo> TryFrom<Object<'repo>> for Tree<'repo> {
type Error = Object<'repo>;
fn try_from(mut value: Object<'repo>) -> Result<Self, Self::Error> {
- let handle = value.repo;
+ let repo = value.repo;
match value.kind {
object::Kind::Tree => Ok(Tree {
id: value.id,
- repo: handle,
+ repo,
+ data: steal_from_freelist(&mut value.data),
+ }),
+ _ => Err(value),
+ }
+ }
+}
+
+impl<'repo> TryFrom<Object<'repo>> for Blob<'repo> {
+ type Error = Object<'repo>;
+
+ fn try_from(mut value: Object<'repo>) -> Result<Self, Self::Error> {
+ let repo = value.repo;
+ match value.kind {
+ object::Kind::Blob => Ok(Blob {
+ id: value.id,
+ repo,
data: steal_from_freelist(&mut value.data),
}),
_ => Err(value),
diff --git a/vendor/gix/src/object/mod.rs b/vendor/gix/src/object/mod.rs
index d0a37db6c..ca2b07f8b 100644
--- a/vendor/gix/src/object/mod.rs
+++ b/vendor/gix/src/object/mod.rs
@@ -4,7 +4,7 @@ use std::convert::TryInto;
use gix_hash::ObjectId;
pub use gix_object::Kind;
-use crate::{Commit, Id, Object, ObjectDetached, Tag, Tree};
+use crate::{Blob, Commit, Id, Object, ObjectDetached, Tag, Tree};
mod errors;
pub(crate) mod cache {
@@ -74,6 +74,14 @@ impl<'repo> Object<'repo> {
}
}
+ /// Transform this object into a blob, or panic if it is none.
+ pub fn into_blob(self) -> Blob<'repo> {
+ match self.try_into() {
+ Ok(tree) => tree,
+ Err(this) => panic!("Tried to use {} as tree, but was {}", this.id, this.kind),
+ }
+ }
+
/// Transform this object into a tree, or panic if it is none.
pub fn into_tree(self) -> Tree<'repo> {
match self.try_into() {
@@ -124,6 +132,15 @@ impl<'repo> Object<'repo> {
expected: gix_object::Kind::Tree,
})
}
+
+ /// Transform this object into a blob, or return it as part of the `Err` if it is no blob.
+ pub fn try_into_blob(self) -> Result<Blob<'repo>, try_into::Error> {
+ self.try_into().map_err(|this: Self| try_into::Error {
+ id: this.id,
+ actual: this.kind,
+ expected: gix_object::Kind::Blob,
+ })
+ }
}
impl<'repo> Object<'repo> {
diff --git a/vendor/gix/src/object/tag.rs b/vendor/gix/src/object/tag.rs
index 77eaaa259..1a7a3de86 100644
--- a/vendor/gix/src/object/tag.rs
+++ b/vendor/gix/src/object/tag.rs
@@ -1,4 +1,4 @@
-use crate::{ext::ObjectIdExt, Tag};
+use crate::{ext::ObjectIdExt, ObjectDetached, Tag};
impl<'repo> Tag<'repo> {
/// Decode the entire tag object and return it for accessing all tag information.
@@ -24,3 +24,27 @@ impl<'repo> Tag<'repo> {
gix_object::TagRefIter::from_bytes(&self.data).tagger()
}
}
+
+/// Remove Lifetime
+impl Tag<'_> {
+ /// Create an owned instance of this object, copying our data in the process.
+ pub fn detached(&self) -> ObjectDetached {
+ ObjectDetached {
+ id: self.id,
+ kind: gix_object::Kind::Tag,
+ data: self.data.clone(),
+ }
+ }
+
+ /// Sever the connection to the `Repository` and turn this instance into a standalone object.
+ pub fn detach(self) -> ObjectDetached {
+ self.into()
+ }
+
+ /// Retrieve this instance's encoded data, leaving its own data empty.
+ ///
+ /// This method works around the immovability of members of this type.
+ pub fn take_data(&mut self) -> Vec<u8> {
+ std::mem::take(&mut self.data)
+ }
+}
diff --git a/vendor/gix/src/object/tree/mod.rs b/vendor/gix/src/object/tree/mod.rs
index 5bf59a25c..e4dac24f8 100644
--- a/vendor/gix/src/object/tree/mod.rs
+++ b/vendor/gix/src/object/tree/mod.rs
@@ -4,7 +4,7 @@ pub use gix_object::tree::EntryMode;
use gix_object::{bstr::BStr, TreeRefIter};
use gix_odb::FindExt;
-use crate::{object::find, Id, Tree};
+use crate::{object::find, Id, ObjectDetached, Tree};
/// Initialization
impl<'repo> Tree<'repo> {
@@ -250,3 +250,27 @@ mod _impls {
}
}
}
+
+/// Remove Lifetime
+impl Tree<'_> {
+ /// Create an owned instance of this object, copying our data in the process.
+ pub fn detached(&self) -> ObjectDetached {
+ ObjectDetached {
+ id: self.id,
+ kind: gix_object::Kind::Tree,
+ data: self.data.clone(),
+ }
+ }
+
+ /// Sever the connection to the `Repository` and turn this instance into a standalone object.
+ pub fn detach(self) -> ObjectDetached {
+ self.into()
+ }
+
+ /// Retrieve this instance's encoded data, leaving its own data empty.
+ ///
+ /// This method works around the immovability of members of this type.
+ pub fn take_data(&mut self) -> Vec<u8> {
+ std::mem::take(&mut self.data)
+ }
+}
diff --git a/vendor/gix/src/reference/errors.rs b/vendor/gix/src/reference/errors.rs
index a931b3974..ff3802e94 100644
--- a/vendor/gix/src/reference/errors.rs
+++ b/vendor/gix/src/reference/errors.rs
@@ -22,8 +22,8 @@ pub mod edit {
///
pub mod peel {
- /// The error returned by [`Reference::peel_to_id_in_place(…)`][crate::Reference::peel_to_id_in_place()] and
- /// [`Reference::into_fully_peeled_id(…)`][crate::Reference::into_fully_peeled_id()].
+ /// The error returned by [`Reference::peel_to_id_in_place(…)`](crate::Reference::peel_to_id_in_place()) and
+ /// [`Reference::into_fully_peeled_id(…)`](crate::Reference::into_fully_peeled_id()).
#[derive(Debug, thiserror::Error)]
#[allow(missing_docs)]
pub enum Error {
@@ -36,7 +36,7 @@ pub mod peel {
///
pub mod head_id {
- /// The error returned by [`Repository::head_id(…)`][crate::Repository::head_id()].
+ /// The error returned by [`Repository::head_id(…)`](crate::Repository::head_id()).
#[derive(Debug, thiserror::Error)]
#[allow(missing_docs)]
pub enum Error {
@@ -51,7 +51,7 @@ pub mod head_id {
///
pub mod head_commit {
- /// The error returned by [`Repository::head_commit`(…)][crate::Repository::head_commit()].
+ /// The error returned by [`Repository::head_commit`(…)](crate::Repository::head_commit()).
#[derive(Debug, thiserror::Error)]
#[allow(missing_docs)]
pub enum Error {
@@ -63,6 +63,21 @@ pub mod head_commit {
}
///
+pub mod head_tree_id {
+ /// The error returned by [`Repository::head_tree_id`(…)](crate::Repository::head_tree_id()).
+ #[derive(Debug, thiserror::Error)]
+ #[allow(missing_docs)]
+ pub enum Error {
+ #[error(transparent)]
+ Head(#[from] crate::reference::find::existing::Error),
+ #[error(transparent)]
+ PeelToCommit(#[from] crate::head::peel::to_commit::Error),
+ #[error(transparent)]
+ DecodeCommit(#[from] gix_object::decode::Error),
+ }
+}
+
+///
pub mod find {
///
pub mod existing {
diff --git a/vendor/gix/src/reference/mod.rs b/vendor/gix/src/reference/mod.rs
index e80057fb4..2d32f595d 100644
--- a/vendor/gix/src/reference/mod.rs
+++ b/vendor/gix/src/reference/mod.rs
@@ -10,7 +10,7 @@ pub mod iter;
pub mod remote;
mod errors;
-pub use errors::{edit, find, head_commit, head_id, peel};
+pub use errors::{edit, find, head_commit, head_id, head_tree_id, peel};
use crate::ext::ObjectIdExt;
diff --git a/vendor/gix/src/repository/cache.rs b/vendor/gix/src/repository/cache.rs
index 7dcd844e6..03c2ff019 100644
--- a/vendor/gix/src/repository/cache.rs
+++ b/vendor/gix/src/repository/cache.rs
@@ -11,7 +11,7 @@ impl crate::Repository {
pub fn object_cache_size(&mut self, bytes: impl Into<Option<usize>>) {
let bytes = bytes.into();
match bytes {
- Some(bytes) if bytes == 0 => self.objects.unset_object_cache(),
+ Some(0) => self.objects.unset_object_cache(),
Some(bytes) => self
.objects
.set_object_cache(move || Box::new(crate::object::cache::MemoryCappedHashmap::new(bytes))),
diff --git a/vendor/gix/src/repository/index.rs b/vendor/gix/src/repository/index.rs
index a21b138a5..59666fc5f 100644
--- a/vendor/gix/src/repository/index.rs
+++ b/vendor/gix/src/repository/index.rs
@@ -55,6 +55,16 @@ impl crate::Repository {
})
}
+ /// Return the shared worktree index if present, or return a new empty one which has an association to the place where the index would be.
+ pub fn index_or_empty(&self) -> Result<worktree::Index, worktree::open_index::Error> {
+ Ok(self.try_index()?.unwrap_or_else(|| {
+ worktree::Index::new(gix_fs::FileSnapshot::new(gix_index::File::from_state(
+ gix_index::State::new(self.object_hash()),
+ self.index_path(),
+ )))
+ }))
+ }
+
/// Return a shared worktree index which is updated automatically if the in-memory snapshot has become stale as the underlying file
/// on disk has changed, or `None` if no such file exists.
///
diff --git a/vendor/gix/src/repository/location.rs b/vendor/gix/src/repository/location.rs
index 5811e7bf9..8ee907ca9 100644
--- a/vendor/gix/src/repository/location.rs
+++ b/vendor/gix/src/repository/location.rs
@@ -37,6 +37,7 @@ impl crate::Repository {
}
/// Return the work tree containing all checked out files, if there is one.
+ #[doc(alias = "workdir", alias = "git2")]
pub fn work_dir(&self) -> Option<&std::path::Path> {
self.work_tree.as_deref()
}
diff --git a/vendor/gix/src/repository/object.rs b/vendor/gix/src/repository/object.rs
index c156971d0..0b894939f 100644
--- a/vendor/gix/src/repository/object.rs
+++ b/vendor/gix/src/repository/object.rs
@@ -10,7 +10,7 @@ use gix_ref::{
};
use smallvec::SmallVec;
-use crate::{commit, ext::ObjectIdExt, object, tag, Id, Object, Reference, Tree};
+use crate::{commit, ext::ObjectIdExt, object, tag, Blob, Id, Object, Reference, Tree};
/// Methods related to object creation.
impl crate::Repository {
@@ -26,7 +26,7 @@ impl crate::Repository {
#[momo]
pub fn find_object(&self, id: impl Into<ObjectId>) -> Result<Object<'_>, object::find::existing::Error> {
let id = id.into();
- if id == gix_hash::ObjectId::empty_tree(self.object_hash()) {
+ if id == ObjectId::empty_tree(self.object_hash()) {
return Ok(Object {
id,
kind: gix_object::Kind::Tree,
@@ -46,7 +46,7 @@ impl crate::Repository {
#[momo]
pub fn find_header(&self, id: impl Into<ObjectId>) -> Result<gix_odb::find::Header, object::find::existing::Error> {
let id = id.into();
- if id == gix_hash::ObjectId::empty_tree(self.object_hash()) {
+ if id == ObjectId::empty_tree(self.object_hash()) {
return Ok(gix_odb::find::Header::Loose {
kind: gix_object::Kind::Tree,
size: 0,
@@ -55,6 +55,25 @@ impl crate::Repository {
self.objects.header(id)
}
+ /// Return `true` if `id` exists in the object database.
+ ///
+ /// # Performance
+ ///
+ /// This method can be slow if the underlying [object database](crate::Repository::objects) has
+ /// an unsuitable [RefreshMode](gix_odb::store::RefreshMode) and `id` is not likely to exist.
+ /// Use [`repo.objects.refresh_never()`](gix_odb::store::Handle::refresh_never) to avoid expensive
+ /// IO-bound refreshes if an object wasn't found.
+ #[doc(alias = "exists", alias = "git2")]
+ #[momo]
+ pub fn has_object(&self, id: impl AsRef<gix_hash::oid>) -> bool {
+ let id = id.as_ref();
+ if id == ObjectId::empty_tree(self.object_hash()) {
+ true
+ } else {
+ self.objects.contains(id)
+ }
+ }
+
/// Obtain information about an object without fully decoding it, or `None` if the object doesn't exist.
///
/// Note that despite being cheaper than [`Self::try_find_object()`], there is still some effort traversing delta-chains.
@@ -64,7 +83,7 @@ impl crate::Repository {
id: impl Into<ObjectId>,
) -> Result<Option<gix_odb::find::Header>, object::find::Error> {
let id = id.into();
- if id == gix_hash::ObjectId::empty_tree(self.object_hash()) {
+ if id == ObjectId::empty_tree(self.object_hash()) {
return Ok(Some(gix_odb::find::Header::Loose {
kind: gix_object::Kind::Tree,
size: 0,
@@ -77,7 +96,7 @@ impl crate::Repository {
#[momo]
pub fn try_find_object(&self, id: impl Into<ObjectId>) -> Result<Option<Object<'_>>, object::find::Error> {
let id = id.into();
- if id == gix_hash::ObjectId::empty_tree(self.object_hash()) {
+ if id == ObjectId::empty_tree(self.object_hash()) {
return Ok(Some(Object {
id,
kind: gix_object::Kind::Tree,
@@ -236,7 +255,7 @@ impl crate::Repository {
reference: FullName,
message: &str,
tree: ObjectId,
- parents: SmallVec<[gix_hash::ObjectId; 1]>,
+ parents: SmallVec<[ObjectId; 1]>,
) -> Result<Id<'_>, commit::Error> {
use gix_ref::{
transaction::{Change, RefEdit},
@@ -310,13 +329,25 @@ impl crate::Repository {
self.commit_as(committer, author, reference, message, tree, parents)
}
- /// Return an empty tree object, suitable for [getting changes](crate::Tree::changes()).
+ /// Return an empty tree object, suitable for [getting changes](Tree::changes()).
///
- /// Note that it is special and doesn't physically exist in the object database even though it can be returned.
+ /// Note that the returned object is special and doesn't necessarily physically exist in the object database.
/// This means that this object can be used in an uninitialized, empty repository which would report to have no objects at all.
pub fn empty_tree(&self) -> Tree<'_> {
- self.find_object(gix_hash::ObjectId::empty_tree(self.object_hash()))
+ self.find_object(ObjectId::empty_tree(self.object_hash()))
.expect("always present")
.into_tree()
}
+
+ /// Return an empty blob object.
+ ///
+ /// Note that the returned object is special and doesn't necessarily physically exist in the object database.
+ /// This means that this object can be used in an uninitialized, empty repository which would report to have no objects at all.
+ pub fn empty_blob(&self) -> Blob<'_> {
+ Blob {
+ id: gix_hash::ObjectId::empty_blob(self.object_hash()),
+ data: Vec::new(),
+ repo: self,
+ }
+ }
}
diff --git a/vendor/gix/src/repository/reference.rs b/vendor/gix/src/repository/reference.rs
index 5a14c60b5..e57ca63c0 100644
--- a/vendor/gix/src/repository/reference.rs
+++ b/vendor/gix/src/repository/reference.rs
@@ -212,6 +212,15 @@ impl crate::Repository {
Ok(self.head()?.peel_to_commit_in_place()?)
}
+ /// Return the tree id the `HEAD` reference currently points to after peeling it fully.
+ ///
+ /// Note that this may fail for various reasons, most notably because the repository
+ /// is freshly initialized and doesn't have any commits yet. It could also fail if the
+ /// head does not point to a commit.
+ pub fn head_tree_id(&self) -> Result<crate::Id<'_>, reference::head_tree_id::Error> {
+ Ok(self.head()?.peel_to_commit_in_place()?.tree_id()?)
+ }
+
/// Find the reference with the given partial or full `name`, like `main`, `HEAD`, `heads/branch` or `origin/other`,
/// or return an error if it wasn't found.
///
diff --git a/vendor/gix/src/types.rs b/vendor/gix/src/types.rs
index 0739cdd25..0dc81abae 100644
--- a/vendor/gix/src/types.rs
+++ b/vendor/gix/src/types.rs
@@ -31,6 +31,7 @@ pub struct Id<'r> {
}
/// A decoded object with a reference to its owning repository.
+#[derive(Clone)]
pub struct Object<'repo> {
/// The id of the object
pub id: ObjectId,
@@ -47,7 +48,24 @@ impl<'a> Drop for Object<'a> {
}
}
+/// A blob along with access to its owning repository.
+#[derive(Clone)]
+pub struct Blob<'repo> {
+ /// The id of the tree
+ pub id: ObjectId,
+ /// The blob's data.
+ pub data: Vec<u8>,
+ pub(crate) repo: &'repo Repository,
+}
+
+impl<'a> Drop for Blob<'a> {
+ fn drop(&mut self) {
+ self.repo.reuse_buffer(&mut self.data);
+ }
+}
+
/// A decoded tree object with access to its owning repository.
+#[derive(Clone)]
pub struct Tree<'repo> {
/// The id of the tree
pub id: ObjectId,
@@ -63,6 +81,7 @@ impl<'a> Drop for Tree<'a> {
}
/// A decoded tag object with access to its owning repository.
+#[derive(Clone)]
pub struct Tag<'repo> {
/// The id of the tree
pub id: ObjectId,
@@ -78,6 +97,7 @@ impl<'a> Drop for Tag<'a> {
}
/// A decoded commit object with access to its owning repository.
+#[derive(Clone)]
pub struct Commit<'repo> {
/// The id of the commit
pub id: ObjectId,