|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## Cargo 1.70 (2023-06-01) |
| 4 | +[9880b408...HEAD](https://github.com/rust-lang/cargo/compare/9880b408...HEAD) |
| 5 | + |
| 6 | +### Added |
| 7 | + |
| 8 | +- The `CARGO_PKG_README` environment variable is now set to the path to the |
| 9 | + README file when compiling a crate. |
| 10 | + [#11645](https://github.com/rust-lang/cargo/pull/11645) |
| 11 | +- Cargo now displays richer information of Cargo target failed to compile. |
| 12 | + [#11636](https://github.com/rust-lang/cargo/pull/11636) |
| 13 | + |
| 14 | +### Changed |
| 15 | + |
| 16 | +- 🎉 The `sparse` protocol is now the default protocol for crates.io! |
| 17 | + ([RFC 2789](https://github.com/rust-lang/rfcs/blob/master/text/2789-sparse-index.md)) |
| 18 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/registries.html#registry-protocols)) |
| 19 | + [#11791](https://github.com/rust-lang/cargo/pull/11791) |
| 20 | + [#11783](https://github.com/rust-lang/cargo/pull/11783) |
| 21 | + |
| 22 | +### Fixed |
| 23 | + |
| 24 | +- Removed duplicates of possible values in `--charset` option of `cargo tree`. |
| 25 | + [#11785](https://github.com/rust-lang/cargo/pull/11785) |
| 26 | +- Fixed `CARGO_CFG_` vars for configs defined both with and without value. |
| 27 | + [#11790](https://github.com/rust-lang/cargo/pull/11790) |
| 28 | +- Broke endless loop on cyclic features in added dependency in `cargo add`. |
| 29 | + [#11805](https://github.com/rust-lang/cargo/pull/11805) |
| 30 | +- Don't panic when [`patch`] involved in dependency resolution results in a conflict. |
| 31 | + [#11770](https://github.com/rust-lang/cargo/pull/11770) |
| 32 | + |
| 33 | +### Nightly only |
| 34 | + |
| 35 | +- Added `-Zdirect-minimal-versions`. This behaves like `-Zminimal-versions` but |
| 36 | + only for direct dependencies. |
| 37 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#direct-minimal-versions)) |
| 38 | + [#11688](https://github.com/rust-lang/cargo/pull/11688) |
| 39 | +- Added `-Zgitoxide` which switches all `git fetch` operation in Cargo to |
| 40 | + use `gitoxide` crate. This is still an MVP but could improve the performance |
| 41 | + up to 2 times. |
| 42 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html##gitoxide)) |
| 43 | + [#11448](https://github.com/rust-lang/cargo/pull/11448) |
| 44 | + [#11800](https://github.com/rust-lang/cargo/pull/11800) |
| 45 | +- Removed `-Zjobserver-per-rustc`. Its rustc counterpart never got landed. |
| 46 | + [#11764](https://github.com/rust-lang/cargo/pull/11764) |
| 47 | + |
| 48 | +### Documentation |
| 49 | + |
| 50 | +- Cleaned-up unstable documentation. |
| 51 | + [#11793](https://github.com/rust-lang/cargo/pull/11793) |
| 52 | +- Enhanced the documentation of timing report with graphs. |
| 53 | + [#11798](https://github.com/rust-lang/cargo/pull/11798) |
| 54 | + |
| 55 | +### Internal |
| 56 | + |
| 57 | +- Switched to `sha2` crate for SHA256 calculation. |
| 58 | + [#11795](https://github.com/rust-lang/cargo/pull/11795) |
| 59 | + [#11807](https://github.com/rust-lang/cargo/pull/11807) |
| 60 | +- Updated to `base64` v0.21.0. |
| 61 | + [#11796](https://github.com/rust-lang/cargo/pull/11796) |
| 62 | +- Integrated `cargo-deny` in Cargo its own CI pipeline. |
| 63 | + [#11761](https://github.com/rust-lang/cargo/pull/11761) |
| 64 | + |
3 | 65 | ## Cargo 1.69 (2023-04-20)
|
4 |
| -[985d561f...HEAD](https://github.com/rust-lang/cargo/compare/985d561f...HEAD) |
| 66 | +[985d561f...rust-1.69.0](https://github.com/rust-lang/cargo/compare/985d561f...rust-1.69.0) |
5 | 67 |
|
6 | 68 | ### Added
|
7 | 69 |
|
| 70 | +- Added `-C` flag for changing current dir before build starts. |
| 71 | + [#10952](https://github.com/rust-lang/cargo/pull/10952) |
| 72 | +- Added support for SSH known hosts marker `@revoked`. |
| 73 | + [#11635](https://github.com/rust-lang/cargo/pull/11635) |
8 | 74 | - Cargo now suggests `cargo fix` or `cargo clippy --fix`
|
9 |
| - when compilation warnings/errors can be auto-fixed. |
| 75 | + when compilation warnings/errors are auto-fixable. |
10 | 76 | [#11558](https://github.com/rust-lang/cargo/pull/11558)
|
| 77 | +- Cargo now suggests `cargo add` if you try to install a library crate. |
| 78 | + [#11410](https://github.com/rust-lang/cargo/pull/11410) |
| 79 | +- Cargo now sets `CARGO_BIN_NAME` environment variable also for binary examples. |
| 80 | + [#11705](https://github.com/rust-lang/cargo/pull/11705) |
11 | 81 |
|
12 | 82 | ### Changed
|
13 | 83 |
|
14 | 84 | - ❗ When `default-features` is set to false of a workspace dependency,
|
15 | 85 | and an inherited dependency of a member has `default-features = true`,
|
16 | 86 | Cargo will enable default features of that dependency.
|
17 | 87 | [#11409](https://github.com/rust-lang/cargo/pull/11409)
|
| 88 | +- ❗ Deny `CARGO_HOME` in `[env]` configuration stable. Cargo itself doesn't |
| 89 | + pick up this value, but recursive calls to cargo will. We consider it as a |
| 90 | + wrong behavior to only pass it to recursive invocations. |
| 91 | + [#11644](https://github.com/rust-lang/cargo/pull/11644) |
| 92 | +- ❗ Debuginfo for build dependencies is now off if not explicit set. This is |
| 93 | + expected to boost the overall build time. |
| 94 | + [#11252](https://github.com/rust-lang/cargo/pull/11252) |
| 95 | +- Cargo now emits errors on invalid alphanumeric token for crates.io. |
| 96 | + [#11600](https://github.com/rust-lang/cargo/pull/11600) |
18 | 97 | - `cargo add` now checks only the order of `[dependencies]`
|
19 | 98 | without considering `[dependencies.*]`.
|
20 | 99 | [#11612](https://github.com/rust-lang/cargo/pull/11612)
|
21 |
| -- Several documentation improvements. |
22 |
| - [#11576](https://github.com/rust-lang/cargo/pull/11576) |
23 |
| - [#11604](https://github.com/rust-lang/cargo/pull/11604) |
24 |
| - [#11620](https://github.com/rust-lang/cargo/pull/11620) |
25 |
| - [#11603](https://github.com/rust-lang/cargo/pull/11603) |
| 100 | +- Cargo now respects the new jobserver IPC style in GNU Make 4.4, by updating |
| 101 | + its dependency `jobserver`. |
| 102 | + [#11767](https://github.com/rust-lang/cargo/pull/11767) |
| 103 | +- `cargo install` now reports required features when no binary meets its requirements. |
| 104 | + [#11647](https://github.com/rust-lang/cargo/pull/11647) |
26 | 105 |
|
27 | 106 | ### Fixed
|
28 | 107 |
|
| 108 | +- Uplifted `.dwp` DWARF package file next to the executable for debuggers to |
| 109 | + locate them. |
| 110 | + [#11572](https://github.com/rust-lang/cargo/pull/11572) |
29 | 111 | - Fixed build scripts triggering recompiles when a `rerun-if-changed` points to
|
30 | 112 | a directory whose mtime is not preserved by the filesystem.
|
31 | 113 | [#11613](https://github.com/rust-lang/cargo/pull/11613)
|
32 | 114 | - Fixed panics when using dependencies from `[workspace.dependencies]`
|
33 | 115 | for `[patch]`. This usage is not supposed to be supported.
|
34 | 116 | [#11565](https://github.com/rust-lang/cargo/pull/11565)
|
| 117 | + [#11630](https://github.com/rust-lang/cargo/pull/11630) |
| 118 | +- Fixed `cargo report` saving the same future-incompat reports multiple times. |
| 119 | + [#11648](https://github.com/rust-lang/cargo/pull/11648) |
| 120 | +- Fixed the incorrect inference of a directory ending with `.rs` as a file. |
| 121 | + [#11678](https://github.com/rust-lang/cargo/pull/11678) |
| 122 | +- Fixed `.cargo-ok` file being truncated wrongly, preventing from using a dependency. |
| 123 | + [#11665](https://github.com/rust-lang/cargo/pull/11665) |
| 124 | + [#11724](https://github.com/rust-lang/cargo/pull/11724) |
35 | 125 |
|
36 | 126 | ### Nightly only
|
37 | 127 |
|
| 128 | +- `-Zrustdoc-scrape-example` must fail with bad build script. |
| 129 | + [#11694](https://github.com/rust-lang/cargo/pull/11694) |
| 130 | +- Updated 1password credential manager integration to the version 2 CLI. |
| 131 | + [#11692](https://github.com/rust-lang/cargo/pull/11692) |
| 132 | +- Emit an error message for transitive artifact dependencies with targets the |
| 133 | + package doesn't directly interact with. |
| 134 | + [#11643](https://github.com/rust-lang/cargo/pull/11643) |
| 135 | + |
| 136 | +### Documentation |
| 137 | + |
| 138 | +- Clarified the difference between `CARGO_CRATE_NAME` and `CARGO_PKG_NAME`. |
| 139 | + [#11576](https://github.com/rust-lang/cargo/pull/11576) |
| 140 | +- Added links to the Target section of the glossary for occurences of target triple. |
| 141 | + [#11603](https://github.com/rust-lang/cargo/pull/11603) |
| 142 | +- Described how the current resolver sometimes duplicates depenencies. |
| 143 | + [#11604](https://github.com/rust-lang/cargo/pull/11604) |
| 144 | +- Added a note about verifying your email address on crates.io. |
| 145 | + [#11620](https://github.com/rust-lang/cargo/pull/11620) |
| 146 | +- Mention current default value in `publish.timeout` docs. |
| 147 | + [#11652](https://github.com/rust-lang/cargo/pull/11652) |
| 148 | +- More doc comments for `cargo::core::compiler` modules. |
| 149 | + [#11669](https://github.com/rust-lang/cargo/pull/11669) |
| 150 | + [#11703](https://github.com/rust-lang/cargo/pull/11703) |
| 151 | + [#11711](https://github.com/rust-lang/cargo/pull/11711) |
| 152 | + [#11758](https://github.com/rust-lang/cargo/pull/11758) |
| 153 | +- Added more guidance on how to implement unstable features. |
| 154 | + [#11675](https://github.com/rust-lang/cargo/pull/11675) |
| 155 | +- Fixed unstable chapter layout for `codegen-backend`. |
| 156 | + [#11676](https://github.com/rust-lang/cargo/pull/11676) |
| 157 | +- Add a link to LTO doc. |
| 158 | + [#11701](https://github.com/rust-lang/cargo/pull/11701) |
| 159 | +- Added documentation for the configuration discovery of `cargo install` |
| 160 | + to the man pages |
| 161 | + [#11763](https://github.com/rust-lang/cargo/pull/11763) |
| 162 | +- Documented `-F` flag as an alias for `--features` in `cargo add`. |
| 163 | + [#11774](https://github.com/rust-lang/cargo/pull/11774) |
| 164 | + |
| 165 | +### Internal |
| 166 | + |
| 167 | +- Disable network SSH tests on Windows. |
| 168 | + [#11610](https://github.com/rust-lang/cargo/pull/11610) |
| 169 | +- Made some blocking tests non-blocking. |
| 170 | + [#11650](https://github.com/rust-lang/cargo/pull/11650) |
| 171 | +- Deny warnings in CI, not locally. |
| 172 | + [#11699](https://github.com/rust-lang/cargo/pull/11699) |
| 173 | +- Re-export `cargo_new::NewProjectKind` as public. |
| 174 | + [#11700](https://github.com/rust-lang/cargo/pull/11700) |
| 175 | +- Made dependencies in alphabetical order. |
| 176 | + [#11719](https://github.com/rust-lang/cargo/pull/11719) |
| 177 | +- Switched some tests from `build` to `check`. |
| 178 | + [#11725](https://github.com/rust-lang/cargo/pull/11725) |
| 179 | +- Consolidated how Cargo reads environments variables internally. |
| 180 | + [#11727](https://github.com/rust-lang/cargo/pull/11727) |
| 181 | + [#11754](https://github.com/rust-lang/cargo/pull/11754) |
| 182 | +- Fixed tests with nondeterministic ordering |
| 183 | + [#11766](https://github.com/rust-lang/cargo/pull/11766) |
| 184 | +- Added a test to verify the intermediate artifacts persist in the temp directory. |
| 185 | + [#11771](https://github.com/rust-lang/cargo/pull/11771) |
| 186 | +- Updated cross test instructions for aarch64-apple-darwin. |
| 187 | + [#11663](https://github.com/rust-lang/cargo/pull/11663) |
| 188 | +- Updated to `toml` v0.6 and `toml_edit` v0.18 for TOML manipulations. |
| 189 | + [#11618](https://github.com/rust-lang/cargo/pull/11618) |
| 190 | +- Updated to `clap` v4.1.3. |
| 191 | + [#11619](https://github.com/rust-lang/cargo/pull/11619) |
| 192 | +- Replaced `winapi` with `windows-sys` crate for Windows bindings. |
| 193 | + [#11656](https://github.com/rust-lang/cargo/pull/11656) |
| 194 | +- Reused `url` crate for percent encoding instead of `percent-encoding`. |
| 195 | + [#11750](https://github.com/rust-lang/cargo/pull/11750) |
| 196 | +- Cargo contributors can benefit from smart punctuations when writing |
| 197 | + documentations, e.g., `---` is auto-converted into an em dash. |
| 198 | + ([docs](https://rust-lang.github.io/mdBook/format/markdown.html#smart-punctuation)) |
| 199 | + [#11646](https://github.com/rust-lang/cargo/pull/11646) |
| 200 | + [#11715](https://github.com/rust-lang/cargo/pull/11715) |
| 201 | +- Cargo's CI pipeline now covers macOS on nightly. |
| 202 | + [#11712](https://github.com/rust-lang/cargo/pull/11712) |
| 203 | +- Re-enabled some clippy lints in Cargo itself. |
| 204 | + [#11722](https://github.com/rust-lang/cargo/pull/11722) |
| 205 | +- Enabled sparse protocol in Cargo's CI. |
| 206 | + [#11632](https://github.com/rust-lang/cargo/pull/11632) |
| 207 | +- Pull requests in Cargo now get autolabelled for label `A-*` and `Command-*`. |
| 208 | + [#11664](https://github.com/rust-lang/cargo/pull/11664) |
| 209 | + [#11679](https://github.com/rust-lang/cargo/pull/11679) |
| 210 | + |
38 | 211 | ## Cargo 1.68 (2023-03-09)
|
39 | 212 | [f6e737b1...rust-1.68.0](https://github.com/rust-lang/cargo/compare/f6e737b1...rust-1.68.0)
|
40 | 213 |
|
|
46 | 219 | ([docs](https://doc.rust-lang.org/nightly/cargo/reference/registries.html#registry-protocols))
|
47 | 220 | [#11224](https://github.com/rust-lang/cargo/pull/11224)
|
48 | 221 | [#11480](https://github.com/rust-lang/cargo/pull/11480)
|
| 222 | + [#11733](https://github.com/rust-lang/cargo/pull/11733) |
| 223 | + [#11756](https://github.com/rust-lang/cargo/pull/11756) |
49 | 224 | - 🎉 `home` crate is now a subcrate in `rust-lang/cargo` repository. Welcome!
|
50 | 225 | [#11359](https://github.com/rust-lang/cargo/pull/11359)
|
51 | 226 | [#11481](https://github.com/rust-lang/cargo/pull/11481)
|
|
0 commit comments