History

Let `gix-testtools` use `gix-*` workspace crates

`gix-testtools` depends on several other `gix-*` crates. Before version 0.16.1 (#1972), `gix-testtools` depended on prior breaking versions of those crates (as discussed in #1510 and #1886). Since then, it depends on the current versions. When depending on a strictly earlier version, it was necessary to omit `path =` in the `gix-testtools` manifest for its `gix-*` dependencies. Now that `gix-testtools` depends on current versions of those dependencies, it seems feasible to specify both `version` and `path`, as we do in other cases where one crate developed in this workspace depends on another crate developed in the workspace. Aside from improving general consistency (which is a weak rationale here, since the role of `gix-testtools` differs substantially from that of other `gix-*` crates, in terms of how we're ourselves using it), the broad benefits here are that: 1. Ambiguity in what crate is meant, when an operation is performed on a specific `gix-*` crate, is lessened, or maybe even eliminated. (#1989) 2. Because the code of the dependency comes from the workspace when applicable, i.e. when `gix-testtools` is itself being used in the workspace, it should allow new not-yet-published functionality to be leveraged in `gix-testtools`, without confusion or breakage. (#1886) Before this, some actions we'd prefer to do by `<cmd> -p <crate>` had to be done by `(cd <crate-dir>; <cmd>)`. This was needed to operate on `gix-*` crates in the workspace that are also dependencies, even transitively, of `gix-testtools`. This affected some commands in `justfile` recipes, some commands run in CI workflows (indirectly via `just`, or directly in script steps), and some operations carried out manually. This included `cargo nextest run` and `cargo check` on various crates. Here's an example (shown on Windows, but this problem was not specific to Windows) using `gix-date`, which is not listed in `tests/tools/Cargo.toml`, but which is a transitive dependency: C:\Users\ek\source\repos\gitoxide [main ≡]> cargo nextest run -p gix-date Blocking waiting for file lock on package cache error: There are multiple `gix-date` packages in your project, and the specification `gix-date` is ambiguous. Please re-run this command with one of the following specifications: path+file:///C:/Users/ek/source/repos/gitoxide/gix-date#0.10.1 registry+https://github.com/rust-lang/crates.io-index#gix-date@0.10.1 error: command `'\\?\C:\Users\ek\.rustup\toolchains\stable-x86_64-pc-windows-msvc\bin\cargo.exe' test --no-run --message-format json-render-diagnostics --package gix-date` exited with code 101 An important special case is that of editor/IDE integration, especially in VS Code. This couldn't run and (more significantly, in view of the benefit of integration) couldn't debug some of the tests. This happened because synthesized `cargo test -p ...` commands, used behind the scenes to launch the tests, were ambiguous. For further details, see #1989. Another benefit is that the lockfile and dependency tree are simpler, and the dependency tree is truly unified. That points to an important aspect of this change, which is more than a refactoring and will affect test behavior: - It shouldn't produce different behavior when `gix-testtools` is obtained from crates.io (i.e. when projects developed outside the `gitoxide` repository use `gix-testtools`), it can produce different behavior here, where `gix-testtools` will use changes to its `gix-*` dependencies (and accordingly their own dependencies, recursively) that are present in the workspace even if not present in the released version that matches `version =`. - That could be a good thing if it causes new changes to be exercised more and earlier. That might help find bugs. - This is also desirable in that it allows feature changes and bugfixes in `gix-*` crates to be used immediately in `gix-testtools`, before either those `gix-*` crates or `gix-testtools` are published with the changes (#1886). But... However: - It could be bad if it introduces an undesirable dependency ordering for fixing bugs and/or introducing regression tests. That is, in principle there could arise two (possibly related) bugs, A and B, where there is some reason to fix A before B, but where B must be fixed in order for the regression test for A to run (to validate that it can catch A), due to B breaking `gix-testtools` as used in the test for A or in other tests in the crate affected by A. Because this would presumably be known--an error would occur, likely when building the tests--it could be worked around by temporarily (or permanently) reverting this change if and when such a problem ever arises, or partially undoing it for the specific affected `gix-*` dependency of `gix-testtools`. - It could be bad if a bug affects a `gix-*` crate and its own tests in identical or complementary ways, and this is used to establish or check an expectation. That is, in principle there could arise a bug in a `gix-*` crate that `gix-testtools` uses, and that itself uses `gix-testtools` in its tests, that causes a test that should catch that bug (either initially or to verify a bugfix) to wrongly report that the code is working. This scenario is a case of the general problem that duplicated logic between code and its tests can cause a bug to appear (either in the same form or in different forms) in both, such that tests that should catch the bug don't catch it because they suffer from the same bug. In the hypothetical case imagined here, the duplication of logic would arise from the tests calling and using the very code that is under test. For the way we are currently using or likely ever to use `gix-testtools`, it seems like this would probably not happen. But it is hard to be completely sure. Unlike the previously described scenario, if this scenario did occur, it would likely not be noticed. Both those problem scenarios have corresponding scenarios that had already applied (and which the change here at least slightly *mitigates*): if the code with the bug has already been published. This fixes #1989 and makes progress toward #1886.

Eliah Kagan committed 1 year ago

Commit 7e057f21 parent bcdcba32 files · +333 −710Browse files

Unified · Split

2 files
  1. Cargo.lock +328 −705
  2. tests/tools/Cargo.toml +5 −5
Cargo.lock+328−705
@@ -1318,7 +1318,7 @@ dependencies = [ · 1317 unmodified lines
13181318 "futures-lite",
13191319 "gitoxide-core",
13201320 "gix",
1321− "gix-features 0.42.1",
1321+ "gix-features",
13221322 "is-terminal",
13231323 "once_cell",
13241324 "prodash",
@@ -1375,54 +1375,54 @@ dependencies = [ · 50 unmodified lines
13751375 "async-std",
13761376 "document-features",
13771377 "gix",
1378− "gix-actor 0.35.1",
1378+ "gix-actor",
13791379 "gix-archive",
1380− "gix-attributes 0.26.0",
1380+ "gix-attributes",
13811381 "gix-blame",
13821382 "gix-command",
1383− "gix-commitgraph 0.28.0",
1383+ "gix-commitgraph",
13841384 "gix-config",
13851385 "gix-credentials",
1386− "gix-date 0.10.1",
1386+ "gix-date",
13871387 "gix-diff",
13881388 "gix-dir",
1389− "gix-discover 0.40.1",
1390− "gix-features 0.42.1",
1389+ "gix-discover",
1390+ "gix-features",
13911391 "gix-filter",
1392− "gix-fs 0.15.0",
1393− "gix-glob 0.20.0",
1394− "gix-hash 0.18.0",
1395− "gix-hashtable 0.8.1",
1396− "gix-ignore 0.15.0",
1397− "gix-index 0.40.0",
1398− "gix-lock 17.1.0",
1392+ "gix-fs",
1393+ "gix-glob",
1394+ "gix-hash",
1395+ "gix-hashtable",
1396+ "gix-ignore",
1397+ "gix-index",
1398+ "gix-lock",
13991399 "gix-mailmap",
14001400 "gix-merge",
14011401 "gix-negotiate",
1402− "gix-object 0.49.1",
1402+ "gix-object",
14031403 "gix-odb",
14041404 "gix-pack",
1405− "gix-path 0.10.17",
1405+ "gix-path",
14061406 "gix-pathspec",
14071407 "gix-prompt",
14081408 "gix-protocol",
1409− "gix-ref 0.52.1",
1409+ "gix-ref",
14101410 "gix-refspec",
14111411 "gix-revision",
1412− "gix-revwalk 0.20.1",
1413− "gix-sec 0.11.0",
1412+ "gix-revwalk",
1413+ "gix-sec",
14141414 "gix-shallow",
14151415 "gix-status",
14161416 "gix-submodule",
1417− "gix-tempfile 17.1.0",
1417+ "gix-tempfile",
14181418 "gix-testtools",
1419− "gix-trace 0.1.12",
1419+ "gix-trace",
14201420 "gix-transport",
1421− "gix-traverse 0.46.1",
1421+ "gix-traverse",
14221422 "gix-url",
1423− "gix-utils 0.3.0",
1424− "gix-validate 0.10.0",
1425− "gix-worktree 0.41.0",
1423+ "gix-utils",
1424+ "gix-validate",
1425+ "gix-worktree",
14261426 "gix-worktree-state",
14271427 "gix-worktree-stream",
14281428 "insta",
@@ -1447,10 +1447,10 @@ version = "0.35.1" · 18 unmodified lines
14471447 dependencies = [
14481448 "bstr",
14491449 "document-features",
1450− "gix-date 0.10.1",
1451− "gix-hash 0.18.0",
1450+ "gix-date",
1451+ "gix-hash",
14521452 "gix-testtools",
1453− "gix-utils 0.3.0",
1453+ "gix-utils",
14541454 "itoa",
14551455 "pretty_assertions",
14561456 "serde",
@@ -1458,20 +1458,6 @@ dependencies = [ · 1 unmodified line
14581458 "winnow",
14591459 ]
14601460
1461−[[package]]
1462−name = "gix-actor"
1463−version = "0.35.1"
1464−source = "registry+https://github.com/rust-lang/crates.io-index"
1465−checksum = "6b300e6e4f31f3f6bd2de5e2b0caab192ced00dc0fcd0f7cc56e28c575c8e1ff"
1466−dependencies = [
1467− "bstr",
1468− "gix-date 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
1469− "gix-utils 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
1470− "itoa",
1471− "thiserror 2.0.12",
1472− "winnow",
1473−]
1474−
14751461 [[package]]
14761462 name = "gix-archive"
14771463 version = "0.21.1"
@@ -1479,15 +1465,15 @@ dependencies = [ · 1 unmodified line
14791465 "bstr",
14801466 "document-features",
14811467 "flate2",
1482− "gix-attributes 0.26.0",
1483− "gix-date 0.10.1",
1468+ "gix-attributes",
1469+ "gix-date",
14841470 "gix-filter",
1485− "gix-hash 0.18.0",
1486− "gix-object 0.49.1",
1471+ "gix-hash",
1472+ "gix-object",
14871473 "gix-odb",
1488− "gix-path 0.10.17",
1474+ "gix-path",
14891475 "gix-testtools",
1490− "gix-worktree 0.41.0",
1476+ "gix-worktree",
14911477 "gix-worktree-stream",
14921478 "jiff",
14931479 "tar",
@@ -1501,12 +1487,12 @@ version = "0.26.0" · 7 unmodified lines
15011487 dependencies = [
15021488 "bstr",
15031489 "document-features",
1504− "gix-fs 0.15.0",
1505− "gix-glob 0.20.0",
1506− "gix-path 0.10.17",
1507− "gix-quote 0.6.0",
1490+ "gix-fs",
1491+ "gix-glob",
1492+ "gix-path",
1493+ "gix-quote",
15081494 "gix-testtools",
1509− "gix-trace 0.1.12",
1495+ "gix-trace",
15101496 "kstring",
15111497 "serde",
15121498 "smallvec",
@@ -1514,23 +1500,6 @@ dependencies = [ · 1 unmodified line
15141500 "unicode-bom",
15151501 ]
15161502
1517−[[package]]
1518−name = "gix-attributes"
1519−version = "0.26.0"
1520−source = "registry+https://github.com/rust-lang/crates.io-index"
1521−checksum = "e7e26b3ac280ddb25bb6980d34f4a82ee326f78bf2c6d4ea45eef2d940048b8e"
1522−dependencies = [
1523− "bstr",
1524− "gix-glob 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)",
1525− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
1526− "gix-quote 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
1527− "gix-trace 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
1528− "kstring",
1529− "smallvec",
1530− "thiserror 2.0.12",
1531− "unicode-bom",
1532−]
1533−
15341503 [[package]]
15351504 name = "gix-bitmap"
15361505 version = "0.2.14"
@@ -1539,34 +1508,25 @@ dependencies = [ · 2 unmodified lines
15391508 "thiserror 2.0.12",
15401509 ]
15411510
1542−[[package]]
1543−name = "gix-bitmap"
1544−version = "0.2.14"
1545−source = "registry+https://github.com/rust-lang/crates.io-index"
1546−checksum = "b1db9765c69502650da68f0804e3dc2b5f8ccc6a2d104ca6c85bc40700d37540"
1547−dependencies = [
1548− "thiserror 2.0.12",
1549−]
1550−
15511511 [[package]]
15521512 name = "gix-blame"
15531513 version = "0.2.1"
15541514 dependencies = [
1555− "gix-commitgraph 0.28.0",
1556− "gix-date 0.10.1",
1515+ "gix-commitgraph",
1516+ "gix-date",
15571517 "gix-diff",
15581518 "gix-filter",
1559− "gix-fs 0.15.0",
1560− "gix-hash 0.18.0",
1561− "gix-index 0.40.0",
1562− "gix-object 0.49.1",
1519+ "gix-fs",
1520+ "gix-hash",
1521+ "gix-index",
1522+ "gix-object",
15631523 "gix-odb",
1564− "gix-ref 0.52.1",
1565− "gix-revwalk 0.20.1",
1524+ "gix-ref",
1525+ "gix-revwalk",
15661526 "gix-testtools",
1567− "gix-trace 0.1.12",
1568− "gix-traverse 0.46.1",
1569− "gix-worktree 0.41.0",
1527+ "gix-trace",
1528+ "gix-traverse",
1529+ "gix-worktree",
15701530 "pretty_assertions",
15711531 "smallvec",
15721532 "thiserror 2.0.12",
@@ -1579,24 +1539,15 @@ dependencies = [ · 6 unmodified lines
15791539 "thiserror 2.0.12",
15801540 ]
15811541
1582−[[package]]
1583−name = "gix-chunk"
1584−version = "0.4.11"
1585−source = "registry+https://github.com/rust-lang/crates.io-index"
1586−checksum = "0b1f1d8764958699dc764e3f727cef280ff4d1bd92c107bbf8acd85b30c1bd6f"
1587−dependencies = [
1588− "thiserror 2.0.12",
1589−]
1590−
15911542 [[package]]
15921543 name = "gix-command"
15931544 version = "0.6.0"
15941545 dependencies = [
15951546 "bstr",
1596− "gix-path 0.10.17",
1597− "gix-quote 0.6.0",
1547+ "gix-path",
1548+ "gix-quote",
15981549 "gix-testtools",
1599− "gix-trace 0.1.12",
1550+ "gix-trace",
16001551 "once_cell",
16011552 "shell-words",
16021553 ]
@@ -1607,28 +1558,15 @@ version = "0.28.0" · 4 unmodified lines
16071558 dependencies = [
16081559 "bstr",
16091560 "document-features",
1610− "gix-chunk 0.4.11",
1611− "gix-date 0.10.1",
1612− "gix-hash 0.18.0",
1561+ "gix-chunk",
1562+ "gix-date",
1563+ "gix-hash",
16131564 "gix-testtools",
16141565 "memmap2",
16151566 "serde",
16161567 "thiserror 2.0.12",
16171568 ]
16181569
1619−[[package]]
1620−name = "gix-commitgraph"
1621−version = "0.28.0"
1622−source = "registry+https://github.com/rust-lang/crates.io-index"
1623−checksum = "e05050fd6caa6c731fe3bd7f9485b3b520be062d3d139cb2626e052d6c127951"
1624−dependencies = [
1625− "bstr",
1626− "gix-chunk 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
1627− "gix-hash 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
1628− "memmap2",
1629− "thiserror 2.0.12",
1630−]
1631−
16321570 [[package]]
16331571 name = "gix-config"
16341572 version = "0.45.1"
@@ -1637,11 +1575,11 @@ dependencies = [ · 2 unmodified lines
16371575 "criterion",
16381576 "document-features",
16391577 "gix-config-value",
1640− "gix-features 0.42.1",
1641− "gix-glob 0.20.0",
1642− "gix-path 0.10.17",
1643− "gix-ref 0.52.1",
1644− "gix-sec 0.11.0",
1578+ "gix-features",
1579+ "gix-glob",
1580+ "gix-path",
1581+ "gix-ref",
1582+ "gix-sec",
16451583 "memchr",
16461584 "once_cell",
16471585 "serde",
@@ -1659,9 +1597,9 @@ dependencies = [ · 11 unmodified lines
16591597 "bytesize",
16601598 "cap",
16611599 "gix-config",
1662− "gix-path 0.10.17",
1663− "gix-ref 0.52.1",
1664− "gix-sec 0.11.0",
1600+ "gix-path",
1601+ "gix-ref",
1602+ "gix-sec",
16651603 "gix-testtools",
16661604 "serial_test",
16671605 ]
@@ -1673,7 +1611,7 @@ dependencies = [ · 5 unmodified lines
16731611 "bitflags 2.9.0",
16741612 "bstr",
16751613 "document-features",
1676− "gix-path 0.10.17",
1614+ "gix-path",
16771615 "libc",
16781616 "serde",
16791617 "thiserror 2.0.12",
@@ -1687,11 +1625,11 @@ dependencies = [ · 7 unmodified lines
16871625 "document-features",
16881626 "gix-command",
16891627 "gix-config-value",
1690− "gix-path 0.10.17",
1628+ "gix-path",
16911629 "gix-prompt",
1692− "gix-sec 0.11.0",
1630+ "gix-sec",
16931631 "gix-testtools",
1694− "gix-trace 0.1.12",
1632+ "gix-trace",
16951633 "gix-url",
16961634 "once_cell",
16971635 "serde",
@@ -1704,7 +1642,7 @@ version = "0.10.1" · 6 unmodified lines
17041642 dependencies = [
17051643 "bstr",
17061644 "document-features",
1707− "gix-hash 0.18.0",
1645+ "gix-hash",
17081646 "gix-testtools",
17091647 "itoa",
17101648 "jiff",
@@ -1715,19 +1653,6 @@ dependencies = [ · 4 unmodified lines
17151653 "thiserror 2.0.12",
17161654 ]
17171655
1718−[[package]]
1719−name = "gix-date"
1720−version = "0.10.1"
1721−source = "registry+https://github.com/rust-lang/crates.io-index"
1722−checksum = "3a98593f1f1e14b9fa15c5b921b2c465e904d698b9463e21bb377be8376c3c1a"
1723−dependencies = [
1724− "bstr",
1725− "itoa",
1726− "jiff",
1727− "smallvec",
1728− "thiserror 2.0.12",
1729−]
1730−
17311656 [[package]]
17321657 name = "gix-diff"
17331658 version = "0.52.1"
@@ -1735,19 +1660,19 @@ dependencies = [ · 1 unmodified line
17351660 "bstr",
17361661 "document-features",
17371662 "getrandom 0.2.15",
1738− "gix-attributes 0.26.0",
1663+ "gix-attributes",
17391664 "gix-command",
17401665 "gix-filter",
1741− "gix-fs 0.15.0",
1742− "gix-hash 0.18.0",
1743− "gix-index 0.40.0",
1744− "gix-object 0.49.1",
1745− "gix-path 0.10.17",
1666+ "gix-fs",
1667+ "gix-hash",
1668+ "gix-index",
1669+ "gix-object",
1670+ "gix-path",
17461671 "gix-pathspec",
1747− "gix-tempfile 17.1.0",
1748− "gix-trace 0.1.12",
1749− "gix-traverse 0.46.1",
1750− "gix-worktree 0.41.0",
1672+ "gix-tempfile",
1673+ "gix-trace",
1674+ "gix-traverse",
1675+ "gix-worktree",
17511676 "imara-diff",
17521677 "serde",
17531678 "thiserror 2.0.12",
@@ -1759,15 +1684,15 @@ version = "0.0.0" · 5 unmodified lines
17591684 dependencies = [
17601685 "gix-diff",
17611686 "gix-filter",
1762− "gix-fs 0.15.0",
1763− "gix-hash 0.18.0",
1764− "gix-index 0.40.0",
1765− "gix-object 0.49.1",
1687+ "gix-fs",
1688+ "gix-hash",
1689+ "gix-index",
1690+ "gix-object",
17661691 "gix-odb",
17671692 "gix-pathspec",
17681693 "gix-testtools",
1769− "gix-traverse 0.46.1",
1770− "gix-worktree 0.41.0",
1694+ "gix-traverse",
1695+ "gix-worktree",
17711696 "insta",
17721697 "pretty_assertions",
17731698 "shell-words",
@@ -1778,17 +1703,17 @@ name = "gix-dir" · 4 unmodified lines
17781703 version = "0.14.1"
17791704 dependencies = [
17801705 "bstr",
1781− "gix-discover 0.40.1",
1782− "gix-fs 0.15.0",
1783− "gix-ignore 0.15.0",
1784− "gix-index 0.40.0",
1785− "gix-object 0.49.1",
1786− "gix-path 0.10.17",
1706+ "gix-discover",
1707+ "gix-fs",
1708+ "gix-ignore",
1709+ "gix-index",
1710+ "gix-object",
1711+ "gix-path",
17871712 "gix-pathspec",
17881713 "gix-testtools",
1789− "gix-trace 0.1.12",
1790− "gix-utils 0.3.0",
1791− "gix-worktree 0.41.0",
1714+ "gix-trace",
1715+ "gix-utils",
1716+ "gix-worktree",
17921717 "pretty_assertions",
17931718 "thiserror 2.0.12",
17941719 ]
@@ -1800,11 +1725,11 @@ dependencies = [ · 5 unmodified lines
18001725 "bstr",
18011726 "defer",
18021727 "dunce",
1803− "gix-fs 0.15.0",
1804− "gix-hash 0.18.0",
1805− "gix-path 0.10.17",
1806− "gix-ref 0.52.1",
1807− "gix-sec 0.11.0",
1728+ "gix-fs",
1729+ "gix-hash",
1730+ "gix-path",
1731+ "gix-ref",
1732+ "gix-sec",
18081733 "gix-testtools",
18091734 "is_ci",
18101735 "serial_test",
@@ -1812,22 +1737,6 @@ dependencies = [ · 1 unmodified line
18121737 "thiserror 2.0.12",
18131738 ]
18141739
1815−[[package]]
1816−name = "gix-discover"
1817−version = "0.40.1"
1818−source = "registry+https://github.com/rust-lang/crates.io-index"
1819−checksum = "dccfe3e25b4ea46083916c56db3ba9d1e6ef6dce54da485f0463f9fc0fe1837c"
1820−dependencies = [
1821− "bstr",
1822− "dunce",
1823− "gix-fs 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
1824− "gix-hash 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
1825− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
1826− "gix-ref 0.52.1 (registry+https://github.com/rust-lang/crates.io-index)",
1827− "gix-sec 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
1828− "thiserror 2.0.12",
1829−]
1830−
18311740 [[package]]
18321741 name = "gix-features"
18331742 version = "0.42.1"
@@ -1839,9 +1748,9 @@ dependencies = [ · 5 unmodified lines
18391748 "crossbeam-channel",
18401749 "document-features",
18411750 "flate2",
1842− "gix-path 0.10.17",
1843− "gix-trace 0.1.12",
1844− "gix-utils 0.3.0",
1751+ "gix-path",
1752+ "gix-trace",
1753+ "gix-utils",
18451754 "libc",
18461755 "once_cell",
18471756 "parking_lot",
@@ -1850,20 +1759,6 @@ dependencies = [ · 2 unmodified lines
18501759 "walkdir",
18511760 ]
18521761
1853−[[package]]
1854−name = "gix-features"
1855−version = "0.42.1"
1856−source = "registry+https://github.com/rust-lang/crates.io-index"
1857−checksum = "56f4399af6ec4fd9db84dd4cf9656c5c785ab492ab40a7c27ea92b4241923fed"
1858−dependencies = [
1859− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
1860− "gix-trace 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
1861− "gix-utils 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
1862− "libc",
1863− "prodash",
1864− "walkdir",
1865−]
1866−
18671762 [[package]]
18681763 name = "gix-fetchhead"
18691764 version = "0.0.0"
@@ -1874,17 +1769,17 @@ version = "0.19.1" · 4 unmodified lines
18741769 dependencies = [
18751770 "bstr",
18761771 "encoding_rs",
1877− "gix-attributes 0.26.0",
1772+ "gix-attributes",
18781773 "gix-command",
1879− "gix-hash 0.18.0",
1880− "gix-object 0.49.1",
1774+ "gix-hash",
1775+ "gix-object",
18811776 "gix-packetline-blocking",
1882− "gix-path 0.10.17",
1883− "gix-quote 0.6.0",
1777+ "gix-path",
1778+ "gix-quote",
18841779 "gix-testtools",
1885− "gix-trace 0.1.12",
1886− "gix-utils 0.3.0",
1887− "gix-worktree 0.41.0",
1780+ "gix-trace",
1781+ "gix-utils",
1782+ "gix-worktree",
18881783 "serial_test",
18891784 "smallvec",
18901785 "thiserror 2.0.12",
@@ -1897,36 +1792,22 @@ dependencies = [ · 6 unmodified lines
18971792 "bstr",
18981793 "crossbeam-channel",
18991794 "fastrand",
1900− "gix-features 0.42.1",
1901− "gix-path 0.10.17",
1902− "gix-utils 0.3.0",
1795+ "gix-features",
1796+ "gix-path",
1797+ "gix-utils",
19031798 "is_ci",
19041799 "serde",
19051800 "tempfile",
19061801 "thiserror 2.0.12",
19071802 ]
19081803
1909−[[package]]
1910−name = "gix-fs"
1911−version = "0.15.0"
1912−source = "registry+https://github.com/rust-lang/crates.io-index"
1913−checksum = "67a0637149b4ef24d3ea55f81f77231401c8463fae6da27331c987957eb597c7"
1914−dependencies = [
1915− "bstr",
1916− "fastrand",
1917− "gix-features 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
1918− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
1919− "gix-utils 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
1920− "thiserror 2.0.12",
1921−]
1922−
19231804 [[package]]
19241805 name = "gix-fsck"
19251806 version = "0.11.1"
19261807 dependencies = [
1927− "gix-hash 0.18.0",
1928− "gix-hashtable 0.8.1",
1929− "gix-object 0.49.1",
1808+ "gix-hash",
1809+ "gix-hashtable",
1810+ "gix-object",
19301811 "gix-odb",
19311812 "gix-testtools",
19321813 ]
@@ -1938,65 +1819,30 @@ dependencies = [ · 5 unmodified lines
19381819 "bitflags 2.9.0",
19391820 "bstr",
19401821 "document-features",
1941− "gix-features 0.42.1",
1942− "gix-path 0.10.17",
1822+ "gix-features",
1823+ "gix-path",
19431824 "gix-testtools",
19441825 "serde",
19451826 ]
19461827
1947−[[package]]
1948−name = "gix-glob"
1949−version = "0.20.0"
1950−source = "registry+https://github.com/rust-lang/crates.io-index"
1951−checksum = "2926b03666e83b8d01c10cf06e5733521aacbd2d97179a4c9b1fdddabb9e937d"
1952−dependencies = [
1953− "bitflags 2.9.0",
1954− "bstr",
1955− "gix-features 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
1956− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
1957−]
1958−
19591828 [[package]]
19601829 name = "gix-hash"
19611830 version = "0.18.0"
19621831 dependencies = [
19631832 "document-features",
19641833 "faster-hex",
1965− "gix-features 0.42.1",
1834+ "gix-features",
19661835 "gix-testtools",
19671836 "serde",
19681837 "sha1-checked",
19691838 "thiserror 2.0.12",
19701839 ]
19711840
1972−[[package]]
1973−name = "gix-hash"
1974−version = "0.18.0"
1975−source = "registry+https://github.com/rust-lang/crates.io-index"
1976−checksum = "8d4900562c662852a6b42e2ef03442eccebf24f047d8eab4f23bc12ef0d785d8"
1977−dependencies = [
1978− "faster-hex",
1979− "gix-features 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
1980− "sha1-checked",
1981− "thiserror 2.0.12",
1982−]
1983−
19841841 [[package]]
19851842 name = "gix-hashtable"
19861843 version = "0.8.1"
19871844 dependencies = [
1988− "gix-hash 0.18.0",
1989− "hashbrown 0.14.5",
1990− "parking_lot",
1991−]
1992−
1993−[[package]]
1994−name = "gix-hashtable"
1995−version = "0.8.1"
1996−source = "registry+https://github.com/rust-lang/crates.io-index"
1997−checksum = "b5b5cb3c308b4144f2612ff64e32130e641279fcf1a84d8d40dad843b4f64904"
1998−dependencies = [
1999− "gix-hash 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
1845+ "gix-hash",
20001846 "hashbrown 0.14.5",
20011847 "parking_lot",
20021848 ]
@@ -2007,28 +1853,15 @@ version = "0.15.0" · 4 unmodified lines
20071853 dependencies = [
20081854 "bstr",
20091855 "document-features",
2010− "gix-fs 0.15.0",
2011− "gix-glob 0.20.0",
2012− "gix-path 0.10.17",
1856+ "gix-fs",
1857+ "gix-glob",
1858+ "gix-path",
20131859 "gix-testtools",
2014− "gix-trace 0.1.12",
1860+ "gix-trace",
20151861 "serde",
20161862 "unicode-bom",
20171863 ]
20181864
2019−[[package]]
2020−name = "gix-ignore"
2021−version = "0.15.0"
2022−source = "registry+https://github.com/rust-lang/crates.io-index"
2023−checksum = "ae358c3c96660b10abc7da63c06788dfded603e717edbd19e38c6477911b71c8"
2024−dependencies = [
2025− "bstr",
2026− "gix-glob 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)",
2027− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
2028− "gix-trace 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
2029− "unicode-bom",
2030−]
2031−
20321865 [[package]]
20331866 name = "gix-index"
20341867 version = "0.40.0"
@@ -2038,16 +1871,16 @@ dependencies = [ · 3 unmodified lines
20381871 "document-features",
20391872 "filetime",
20401873 "fnv",
2041− "gix-bitmap 0.2.14",
2042− "gix-features 0.42.1",
2043− "gix-fs 0.15.0",
2044− "gix-hash 0.18.0",
2045− "gix-lock 17.1.0",
2046− "gix-object 0.49.1",
1874+ "gix-bitmap",
1875+ "gix-features",
1876+ "gix-fs",
1877+ "gix-hash",
1878+ "gix-lock",
1879+ "gix-object",
20471880 "gix-testtools",
2048− "gix-traverse 0.46.1",
2049− "gix-utils 0.3.0",
2050− "gix-validate 0.10.0",
1881+ "gix-traverse",
1882+ "gix-utils",
1883+ "gix-validate",
20511884 "hashbrown 0.14.5",
20521885 "itoa",
20531886 "libc",
@@ -2058,44 +1891,16 @@ dependencies = [ · 4 unmodified lines
20581891 "thiserror 2.0.12",
20591892 ]
20601893
2061−[[package]]
2062−name = "gix-index"
2063−version = "0.40.0"
2064−source = "registry+https://github.com/rust-lang/crates.io-index"
2065−checksum = "e6d505aea7d7c4267a3153cb90c712a89970b4dd02a2cb3205be322891f530b5"
2066−dependencies = [
2067− "bitflags 2.9.0",
2068− "bstr",
2069− "filetime",
2070− "fnv",
2071− "gix-bitmap 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
2072− "gix-features 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
2073− "gix-fs 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
2074− "gix-hash 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
2075− "gix-lock 17.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
2076− "gix-object 0.49.1 (registry+https://github.com/rust-lang/crates.io-index)",
2077− "gix-traverse 0.46.1 (registry+https://github.com/rust-lang/crates.io-index)",
2078− "gix-utils 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
2079− "gix-validate 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
2080− "hashbrown 0.14.5",
2081− "itoa",
2082− "libc",
2083− "memmap2",
2084− "rustix 1.0.7",
2085− "smallvec",
2086− "thiserror 2.0.12",
2087−]
2088−
20891894 [[package]]
20901895 name = "gix-index-tests"
20911896 version = "0.0.0"
20921897 dependencies = [
20931898 "bstr",
20941899 "filetime",
2095− "gix-features 0.42.1",
2096− "gix-hash 0.18.0",
2097− "gix-index 0.40.0",
2098− "gix-object 0.49.1",
1900+ "gix-features",
1901+ "gix-hash",
1902+ "gix-index",
1903+ "gix-object",
20991904 "gix-odb",
21001905 "gix-testtools",
21011906 ]
@@ -2108,23 +1913,12 @@ version = "0.0.0" · 6 unmodified lines
21081913 name = "gix-lock"
21091914 version = "17.1.0"
21101915 dependencies = [
2111− "gix-tempfile 17.1.0",
2112− "gix-utils 0.3.0",
1916+ "gix-tempfile",
1917+ "gix-utils",
21131918 "tempfile",
21141919 "thiserror 2.0.12",
21151920 ]
21161921
2117−[[package]]
2118−name = "gix-lock"
2119−version = "17.1.0"
2120−source = "registry+https://github.com/rust-lang/crates.io-index"
2121−checksum = "570f8b034659f256366dc90f1a24924902f20acccd6a15be96d44d1269e7a796"
2122−dependencies = [
2123− "gix-tempfile 17.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
2124− "gix-utils 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
2125− "thiserror 2.0.12",
2126−]
2127−
21281922 [[package]]
21291923 name = "gix-macros"
21301924 version = "0.1.5"
@@ -2141,8 +1935,8 @@ version = "0.27.1" · 10 unmodified lines
21411935 dependencies = [
21421936 "bstr",
21431937 "document-features",
2144− "gix-actor 0.35.1",
2145− "gix-date 0.10.1",
1938+ "gix-actor",
1939+ "gix-date",
21461940 "gix-testtools",
21471941 "serde",
21481942 "thiserror 2.0.12",
@@ -2157,20 +1951,20 @@ dependencies = [ · 8 unmodified lines
21571951 "gix-command",
21581952 "gix-diff",
21591953 "gix-filter",
2160− "gix-fs 0.15.0",
2161− "gix-hash 0.18.0",
2162− "gix-index 0.40.0",
2163− "gix-object 0.49.1",
1954+ "gix-fs",
1955+ "gix-hash",
1956+ "gix-index",
1957+ "gix-object",
21641958 "gix-odb",
2165− "gix-path 0.10.17",
2166− "gix-quote 0.6.0",
1959+ "gix-path",
1960+ "gix-quote",
21671961 "gix-revision",
2168− "gix-revwalk 0.20.1",
2169− "gix-tempfile 17.1.0",
1962+ "gix-revwalk",
1963+ "gix-tempfile",
21701964 "gix-testtools",
2171− "gix-trace 0.1.12",
2172− "gix-utils 0.3.0",
2173− "gix-worktree 0.41.0",
1965+ "gix-trace",
1966+ "gix-utils",
1967+ "gix-worktree",
21741968 "imara-diff",
21751969 "pretty_assertions",
21761970 "serde",
@@ -2183,13 +1977,13 @@ name = "gix-negotiate" · 6 unmodified lines
21831977 version = "0.20.1"
21841978 dependencies = [
21851979 "bitflags 2.9.0",
2186− "gix-commitgraph 0.28.0",
2187− "gix-date 0.10.1",
2188− "gix-hash 0.18.0",
2189− "gix-object 0.49.1",
1980+ "gix-commitgraph",
1981+ "gix-date",
1982+ "gix-hash",
1983+ "gix-object",
21901984 "gix-odb",
2191− "gix-ref 0.52.1",
2192− "gix-revwalk 0.20.1",
1985+ "gix-ref",
1986+ "gix-revwalk",
21931987 "gix-testtools",
21941988 "smallvec",
21951989 "thiserror 2.0.12",
@@ -2206,16 +2000,16 @@ dependencies = [ · 10 unmodified lines
22062000 "bstr",
22072001 "criterion",
22082002 "document-features",
2209− "gix-actor 0.35.1",
2210− "gix-date 0.10.1",
2211− "gix-features 0.42.1",
2212− "gix-hash 0.18.0",
2213− "gix-hashtable 0.8.1",
2003+ "gix-actor",
2004+ "gix-date",
2005+ "gix-features",
2006+ "gix-hash",
2007+ "gix-hashtable",
22142008 "gix-odb",
2215− "gix-path 0.10.17",
2009+ "gix-path",
22162010 "gix-testtools",
2217− "gix-utils 0.3.0",
2218− "gix-validate 0.10.0",
2011+ "gix-utils",
2012+ "gix-validate",
22192013 "itoa",
22202014 "pretty_assertions",
22212015 "serde",
@@ -2225,42 +2019,21 @@ dependencies = [ · 3 unmodified lines
22252019 "winnow",
22262020 ]
22272021
2228−[[package]]
2229−name = "gix-object"
2230−version = "0.49.1"
2231−source = "registry+https://github.com/rust-lang/crates.io-index"
2232−checksum = "d957ca3640c555d48bb27f8278c67169fa1380ed94f6452c5590742524c40fbb"
2233−dependencies = [
2234− "bstr",
2235− "gix-actor 0.35.1 (registry+https://github.com/rust-lang/crates.io-index)",
2236− "gix-date 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
2237− "gix-features 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
2238− "gix-hash 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
2239− "gix-hashtable 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
2240− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
2241− "gix-utils 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
2242− "gix-validate 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
2243− "itoa",
2244− "smallvec",
2245− "thiserror 2.0.12",
2246− "winnow",
2247−]
2248−
22492022 [[package]]
22502023 name = "gix-odb"
22512024 version = "0.69.1"
22522025 dependencies = [
22532026 "arc-swap",
22542027 "document-features",
2255− "gix-date 0.10.1",
2256− "gix-features 0.42.1",
2257− "gix-fs 0.15.0",
2258− "gix-hash 0.18.0",
2259− "gix-hashtable 0.8.1",
2260− "gix-object 0.49.1",
2028+ "gix-date",
2029+ "gix-features",
2030+ "gix-fs",
2031+ "gix-hash",
2032+ "gix-hashtable",
2033+ "gix-object",
22612034 "gix-pack",
2262− "gix-path 0.10.17",
2263− "gix-quote 0.6.0",
2035+ "gix-path",
2036+ "gix-quote",
22642037 "parking_lot",
22652038 "serde",
22662039 "tempfile",
@@ -2273,11 +2046,11 @@ version = "0.0.0" · 6 unmodified lines
22732046 dependencies = [
22742047 "crossbeam-channel",
22752048 "filetime",
2276− "gix-actor 0.35.1",
2277− "gix-date 0.10.1",
2278− "gix-features 0.42.1",
2279− "gix-hash 0.18.0",
2280− "gix-object 0.49.1",
2049+ "gix-actor",
2050+ "gix-date",
2051+ "gix-features",
2052+ "gix-hash",
2053+ "gix-object",
22812054 "gix-odb",
22822055 "gix-pack",
22832056 "gix-testtools",
@@ -2291,16 +2064,16 @@ version = "0.59.1" · 7 unmodified lines
22912064 dependencies = [
22922065 "clru",
22932066 "document-features",
2294− "gix-chunk 0.4.11",
2067+ "gix-chunk",
22952068 "gix-diff",
2296− "gix-features 0.42.1",
2297− "gix-hash 0.18.0",
2298− "gix-hashtable 0.8.1",
2299− "gix-object 0.49.1",
2300− "gix-path 0.10.17",
2301− "gix-tempfile 17.1.0",
2069+ "gix-features",
2070+ "gix-hash",
2071+ "gix-hashtable",
2072+ "gix-object",
2073+ "gix-path",
2074+ "gix-tempfile",
23022075 "gix-testtools",
2303− "gix-traverse 0.46.1",
2076+ "gix-traverse",
23042077 "memmap2",
23052078 "parking_lot",
23062079 "serde",
@@ -2314,13 +2087,13 @@ name = "gix-pack-tests" · 7 unmodified lines
23142087 version = "0.0.0"
23152088 dependencies = [
23162089 "bstr",
2317− "gix-features 0.42.1",
2318− "gix-hash 0.18.0",
2319− "gix-object 0.49.1",
2090+ "gix-features",
2091+ "gix-hash",
2092+ "gix-object",
23202093 "gix-odb",
23212094 "gix-pack",
23222095 "gix-testtools",
2323− "gix-traverse 0.46.1",
2096+ "gix-traverse",
23242097 "maplit",
23252098 "memmap2",
23262099 ]
@@ -2335,10 +2108,10 @@ dependencies = [ · 8 unmodified lines
23352108 "faster-hex",
23362109 "futures-io",
23372110 "futures-lite",
2338− "gix-hash 0.18.0",
2111+ "gix-hash",
23392112 "gix-odb",
23402113 "gix-pack",
2341− "gix-trace 0.1.12",
2114+ "gix-trace",
23422115 "maybe-async",
23432116 "pin-project-lite",
23442117 "serde",
@@ -2352,7 +2125,7 @@ dependencies = [ · 7 unmodified lines
23522125 "bstr",
23532126 "document-features",
23542127 "faster-hex",
2355− "gix-trace 0.1.12",
2128+ "gix-trace",
23562129 "serde",
23572130 "thiserror 2.0.12",
23582131 ]
@@ -2363,8 +2136,8 @@ version = "0.10.17" · 4 unmodified lines
23632136 dependencies = [
23642137 "bstr",
23652138 "gix-testtools",
2366− "gix-trace 0.1.12",
2367− "gix-validate 0.10.0",
2139+ "gix-trace",
2140+ "gix-validate",
23682141 "home",
23692142 "known-folders",
23702143 "once_cell",
@@ -2374,30 +2147,16 @@ dependencies = [ · 3 unmodified lines
23742147 "winreg",
23752148 ]
23762149
2377−[[package]]
2378−name = "gix-path"
2379−version = "0.10.17"
2380−source = "registry+https://github.com/rust-lang/crates.io-index"
2381−checksum = "c091d2e887e02c3462f52252c5ea61150270c0f2657b642e8d0d6df56c16e642"
2382−dependencies = [
2383− "bstr",
2384− "gix-trace 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
2385− "gix-validate 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
2386− "home",
2387− "once_cell",
2388− "thiserror 2.0.12",
2389−]
2390−
23912150 [[package]]
23922151 name = "gix-pathspec"
23932152 version = "0.11.0"
23942153 dependencies = [
23952154 "bitflags 2.9.0",
23962155 "bstr",
2397− "gix-attributes 0.26.0",
2156+ "gix-attributes",
23982157 "gix-config-value",
2399− "gix-glob 0.20.0",
2400− "gix-path 0.10.17",
2158+ "gix-glob",
2159+ "gix-path",
24012160 "gix-testtools",
24022161 "once_cell",
24032162 "serial_test",
@@ -2429,20 +2188,20 @@ dependencies = [ · 25 unmodified lines
24292188 "futures-io",
24302189 "futures-lite",
24312190 "gix-credentials",
2432− "gix-date 0.10.1",
2433− "gix-features 0.42.1",
2434− "gix-hash 0.18.0",
2435− "gix-lock 17.1.0",
2191+ "gix-date",
2192+ "gix-features",
2193+ "gix-hash",
2194+ "gix-lock",
24362195 "gix-negotiate",
2437− "gix-object 0.49.1",
2196+ "gix-object",
24382197 "gix-packetline",
2439− "gix-ref 0.52.1",
2198+ "gix-ref",
24402199 "gix-refspec",
2441− "gix-revwalk 0.20.1",
2200+ "gix-revwalk",
24422201 "gix-shallow",
2443− "gix-trace 0.1.12",
2202+ "gix-trace",
24442203 "gix-transport",
2445− "gix-utils 0.3.0",
2204+ "gix-utils",
24462205 "maybe-async",
24472206 "serde",
24482207 "thiserror 2.0.12",
@@ -2454,18 +2213,7 @@ name = "gix-quote" · 5 unmodified lines
24542213 version = "0.6.0"
24552214 dependencies = [
24562215 "bstr",
2457− "gix-utils 0.3.0",
2458− "thiserror 2.0.12",
2459−]
2460−
2461−[[package]]
2462−name = "gix-quote"
2463−version = "0.6.0"
2464−source = "registry+https://github.com/rust-lang/crates.io-index"
2465−checksum = "4a375a75b4d663e8bafe3bf4940a18a23755644c13582fa326e99f8f987d83fd"
2466−dependencies = [
2467− "bstr",
2468− "gix-utils 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
2216+ "gix-utils",
24692217 "thiserror 2.0.12",
24702218 ]
24712219
@@ -2478,61 +2226,40 @@ name = "gix-ref" · 6 unmodified lines
24782226 version = "0.52.1"
24792227 dependencies = [
24802228 "document-features",
2481− "gix-actor 0.35.1",
2482− "gix-date 0.10.1",
2483− "gix-features 0.42.1",
2484− "gix-fs 0.15.0",
2485− "gix-hash 0.18.0",
2486− "gix-lock 17.1.0",
2487− "gix-object 0.49.1",
2488− "gix-path 0.10.17",
2489− "gix-tempfile 17.1.0",
2229+ "gix-actor",
2230+ "gix-date",
2231+ "gix-features",
2232+ "gix-fs",
2233+ "gix-hash",
2234+ "gix-lock",
2235+ "gix-object",
2236+ "gix-path",
2237+ "gix-tempfile",
24902238 "gix-testtools",
2491− "gix-utils 0.3.0",
2492− "gix-validate 0.10.0",
2239+ "gix-utils",
2240+ "gix-validate",
24932241 "memmap2",
24942242 "serde",
24952243 "thiserror 2.0.12",
24962244 "winnow",
24972245 ]
24982246
2499−[[package]]
2500−name = "gix-ref"
2501−version = "0.52.1"
2502−source = "registry+https://github.com/rust-lang/crates.io-index"
2503−checksum = "d1b7985657029684d759f656b09abc3e2c73085596d5cdb494428823970a7762"
2504−dependencies = [
2505− "gix-actor 0.35.1 (registry+https://github.com/rust-lang/crates.io-index)",
2506− "gix-features 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
2507− "gix-fs 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
2508− "gix-hash 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
2509− "gix-lock 17.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
2510− "gix-object 0.49.1 (registry+https://github.com/rust-lang/crates.io-index)",
2511− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
2512− "gix-tempfile 17.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
2513− "gix-utils 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
2514− "gix-validate 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
2515− "memmap2",
2516− "thiserror 2.0.12",
2517− "winnow",
2518−]
2519−
25202247 [[package]]
25212248 name = "gix-ref-tests"
25222249 version = "0.0.0"
25232250 dependencies = [
2524− "gix-actor 0.35.1",
2525− "gix-date 0.10.1",
2526− "gix-discover 0.40.1",
2527− "gix-features 0.42.1",
2528− "gix-fs 0.15.0",
2529− "gix-hash 0.18.0",
2530− "gix-lock 17.1.0",
2531− "gix-object 0.49.1",
2251+ "gix-actor",
2252+ "gix-date",
2253+ "gix-discover",
2254+ "gix-features",
2255+ "gix-fs",
2256+ "gix-hash",
2257+ "gix-lock",
2258+ "gix-object",
25322259 "gix-odb",
2533− "gix-ref 0.52.1",
2260+ "gix-ref",
25342261 "gix-testtools",
2535− "gix-validate 0.10.0",
2262+ "gix-validate",
25362263 "insta",
25372264 ]
25382265
@@ -2541,10 +2268,10 @@ name = "gix-refspec" · 2 unmodified lines
25412268 version = "0.30.1"
25422269 dependencies = [
25432270 "bstr",
2544− "gix-hash 0.18.0",
2271+ "gix-hash",
25452272 "gix-revision",
25462273 "gix-testtools",
2547− "gix-validate 0.10.0",
2274+ "gix-validate",
25482275 "smallvec",
25492276 "thiserror 2.0.12",
25502277 ]
@@ -2556,15 +2283,15 @@ dependencies = [ · 5 unmodified lines
25562283 "bitflags 2.9.0",
25572284 "bstr",
25582285 "document-features",
2559− "gix-commitgraph 0.28.0",
2560− "gix-date 0.10.1",
2561− "gix-hash 0.18.0",
2562− "gix-hashtable 0.8.1",
2563− "gix-object 0.49.1",
2286+ "gix-commitgraph",
2287+ "gix-date",
2288+ "gix-hash",
2289+ "gix-hashtable",
2290+ "gix-object",
25642291 "gix-odb",
2565− "gix-revwalk 0.20.1",
2292+ "gix-revwalk",
25662293 "gix-testtools",
2567− "gix-trace 0.1.12",
2294+ "gix-trace",
25682295 "permutohedron",
25692296 "serde",
25702297 "thiserror 2.0.12",
@@ -2574,56 +2301,29 @@ dependencies = [ · 3 unmodified lines
25742301 name = "gix-revwalk"
25752302 version = "0.20.1"
25762303 dependencies = [
2577− "gix-commitgraph 0.28.0",
2578− "gix-date 0.10.1",
2579− "gix-hash 0.18.0",
2580− "gix-hashtable 0.8.1",
2581− "gix-object 0.49.1",
2304+ "gix-commitgraph",
2305+ "gix-date",
2306+ "gix-hash",
2307+ "gix-hashtable",
2308+ "gix-object",
25822309 "gix-testtools",
25832310 "smallvec",
25842311 "thiserror 2.0.12",
25852312 ]
25862313
2587−[[package]]
2588−name = "gix-revwalk"
2589−version = "0.20.1"
2590−source = "registry+https://github.com/rust-lang/crates.io-index"
2591−checksum = "1bc756b73225bf005ddeb871d1ca7b3c33e2417d0d53e56effa5a36765b52b28"
2592−dependencies = [
2593− "gix-commitgraph 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
2594− "gix-date 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
2595− "gix-hash 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
2596− "gix-hashtable 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
2597− "gix-object 0.49.1 (registry+https://github.com/rust-lang/crates.io-index)",
2598− "smallvec",
2599− "thiserror 2.0.12",
2600−]
2601−
26022314 [[package]]
26032315 name = "gix-sec"
26042316 version = "0.11.0"
26052317 dependencies = [
26062318 "bitflags 2.9.0",
26072319 "document-features",
2608− "gix-path 0.10.17",
2320+ "gix-path",
26092321 "libc",
26102322 "serde",
26112323 "tempfile",
26122324 "windows-sys 0.59.0",
26132325 ]
26142326
2615−[[package]]
2616−name = "gix-sec"
2617−version = "0.11.0"
2618−source = "registry+https://github.com/rust-lang/crates.io-index"
2619−checksum = "d0dabbc78c759ecc006b970339394951b2c8e1e38a37b072c105b80b84c308fd"
2620−dependencies = [
2621− "bitflags 2.9.0",
2622− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
2623− "libc",
2624− "windows-sys 0.59.0",
2625−]
2626−
26272327 [[package]]
26282328 name = "gix-sequencer"
26292329 version = "0.0.0"
@@ -2633,8 +2333,8 @@ name = "gix-shallow" · 3 unmodified lines
26332333 version = "0.4.0"
26342334 dependencies = [
26352335 "bstr",
2636− "gix-hash 0.18.0",
2637− "gix-lock 17.1.0",
2336+ "gix-hash",
2337+ "gix-lock",
26382338 "serde",
26392339 "thiserror 2.0.12",
26402340 ]
@@ -2648,15 +2348,15 @@ dependencies = [ · 7 unmodified lines
26482348 "filetime",
26492349 "gix-diff",
26502350 "gix-dir",
2651− "gix-features 0.42.1",
2351+ "gix-features",
26522352 "gix-filter",
2653− "gix-fs 0.15.0",
2654− "gix-hash 0.18.0",
2655− "gix-index 0.40.0",
2656− "gix-object 0.49.1",
2657− "gix-path 0.10.17",
2353+ "gix-fs",
2354+ "gix-hash",
2355+ "gix-index",
2356+ "gix-object",
2357+ "gix-path",
26582358 "gix-pathspec",
2659− "gix-worktree 0.41.0",
2359+ "gix-worktree",
26602360 "portable-atomic",
26612361 "thiserror 2.0.12",
26622362 ]
@@ -2669,18 +2369,18 @@ dependencies = [ · 6 unmodified lines
26692369 "filetime",
26702370 "gix-diff",
26712371 "gix-dir",
2672− "gix-features 0.42.1",
2372+ "gix-features",
26732373 "gix-filter",
2674− "gix-fs 0.15.0",
2675− "gix-hash 0.18.0",
2676− "gix-index 0.40.0",
2677− "gix-object 0.49.1",
2374+ "gix-fs",
2375+ "gix-hash",
2376+ "gix-index",
2377+ "gix-object",
26782378 "gix-odb",
2679− "gix-path 0.10.17",
2379+ "gix-path",
26802380 "gix-pathspec",
26812381 "gix-status",
26822382 "gix-testtools",
2683− "gix-worktree 0.41.0",
2383+ "gix-worktree",
26842384 "pretty_assertions",
26852385 ]
26862386
@@ -2690,8 +2390,8 @@ version = "0.19.1" · 3 unmodified lines
26902390 dependencies = [
26912391 "bstr",
26922392 "gix-config",
2693− "gix-features 0.42.1",
2694− "gix-path 0.10.17",
2393+ "gix-features",
2394+ "gix-path",
26952395 "gix-pathspec",
26962396 "gix-refspec",
26972397 "gix-testtools",
@@ -2705,22 +2405,7 @@ version = "17.1.0" · 7 unmodified lines
27052405 dependencies = [
27062406 "dashmap",
27072407 "document-features",
2708− "gix-fs 0.15.0",
2709− "libc",
2710− "once_cell",
2711− "parking_lot",
2712− "signal-hook",
2713− "signal-hook-registry",
2714− "tempfile",
2715−]
2716−
2717−[[package]]
2718−name = "gix-tempfile"
2719−version = "17.1.0"
2720−source = "registry+https://github.com/rust-lang/crates.io-index"
2721−checksum = "c750e8c008453a2dba67a2b0d928b7716e05da31173a3f5e351d5457ad4470aa"
2722−dependencies = [
2723− "gix-fs 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
2408+ "gix-fs",
27242409 "libc",
27252410 "once_cell",
27262411 "parking_lot",
@@ -2738,11 +2423,11 @@ dependencies = [ · 11 unmodified lines
27382423 "document-features",
27392424 "fastrand",
27402425 "fs_extra",
2741− "gix-discover 0.40.1 (registry+https://github.com/rust-lang/crates.io-index)",
2742− "gix-fs 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
2743− "gix-lock 17.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
2744− "gix-tempfile 17.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
2745− "gix-worktree 0.41.0 (registry+https://github.com/rust-lang/crates.io-index)",
2426+ "gix-discover",
2427+ "gix-fs",
2428+ "gix-lock",
2429+ "gix-tempfile",
2430+ "gix-worktree",
27462431 "io-close",
27472432 "is_ci",
27482433 "once_cell",
@@ -2766,12 +2451,6 @@ dependencies = [ · 17 unmodified lines
27662451 "tracing-core",
27672452 ]
27682453
2769−[[package]]
2770−name = "gix-trace"
2771−version = "0.1.12"
2772−source = "registry+https://github.com/rust-lang/crates.io-index"
2773−checksum = "7c396a2036920c69695f760a65e7f2677267ccf483f25046977d87e4cb2665f7"
2774−
27752454 [[package]]
27762455 name = "gix-transport"
27772456 version = "0.47.0"
@@ -2787,12 +2466,12 @@ dependencies = [ · 9 unmodified lines
27872466 "futures-lite",
27882467 "gix-command",
27892468 "gix-credentials",
2790− "gix-features 0.42.1",
2791− "gix-hash 0.18.0",
2469+ "gix-features",
2470+ "gix-hash",
27922471 "gix-pack",
27932472 "gix-packetline",
2794− "gix-quote 0.6.0",
2795− "gix-sec 0.11.0",
2473+ "gix-quote",
2474+ "gix-sec",
27962475 "gix-url",
27972476 "maybe-async",
27982477 "pin-project-lite",
@@ -2806,29 +2485,12 @@ name = "gix-traverse" · 7 unmodified lines
28062485 version = "0.46.1"
28072486 dependencies = [
28082487 "bitflags 2.9.0",
2809− "gix-commitgraph 0.28.0",
2810− "gix-date 0.10.1",
2811− "gix-hash 0.18.0",
2812− "gix-hashtable 0.8.1",
2813− "gix-object 0.49.1",
2814− "gix-revwalk 0.20.1",
2815− "smallvec",
2816− "thiserror 2.0.12",
2817−]
2818−
2819−[[package]]
2820−name = "gix-traverse"
2821−version = "0.46.1"
2822−source = "registry+https://github.com/rust-lang/crates.io-index"
2823−checksum = "39094185f6d9a4d81101130fbbf7f598a06441d774ae3b3ae7930a613bbe1157"
2824−dependencies = [
2825− "bitflags 2.9.0",
2826− "gix-commitgraph 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
2827− "gix-date 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
2828− "gix-hash 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
2829− "gix-hashtable 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
2830− "gix-object 0.49.1 (registry+https://github.com/rust-lang/crates.io-index)",
2831− "gix-revwalk 0.20.1 (registry+https://github.com/rust-lang/crates.io-index)",
2488+ "gix-commitgraph",
2489+ "gix-date",
2490+ "gix-hash",
2491+ "gix-hashtable",
2492+ "gix-object",
2493+ "gix-revwalk",
28322494 "smallvec",
28332495 "thiserror 2.0.12",
28342496 ]
@@ -2837,12 +2499,12 @@ dependencies = [ · 2 unmodified lines
28372499 name = "gix-traverse-tests"
28382500 version = "0.0.0"
28392501 dependencies = [
2840− "gix-commitgraph 0.28.0",
2841− "gix-hash 0.18.0",
2842− "gix-object 0.49.1",
2502+ "gix-commitgraph",
2503+ "gix-hash",
2504+ "gix-object",
28432505 "gix-odb",
28442506 "gix-testtools",
2845− "gix-traverse 0.46.1",
2507+ "gix-traverse",
28462508 "insta",
28472509 ]
28482510
@@ -2857,8 +2519,8 @@ dependencies = [ · 8 unmodified lines
28572519 "assert_matches",
28582520 "bstr",
28592521 "document-features",
2860− "gix-features 0.42.1",
2861− "gix-path 0.10.17",
2522+ "gix-features",
2523+ "gix-path",
28622524 "gix-testtools",
28632525 "percent-encoding",
28642526 "serde",
@@ -2875,16 +2537,6 @@ dependencies = [ · 10 unmodified lines
28752537 "unicode-normalization",
28762538 ]
28772539
2878−[[package]]
2879−name = "gix-utils"
2880−version = "0.3.0"
2881−source = "registry+https://github.com/rust-lang/crates.io-index"
2882−checksum = "5351af2b172caf41a3728eb4455326d84e0d70fe26fc4de74ab0bd37df4191c5"
2883−dependencies = [
2884− "fastrand",
2885− "unicode-normalization",
2886−]
2887−
28882540 [[package]]
28892541 name = "gix-validate"
28902542 version = "0.10.0"
@@ -2894,68 +2546,39 @@ dependencies = [ · 3 unmodified lines
28942546 "thiserror 2.0.12",
28952547 ]
28962548
2897−[[package]]
2898−name = "gix-validate"
2899−version = "0.10.0"
2900−source = "registry+https://github.com/rust-lang/crates.io-index"
2901−checksum = "77b9e00cacde5b51388d28ed746c493b18a6add1f19b5e01d686b3b9ece66d4d"
2902−dependencies = [
2903− "bstr",
2904− "thiserror 2.0.12",
2905−]
2906−
29072549 [[package]]
29082550 name = "gix-worktree"
29092551 version = "0.41.0"
29102552 dependencies = [
29112553 "bstr",
29122554 "document-features",
2913− "gix-attributes 0.26.0",
2914− "gix-features 0.42.1",
2915− "gix-fs 0.15.0",
2916− "gix-glob 0.20.0",
2917− "gix-hash 0.18.0",
2918− "gix-ignore 0.15.0",
2919− "gix-index 0.40.0",
2920− "gix-object 0.49.1",
2921− "gix-path 0.10.17",
2922− "gix-validate 0.10.0",
2555+ "gix-attributes",
2556+ "gix-features",
2557+ "gix-fs",
2558+ "gix-glob",
2559+ "gix-hash",
2560+ "gix-ignore",
2561+ "gix-index",
2562+ "gix-object",
2563+ "gix-path",
2564+ "gix-validate",
29232565 "serde",
29242566 ]
29252567
2926−[[package]]
2927−name = "gix-worktree"
2928−version = "0.41.0"
2929−source = "registry+https://github.com/rust-lang/crates.io-index"
2930−checksum = "54f1916f8d928268300c977d773dd70a8746b646873b77add0a34876a8c847e9"
2931−dependencies = [
2932− "bstr",
2933− "gix-attributes 0.26.0 (registry+https://github.com/rust-lang/crates.io-index)",
2934− "gix-features 0.42.1 (registry+https://github.com/rust-lang/crates.io-index)",
2935− "gix-fs 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
2936− "gix-glob 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)",
2937− "gix-hash 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
2938− "gix-ignore 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
2939− "gix-index 0.40.0 (registry+https://github.com/rust-lang/crates.io-index)",
2940− "gix-object 0.49.1 (registry+https://github.com/rust-lang/crates.io-index)",
2941− "gix-path 0.10.17 (registry+https://github.com/rust-lang/crates.io-index)",
2942− "gix-validate 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
2943−]
2944−
29452568 [[package]]
29462569 name = "gix-worktree-state"
29472570 version = "0.19.0"
29482571 dependencies = [
29492572 "bstr",
2950− "gix-features 0.42.1",
2573+ "gix-features",
29512574 "gix-filter",
2952− "gix-fs 0.15.0",
2953− "gix-glob 0.20.0",
2954− "gix-hash 0.18.0",
2955− "gix-index 0.40.0",
2956− "gix-object 0.49.1",
2957− "gix-path 0.10.17",
2958− "gix-worktree 0.41.0",
2575+ "gix-fs",
2576+ "gix-glob",
2577+ "gix-hash",
2578+ "gix-index",
2579+ "gix-object",
2580+ "gix-path",
2581+ "gix-worktree",
29592582 "io-close",
29602583 "thiserror 2.0.12",
29612584 ]
@@ -2964,13 +2587,13 @@ dependencies = [ · 2 unmodified lines
29642587 name = "gix-worktree-state-tests"
29652588 version = "0.0.0"
29662589 dependencies = [
2967− "gix-discover 0.40.1",
2968− "gix-features 0.42.1",
2590+ "gix-discover",
2591+ "gix-features",
29692592 "gix-filter",
2970− "gix-fs 0.15.0",
2971− "gix-hash 0.18.0",
2972− "gix-index 0.40.0",
2973− "gix-object 0.49.1",
2593+ "gix-fs",
2594+ "gix-hash",
2595+ "gix-index",
2596+ "gix-object",
29742597 "gix-odb",
29752598 "gix-testtools",
29762599 "gix-worktree-state",
@@ -2983,17 +2606,17 @@ dependencies = [ · 6 unmodified lines
29832606 name = "gix-worktree-stream"
29842607 version = "0.21.1"
29852608 dependencies = [
2986− "gix-attributes 0.26.0",
2987− "gix-features 0.42.1",
2609+ "gix-attributes",
2610+ "gix-features",
29882611 "gix-filter",
2989− "gix-fs 0.15.0",
2990− "gix-hash 0.18.0",
2991− "gix-object 0.49.1",
2612+ "gix-fs",
2613+ "gix-hash",
2614+ "gix-object",
29922615 "gix-odb",
2993− "gix-path 0.10.17",
2616+ "gix-path",
29942617 "gix-testtools",
2995− "gix-traverse 0.46.1",
2996− "gix-worktree 0.41.0",
2618+ "gix-traverse",
2619+ "gix-worktree",
29972620 "parking_lot",
29982621 "thiserror 2.0.12",
29992622 ]
@@ -3003,19 +2626,19 @@ name = "gix-worktree-tests" · 3 unmodified lines
30032626 version = "0.0.0"
30042627 dependencies = [
30052628 "bstr",
3006− "gix-attributes 0.26.0",
3007− "gix-discover 0.40.1",
3008− "gix-features 0.42.1",
3009− "gix-fs 0.15.0",
3010− "gix-glob 0.20.0",
3011− "gix-hash 0.18.0",
3012− "gix-ignore 0.15.0",
3013− "gix-index 0.40.0",
3014− "gix-object 0.49.1",
2629+ "gix-attributes",
2630+ "gix-discover",
2631+ "gix-features",
2632+ "gix-fs",
2633+ "gix-glob",
2634+ "gix-hash",
2635+ "gix-ignore",
2636+ "gix-index",
2637+ "gix-object",
30152638 "gix-odb",
3016− "gix-path 0.10.17",
2639+ "gix-path",
30172640 "gix-testtools",
3018− "gix-worktree 0.41.0",
2641+ "gix-worktree",
30192642 "symlink",
30202643 ]
30212644
tests/tools/Cargo.toml+5−5
@@ -25,11 +25,11 @@ default = [] · 24 unmodified lines
2525 xz = ["dep:xz2"]
2626
2727 [dependencies]
28−gix-lock = "17.1.0"
29−gix-discover = "0.40.1"
30−gix-worktree = "0.41.0"
31−gix-fs = "0.15.0"
32−gix-tempfile = { version = "17.1.0", default-features = false, features = ["signals"] }
28+gix-lock = { version = "17.1.0", path = "../../gix-lock" }
29+gix-discover = { version = "0.40.1", path = "../../gix-discover" }
30+gix-worktree = { version = "0.41.0", path = "../../gix-worktree" }
31+gix-fs = { version = "0.15.0", path = "../../gix-fs" }
32+gix-tempfile = { version = "17.1.0", path = "../../gix-tempfile", default-features = false, features = ["signals"] }
3333
3434 winnow = { version = "0.7.7", features = ["simd"] }
3535 fastrand = "2.0.0"