-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Stabilize install-upgrade. #7560
Conversation
r? @Eh2406 (rust_highfive has picked a reviewer for you, use r? to override) |
@rfcbot fcp merge |
I assume with |
Correct. |
Team member @ehuss has proposed to merge this. The next step is review by the rest of the tagged team members: No concerns currently listed. Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up! See this document for info about what commands tagged team members can give me. |
ping @Eh2406 @alexcrichton @joshtriplett @withoutboats for the poll. |
🔔 This is now entering its final comment period, as per the review above. 🔔 |
☔ The latest upstream changes (presumably #7576) made this pull request unmergeable. Please resolve the merge conflicts. |
e5666de
to
f7b2971
Compare
The final comment period, with a disposition to merge, as per the review above, is now complete. As the automated representative of the governance process, I would like to thank the author for their work and everyone else who contributed. The RFC will be merged soon. |
@bors: r+ |
📌 Commit f7b2971 has been approved by |
Stabilize install-upgrade. Tracking issue: #6797 This stabilizes the install-upgrade feature, which causes `cargo install` to reinstall a package if it appears to be out of date, or exit cleanly if it is up-to-date. There are no changes from `-Zinstall-upgrade`. See [the old unstable docs](https://github.com/rust-lang/cargo/blob/6a7f505a185b000e38bdad64392098e0b2e50802/src/doc/src/reference/unstable.md#install-upgrade) for a refresher on the details of what it does. This also stabilizes the following changes: - `--version` no longer allows an implicit version requirement like `1.2`. It must be either contain all 3 components (like `1.2.3`) or use a requirement operator (like `^1.2`). This has been a warning for a very long time, and is now changed to a hard error. - Added `--no-track` to disable install tracking. **Motivation** I just personally prefer this behavior, and it has been requested a few times in the past. I've been using it locally, and haven't run into any issues. If this goes into 1.41, then it will release on Jan 30, about 10 months since it was added in #6798. **Concerns** Regarding some of the concerns I had: - Is it tracking the correct set of information? I'm satisfied with the current set. It also tracks, but does not use, the version of rustc and the version specified in the `--version` flag, in case we ever want to use that in the future. It is also designed to be backwards and forwards compatible, so more information can be added in the future. I think the current set strikes a good balance of tracking the really important things, without causing unnecessary rebuilds. - Method to upgrade all outdated packages? This can always be added as a new flag or command in the future, and shouldn't block stabilization. - Should `--no-track` be kept? Does it work correctly? I kept it. It's not too hard to support, and nobody said anything (other than maybe using a less confusing name). - Should this be the default? Should there be a way to use the old behavior? I like it as the default, and don't see a real need for the old behavior. I think we could always bring back the old behavior with a flag in the future, but I would like to avoid it for simplicity. There is also the workaround of `which foo || cargo install foo`. Closes #6797. Closes #6727. Closes #6485. Closes #2082.
115: Bump libc from 0.2.65 to 0.2.66 r=MikailBag a=dependabot-preview[bot] Bumps [libc](https://github.com/rust-lang/libc) from 0.2.65 to 0.2.66. <details> <summary>Commits</summary> - [`4f11029`](rust-lang/libc@4f11029) Bump patch version to 0.2.66 - [`bba019b`](rust-lang/libc@bba019b) Auto merge of [#1610](https://github-redirect.dependabot.com/rust-lang/libc/issues/1610) - GrayJack:utmp_netbsd, r=gnzlbg - [`ea0a54a`](rust-lang/libc@ea0a54a) Auto merge of [#1608](https://github-redirect.dependabot.com/rust-lang/libc/issues/1608) - lzutao:netbsd-mut-pthread_setname_np, r=gnzlbg - [`42289eb`](rust-lang/libc@42289eb) Implement utmp for NetBSD - [`cfd561c`](rust-lang/libc@cfd561c) Auto merge of [#1605](https://github-redirect.dependabot.com/rust-lang/libc/issues/1605) - zvirja:fix-mipsel-unknown-linux-uclibc, r=gnzlbg - [`51ae96a`](rust-lang/libc@51ae96a) Auto merge of [#1576](https://github-redirect.dependabot.com/rust-lang/libc/issues/1576) - GrayJack:utmpx_netbsd, r=gnzlbg - [`096d868`](rust-lang/libc@096d868) Auto merge of [#1584](https://github-redirect.dependabot.com/rust-lang/libc/issues/1584) - psumbera:master, r=gnzlbg - [`88f6587`](rust-lang/libc@88f6587) Auto merge of [#1607](https://github-redirect.dependabot.com/rust-lang/libc/issues/1607) - jclulow:futimens, r=gnzlbg - [`5130285`](rust-lang/libc@5130285) Auto merge of [#1606](https://github-redirect.dependabot.com/rust-lang/libc/issues/1606) - msizanoen1:riscv, r=gnzlbg - [`a06978b`](rust-lang/libc@a06978b) Fix breakage due to [rust-lang/cargo#7560](https://github-redirect.dependabot.com/rust-lang/cargo/pull/7560) and rust-lan... - Additional commits viewable in [compare view](rust-lang/libc@0.2.65...0.2.66) </details> <br /> [![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=libc&package-manager=cargo&previous-version=0.2.65&new-version=0.2.66)](https://dependabot.com/compatibility-score.html?dependency-name=libc&package-manager=cargo&previous-version=0.2.65&new-version=0.2.66) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- **Note:** This repo was added to Dependabot recently, so you'll receive a maximum of 5 PRs for your first few update runs. Once an update run creates fewer than 5 PRs we'll remove that limit. You can always request more updates by clicking `Bump now` in your [Dependabot dashboard](https://app.dependabot.com). <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) </details> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
164: Bump libc from 0.2.65 to 0.2.66 r=pitkley a=dependabot-preview[bot] Bumps [libc](https://github.com/rust-lang/libc) from 0.2.65 to 0.2.66. <details> <summary>Commits</summary> - [`4f11029`](rust-lang/libc@4f11029) Bump patch version to 0.2.66 - [`bba019b`](rust-lang/libc@bba019b) Auto merge of [#1610](https://github-redirect.dependabot.com/rust-lang/libc/issues/1610) - GrayJack:utmp_netbsd, r=gnzlbg - [`ea0a54a`](rust-lang/libc@ea0a54a) Auto merge of [#1608](https://github-redirect.dependabot.com/rust-lang/libc/issues/1608) - lzutao:netbsd-mut-pthread_setname_np, r=gnzlbg - [`42289eb`](rust-lang/libc@42289eb) Implement utmp for NetBSD - [`cfd561c`](rust-lang/libc@cfd561c) Auto merge of [#1605](https://github-redirect.dependabot.com/rust-lang/libc/issues/1605) - zvirja:fix-mipsel-unknown-linux-uclibc, r=gnzlbg - [`51ae96a`](rust-lang/libc@51ae96a) Auto merge of [#1576](https://github-redirect.dependabot.com/rust-lang/libc/issues/1576) - GrayJack:utmpx_netbsd, r=gnzlbg - [`096d868`](rust-lang/libc@096d868) Auto merge of [#1584](https://github-redirect.dependabot.com/rust-lang/libc/issues/1584) - psumbera:master, r=gnzlbg - [`88f6587`](rust-lang/libc@88f6587) Auto merge of [#1607](https://github-redirect.dependabot.com/rust-lang/libc/issues/1607) - jclulow:futimens, r=gnzlbg - [`5130285`](rust-lang/libc@5130285) Auto merge of [#1606](https://github-redirect.dependabot.com/rust-lang/libc/issues/1606) - msizanoen1:riscv, r=gnzlbg - [`a06978b`](rust-lang/libc@a06978b) Fix breakage due to [rust-lang/cargo#7560](https://github-redirect.dependabot.com/rust-lang/cargo/pull/7560) and rust-lan... - Additional commits viewable in [compare view](rust-lang/libc@0.2.65...0.2.66) </details> <br /> [![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=libc&package-manager=cargo&previous-version=0.2.65&new-version=0.2.66)](https://dependabot.com/compatibility-score.html?dependency-name=libc&package-manager=cargo&previous-version=0.2.65&new-version=0.2.66) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) </details> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
This is now the default since rust-lang/cargo#7560, still need to use nightly for `-Z minimal-versions` though.
63: Remove `-Z install-upgrade` for cargo-audit r=Nemo157 a=Nemo157 This is now the default since rust-lang/cargo#7560, still need to use nightly for `-Z minimal-versions` though. Co-authored-by: Nemo157 <[email protected]>
This is now the default since rust-lang/cargo#7560
This is now the default since rust-lang/cargo#7560
1027: Bump libc from 0.2.65 to 0.2.66 r=nlewycky a=dependabot-preview[bot] Bumps [libc](https://github.com/rust-lang/libc) from 0.2.65 to 0.2.66. <details> <summary>Commits</summary> - [`4f11029`](rust-lang/libc@4f11029) Bump patch version to 0.2.66 - [`bba019b`](rust-lang/libc@bba019b) Auto merge of [#1610](https://github-redirect.dependabot.com/rust-lang/libc/issues/1610) - GrayJack:utmp_netbsd, r=gnzlbg - [`ea0a54a`](rust-lang/libc@ea0a54a) Auto merge of [#1608](https://github-redirect.dependabot.com/rust-lang/libc/issues/1608) - lzutao:netbsd-mut-pthread_setname_np, r=gnzlbg - [`42289eb`](rust-lang/libc@42289eb) Implement utmp for NetBSD - [`cfd561c`](rust-lang/libc@cfd561c) Auto merge of [#1605](https://github-redirect.dependabot.com/rust-lang/libc/issues/1605) - zvirja:fix-mipsel-unknown-linux-uclibc, r=gnzlbg - [`51ae96a`](rust-lang/libc@51ae96a) Auto merge of [#1576](https://github-redirect.dependabot.com/rust-lang/libc/issues/1576) - GrayJack:utmpx_netbsd, r=gnzlbg - [`096d868`](rust-lang/libc@096d868) Auto merge of [#1584](https://github-redirect.dependabot.com/rust-lang/libc/issues/1584) - psumbera:master, r=gnzlbg - [`88f6587`](rust-lang/libc@88f6587) Auto merge of [#1607](https://github-redirect.dependabot.com/rust-lang/libc/issues/1607) - jclulow:futimens, r=gnzlbg - [`5130285`](rust-lang/libc@5130285) Auto merge of [#1606](https://github-redirect.dependabot.com/rust-lang/libc/issues/1606) - msizanoen1:riscv, r=gnzlbg - [`a06978b`](rust-lang/libc@a06978b) Fix breakage due to [rust-lang/cargo#7560](https://github-redirect.dependabot.com/rust-lang/cargo/pull/7560) and rust-lan... - Additional commits viewable in [compare view](rust-lang/libc@0.2.65...0.2.66) </details> <br /> [![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=libc&package-manager=cargo&previous-version=0.2.65&new-version=0.2.66)](https://dependabot.com/compatibility-score.html?dependency-name=libc&package-manager=cargo&previous-version=0.2.65&new-version=0.2.66) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) </details> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
85: build(deps): bump libc from 0.2.58 to 0.2.66 r=jmesmon a=dependabot-preview[bot] Bumps [libc](https://github.com/rust-lang/libc) from 0.2.58 to 0.2.66. <details> <summary>Commits</summary> - [`4f11029`](rust-lang/libc@4f11029) Bump patch version to 0.2.66 - [`bba019b`](rust-lang/libc@bba019b) Auto merge of [#1610](https://github-redirect.dependabot.com/rust-lang/libc/issues/1610) - GrayJack:utmp_netbsd, r=gnzlbg - [`ea0a54a`](rust-lang/libc@ea0a54a) Auto merge of [#1608](https://github-redirect.dependabot.com/rust-lang/libc/issues/1608) - lzutao:netbsd-mut-pthread_setname_np, r=gnzlbg - [`42289eb`](rust-lang/libc@42289eb) Implement utmp for NetBSD - [`cfd561c`](rust-lang/libc@cfd561c) Auto merge of [#1605](https://github-redirect.dependabot.com/rust-lang/libc/issues/1605) - zvirja:fix-mipsel-unknown-linux-uclibc, r=gnzlbg - [`51ae96a`](rust-lang/libc@51ae96a) Auto merge of [#1576](https://github-redirect.dependabot.com/rust-lang/libc/issues/1576) - GrayJack:utmpx_netbsd, r=gnzlbg - [`096d868`](rust-lang/libc@096d868) Auto merge of [#1584](https://github-redirect.dependabot.com/rust-lang/libc/issues/1584) - psumbera:master, r=gnzlbg - [`88f6587`](rust-lang/libc@88f6587) Auto merge of [#1607](https://github-redirect.dependabot.com/rust-lang/libc/issues/1607) - jclulow:futimens, r=gnzlbg - [`5130285`](rust-lang/libc@5130285) Auto merge of [#1606](https://github-redirect.dependabot.com/rust-lang/libc/issues/1606) - msizanoen1:riscv, r=gnzlbg - [`a06978b`](rust-lang/libc@a06978b) Fix breakage due to [rust-lang/cargo#7560](https://github-redirect.dependabot.com/rust-lang/cargo/pull/7560) and rust-lan... - Additional commits viewable in [compare view](rust-lang/libc@0.2.58...0.2.66) </details> <br /> [![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=libc&package-manager=cargo&previous-version=0.2.58&new-version=0.2.66)](https://dependabot.com/compatibility-score.html?dependency-name=libc&package-manager=cargo&previous-version=0.2.58&new-version=0.2.66) You can trigger a rebase of this PR by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Remove yet another install metadata file. This should all be replaced with --no-track once it is part of lang/rust. rust-lang/cargo#7560 ===> Checking for items in STAGEDIR missing from pkg-plist Error: Orphaned: .crates2.json git-svn-id: svn+ssh://svn.freebsd.org/ports/head@523913 35697150-7ecd-e111-bb59-0022644237b5
Remove yet another install metadata file. This should all be replaced with --no-track once it is part of lang/rust. rust-lang/cargo#7560 ===> Checking for items in STAGEDIR missing from pkg-plist Error: Orphaned: .crates2.json
Remove yet another install metadata file. This should all be replaced with --no-track once it is part of lang/rust. rust-lang/cargo#7560 ===> Checking for items in STAGEDIR missing from pkg-plist Error: Orphaned: .crates2.json git-svn-id: svn+ssh://svn.freebsd.org/ports/head@523913 35697150-7ecd-e111-bb59-0022644237b5
Remove yet another install metadata file. This should all be replaced with --no-track once it is part of lang/rust. rust-lang/cargo#7560 ===> Checking for items in STAGEDIR missing from pkg-plist Error: Orphaned: .crates2.json
Version 1.41.0 (2020-01-30) =========================== Language -------- - [You can now pass type parameters to foreign items when implementing traits.][65879] E.g. You can now write `impl<T> From<Foo> for Vec<T> {}`. - [You can now arbitrarily nest receiver types in the `self` position.][64325] E.g. you can now write `fn foo(self: Box<Box<Self>>) {}`. Previously only `Self`, `&Self`, `&mut Self`, `Arc<Self>`, `Rc<Self>`, and `Box<Self>` were allowed. - [You can now use any valid identifier in a `format_args` macro.][66847] Previously identifiers starting with an underscore were not allowed. - [Visibility modifiers (e.g. `pub`) are now syntactically allowed on trait items and enum variants.][66183] These are still rejected semantically, but can be seen and parsed by procedural macros and conditional compilation. Compiler -------- - [Rustc will now warn if you have unused loop `'label`s.][66325] - [Removed support for the `i686-unknown-dragonfly` target.][67255] - [Added tier 3 support\* for the `riscv64gc-unknown-linux-gnu` target.][66661] - [You can now pass an arguments file passing the `@path` syntax to rustc.][66172] Note that the format differs somewhat from what is found in other tooling; please see [the documentation][argfile-docs] for more information. - [You can now provide `--extern` flag without a path, indicating that it is available from the search path or specified with an `-L` flag.][64882] \* Refer to Rust's [platform support page][forge-platform-support] for more information on Rust's tiered platform support. [argfile-docs]: https://doc.rust-lang.org/nightly/rustc/command-line-arguments.html#path-load-command-line-flags-from-a-path Libraries --------- - [The `core::panic` module is now stable.][66771] It was already stable through `std`. - [`NonZero*` numerics now implement `From<NonZero*>` if it's a smaller integer width.][66277] E.g. `NonZeroU16` now implements `From<NonZeroU8>`. - [`MaybeUninit<T>` now implements `fmt::Debug`.][65013] Stabilized APIs --------------- - [`Result::map_or`] - [`Result::map_or_else`] - [`std::rc::Weak::weak_count`] - [`std::rc::Weak::strong_count`] - [`std::sync::Weak::weak_count`] - [`std::sync::Weak::strong_count`] Cargo ----- - [Cargo will now document all the private items for binary crates by default.][cargo/7593] - [`cargo-install` will now reinstall the package if it detects that it is out of date.][cargo/7560] - [Cargo.lock now uses a more git friendly format that should help to reduce merge conflicts.][cargo/7579] - [You can now override specific dependencies's build settings][cargo/7591] E.g. `[profile.dev.overrides.image] opt-level = 2` sets the `image` crate's optimisation level to `2` for debug builds. You can also use `[profile.<profile>.build_overrides]` to override build scripts and their dependencies. Misc ---- - [You can now specify `edition` in documentation code blocks to compile the block for that edition.][66238] E.g. `edition2018` tells rustdoc that the code sample should be compiled the 2018 edition of Rust. - [You can now provide custom themes to rustdoc with `--theme`, and check the current theme with `--check-theme`.][54733] - [You can use `#[cfg(doc)]` to compile an item when building documentation.][61351] Compatibility Notes ------------------- - [As previously announced 1.41.0 will be the last tier 1 release for 32-bit Apple targets.][apple-32bit-drop] This means that the source code is still available to build, but the targets are no longer being tested and release binaries for those platforms will no longer be distributed by the Rust project. Please refer to the linked blog post for more information. [54733]: rust-lang/rust#54733 [61351]: rust-lang/rust#61351 [67255]: rust-lang/rust#67255 [66661]: rust-lang/rust#66661 [66771]: rust-lang/rust#66771 [66847]: rust-lang/rust#66847 [66238]: rust-lang/rust#66238 [66277]: rust-lang/rust#66277 [66325]: rust-lang/rust#66325 [66172]: rust-lang/rust#66172 [66183]: rust-lang/rust#66183 [65879]: rust-lang/rust#65879 [65013]: rust-lang/rust#65013 [64882]: rust-lang/rust#64882 [64325]: rust-lang/rust#64325 [cargo/7560]: rust-lang/cargo#7560 [cargo/7579]: rust-lang/cargo#7579 [cargo/7591]: rust-lang/cargo#7591 [cargo/7593]: rust-lang/cargo#7593 [`Result::map_or_else`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.map_or_else [`Result::map_or`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.map_or [`std::rc::Weak::weak_count`]: https://doc.rust-lang.org/std/rc/struct.Weak.html#method.weak_count [`std::rc::Weak::strong_count`]: https://doc.rust-lang.org/std/rc/struct.Weak.html#method.strong_count [`std::sync::Weak::weak_count`]: https://doc.rust-lang.org/std/sync/struct.Weak.html#method.weak_count [`std::sync::Weak::strong_count`]: https://doc.rust-lang.org/std/sync/struct.Weak.html#method.strong_count [apple-32bit-drop]: https://blog.rust-lang.org/2020/01/03/reducing-support-for-32-bit-apple-targets.html
115: Bump libc from 0.2.65 to 0.2.66 r=MikailBag a=dependabot-preview[bot] Bumps [libc](https://github.com/rust-lang/libc) from 0.2.65 to 0.2.66. <details> <summary>Commits</summary> - [`4f11029`](rust-lang/libc@4f11029) Bump patch version to 0.2.66 - [`bba019b`](rust-lang/libc@bba019b) Auto merge of [#1610](https://github-redirect.dependabot.com/rust-lang/libc/issues/1610) - GrayJack:utmp_netbsd, r=gnzlbg - [`ea0a54a`](rust-lang/libc@ea0a54a) Auto merge of [#1608](https://github-redirect.dependabot.com/rust-lang/libc/issues/1608) - lzutao:netbsd-mut-pthread_setname_np, r=gnzlbg - [`42289eb`](rust-lang/libc@42289eb) Implement utmp for NetBSD - [`cfd561c`](rust-lang/libc@cfd561c) Auto merge of [#1605](https://github-redirect.dependabot.com/rust-lang/libc/issues/1605) - zvirja:fix-mipsel-unknown-linux-uclibc, r=gnzlbg - [`51ae96a`](rust-lang/libc@51ae96a) Auto merge of [#1576](https://github-redirect.dependabot.com/rust-lang/libc/issues/1576) - GrayJack:utmpx_netbsd, r=gnzlbg - [`096d868`](rust-lang/libc@096d868) Auto merge of [#1584](https://github-redirect.dependabot.com/rust-lang/libc/issues/1584) - psumbera:master, r=gnzlbg - [`88f6587`](rust-lang/libc@88f6587) Auto merge of [#1607](https://github-redirect.dependabot.com/rust-lang/libc/issues/1607) - jclulow:futimens, r=gnzlbg - [`5130285`](rust-lang/libc@5130285) Auto merge of [#1606](https://github-redirect.dependabot.com/rust-lang/libc/issues/1606) - msizanoen1:riscv, r=gnzlbg - [`a06978b`](rust-lang/libc@a06978b) Fix breakage due to [rust-lang/cargo#7560](https://github-redirect.dependabot.com/rust-lang/cargo/pull/7560) and rust-lan... - Additional commits viewable in [compare view](rust-lang/libc@0.2.65...0.2.66) </details> <br /> [![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=libc&package-manager=cargo&previous-version=0.2.65&new-version=0.2.66)](https://dependabot.com/compatibility-score.html?dependency-name=libc&package-manager=cargo&previous-version=0.2.65&new-version=0.2.66) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- **Note:** This repo was added to Dependabot recently, so you'll receive a maximum of 5 PRs for your first few update runs. Once an update run creates fewer than 5 PRs we'll remove that limit. You can always request more updates by clicking `Bump now` in your [Dependabot dashboard](https://app.dependabot.com). <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) </details> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
This is now the default since rust-lang/cargo#7560
Tracking issue: #6797
This stabilizes the install-upgrade feature, which causes
cargo install
to reinstall a package if it appears to be out of date, or exit cleanly if it is up-to-date.There are no changes from
-Zinstall-upgrade
. See the old unstable docs for a refresher on the details of what it does.This also stabilizes the following changes:
--version
no longer allows an implicit version requirement like1.2
. It must be either contain all 3 components (like1.2.3
) or use a requirement operator (like^1.2
). This has been a warning for a very long time, and is now changed to a hard error.--no-track
to disable install tracking.Motivation
I just personally prefer this behavior, and it has been requested a few times in the past. I've been using it locally, and haven't run into any issues. If this goes into 1.41, then it will release on Jan 30, about 10 months since it was added in #6798.
Concerns
Regarding some of the concerns I had:
Is it tracking the correct set of information?
I'm satisfied with the current set. It also tracks, but does not use, the version of rustc and the version specified in the
--version
flag, in case we ever want to use that in the future. It is also designed to be backwards and forwards compatible, so more information can be added in the future. I think the current set strikes a good balance of tracking the really important things, without causing unnecessary rebuilds.Method to upgrade all outdated packages?
This can always be added as a new flag or command in the future, and shouldn't block stabilization.
Should
--no-track
be kept? Does it work correctly?I kept it. It's not too hard to support, and nobody said anything (other than maybe using a less confusing name).
Should this be the default? Should there be a way to use the old behavior?
I like it as the default, and don't see a real need for the old behavior. I think we could always bring back the old behavior with a flag in the future, but I would like to avoid it for simplicity. There is also the workaround of
which foo || cargo install foo
.Closes #6797.
Closes #6727.
Closes #6485.
Closes #2082.