|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## Cargo 1.92 (2025-12-11) |
| 4 | +[24bb93c3...HEAD](https://github.com/rust-lang/cargo/compare/24bb93c3...HEAD) |
| 5 | + |
| 6 | +### Added |
| 7 | + |
| 8 | +- Adds ghostty as supported terminal for term integration (OSC 9;4) |
| 9 | + [#15977](https://github.com/rust-lang/cargo/pull/15977) |
| 10 | + |
| 11 | +### Changed |
| 12 | + |
| 13 | +- Prefer unicode ellipses when truncating progress |
| 14 | + [#15955](https://github.com/rust-lang/cargo/pull/15955) |
| 15 | +- Eliminate the last three "did you mean" warning phrasings |
| 16 | + [#15356](https://github.com/rust-lang/cargo/pull/15356) |
| 17 | +- Clarify warning for using `features` or `default-features` in `patch` |
| 18 | + [#15953](https://github.com/rust-lang/cargo/pull/15953) |
| 19 | +- Report all future-incompat content as a single annotate-snippet Report |
| 20 | + [#15943](https://github.com/rust-lang/cargo/pull/15943) |
| 21 | +- cargo-info: Suggest a more universal `cargo tree` command |
| 22 | + [#15954](https://github.com/rust-lang/cargo/pull/15954) |
| 23 | +- cargo-publish: Switch the 'ctrl-c on wait' line to a help message |
| 24 | + [#15942](https://github.com/rust-lang/cargo/pull/15942) |
| 25 | + |
| 26 | +### Fixed |
| 27 | + |
| 28 | +### Nightly only |
| 29 | + |
| 30 | +- `-Zbuild-std`: test move away from panic_immediate_abort |
| 31 | + [#16006](https://github.com/rust-lang/cargo/pull/16006) |
| 32 | +- `-Zcargo-lints`: Add lint for global use of `hint-mostly-unused` |
| 33 | + [#15995](https://github.com/rust-lang/cargo/pull/15995) |
| 34 | +- `-Zscript`: Try alternative len code fences |
| 35 | + [#15952](https://github.com/rust-lang/cargo/pull/15952) |
| 36 | +- `-Zscript`: Improve error quality |
| 37 | + [#15972](https://github.com/rust-lang/cargo/pull/15972) |
| 38 | +- `-Zscript`: Show error source to users |
| 39 | + [#15939](https://github.com/rust-lang/cargo/pull/15939) |
| 40 | +- `-Zscript`: Only allow horizontal whitespace after fences |
| 41 | + [#15975](https://github.com/rust-lang/cargo/pull/15975) |
| 42 | +- `native-completions`: Added completion for `--features` flag |
| 43 | + [#15309](https://github.com/rust-lang/cargo/pull/15309) |
| 44 | +- `native-completions`: Show local crates/features over other members |
| 45 | + [#15956](https://github.com/rust-lang/cargo/pull/15956) |
| 46 | +- `native-completions`:: Allow completions for third-party subcommand names |
| 47 | + [#15961](https://github.com/rust-lang/cargo/pull/15961) |
| 48 | + |
| 49 | +### Documentation |
| 50 | + |
| 51 | +- 🎉 Add a new "Optimizing Build Performance" chapter |
| 52 | + [#15924](https://github.com/rust-lang/cargo/pull/15924) |
| 53 | + [#15970](https://github.com/rust-lang/cargo/pull/15970) |
| 54 | +- Clarify git sources vs git registries in source replacement documentation |
| 55 | + [#15974](https://github.com/rust-lang/cargo/pull/15974) |
| 56 | +- Clarify what we mean by omitting features in registry index documentation |
| 57 | + [#15957](https://github.com/rust-lang/cargo/pull/15957) |
| 58 | +- Clarify the role of the lockfile in dependency resolution |
| 59 | + [#15958](https://github.com/rust-lang/cargo/pull/15958) |
| 60 | +- Clarify multiple version requirement behavior |
| 61 | + [#15979](https://github.com/rust-lang/cargo/pull/15979) |
| 62 | +- contrib: Move docs building process to contributor guide |
| 63 | + [#15854](https://github.com/rust-lang/cargo/pull/15854) |
| 64 | + |
| 65 | +### Internal |
| 66 | + |
| 67 | +- Make GlobalContext Sync |
| 68 | + [#15967](https://github.com/rust-lang/cargo/pull/15967) |
| 69 | +- cargo-util-schemas: Move lockfile schemas in |
| 70 | + [#15980](https://github.com/rust-lang/cargo/pull/15980) |
| 71 | + [#15990](https://github.com/rust-lang/cargo/pull/15990) |
| 72 | +- ci: Skip check-version-bump ci job in forks |
| 73 | + [#15959](https://github.com/rust-lang/cargo/pull/15959) |
| 74 | +- Update dependencies. |
| 75 | + [#15988](https://github.com/rust-lang/cargo/pull/15988) |
| 76 | + [#15984](https://github.com/rust-lang/cargo/pull/15984) |
| 77 | + [#15989](https://github.com/rust-lang/cargo/pull/15989) |
| 78 | + [#15993](https://github.com/rust-lang/cargo/pull/15993) |
| 79 | + |
3 | 80 | ## Cargo 1.91 (2025-10-30)
|
4 |
| -[840b83a1...HEAD](https://github.com/rust-lang/cargo/compare/840b83a1...HEAD) |
| 81 | +[840b83a1...rust-1.91.0](https://github.com/rust-lang/cargo/compare/840b83a1...rust-1.91.0) |
5 | 82 |
|
6 | 83 | ### Added
|
7 | 84 |
|
| 85 | +- 🎉 Stabilize `build.build-dir`. |
| 86 | + This config sets the directory where intermediate build artifacts are stored. |
| 87 | + These artifacts are produced by Cargo and rustc during the build process. |
| 88 | + End users usually won't need to interact with them, and the layout inside |
| 89 | + `build-dir` is an implementation detail that may change without notice. |
| 90 | + ([config doc](https://doc.rust-lang.org/nightly/cargo/reference/config.html#buildbuild-dir)) |
| 91 | + ([build cache doc](https://doc.rust-lang.org/nightly/cargo/reference/build-cache.html)) |
| 92 | + [#15833](https://github.com/rust-lang/cargo/pull/15833) |
| 93 | + [#15840](https://github.com/rust-lang/cargo/pull/15840) |
| 94 | + |
8 | 95 | ### Changed
|
9 | 96 |
|
| 97 | +- ❗️ `cargo publish` no longer keeps `.crate` tarballs as final build artifacts |
| 98 | + when `build.build-dir` is set. These tarballs were previously included due to |
| 99 | + an oversight and are now treated as intermediate artifacts. |
| 100 | + To get `.crate` tarballs as final artifacts, use `cargo package`. |
| 101 | + In the next version, this change will apply regardless of `build.build-dir`. |
| 102 | + [#15910](https://github.com/rust-lang/cargo/pull/15910) |
| 103 | +- Adjust Cargo messages to match rustc diagnostic style |
| 104 | + [#15928](https://github.com/rust-lang/cargo/pull/15928) |
| 105 | +- More helpful error for invalid `cargo-features = []` |
| 106 | + [#15781](https://github.com/rust-lang/cargo/pull/15781) |
| 107 | +- Don't stop at first error when emitting lints and warnings |
| 108 | + [#15889](https://github.com/rust-lang/cargo/pull/15889) |
| 109 | +- Show the bad manifest path in the error message |
| 110 | + [#15896](https://github.com/rust-lang/cargo/pull/15896) |
| 111 | +- Suggest workspace hints for invalid boolean dependencies |
| 112 | + [#15507](https://github.com/rust-lang/cargo/pull/15507) |
| 113 | +- cargo-package: Always reuse the workspace's target-dir during the package |
| 114 | + verification. Previously Cargo created a new standalone target directory |
| 115 | + within the unpacked source. |
| 116 | + [#15783](https://github.com/rust-lang/cargo/pull/15783) |
| 117 | +- cargo-publish: Add more context to publish-failed error message |
| 118 | + [#15879](https://github.com/rust-lang/cargo/pull/15879) |
| 119 | + |
10 | 120 | ### Fixed
|
11 | 121 |
|
12 | 122 | ### Nightly only
|
13 | 123 |
|
| 124 | +- 🔥 `-Zsection-timings` extend the output of `cargo build --timings`. It tells |
| 125 | + rustc to produce timings of individual compilation sections, which will be |
| 126 | + then displayed in the timings HTML/JSON output. |
| 127 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#section-timings)) |
| 128 | + [#15780](https://github.com/rust-lang/cargo/pull/15780) |
| 129 | + [#15923](https://github.com/rust-lang/cargo/pull/15923) |
| 130 | +- 🔥 `-Zbuild-dir-new-layout` enables the new build-dir filesystem layout, which |
| 131 | + unblocks work towards caching and locking improvements. |
| 132 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#build-dir-new-layout)) |
| 133 | + ([project goal](https://rust-lang.github.io/rust-project-goals/2025h2/cargo-build-dir-layout.html)) |
| 134 | + [#15848](https://github.com/rust-lang/cargo/pull/15848) |
| 135 | +- 🔥 `-Zbuild-analysis` records and persists detailed build metrics (timings, rebuild reasons, etc.) |
| 136 | + across runs, with new commands to query past builds. |
| 137 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#build-analysis)) |
| 138 | + ([project goal](https://rust-lang.github.io/rust-project-goals/2025h2/cargo-build-analysis.html)) |
| 139 | + [#15845](https://github.com/rust-lang/cargo/pull/15845) |
| 140 | +- `multiple-build-scripts`: Accessing each build script's `OUT_DIR` and in the |
| 141 | + correct order |
| 142 | + [#15776](https://github.com/rust-lang/cargo/pull/15776) |
| 143 | +- `-Zcargo-lints`: Linting system infra improvement |
| 144 | + [#15865](https://github.com/rust-lang/cargo/pull/15865) |
| 145 | +- `-Zscript`: Cover some frontmatter corner cases |
| 146 | + [#15886](https://github.com/rust-lang/cargo/pull/15886) |
| 147 | +- `-Zscript`: Match test updates in rustc |
| 148 | + [#15878](https://github.com/rust-lang/cargo/pull/15878) |
| 149 | +- `-Zscript`: Switch frontmatter tests to end-to-end |
| 150 | + [#15899](https://github.com/rust-lang/cargo/pull/15899) |
| 151 | +- `-Zscript`: Report script manifest errors for the right line number |
| 152 | + [#15927](https://github.com/rust-lang/cargo/pull/15927) |
| 153 | +- `-Zscript`: Pull out as a dedicated mod |
| 154 | + [#15914](https://github.com/rust-lang/cargo/pull/15914) |
| 155 | + |
14 | 156 | ### Documentation
|
15 | 157 |
|
| 158 | +- Clarify that `cargo doc --no-deps` is cumulative and won’t delete prev |
| 159 | + [#15800](https://github.com/rust-lang/cargo/pull/15800) |
| 160 | +- Switch from `--nocapture` to `--no-capture` in docs and help text. |
| 161 | + [#15930](https://github.com/rust-lang/cargo/pull/15930) |
| 162 | +- Mention how Cargo fetch git submodules |
| 163 | + [#15853](https://github.com/rust-lang/cargo/pull/15853) |
| 164 | + [#15860](https://github.com/rust-lang/cargo/pull/15860) |
| 165 | +- Link out to the Plumbing commands effort |
| 166 | + [#15821](https://github.com/rust-lang/cargo/pull/15821) |
| 167 | +- Switch to using native mdbook fragment redirects |
| 168 | + [#15861](https://github.com/rust-lang/cargo/pull/15861) |
| 169 | +- Reorder `lto` options in profiles |
| 170 | + [#15841](https://github.com/rust-lang/cargo/pull/15841) |
| 171 | + [#15855](https://github.com/rust-lang/cargo/pull/15855) |
| 172 | + |
16 | 173 | ### Internal
|
17 | 174 |
|
| 175 | +- Replace ad-hoc flock implementation with std flock |
| 176 | + [#15935](https://github.com/rust-lang/cargo/pull/15935) |
| 177 | + [#15941](https://github.com/rust-lang/cargo/pull/15941) |
| 178 | +- Prepare for annotate-snippets `Report`s being generated in more places |
| 179 | + [#15920](https://github.com/rust-lang/cargo/pull/15920) |
| 180 | + [#15926](https://github.com/rust-lang/cargo/pull/15926) |
| 181 | +- test: avoid hardcoded target spec json |
| 182 | + [#15880](https://github.com/rust-lang/cargo/pull/15880) |
| 183 | +- test: Ensure consistent behavior regardless of rustup use |
| 184 | + [#15949](https://github.com/rust-lang/cargo/pull/15949) |
| 185 | +- test: Switch more expected results to snapshots for credential process |
| 186 | + [#15929](https://github.com/rust-lang/cargo/pull/15929) |
| 187 | +- ci: Add Arm64 Windows CI jobs |
| 188 | + [#15790](https://github.com/rust-lang/cargo/pull/15790) |
| 189 | +- ci: remove x86_64-apple-darwin from CI and tests |
| 190 | + [#15831](https://github.com/rust-lang/cargo/pull/15831) |
| 191 | +- Update dependencies. |
| 192 | + [#15795](https://github.com/rust-lang/cargo/pull/15795) |
| 193 | + [#15804](https://github.com/rust-lang/cargo/pull/15804) |
| 194 | + [#15815](https://github.com/rust-lang/cargo/pull/15815) |
| 195 | + [#15816](https://github.com/rust-lang/cargo/pull/15816) |
| 196 | + [#15819](https://github.com/rust-lang/cargo/pull/15819) |
| 197 | + [#15825](https://github.com/rust-lang/cargo/pull/15825) |
| 198 | + [#15832](https://github.com/rust-lang/cargo/pull/15832) |
| 199 | + [#15851](https://github.com/rust-lang/cargo/pull/15851) |
| 200 | + [#15898](https://github.com/rust-lang/cargo/pull/15898) |
| 201 | + [#15904](https://github.com/rust-lang/cargo/pull/15904) |
| 202 | + [#15909](https://github.com/rust-lang/cargo/pull/15909) |
| 203 | + [#15918](https://github.com/rust-lang/cargo/pull/15918) |
| 204 | + [#15950](https://github.com/rust-lang/cargo/pull/15950) |
| 205 | + |
18 | 206 | ## Cargo 1.90 (2025-09-18)
|
19 | 207 | [c24e1064...rust-1.90.0](https://github.com/rust-lang/cargo/compare/c24e1064...rust-1.90.0)
|
20 | 208 |
|
|
0 commit comments