|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## Cargo 1.83 (2024-11-28) |
| 4 | +[8f40fc59...HEAD](https://github.com/rust-lang/cargo/compare/8f40fc59...HEAD) |
| 5 | + |
| 6 | +### Added |
| 7 | + |
| 8 | +### Changed |
| 9 | + |
| 10 | +- Enhanced the missing feature error message. |
| 11 | + [#14436](https://github.com/rust-lang/cargo/pull/14436) |
| 12 | +- Enhanced the dependency update status message, including |
| 13 | + - Reports incompatible packages with precise Rust version |
| 14 | + [#14457](https://github.com/rust-lang/cargo/pull/14457) |
| 15 | + - Reports incompatible-with-rustc when MSRV-resolver is disabled |
| 16 | + [#14459](https://github.com/rust-lang/cargo/pull/14459) |
| 17 | + - Reports compatible, incompatible, and direct-dep updates with different |
| 18 | + colors and messages. |
| 19 | + [#14461](https://github.com/rust-lang/cargo/pull/14461) |
| 20 | + - The `Locking` status message stops showing workspace members. |
| 21 | + [#14445](https://github.com/rust-lang/cargo/pull/14445) |
| 22 | +- Log details of `rustc` invocation failure if no errors are seen |
| 23 | + [#14453](https://github.com/rust-lang/cargo/pull/14453) |
| 24 | +- cargo-package: Don't automatically include the current crate when packaging |
| 25 | + [#14488](https://github.com/rust-lang/cargo/pull/14488) |
| 26 | + |
| 27 | +### Fixed |
| 28 | + |
| 29 | +- cargo-add: Perform fuzzy search when translating package names |
| 30 | + [#13765](https://github.com/rust-lang/cargo/pull/13765) |
| 31 | + |
| 32 | +### Nightly only |
| 33 | + |
| 34 | +- cargo-update: Add `matches_prerelease` semantic |
| 35 | + [#14305](https://github.com/rust-lang/cargo/pull/14305) |
| 36 | +- `open-namespaces`: Allow open namespaces in `PackageIdSpec`s |
| 37 | + [#14467](https://github.com/rust-lang/cargo/pull/14467) |
| 38 | + |
| 39 | +### Documentation |
| 40 | + |
| 41 | +### Internal |
| 42 | + |
| 43 | +- Updated to `pasetors` 0.7.0 |
| 44 | + [#14478](https://github.com/rust-lang/cargo/pull/14478) |
| 45 | +- cargo-update: Prepare for smarter update messages |
| 46 | + [#14440](https://github.com/rust-lang/cargo/pull/14440) |
| 47 | + |
3 | 48 | ## Cargo 1.82 (2024-10-17)
|
4 |
| -[a2b58c3d...HEAD](https://github.com/rust-lang/cargo/compare/a2b58c3d...HEAD) |
| 49 | +[a2b58c3d...rust-1.82.0](https://github.com/rust-lang/cargo/compare/a2b58c3d...rust-1.82.0) |
5 | 50 |
|
6 | 51 | ### Added
|
7 | 52 |
|
| 53 | +- 🎉 Added `cargo info` command for displaying information about a package. |
| 54 | + [docs](https://doc.rust-lang.org/nightly/cargo/commands/cargo-info.html) |
| 55 | + [#14141](https://github.com/rust-lang/cargo/pull/14141) |
| 56 | + [#14418](https://github.com/rust-lang/cargo/pull/14418) |
| 57 | + [#14430](https://github.com/rust-lang/cargo/pull/14430) |
| 58 | + |
8 | 59 | ### Changed
|
9 | 60 |
|
| 61 | +- ❗️ Doctest respects Cargo's color options by passing `--color` to rustdoc invocations. |
| 62 | + [#14425](https://github.com/rust-lang/cargo/pull/14425) |
10 | 63 | - Improved error message for missing both `[package]` and `[workspace]` in Cargo.toml.
|
11 | 64 | [#14261](https://github.com/rust-lang/cargo/pull/14261)
|
| 65 | +- Enumerate all possible values of `profile.*.debug` for the error message. |
| 66 | + [#14413](https://github.com/rust-lang/cargo/pull/14413) |
12 | 67 |
|
13 | 68 | ### Fixed
|
14 | 69 |
|
| 70 | +- Use longhand gitoxide path-spec patterns. Previously the implementation used |
| 71 | + shorthand pathspecs, which could produce invalid syntax, for example, if the |
| 72 | + path to the manifest file contained a leading `_` underscore |
| 73 | + [#14380](https://github.com/rust-lang/cargo/pull/14380) |
| 74 | +- cargo-package: fix failures on bare commit git repo. |
| 75 | + [#14359](https://github.com/rust-lang/cargo/pull/14359) |
| 76 | +- cargo-publish: Don't strip non-dev features for renamed dependencies from the |
| 77 | + HTTP JSON body sent to the registry. |
| 78 | + The bug only affected third-party registries. |
| 79 | + [#14325](https://github.com/rust-lang/cargo/pull/14325) |
| 80 | + [#14327](https://github.com/rust-lang/cargo/pull/14327) |
| 81 | +- cargo-vendor: don't copy source files of excluded Cargo targets when vendoring. |
| 82 | + [#14367](https://github.com/rust-lang/cargo/pull/14367) |
| 83 | + |
15 | 84 | ### Nightly only
|
16 | 85 |
|
| 86 | +- 🔥 `lockfile-path`: Added `--lockfile-path` flag that allows specifying a path |
| 87 | + to the lockfile other than the default path `<workspace_root>/Cargo.lock`. |
| 88 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#lockfile-path)) |
| 89 | + [#14326](https://github.com/rust-lang/cargo/pull/14326) |
| 90 | + [#14417](https://github.com/rust-lang/cargo/pull/14417) |
| 91 | + [#14423](https://github.com/rust-lang/cargo/pull/14423) |
| 92 | + [#14424](https://github.com/rust-lang/cargo/pull/14424) |
| 93 | +- 🔥 `path-bases`: Introduced a table of path "bases" in Cargo configuration files |
| 94 | + that can be used to prefix the paths of path dependencies and patch entries. |
| 95 | + ([RFC 3529](https://github.com/rust-lang/rfcs/blob/master/text/3529-cargo-path-bases.md)) |
| 96 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#path-bases)) |
| 97 | + [#14360](https://github.com/rust-lang/cargo/pull/14360) |
| 98 | +- 🔥 `-Zpackage-workspace`: Enhanced the experience of `cargo package --workspace` |
| 99 | + when there are dependencies between crates in the workspace. |
| 100 | + Crates in a workspace are no longer required to publish to actual registries. |
| 101 | + This is a step toward supporting `cargo publish --workspace`. |
| 102 | + [#13947](https://github.com/rust-lang/cargo/pull/13947) |
| 103 | + [#14408](https://github.com/rust-lang/cargo/pull/14408) |
| 104 | + [#14340](https://github.com/rust-lang/cargo/pull/14340) |
| 105 | +- cargo-update: Limit pre-release match semantics to use only on `OptVersionReq::Req` |
| 106 | + [#14412](https://github.com/rust-lang/cargo/pull/14412) |
| 107 | +- `edition2024`: Revert "fix: Ensure dep/feature activates the dependency on 2024". |
| 108 | + [#14295](https://github.com/rust-lang/cargo/pull/14295) |
| 109 | +- `update-breaking`: Improved error message when `update --breaking` has an invalid spec |
| 110 | + [#14279](https://github.com/rust-lang/cargo/pull/14279) |
| 111 | +- `update-breaking`: Don’t downgrade on prerelease `VersionReq` when updating with `--breaking` |
| 112 | + [#14250](https://github.com/rust-lang/cargo/pull/14250) |
| 113 | +- `-Zbuild-std`: remove hack on creating virtual std workspace |
| 114 | + [#14358](https://github.com/rust-lang/cargo/pull/14358) |
| 115 | + [#14370](https://github.com/rust-lang/cargo/pull/14370) |
| 116 | +- `-Zmsrv-policy`: Adjust MSRV resolve config field name / values. |
| 117 | + The previous placeholder `resolver.something-like-precedence` |
| 118 | + is now renamed to `resolver.incompatible-rust-versions`. |
| 119 | + [#14296](https://github.com/rust-lang/cargo/pull/14296) |
| 120 | +- `-Zmsrv-policy`: : Report when incompatible-rust-version packages are selected |
| 121 | + [#14401](https://github.com/rust-lang/cargo/pull/14401) |
17 | 122 | - `-Ztarget-applies-to-host`: Fixed passing of links-overrides with
|
18 | 123 | target-applies-to-host and an implicit target
|
19 | 124 | [#14205](https://github.com/rust-lang/cargo/pull/14205)
|
| 125 | +- `-Ztarget-applies-to-host`: `-Cmetadata` includes whether extra rustflags is same as host |
| 126 | + [#14432](https://github.com/rust-lang/cargo/pull/14432) |
| 127 | +- `-Ztrim-paths`: rustdoc supports trim-paths for diagnostics |
| 128 | + [#14389](https://github.com/rust-lang/cargo/pull/14389) |
20 | 129 |
|
21 | 130 | ### Documentation
|
22 | 131 |
|
| 132 | +- Convert comments to doc comments for `Workspace`. |
| 133 | + [#14397](https://github.com/rust-lang/cargo/pull/14397) |
| 134 | +- Fix MSRV indicator for `workspace.package` and `workspace.dependencies`. |
| 135 | + [#14400](https://github.com/rust-lang/cargo/pull/14400) |
| 136 | +- FAQ: remove outdated Cargo offline usage section. |
| 137 | + [#14336](https://github.com/rust-lang/cargo/pull/14336) |
| 138 | + |
23 | 139 | ### Internal
|
24 | 140 |
|
25 |
| -- cargo-util-schemas: Added `TomlPackage::new`, `Default` for `TomlWorkspace` |
26 |
| - [#14271](https://github.com/rust-lang/cargo/pull/14271) |
27 | 141 | - Enhanced `cargo-test-support` usability and documentation.
|
28 | 142 | [#14266](https://github.com/rust-lang/cargo/pull/14266)
|
29 | 143 | [#14268](https://github.com/rust-lang/cargo/pull/14268)
|
|
34 | 148 | [#14260](https://github.com/rust-lang/cargo/pull/14260)
|
35 | 149 | - Used `Rc` instead of `Arc` for storing rustflags
|
36 | 150 | [#14273](https://github.com/rust-lang/cargo/pull/14273)
|
37 |
| -- test: Migrated `global_cache_tracker` snapbox |
| 151 | +- Removed rustc probe for `--check-cfg` support |
| 152 | + [#14302](https://github.com/rust-lang/cargo/pull/14302) |
| 153 | +- Renamed 'resolved' to 'normalized' for all manifest normalization related items. |
| 154 | + [#14342](https://github.com/rust-lang/cargo/pull/14342) |
| 155 | +- cargo-util-schemas: Added `TomlPackage::new`, `Default` for `TomlWorkspace` |
| 156 | + [#14271](https://github.com/rust-lang/cargo/pull/14271) |
| 157 | +- ci: Switch macos aarch64 to nightly |
| 158 | + [#14382](https://github.com/rust-lang/cargo/pull/14382) |
| 159 | +- mdman: Normalize newlines when rendering options |
| 160 | + [#14428](https://github.com/rust-lang/cargo/pull/14428) |
| 161 | +- perf: dont call wrap in a no-op `source_id::with*` |
| 162 | + [#14318](https://github.com/rust-lang/cargo/pull/14318) |
| 163 | +- test: Migrated more tests to snapbox |
| 164 | + [#14242](https://github.com/rust-lang/cargo/pull/14242) |
38 | 165 | [#14244](https://github.com/rust-lang/cargo/pull/14244)
|
| 166 | + [#14293](https://github.com/rust-lang/cargo/pull/14293) |
| 167 | + [#14297](https://github.com/rust-lang/cargo/pull/14297) |
| 168 | + [#14319](https://github.com/rust-lang/cargo/pull/14319) |
| 169 | + [#14402](https://github.com/rust-lang/cargo/pull/14402) |
| 170 | + [#14410](https://github.com/rust-lang/cargo/pull/14410) |
| 171 | +- test: don't rely on absence of `RUST_BACKTRACE` |
| 172 | + [#14441](https://github.com/rust-lang/cargo/pull/14441) |
| 173 | +- test: Use gmake on AIX |
| 174 | + [#14323](https://github.com/rust-lang/cargo/pull/14323) |
| 175 | +- Updated to `gix` 0.64.0 |
| 176 | + [#14332](https://github.com/rust-lang/cargo/pull/14332) |
| 177 | +- Updated to `rusqlite` 0.32.0 |
| 178 | + [#14334](https://github.com/rust-lang/cargo/pull/14334) |
| 179 | +- Updated to `windows-sys` 0.59 |
| 180 | + [#14335](https://github.com/rust-lang/cargo/pull/14335) |
| 181 | +- Update dependencies. |
| 182 | + [#14299](https://github.com/rust-lang/cargo/pull/14299) |
| 183 | + [#14303](https://github.com/rust-lang/cargo/pull/14303) |
| 184 | + [#14324](https://github.com/rust-lang/cargo/pull/14324) |
| 185 | + [#14329](https://github.com/rust-lang/cargo/pull/14329) |
| 186 | + [#14331](https://github.com/rust-lang/cargo/pull/14331) |
| 187 | + [#14391](https://github.com/rust-lang/cargo/pull/14391) |
39 | 188 |
|
40 | 189 | ## Cargo 1.81 (2024-09-05)
|
41 | 190 | [34a6a87d...rust-1.81.0](https://github.com/rust-lang/cargo/compare/34a6a87d...rust-1.81.0)
|
|
71 | 220 | [#14252](https://github.com/rust-lang/cargo/pull/14252)
|
72 | 221 | - Don't warn about unreferenced duplicate packages
|
73 | 222 | [#14239](https://github.com/rust-lang/cargo/pull/14239)
|
| 223 | +- cargo-publish: Don't strip non-dev features for renamed dependencies from the |
| 224 | + HTTP JSON body sent to the registry. |
| 225 | + The bug only affected third-party registries. |
| 226 | + [#14328](https://github.com/rust-lang/cargo/pull/14328) |
| 227 | +- cargo-vendor: don't copy source files of excluded Cargo targets when vendoring. |
| 228 | + [#14368](https://github.com/rust-lang/cargo/pull/14368) |
74 | 229 |
|
75 | 230 | ### Nightly only
|
76 | 231 |
|
|
88 | 243 | [#14028](https://github.com/rust-lang/cargo/pull/14028)
|
89 | 244 | - `edition2024`: Address problems with implicit -> explicit feature migration
|
90 | 245 | [#14018](https://github.com/rust-lang/cargo/pull/14018)
|
91 |
| -- `edition2024`: Ensure `dep/feature` feature syntax activates the dependency |
92 |
| - [#14221](https://github.com/rust-lang/cargo/pull/14221) |
93 | 246 | - `-Zcargo-lints`: Add `unknown_lints` to lints list.
|
94 | 247 | [#14024](https://github.com/rust-lang/cargo/pull/14024)
|
95 | 248 | - `-Zcargo-lints`: Add tooling to document lints.
|
|
169 | 322 | - test: migrate Cargo testsuite to `snapbox`.
|
170 | 323 | For the complete list of migration pull requests,
|
171 | 324 | see [#14039](https://github.com/rust-lang/cargo/issues/14039#issuecomment-2158974033)
|
| 325 | +- Updated to `gix` 0.64.0 |
| 326 | + [#14431](https://github.com/rust-lang/cargo/pull/14431) |
172 | 327 | - Update dependencies.
|
173 | 328 | [#13995](https://github.com/rust-lang/cargo/pull/13995)
|
174 | 329 | [#13998](https://github.com/rust-lang/cargo/pull/13998)
|
|
0 commit comments