Commit d36599e
fix(cargo-anvil): make stable toolchains deterministic (#109)
* Make Anvil stable toolchains deterministic
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* feat(cargo-anvil): test PRs against MSRV
Add a conditional Linux PR check when a selecting toolchain file differs from the workspace MSRV, with support for mapped internal toolchains.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* feat(cargo-anvil): run MSRV tests across platforms
Run affected-package tests under every declared root MSRV across the same GitHub and ADO platform matrices as ordinary PR tests.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* test(cargo-anvil): accept PowerShell error streams
Validate resolver diagnostics across stdout and stderr so the regression tests behave consistently across host PowerShell implementations.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* test(cargo-anvil): normalize resolver diagnostics
Collapse PowerShell line wrapping before asserting resolver errors so the tests are portable across host terminal widths.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* test(cargo-anvil): ignore PowerShell line markers
Assert stable resolver diagnostic fragments independently so PowerShell continuation markers do not make the tests host-dependent.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* test(cargo-anvil): isolate impact fixtures from CI toolchain state
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* fix(cargo-anvil): complete deterministic toolchain adoption
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* test(cargo-anvil): quarantine resolver subprocess test from miri
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* test(cargo-anvil): exclude resolver process tests from miri
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Scope stable toolchains to Anvil commands
Remove the globally exported resolved toolchain and route stable commands through private Just helpers. Keep explicit nightly and MSRV selection at each command site, and preserve current-checkout toolchain selection for impact baselines.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Harden MSRV toolchain validation
Reject incomplete internal mappings, accept member MSRVs satisfied by the root floor, and cover public and mapped MSRV provisioning branches.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Bootstrap Just before toolchain setup
Install the Just bootstrap before invoking private resolver recipes in GitHub Actions, preserving recipe-based selection without assuming Just is preinstalled on hosted runners.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Make MSRV diagnostic test portable
Accept PowerShell's platform-specific diagnostic wrapping while still asserting every actionable part of the mapped-toolchain error.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* fix(cargo-anvil): preserve scoped command working directory
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* fix(cargo-anvil): use native scoped command paths
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* test(cargo-anvil): compare scoped paths canonically
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Remove nested stable toolchain wrappers
Select stable toolchain arguments lazily in Just so Cargo and Rust commands run directly. Keep setup behavior recipe-owned and remove the generated resolver script.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Fix lazy toolchain selection portability
Rely on Just's normal lazy evaluation and derive the repository root from the selector working directory so the embedded PowerShell works on Unix and Windows.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Integrate stable provisioning into setup
Make stable toolchain preparation a shared setup prerequisite and evaluate the optional toolchain argument directly inside PowerShell recipes without host-specific shell invocation.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Simplify deterministic toolchain resolution
Delegate repository toolchain files to rustup, keep command-scoped explicit selection, and validate workspace MSRVs with the selected compiler.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Harden deterministic toolchain setup
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Preserve path-selected toolchain names
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Simplify stable toolchain selection
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Simplify cloud tool cache setup
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Address stable toolchain review feedback
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Fix missing-rustup test on Linux
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Correct installer helper diagnostic
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Keep tool validation read-only
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Narrow read-only tool validation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Require rustup for native selections
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
* Match exact rustup toolchain selectors
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f7996e6f-5c20-4d7a-b2f7-690af95e557e1 parent ff4aa04 commit d36599e
94 files changed
Lines changed: 4645 additions & 1238 deletions
File tree
- .anvil/container
- .github
- actions/anvil-setup
- workflows
- crates/cargo-anvil
- docs
- design
- src
- anvil/artifacts
- templates
- ado
- steps
- anvil/container
- github
- justfiles/anvil
- checks
- groups
- tests
- snapshots
- justfiles/anvil
- checks
- groups
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
| 24 | + | |
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | | - | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
48 | | - | |
| 48 | + | |
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
52 | | - | |
| 52 | + | |
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
56 | | - | |
| 56 | + | |
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
60 | | - | |
| 60 | + | |
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
64 | | - | |
| 64 | + | |
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
68 | | - | |
| 68 | + | |
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
72 | | - | |
| 72 | + | |
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
| 76 | + | |
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
80 | | - | |
| 80 | + | |
81 | 81 | | |
82 | 82 | | |
83 | 83 | | |
84 | | - | |
| 84 | + | |
85 | 85 | | |
86 | 86 | | |
87 | 87 | | |
88 | | - | |
| 88 | + | |
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
92 | | - | |
| 92 | + | |
93 | 93 | | |
94 | 94 | | |
95 | 95 | | |
96 | | - | |
| 96 | + | |
97 | 97 | | |
98 | 98 | | |
99 | 99 | | |
100 | | - | |
| 100 | + | |
101 | 101 | | |
102 | 102 | | |
103 | 103 | | |
104 | | - | |
| 104 | + | |
105 | 105 | | |
106 | 106 | | |
107 | 107 | | |
108 | | - | |
| 108 | + | |
109 | 109 | | |
110 | 110 | | |
111 | 111 | | |
112 | | - | |
| 112 | + | |
113 | 113 | | |
114 | 114 | | |
115 | 115 | | |
116 | | - | |
| 116 | + | |
117 | 117 | | |
118 | 118 | | |
119 | 119 | | |
120 | | - | |
| 120 | + | |
121 | 121 | | |
122 | 122 | | |
123 | 123 | | |
| |||
135 | 135 | | |
136 | 136 | | |
137 | 137 | | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
138 | 142 | | |
139 | 143 | | |
140 | | - | |
| 144 | + | |
141 | 145 | | |
142 | 146 | | |
143 | 147 | | |
144 | | - | |
| 148 | + | |
145 | 149 | | |
146 | 150 | | |
147 | 151 | | |
148 | 152 | | |
149 | 153 | | |
150 | 154 | | |
151 | 155 | | |
152 | | - | |
| 156 | + | |
153 | 157 | | |
154 | 158 | | |
155 | 159 | | |
156 | | - | |
| 160 | + | |
157 | 161 | | |
158 | 162 | | |
159 | 163 | | |
160 | | - | |
| 164 | + | |
161 | 165 | | |
162 | 166 | | |
163 | 167 | | |
| |||
171 | 175 | | |
172 | 176 | | |
173 | 177 | | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
174 | 182 | | |
175 | 183 | | |
176 | 184 | | |
| |||
181 | 189 | | |
182 | 190 | | |
183 | 191 | | |
184 | | - | |
| 192 | + | |
185 | 193 | | |
186 | 194 | | |
187 | 195 | | |
| |||
209 | 217 | | |
210 | 218 | | |
211 | 219 | | |
212 | | - | |
| 220 | + | |
213 | 221 | | |
214 | 222 | | |
215 | 223 | | |
216 | | - | |
| 224 | + | |
217 | 225 | | |
218 | 226 | | |
219 | 227 | | |
220 | 228 | | |
221 | 229 | | |
222 | 230 | | |
223 | 231 | | |
224 | | - | |
| 232 | + | |
225 | 233 | | |
226 | 234 | | |
227 | 235 | | |
228 | | - | |
| 236 | + | |
229 | 237 | | |
230 | 238 | | |
231 | 239 | | |
| |||
250 | 258 | | |
251 | 259 | | |
252 | 260 | | |
253 | | - | |
| 261 | + | |
254 | 262 | | |
255 | 263 | | |
256 | 264 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
75 | 75 | | |
76 | 76 | | |
77 | 77 | | |
78 | | - | |
79 | 78 | | |
80 | 79 | | |
81 | 80 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
17 | | - | |
| 16 | + | |
| 17 | + | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| |||
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
80 | | - | |
81 | | - | |
82 | | - | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
83 | 84 | | |
84 | 85 | | |
85 | 86 | | |
86 | 87 | | |
87 | | - | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | | - | |
102 | | - | |
103 | | - | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
104 | 93 | | |
105 | | - | |
106 | | - | |
107 | | - | |
| 94 | + | |
108 | 95 | | |
109 | 96 | | |
110 | 97 | | |
111 | 98 | | |
112 | | - | |
113 | | - | |
114 | | - | |
| 99 | + | |
115 | 100 | | |
116 | | - | |
117 | | - | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
| 101 | + | |
| 102 | + | |
122 | 103 | | |
123 | 104 | | |
124 | 105 | | |
125 | 106 | | |
126 | 107 | | |
127 | 108 | | |
128 | 109 | | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
148 | | - | |
149 | | - | |
150 | | - | |
151 | | - | |
152 | | - | |
153 | | - | |
| 110 | + | |
154 | 111 | | |
155 | 112 | | |
156 | 113 | | |
| |||
161 | 118 | | |
162 | 119 | | |
163 | 120 | | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
164 | 126 | | |
165 | 127 | | |
166 | 128 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
222 | 222 | | |
223 | 223 | | |
224 | 224 | | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
225 | 252 | | |
226 | 253 | | |
227 | 254 | | |
| |||
0 commit comments