[anneal][v2] Add Cargo workspace resolution and target resolution logic#3401
Open
mdittmer wants to merge 1 commit into
Open
[anneal][v2] Add Cargo workspace resolution and target resolution logic#3401mdittmer wants to merge 1 commit into
mdittmer wants to merge 1 commit into
Conversation
This was referenced May 25, 2026
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## Gbbpbt76nsgp2ohpclea46vot5joxx7b5 #3401 +/- ##
====================================================================
Coverage ? 91.85%
====================================================================
Files ? 20
Lines ? 6093
Branches ? 0
====================================================================
Hits ? 5597
Misses ? 496
Partials ? 0 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
758f290 to
f0ebc05
Compare
3da3a84 to
30344a2
Compare
f0ebc05 to
8815480
Compare
30344a2 to
632f851
Compare
8815480 to
cb7cac5
Compare
632f851 to
b59e6f0
Compare
cb7cac5 to
ebd26a0
Compare
b59e6f0 to
7035d4b
Compare
ebd26a0 to
a3bc3a2
Compare
7035d4b to
4488992
Compare
4488992 to
cc455f2
Compare
a3bc3a2 to
da15155
Compare
This was referenced Jun 5, 2026
cc455f2 to
7e3e226
Compare
da15155 to
3616324
Compare
c9ea6ac to
76bceb6
Compare
b995544 to
1c66e62
Compare
76bceb6 to
d0f8b3d
Compare
1c66e62 to
36928ab
Compare
d0f8b3d to
492abe7
Compare
36928ab to
2fd2d04
Compare
2fd2d04 to
64a3d69
Compare
This was referenced Jun 15, 2026
320679c to
bf8f7c3
Compare
64a3d69 to
77d4461
Compare
bf8f7c3 to
e895f4e
Compare
36f8fe9 to
6fe99ad
Compare
e895f4e to
02102ea
Compare
6fe99ad to
a0775b9
Compare
02102ea to
5972a63
Compare
a0775b9 to
787ea4e
Compare
5972a63 to
349be33
Compare
349be33 to
dc739b0
Compare
783f549 to
6a398da
Compare
dc739b0 to
9544e92
Compare
TAG=agy Resolve Cargo requests into explicit package, target, and target-kind artifacts instead of preserving only user-facing Cargo flags for later Charon invocation. This keeps downstream stages from relying on Cargo output conventions whose shape depends on flags and workspace configuration. A future single `charon cargo` invocation strategy would need to account for these hazards: - one `--dest-file` is unsafe when Cargo selects multiple primary units, since multiple Charon driver invocations can race on that path; - Charon directory output is named by Rust crate name, so workspace packages can collide when they share `[lib] name`; - target selectors such as `--tests`, `--bins`, and default selection can produce extra or multiple artifacts; - Charon options such as `--start-from` and `--opaque` are invocation-wide and would be applied to every selected target; - lib+bin package builds may compile a sibling library under `RUSTC_WRAPPER`, which can fail if that library is translated instead of producing the rlib the bin needs. gherrit-pr-id: Gjnh4bziqtksdvg43zzll4732lxlcuss3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TAG=agy
Resolve Cargo requests into explicit package, target, and target-kind artifacts instead of preserving only user-facing Cargo flags for later Charon invocation. This keeps downstream stages from relying on Cargo output conventions whose shape depends on flags and workspace configuration.
A future single
charon cargoinvocation strategy would need to account for these hazards:--dest-fileis unsafe when Cargo selects multiple primary units, since multiple Charon driver invocations can race on that path;[lib] name;--tests,--bins, and default selection can produce extra or multiple artifacts;--start-fromand--opaqueare invocation-wide and would be applied to every selected target;RUSTC_WRAPPER, which can fail if that library is translated instead of producing the rlib the bin needs.Latest Update: v37 — Compare vs v36
📚 Full Patch History
Links show the diff between the row version and the column version.
⬇️ Download this PR
Branch
git fetch origin refs/heads/Gjnh4bziqtksdvg43zzll4732lxlcuss3 && git checkout -b pr-Gjnh4bziqtksdvg43zzll4732lxlcuss3 FETCH_HEADCheckout
git fetch origin refs/heads/Gjnh4bziqtksdvg43zzll4732lxlcuss3 && git checkout FETCH_HEADCherry Pick
git fetch origin refs/heads/Gjnh4bziqtksdvg43zzll4732lxlcuss3 && git cherry-pick FETCH_HEADPull
Stacked PRs enabled by GHerrit.