-
Notifications
You must be signed in to change notification settings - Fork 979
feat(cli)!: remove implicit toolchain installation #3985
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
ad2df9e
to
a1292bb
Compare
366cda0
to
6a61fb3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is looking great!
I think after this lands we should probably do a release! |
@djc There are 20-ish items remaining in the milestone: https://github.com/rust-lang/rustup/milestone/8. I invite you to check them out and let's decide which ones are here to stay and which ones will be left for v1.28.1, or even v1.29.0. I'm even for having a very long beta cycle for this one: there are just so many changes and I'm afraid of breaking anything by accident: I just don't have that much bandwidth, plus I have to do the legwork around cutting a new release. Update: I've created a new milestone for v1.28.1 and have moved some not-so-urgent items there: https://github.com/rust-lang/rustup/milestone/13 Also, please remember we can add new stuff even in the beta stage, as long as they are minor enough (doc changes, new warnings, etc). We've done this with v1.27.0 as well. |
6a61fb3
to
bfa64d3
Compare
Yes, you've understood it correctly, and this breakage is intentional: #3635 (comment) Before the actual release, we'll definitely clearly communicate this change with the community, and we'll use the beta phase to collect user feedback. |
I am looking forward to this change, so thanks for working on it re: breakage Might I suggest adding the new behaviour (#3983), and then waiting a release or two before completely removing the implicit installs? My concern is having a path with some continuity; If there is need - perhaps some tool that is blocked waiting on the new behaviour - during the transitional period an extra flag could be added to opt-out of implicit installs, at the risk of some complexity. |
We currently propose #3635 (comment) as a migration path. If you have any concerns/suggestions/comments, let's continue the discussion over there. |
The behaviour of rustup has recently changed: rust-lang/rustup#3985 Co-authored-by: Techassi <git@techassi.dev>
The behaviour of rustup has recently changed: rust-lang/rustup#3985 Co-authored-by: Techassi <git@techassi.dev>
* fix: Bump cargo-cyclonedx to 0.5.7 to support v4 Cargo.lock format * chore(stackable-base): Install missing rust toolchains The behaviour of rustup has recently changed: rust-lang/rustup#3985 Co-authored-by: Techassi <git@techassi.dev> * chore(opa): Install missing rust toolchains The behaviour of rustup has recently changed: rust-lang/rustup#3985 Co-authored-by: Techassi <git@techassi.dev> * chore: Update changelog --------- Co-authored-by: Nick Larsen <nick.larsen@stackable.tech>
Rustup 1.28 has been released and it disables toolchain auto installation. See [rust-lang/rustup#3985], cargo-deny-action has released a fix on v2 at EmbarkStudios/cargo-deny-action#92
Rustup 1.28 has been released and it disables toolchain auto installation. See [rust-lang/rustup#3985], cargo-deny-action has released a fix on v2 at EmbarkStudios/cargo-deny-action#92
booo, this broke a docker image that has been working for years, now have to explicitly do |
…#202) Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs from Renovate will soon appear from 'Mend'. Learn more [here](https://redirect.github.com/renovatebot/renovate/discussions/37842). This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [actions-rust-lang/setup-rust-toolchain](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain) | action | minor | `v1` -> `v1.15.0` | --- ### Release Notes <details> <summary>actions-rust-lang/setup-rust-toolchain (actions-rust-lang/setup-rust-toolchain)</summary> ### [`v1.15.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.15.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.14.1...v1.15.0) ##### What's Changed - Bump actions/checkout from 4 to 5 by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​71](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/71) - README should direct users to actions/checkout\@​5. by [@​martinfrances107](https://redirect.github.com/martinfrances107) in [#​72](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/72) - enhancement: Add option to specify rust-toolchain.toml path by [@​Kubaryt](https://redirect.github.com/Kubaryt) in [#​69](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/69) ##### New Contributors - [@​martinfrances107](https://redirect.github.com/martinfrances107) made their first contribution in [#​72](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/72) - [@​Kubaryt](https://redirect.github.com/Kubaryt) made their first contribution in [#​69](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/69) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1.14.1...v1.15.0> ### [`v1.14.1`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.14.1) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.14.0...v1.14.1) ##### What's Changed - Pin `Swatinem/rust-cache` action to a full commit SHA by [@​JohnTitor](https://redirect.github.com/JohnTitor) in [#​68](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/68) ##### New Contributors - [@​JohnTitor](https://redirect.github.com/JohnTitor) made their first contribution in [#​68](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/68) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1.14.0...v1.14.1> ### [`v1.14.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.14.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.13.0...v1.14.0) ##### What's Changed - Add new parameters `cache-all-crates` and `cache-workspace-crates` that are propagated to `Swatinem/rust-cache` as `cache-all-crates` and `cache-workspace-crates` Solves [#​67](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/67) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1.13.0...v1.14.0> ### [`v1.13.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.13.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.12.0...v1.13.0) ##### What's Changed - feat: support cache-provider by [@​mindrunner](https://redirect.github.com/mindrunner) in [#​65](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/65) ##### New Contributors - [@​mindrunner](https://redirect.github.com/mindrunner) made their first contribution in [#​65](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/65) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1.12.0...v1.13.0> ### [`v1.12.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.12.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.11.0...v1.12.0) ##### What's Changed - Support rustup installation for Windows by [@​maennchen](https://redirect.github.com/maennchen) in [#​58](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/58) ##### New Contributors - [@​maennchen](https://redirect.github.com/maennchen) made their first contribution in [#​58](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/58) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1...v1.12.0> ### [`v1.11.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.11.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.10.1...v1.11.0) ##### What's Changed - feat: add shared-cache-key to inputs by [@​skanehira](https://redirect.github.com/skanehira) in [#​52](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/52) - fix: add cache-bin input with true as default value by [@​enkhjile](https://redirect.github.com/enkhjile) in [#​51](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/51) - chore: prepare release 1.11.0 by [@​robjtede](https://redirect.github.com/robjtede) in [#​53](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/53) ##### New Contributors - [@​skanehira](https://redirect.github.com/skanehira) made their first contribution in [#​52](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/52) - [@​enkhjile](https://redirect.github.com/enkhjile) made their first contribution in [#​51](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/51) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1...v1.11.0> ### [`v1.10.1`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.10.1) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.10.0...v1.10.1) - Fix problem matcher for rustfmt output. The format has changed since [rust-lang/rustfmt#5971](https://redirect.github.com/rust-lang/rustfmt/pull/5971) and now follows the form "filename:line". Thanks to [@​0xcypher02](https://redirect.github.com/0xcypher02) for pointing out the problem. **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1...v1.10.1> ### [`v1.10.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.10.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.9.0...v1.10.0) ##### What's Changed - Add new parameter cache-directories that is propagated to Swatinem/rust-cache ([#​44](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/44) by [@​pranc1ngpegasus](https://redirect.github.com/pranc1ngpegasus)) - Add new parameter cache-key that is propagated to Swatinem/rust-cache as key ([#​41](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/41) by [@​iainlane](https://redirect.github.com/iainlane)) - Make rustup toolchain installation more robust in light of planned changes [rust-lang/rustup#3635](https://redirect.github.com/rust-lang/rustup/issues/3635) and [rust-lang/rustup#3985](https://redirect.github.com/rust-lang/rustup/pull/3985) - Allow installing multiple Rust toolchains by specifying multiple versions in the toolchain input parameter. - Configure the rustup override behavior via the new override input. ([#​38](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/38)) ##### New Contributors - [@​pranc1ngpegasus](https://redirect.github.com/pranc1ngpegasus) made their first contribution in [#​44](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/44) - [@​iainlane](https://redirect.github.com/iainlane) made their first contribution in [#​41](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/41) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1...v1.10.0> ### [`v1.9.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.9.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.8.0...v1.9.0) - Add extra argument `cache-on-failure` and forward it to `Swatinem/rust-cache`. ([#​39](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/39) by [@​samuelhnrq](https://redirect.github.com/samuelhnrq))\ Set the default the value to true. This will result in more caching than previously. This helps when large dependencies are compiled only for testing to fail. ### [`v1.8.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.8.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.7.0...v1.8.0) - Allow specifying subdirectories for cache. - Fix toolchain file overriding. ### [`v1.7.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.7.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.6.0...v1.7.0) ##### What's Changed - Allow overriding the toolchain file by [@​Twey](https://redirect.github.com/Twey) in [#​26](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/26) - ci: update checked rust-toolchain version by [@​robjtede](https://redirect.github.com/robjtede) in [#​29](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/29) - Prepare 1.7.0 release by [@​robjtede](https://redirect.github.com/robjtede) in [#​30](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/30) ##### New Contributors - [@​Twey](https://redirect.github.com/Twey) made their first contribution in [#​26](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/26) - [@​robjtede](https://redirect.github.com/robjtede) made their first contribution in [#​29](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/29) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1.6...v1.7.0> ### [`v1.6.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.6.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.5.0...v1.6.0) ##### What's Changed - Allow disabling problem matcher by [@​dcvz](https://redirect.github.com/dcvz) in [#​27](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/27) - Add docs for the `cachekey` output to the README by [@​obi1kenobi](https://redirect.github.com/obi1kenobi) in [#​24](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/24) ##### New Contributors - [@​dcvz](https://redirect.github.com/dcvz) made their first contribution in [#​27](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/27) - [@​obi1kenobi](https://redirect.github.com/obi1kenobi) made their first contribution in [#​24](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/24) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1.5...v1.6.0> ### [`v1.5.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/releases/tag/v1.5.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.4.4...v1.5.0) ##### What's Changed - Check that listed components and targets are installed even with a rust-toolchain file by [@​jonasbb](https://redirect.github.com/jonasbb) in [#​19](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/19) - allow disabling RUSTFLAGS config by [@​JeanMertz](https://redirect.github.com/JeanMertz) in [#​18](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/18) ##### New Contributors - [@​JeanMertz](https://redirect.github.com/JeanMertz) made their first contribution in [#​18](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/18) **Full Changelog**: <actions-rust-lang/setup-rust-toolchain@v1...v1.5.0> ### [`v1.4.4`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.4.3...v1.4.4) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.4.3...v1.4.4) ### [`v1.4.3`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.4.2...v1.4.3) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.4.2...v1.4.3) ### [`v1.4.2`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.4.1...v1.4.2) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.4.1...v1.4.2) ### [`v1.4.1`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.4.0...v1.4.1) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.4.0...v1.4.1) ### [`v1.4.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.7...v1.4.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.7...v1.4.0) ### [`v1.3.7`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.6...v1.3.7) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.6...v1.3.7) ### [`v1.3.6`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.5...v1.3.6) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.5...v1.3.6) ### [`v1.3.5`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.4...v1.3.5) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.4...v1.3.5) ### [`v1.3.4`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.3...v1.3.4) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.3...v1.3.4) ### [`v1.3.3`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.2...v1.3.3) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.2...v1.3.3) ### [`v1.3.2`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.1...v1.3.2) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.1...v1.3.2) ### [`v1.3.1`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.0...v1.3.1) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.0...v1.3.1) ### [`v1.3.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.2.1...v1.3.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.2.1...v1.3.0) ### [`v1.2.1`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.2.0...v1.2.1) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.2.0...v1.2.1) ### [`v1.2.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.1.0...v1.2.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.1.0...v1.2.0) ### [`v1.1.0`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.0.2...v1.1.0) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.0.2...v1.1.0) ### [`v1.0.2`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.0.1...v1.0.2) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.0.1...v1.0.2) ### [`v1.0.1`](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1...v1.0.1) [Compare Source](https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/compare/v1...v1.0.1) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/munich-quantum-toolkit/naviz). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjk3LjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJnaXRodWItYWN0aW9ucyJdfQ==--> Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Closes #3943.
As a follow-up of #3983, this PR makes
rustup toolchain install
(orrustup install
) the only way to ensure the installation of the active toolchain (apart from installing it manually).When the active toolchain needs to be installed, the existing error messages now come to our rescue:
rustup/tests/suite/cli_v2.rs
Lines 320 to 336 in e857897
This PR also makes it possible to merge
find_or_install_active_toolchain()
andfind_active_toolchain()
by reducing the number of call sites of the former.Given the current state of this PR, the CI will certainly fail, since even the test suite also relies on implicit installation.Fixup commits has been added accordingly, which will of course be squashed onto the original commit respectively before actually merging this PR.