Repository navigation
Commit 1a043ec
Read Cargo workspace members in VEX discovery
Hosted mode pins a patched crate in the root Cargo.toml AND every
workspace-member manifest that declares it, and vendored mode's
live-redirect refusal reads member manifests too. Discovery read only
the root manifest, so a crate the root does not declare was "the lock is
the only word": a member whose declaration was reverted to crates.io
(no `registry = "socket-patch-<uuid>"`) left a ref attested although
cargo re-resolves that dependency from crates.io.
Discovery now enumerates the members the way the hosted rewriter does
(`cargo_workspace::member_manifests_in`, filtered by the rewriter's own
`is_cargo_member_manifest_key`, so nothing under `.socket/` or `target/`)
and applies its manifest-declaration check across root + members. Each
declaration carries its file: diagnostics, the conflict-pair Cargo.toml
ref and lockless `UnlockedPin`s name the member manifest that holds the
pin. `[patch]` stays root-only (cargo ignores a member's).
The member walk over a `DiskSnapshot` now notes every manifest it reads
and directory it probes or lists with the snapshot instead of asking for
its raw root, so a discovery run under a read-set recording (the re-scan
cache) keeps the recording usable.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>1 parent 43fd5aa commit 1a043ec
4 files changed
Lines changed: 374 additions & 56 deletions
File tree
- crates/socket-patch-core/src
- patch/redirect
- utils
- vendor/lock_inventory
- vex/discover
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2415 | 2415 | | |
2416 | 2416 | | |
2417 | 2417 | | |
2418 | | - | |
| 2418 | + | |
2419 | 2419 | | |
2420 | 2420 | | |
2421 | 2421 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
21 | | - | |
| 21 | + | |
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
39 | 44 | | |
40 | 45 | | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
| 46 | + | |
| 47 | + | |
45 | 48 | | |
46 | 49 | | |
47 | 50 | | |
48 | 51 | | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
49 | 80 | | |
50 | 81 | | |
51 | 82 | | |
| |||
478 | 509 | | |
479 | 510 | | |
480 | 511 | | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
| 542 | + | |
| 543 | + | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
| 547 | + | |
481 | 548 | | |
482 | 549 | | |
483 | 550 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
501 | 501 | | |
502 | 502 | | |
503 | 503 | | |
504 | | - | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
505 | 507 | | |
506 | 508 | | |
507 | 509 | | |
508 | 510 | | |
509 | | - | |
| 511 | + | |
510 | 512 | | |
511 | 513 | | |
512 | 514 | | |
| |||
0 commit comments