From a87ddb2dc7e06edf2fd15a865aa32cffcccda8a1 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Thu, 26 Jun 2025 07:46:58 -0700 Subject: [PATCH 1/4] Bump to 0.91.0 --- Cargo.lock | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f2488657d..045014207 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -300,7 +300,7 @@ dependencies = [ [[package]] name = "cargo" -version = "0.90.0" +version = "0.91.0" dependencies = [ "annotate-snippets", "anstream", diff --git a/Cargo.toml b/Cargo.toml index 5c1130da3..9affaef36 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -136,7 +136,7 @@ self_named_module_files = "warn" [package] name = "cargo" -version = "0.90.0" +version = "0.91.0" edition.workspace = true license.workspace = true rust-version = "1.88" # MSRV:1 From d36c0aeed04b38e8eed967b0a4f6d3734e3849b7 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Fri, 27 Jun 2025 08:09:19 -0700 Subject: [PATCH 2/4] Update changelog for 1.89 --- src/doc/src/CHANGELOG.md | 123 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 121 insertions(+), 2 deletions(-) diff --git a/src/doc/src/CHANGELOG.md b/src/doc/src/CHANGELOG.md index 8b088b7da..3bec0ea1b 100644 --- a/src/doc/src/CHANGELOG.md +++ b/src/doc/src/CHANGELOG.md @@ -1,12 +1,35 @@ # Changelog +## Cargo 1.90 (2025-09-18) +[c24e1064...HEAD](https://github.com/rust-lang/cargo/compare/c24e1064...HEAD) + +### Added + +### Changed + +### Fixed + +- Expanded error messages around path dependency on `cargo package` and `cargo publish` + [#15705](https://github.com/rust-lang/cargo/pull/15705) + +### Nightly only + +- feat(toml): Parse support for multiple build scripts + [#15630](https://github.com/rust-lang/cargo/pull/15630) + +### Documentation + +### Internal + ## Cargo 1.89 (2025-08-07) -[873a0649...HEAD](https://github.com/rust-lang/cargo/compare/873a0649...HEAD) +[873a0649...rust-1.89.0](https://github.com/rust-lang/cargo/compare/873a0649...rust-1.89.0) ### Added - Add `*` and `?` pattern support for SSH known hosts matching. [#15508](https://github.com/rust-lang/cargo/pull/15508) +- Stabilize doctest-xcompile. Doctests will now automatically be tested when cross-compiling to a target that is different from the host, just like other tests. + [#15462](https://github.com/rust-lang/cargo/pull/15462) ### Changed @@ -28,6 +51,28 @@ ### Fixed +- Fixed potential deadlock in `CacheState::lock` + [#15698](https://github.com/rust-lang/cargo/pull/15698) + [#15699](https://github.com/rust-lang/cargo/pull/15699) +- Fixed the `--manifest-path` arg being ignored in `cargo fix` + [#15633](https://github.com/rust-lang/cargo/pull/15633) +- When publishing, don't tell people to ctrl-c without knowing consequences. + [#15632](https://github.com/rust-lang/cargo/pull/15632) +- Added missing `--offline` in shell completions. + [#15623](https://github.com/rust-lang/cargo/pull/15623) +- cargo-credential-libsecret: load libsecret only once + [#15295](https://github.com/rust-lang/cargo/pull/15295) +- fix(fingerprint): When failing to find the mtime of a file, report an explicit reason rather than "stale; unknown reason". + [#15617](https://github.com/rust-lang/cargo/pull/15617) +- Fixed cargo add overwriting symlinked Cargo.toml files + [#15281](https://github.com/rust-lang/cargo/pull/15281) +- fix(vendor)!: vendor files with .rej/.orig suffix + [#15569](https://github.com/rust-lang/cargo/pull/15569) +- fix(vendor)!: use direct extraction for registry sources. This should ensure that vendored files now always match the originals. + [#15514](https://github.com/rust-lang/cargo/pull/15514) +- In the network retry message, use singular "try" for the last retry. + [#15328](https://github.com/rust-lang/cargo/pull/15328) + ### Nightly only - 🔥 `-Zno-embed-metadata`: This tells Cargo to pass the `-Zembed-metadata=no` @@ -36,10 +81,43 @@ `.rmeta` files. ([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#no-embed-metadata)) [#15378](https://github.com/rust-lang/cargo/pull/15378) +- 🔥 Plumb rustc `-Zhint-mostly-unused` flag through as a profile option + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#profile-hint-mostly-unused-option)) + [#15643](https://github.com/rust-lang/cargo/pull/15643) +- Added the "future" edition + [#15595](https://github.com/rust-lang/cargo/pull/15595) +- Added `-Zfix-edition` + [#15596](https://github.com/rust-lang/cargo/pull/15596) +- Added perma unstable `--compile-time-deps` option for `cargo build` + [#15674](https://github.com/rust-lang/cargo/pull/15674) - `-Zscript`: Make cargo script ignore workspaces. [#15496](https://github.com/rust-lang/cargo/pull/15496) - `-Zpackage-workspace`: keep dev-dependencies if they have a version. [#15470](https://github.com/rust-lang/cargo/pull/15470) +- Added custom completer for `cargo remove ` + [#15662](https://github.com/rust-lang/cargo/pull/15662) +- test(publish): Improvements in prep for `-Zpackage-workspace` stabilization + [#15628](https://github.com/rust-lang/cargo/pull/15628) +- fix(package): Allow packaging of self-cycles with `-Zpackage-workspace` + [#15626](https://github.com/rust-lang/cargo/pull/15626) +- fix(trim-paths): remap all paths to `build.build-dir` + [#15614](https://github.com/rust-lang/cargo/pull/15614) +- test(trim-paths): enable more tests for windows-msvc + [#15621](https://github.com/rust-lang/cargo/pull/15621) +- fix(doc): pass `toolchain-shared-resources` to get doc styled for rustdoc-depinfo tracking + [#15605](https://github.com/rust-lang/cargo/pull/15605) +- fix(embedded): Resolve multiple bugs in frontmatter parser for `-Zscript` + [#15573](https://github.com/rust-lang/cargo/pull/15573) +- fix(toml): Remove workaround for rustc frontmatter support for `-Zscript` + [#15570](https://github.com/rust-lang/cargo/pull/15570) +- Allow configuring arbitrary codegen backends + [#15562](https://github.com/rust-lang/cargo/pull/15562) +- feat: skip `publish=false` pkg when publishing entire workspace for `-Zpackage-workspace`. + [#15525](https://github.com/rust-lang/cargo/pull/15525) +- doc: Update instructions on using native-completions + [#15480](https://github.com/rust-lang/cargo/pull/15480) +- fix(package): Skip registry check if its not needed with `-Zpackage-workspace`. + [#15629](https://github.com/rust-lang/cargo/pull/15629) ### Documentation @@ -49,6 +127,14 @@ [#15478](https://github.com/rust-lang/cargo/pull/15478) - home: update version notice for deprecation removal [#15511](https://github.com/rust-lang/cargo/pull/15511) +- docs(contrib): change clap URL to docs.rs/clap + [#15682](https://github.com/rust-lang/cargo/pull/15682) +- Update links in contrib docs + [#15659](https://github.com/rust-lang/cargo/pull/15659) +- docs: clarify `--all-features` not available for all commmands + [#15572](https://github.com/rust-lang/cargo/pull/15572) +- docs(README): fix the link to the changelog in the Cargo book + [#15597](https://github.com/rust-lang/cargo/pull/15597) ### Internal @@ -64,6 +150,37 @@ [#15498](https://github.com/rust-lang/cargo/pull/15498) - Update dependencies. [#15456](https://github.com/rust-lang/cargo/pull/15456) +- refactor: replace InternedString with Cow in IndexPackage + [#15559](https://github.com/rust-lang/cargo/pull/15559) +- Use `Not::not` rather than a custom `is_false` function + [#15645](https://github.com/rust-lang/cargo/pull/15645) +- fix: Make UI tests handle hyperlinks consistently + [#15640](https://github.com/rust-lang/cargo/pull/15640) +- Update dependencies + [#15635](https://github.com/rust-lang/cargo/pull/15635) + [#15557](https://github.com/rust-lang/cargo/pull/15557) +- refactor: clean up `clippy::perf` lint warnings + [#15631](https://github.com/rust-lang/cargo/pull/15631) +- chore(deps): update alpine docker tag to v3.22 + [#15616](https://github.com/rust-lang/cargo/pull/15616) +- chore: remove HTML comments in PR template and inline guide + [#15613](https://github.com/rust-lang/cargo/pull/15613) +- Added .git-blame-ignore-revs + [#15612](https://github.com/rust-lang/cargo/pull/15612) +- refactor: cleanup for `CompileMode` + [#15608](https://github.com/rust-lang/cargo/pull/15608) +- refactor: separate "global" mode from CompileMode + [#15601](https://github.com/rust-lang/cargo/pull/15601) +- chore: Upgrade schemars + [#15602](https://github.com/rust-lang/cargo/pull/15602) +- Update gix & socket2 + [#15600](https://github.com/rust-lang/cargo/pull/15600) +- chore(toml): disable `toml`'s default features, unless necessary, to reduce cargo-util-schemas build time + [#15598](https://github.com/rust-lang/cargo/pull/15598) +- chore(gh): Add new-lint issue template + [#15575](https://github.com/rust-lang/cargo/pull/15575) +- Fix comment for cargo/core/compiler/fingerprint/mod.rs + [#15565](https://github.com/rust-lang/cargo/pull/15565) ## Cargo 1.88 (2025-06-26) [a6c604d1...rust-1.88.0](https://github.com/rust-lang/cargo/compare/a6c604d1...rust-1.88.0) @@ -117,6 +234,9 @@ as git status check is mostly informational. [#15416](https://github.com/rust-lang/cargo/pull/15416) [#15419](https://github.com/rust-lang/cargo/pull/15419) +- Fixed `cargo rustc --bin` panicking on unknown bin names + [#15515](https://github.com/rust-lang/cargo/pull/15515) + [#15497](https://github.com/rust-lang/cargo/pull/15497) ### Nightly only @@ -206,7 +326,6 @@ [#15193](https://github.com/rust-lang/cargo/pull/15193) - Include the package name also in the target hint message. [#15199](https://github.com/rust-lang/cargo/pull/15199) - [#15497](https://github.com/rust-lang/cargo/pull/15497) - cargo-add: collapse large feature lists [#15200](https://github.com/rust-lang/cargo/pull/15200) - cargo-vendor: Add context which workspace failed to resolve From 5c19611910bf369d3e73d32dcc051a630e5016aa Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Thu, 26 Jun 2025 07:38:45 -0700 Subject: [PATCH 3/4] Update tests now that 1.88 is stable --- tests/testsuite/build_script.rs | 11 ++++------- tests/testsuite/cross_compile.rs | 5 +---- tests/testsuite/global_cache_tracker.rs | 4 +--- tests/testsuite/test.rs | 15 +++------------ 4 files changed, 9 insertions(+), 26 deletions(-) diff --git a/tests/testsuite/build_script.rs b/tests/testsuite/build_script.rs index c62170211..1d49d144d 100644 --- a/tests/testsuite/build_script.rs +++ b/tests/testsuite/build_script.rs @@ -5602,17 +5602,14 @@ test check_target ... ok "#]]) .run(); - // Remove check once 1.88 is stable - if cargo_test_support::is_nightly() { - p.cargo("test --workspace --doc --target") - .arg(&target) - .with_stdout_data(str![[r#" + p.cargo("test --workspace --doc --target") + .arg(&target) + .with_stdout_data(str![[r#" ... test foo/src/lib.rs - (line 2) ... ok ... "#]]) - .run(); - } + .run(); } #[cargo_test] diff --git a/tests/testsuite/cross_compile.rs b/tests/testsuite/cross_compile.rs index 22cc0cab2..c4ad40930 100644 --- a/tests/testsuite/cross_compile.rs +++ b/tests/testsuite/cross_compile.rs @@ -1136,10 +1136,7 @@ test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; fini .run(); } -#[cargo_test( - nightly, - reason = "waiting for 1.88 to be stable for doctest xcompile flags" -)] +#[cargo_test] fn doctest_xcompile_linker() { if cross_compile_disabled() { return; diff --git a/tests/testsuite/global_cache_tracker.rs b/tests/testsuite/global_cache_tracker.rs index a42e054c8..70bb35759 100644 --- a/tests/testsuite/global_cache_tracker.rs +++ b/tests/testsuite/global_cache_tracker.rs @@ -1987,11 +1987,9 @@ fn compatible_with_older_cargo() { middle = "1.0" "#, ); - // TODO: Remove -Zgc after 1.82 is stabilized. rustup_cargo() - .args(&["+stable", "check", "-Zgc"]) + .args(&["+stable", "check"]) .cwd(p.root()) - .masquerade_as_nightly_cargo(&["gc"]) .env("__CARGO_TEST_LAST_USE_NOW", months_ago_unix(2)) .run(); assert_eq!(get_registry_names("src"), ["middle-1.0.0", "new-1.0.0"]); diff --git a/tests/testsuite/test.rs b/tests/testsuite/test.rs index 099a2bc7a..b2d4b0577 100644 --- a/tests/testsuite/test.rs +++ b/tests/testsuite/test.rs @@ -4742,10 +4742,7 @@ fn test_dep_with_dev() { .run(); } -#[cargo_test( - nightly, - reason = "waiting for 1.88 to be stable for doctest xcompile flags" -)] +#[cargo_test] fn cargo_test_doctest_xcompile_ignores() { // Check ignore-TARGET syntax. let p = project() @@ -4782,10 +4779,7 @@ test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; fini .run(); } -#[cargo_test( - nightly, - reason = "waiting for 1.88 to be stable for doctest xcompile flags" -)] +#[cargo_test] fn cargo_test_doctest_xcompile_runner() { if !cross_compile_can_run_on_host() { return; @@ -4868,10 +4862,7 @@ this is a runner .run(); } -#[cargo_test( - nightly, - reason = "waiting for 1.88 to be stable for doctest xcompile flags" -)] +#[cargo_test] fn cargo_test_doctest_xcompile_no_runner() { if !cross_compile_can_run_on_host() { return; From 57dbb7f2c3141a55f88e99d5e1b7003abeec559d Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Fri, 27 Jun 2025 08:58:09 -0700 Subject: [PATCH 4/4] Update changelog wording from suggestions Co-authored-by: Ed Page --- src/doc/src/CHANGELOG.md | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/doc/src/CHANGELOG.md b/src/doc/src/CHANGELOG.md index 3bec0ea1b..d14d1d641 100644 --- a/src/doc/src/CHANGELOG.md +++ b/src/doc/src/CHANGELOG.md @@ -62,13 +62,13 @@ [#15623](https://github.com/rust-lang/cargo/pull/15623) - cargo-credential-libsecret: load libsecret only once [#15295](https://github.com/rust-lang/cargo/pull/15295) -- fix(fingerprint): When failing to find the mtime of a file, report an explicit reason rather than "stale; unknown reason". +- When failing to find the mtime of a file for rebuild detection, report an explicit reason rather than "stale; unknown reason". [#15617](https://github.com/rust-lang/cargo/pull/15617) - Fixed cargo add overwriting symlinked Cargo.toml files [#15281](https://github.com/rust-lang/cargo/pull/15281) -- fix(vendor)!: vendor files with .rej/.orig suffix +- Vendor files with .rej/.orig suffix [#15569](https://github.com/rust-lang/cargo/pull/15569) -- fix(vendor)!: use direct extraction for registry sources. This should ensure that vendored files now always match the originals. +- Vendor using direct extraction for registry sources. This should ensure that vendored files now always match the originals. [#15514](https://github.com/rust-lang/cargo/pull/15514) - In the network retry message, use singular "try" for the last retry. [#15328](https://github.com/rust-lang/cargo/pull/15328) @@ -96,27 +96,27 @@ [#15470](https://github.com/rust-lang/cargo/pull/15470) - Added custom completer for `cargo remove ` [#15662](https://github.com/rust-lang/cargo/pull/15662) -- test(publish): Improvements in prep for `-Zpackage-workspace` stabilization +- Test improvements in prep for `-Zpackage-workspace` stabilization [#15628](https://github.com/rust-lang/cargo/pull/15628) -- fix(package): Allow packaging of self-cycles with `-Zpackage-workspace` +- Allow packaging of self-cycles with `-Zpackage-workspace` [#15626](https://github.com/rust-lang/cargo/pull/15626) -- fix(trim-paths): remap all paths to `build.build-dir` +- With trim-paths, remap all paths to `build.build-dir` [#15614](https://github.com/rust-lang/cargo/pull/15614) -- test(trim-paths): enable more tests for windows-msvc +- Enable more trim-paths tests for windows-msvc [#15621](https://github.com/rust-lang/cargo/pull/15621) -- fix(doc): pass `toolchain-shared-resources` to get doc styled for rustdoc-depinfo tracking +- Fix doc rebuild detection by passing `toolchain-shared-resources` to get doc styled for rustdoc-depinfo tracking [#15605](https://github.com/rust-lang/cargo/pull/15605) -- fix(embedded): Resolve multiple bugs in frontmatter parser for `-Zscript` +- Resolve multiple bugs in frontmatter parser for `-Zscript` [#15573](https://github.com/rust-lang/cargo/pull/15573) -- fix(toml): Remove workaround for rustc frontmatter support for `-Zscript` +- Remove workaround for rustc frontmatter support for `-Zscript` [#15570](https://github.com/rust-lang/cargo/pull/15570) - Allow configuring arbitrary codegen backends [#15562](https://github.com/rust-lang/cargo/pull/15562) -- feat: skip `publish=false` pkg when publishing entire workspace for `-Zpackage-workspace`. +- skip `publish=false` pkg when publishing entire workspace for `-Zpackage-workspace`. [#15525](https://github.com/rust-lang/cargo/pull/15525) -- doc: Update instructions on using native-completions +- Update instructions on using native-completions [#15480](https://github.com/rust-lang/cargo/pull/15480) -- fix(package): Skip registry check if its not needed with `-Zpackage-workspace`. +- Skip registry check if its not needed with `-Zpackage-workspace`. [#15629](https://github.com/rust-lang/cargo/pull/15629) ### Documentation