Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
123 changes: 121 additions & 2 deletions src/doc/src/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -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

Expand All @@ -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)
- 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)
- Vendor files with .rej/.orig suffix
[#15569](https://github.com/rust-lang/cargo/pull/15569)
- 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)

### Nightly only

- 🔥 `-Zno-embed-metadata`: This tells Cargo to pass the `-Zembed-metadata=no`
Expand All @@ -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 <TAB>`
[#15662](https://github.com/rust-lang/cargo/pull/15662)
- Test improvements in prep for `-Zpackage-workspace` stabilization
[#15628](https://github.com/rust-lang/cargo/pull/15628)
- Allow packaging of self-cycles with `-Zpackage-workspace`
[#15626](https://github.com/rust-lang/cargo/pull/15626)
- With trim-paths, remap all paths to `build.build-dir`
[#15614](https://github.com/rust-lang/cargo/pull/15614)
- Enable more trim-paths tests for windows-msvc
[#15621](https://github.com/rust-lang/cargo/pull/15621)
- 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)
- Resolve multiple bugs in frontmatter parser for `-Zscript`
[#15573](https://github.com/rust-lang/cargo/pull/15573)
- 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)
- skip `publish=false` pkg when publishing entire workspace for `-Zpackage-workspace`.
[#15525](https://github.com/rust-lang/cargo/pull/15525)
- Update instructions on using native-completions
[#15480](https://github.com/rust-lang/cargo/pull/15480)
- Skip registry check if its not needed with `-Zpackage-workspace`.
[#15629](https://github.com/rust-lang/cargo/pull/15629)

### Documentation

Expand All @@ -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

Expand All @@ -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)
Expand Down Expand Up @@ -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

Expand Down Expand Up @@ -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
Expand Down
11 changes: 4 additions & 7 deletions tests/testsuite/build_script.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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]
Expand Down
5 changes: 1 addition & 4 deletions tests/testsuite/cross_compile.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
4 changes: 1 addition & 3 deletions tests/testsuite/global_cache_tracker.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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"]);
Expand Down
15 changes: 3 additions & 12 deletions tests/testsuite/test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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()
Expand Down Expand Up @@ -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;
Expand Down Expand Up @@ -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;
Expand Down