|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## Cargo 1.75 (2023-12-28) |
| 4 | +[59596f0f...HEAD](https://github.com/rust-lang/cargo/compare/59596f0f...HEAD) |
| 5 | + |
| 6 | +### Added |
| 7 | + |
| 8 | +### Changed |
| 9 | + |
| 10 | +### Fixed |
| 11 | + |
| 12 | +- Fixed corruption when cargo was killed while writing to files. |
| 13 | + [#12744](https://github.com/rust-lang/cargo/pull/12744) |
| 14 | + |
| 15 | +### Nightly only |
| 16 | + |
| 17 | +### Documentation |
| 18 | + |
| 19 | +- profile: add missing `strip` info. |
| 20 | + [#12754](https://github.com/rust-lang/cargo/pull/12754) |
| 21 | + |
| 22 | +### Internal |
| 23 | + |
| 24 | +- Updated to `itertools` 0.11.0. |
| 25 | + [#12759](https://github.com/rust-lang/cargo/pull/12759) |
| 26 | +- Updated to `cargo_metadata` 0.18.0. |
| 27 | + [#12758](https://github.com/rust-lang/cargo/pull/12758) |
| 28 | +- Disabled the `custom_target::custom_bin_target` test on windows-gnu. |
| 29 | + [#12763](https://github.com/rust-lang/cargo/pull/12763) |
| 30 | + |
3 | 31 | ## Cargo 1.74 (2023-11-16)
|
4 |
| -[80eca0e5...HEAD](https://github.com/rust-lang/cargo/compare/80eca0e5...HEAD) |
| 32 | +[80eca0e5...rust-1.74.0](https://github.com/rust-lang/cargo/compare/80eca0e5...rust-1.74.0) |
5 | 33 |
|
6 | 34 | ### Added
|
7 | 35 |
|
| 36 | +- 🎉 The `[lints]` table has been stabilized, allowing you to configure reporting levels for rustc and other tool lints in `Cargo.toml`. |
| 37 | + ([RFC 3389](https://github.com/rust-lang/rfcs/blob/master/text/3389-manifest-lint.md)) |
| 38 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/manifest.html#the-lints-section)) |
| 39 | + [#12584](https://github.com/rust-lang/cargo/pull/12584) |
| 40 | + [#12648](https://github.com/rust-lang/cargo/pull/12648) |
| 41 | +- 🎉 The unstable features `credential-process` and `registry-auth` have been stabilized. |
| 42 | + These features consolidate the way to authenticate with private registries. |
| 43 | + ([RFC 2730](https://github.com/rust-lang/rfcs/blob/master/text/2730-cargo-token-from-process.md)) |
| 44 | + ([RFC 3139](https://github.com/rust-lang/rfcs/blob/master/text/3139-cargo-alternative-registry-auth.md)) |
| 45 | + ([docs](https://doc.rust-lang.org/nightly/cargo/reference/registry-authentication.html)) |
| 46 | + [#12590](https://github.com/rust-lang/cargo/pull/12590) |
| 47 | + [#12622](https://github.com/rust-lang/cargo/pull/12622) |
| 48 | + [#12623](https://github.com/rust-lang/cargo/pull/12623) |
| 49 | + [#12626](https://github.com/rust-lang/cargo/pull/12626) |
| 50 | + [#12641](https://github.com/rust-lang/cargo/pull/12641) |
| 51 | + [#12644](https://github.com/rust-lang/cargo/pull/12644) |
| 52 | + [#12649](https://github.com/rust-lang/cargo/pull/12649) |
| 53 | + [#12671](https://github.com/rust-lang/cargo/pull/12671) |
| 54 | + [#12709](https://github.com/rust-lang/cargo/pull/12709) |
| 55 | + Notable changes: |
| 56 | + - Introducing a new protocol for both external and built-in providers to store and retrieve credentials for registry authentication. |
| 57 | + - Adding the `auth-required` field in the registry index's `config.json`, enabling authenticated sparse index, crate downloads, and search API. |
| 58 | + - For using alternative registries with authentication, a credential provider must be configured to avoid unknowingly storing unencrypted credentials on disk. |
| 59 | + - These settings can be configured in `[registry]` and `[registries]` tables. |
| 60 | +- 🎉 `--keep-going` flag has been stabilized and is now available in each build command |
| 61 | + (except `bench` and `test`, which have `--no-fail-fast` instead). |
| 62 | + ([docs](https://doc.rust-lang.org/cargo/commands/cargo-build.html#option-cargo-build---keep-going)) |
| 63 | + [#12568](https://github.com/rust-lang/cargo/pull/12568) |
| 64 | +- Added `--dry-run` flag and summary line at the end for `cargo clean`. |
| 65 | + [#12638](https://github.com/rust-lang/cargo/pull/12638) |
| 66 | +- Added a short alias `-n` for cli option `--dry-run`. |
| 67 | + [#12660](https://github.com/rust-lang/cargo/pull/12660) |
| 68 | +- Added support for `target.'cfg(..)'.linker`. |
| 69 | + [#12535](https://github.com/rust-lang/cargo/pull/12535) |
| 70 | +- Allowed incomplete versions when they are unambiguous for flags like `--package`. |
| 71 | + [#12591](https://github.com/rust-lang/cargo/pull/12591) |
| 72 | + [#12614](https://github.com/rust-lang/cargo/pull/12614) |
| 73 | + |
8 | 74 | ### Changed
|
9 | 75 |
|
| 76 | +- ❗️ Changed how arrays in configuration are merged. |
| 77 | + The order was unspecified and now follows how other configuration types work for consistency. |
| 78 | + [summary](https://blog.rust-lang.org/inside-rust/2023/08/24/cargo-config-merging.html) |
| 79 | + [#12515](https://github.com/rust-lang/cargo/pull/12515) |
| 80 | +- ❗️ cargo-clean: error out if `--doc` is mixed with `-p`. |
| 81 | + [#12637](https://github.com/rust-lang/cargo/pull/12637) |
| 82 | +- cargo-update: silently deprecate `--aggressive` in favor of the new `--recursive`. |
| 83 | + [#12544](https://github.com/rust-lang/cargo/pull/12544) |
| 84 | +- cargo-update: `-p/--package` can be used as a positional argument. |
| 85 | + [#12545](https://github.com/rust-lang/cargo/pull/12545) |
| 86 | + [#12586](https://github.com/rust-lang/cargo/pull/12586) |
| 87 | +- cargo-install: suggest `--git` when the package name looks like a URL. |
| 88 | + [#12575](https://github.com/rust-lang/cargo/pull/12575) |
| 89 | +- cargo-add: summarize the feature list when it's too long. |
| 90 | + [#12662](https://github.com/rust-lang/cargo/pull/12662) |
| 91 | + [#12702](https://github.com/rust-lang/cargo/pull/12702) |
| 92 | +- Shell completion for `--target` uses rustup but falls back to rustc. |
| 93 | + [#12606](https://github.com/rust-lang/cargo/pull/12606) |
| 94 | +- Help users know possible `--target` values. |
| 95 | + [#12607](https://github.com/rust-lang/cargo/pull/12607) |
| 96 | +- Enhanced "registry index not found" error message. |
| 97 | + [#12732](https://github.com/rust-lang/cargo/pull/12732) |
| 98 | +- Enhanced CLI help message of `--explain`. |
| 99 | + [#12592](https://github.com/rust-lang/cargo/pull/12592) |
| 100 | +- Enhanced deserialization errors of untagged enums with `serde-untagged`. |
| 101 | + [#12574](https://github.com/rust-lang/cargo/pull/12574) |
| 102 | + [#12581](https://github.com/rust-lang/cargo/pull/12581) |
| 103 | +- Enhanced the error when mismatching prerelease version candidates. |
| 104 | + [#12659](https://github.com/rust-lang/cargo/pull/12659) |
| 105 | +- Enhanced the suggestion on ambiguous Package ID spec. |
| 106 | + [#12685](https://github.com/rust-lang/cargo/pull/12685) |
| 107 | +- Enhanced TOML parse errors to show the context. |
| 108 | + [#12556](https://github.com/rust-lang/cargo/pull/12556) |
| 109 | +- Enhanced filesystem error by adding wrappers around `std::fs::metadata`. |
| 110 | + [#12636](https://github.com/rust-lang/cargo/pull/12636) |
| 111 | +- Enhanced resolver version mismatch warning. |
| 112 | + [#12573](https://github.com/rust-lang/cargo/pull/12573) |
| 113 | +- Use clap to suggest alternative argument for unsupported arguments. |
| 114 | + [#12529](https://github.com/rust-lang/cargo/pull/12529) |
| 115 | + [#12693](https://github.com/rust-lang/cargo/pull/12693) |
| 116 | + [#12723](https://github.com/rust-lang/cargo/pull/12723) |
| 117 | +- Removed redundant information from cargo new/init `--help` output. |
| 118 | + [#12594](https://github.com/rust-lang/cargo/pull/12594) |
| 119 | +- Console output and styling tweaks. |
| 120 | + [#12578](https://github.com/rust-lang/cargo/pull/12578) |
| 121 | + [#12655](https://github.com/rust-lang/cargo/pull/12655) |
| 122 | + [#12593](https://github.com/rust-lang/cargo/pull/12593) |
| 123 | + |
10 | 124 | ### Fixed
|
11 | 125 |
|
| 126 | +- Use full target spec for `cargo rustc --print --target`. |
| 127 | + [#12743](https://github.com/rust-lang/cargo/pull/12743) |
| 128 | +- Copy PDBs also for EFI targets. |
| 129 | + [#12688](https://github.com/rust-lang/cargo/pull/12688) |
| 130 | +- Fixed resolver behavior being independent of package order. |
| 131 | + [#12602](https://github.com/rust-lang/cargo/pull/12602) |
| 132 | +- Fixed unnecessary clean up of `profile.release.package."*"` for `cargo remove`. |
| 133 | + [#12624](https://github.com/rust-lang/cargo/pull/12624) |
| 134 | + |
12 | 135 | ### Nightly only
|
13 | 136 |
|
| 137 | +- `-Zasymmetric-token`: Created dedicated unstable flag for asymmetric-token support. |
| 138 | + [#12551](https://github.com/rust-lang/cargo/pull/12551) |
| 139 | +- `-Zasymmetric-token`: Improved logout message for asymmetric tokens. |
| 140 | + [#12587](https://github.com/rust-lang/cargo/pull/12587) |
| 141 | +- `-Zmsrv-policy`: **Very** preliminary MSRV resolver support. |
| 142 | + [#12560](https://github.com/rust-lang/cargo/pull/12560) |
| 143 | +- `-Zscript`: Hack in code fence support. |
| 144 | + [#12681](https://github.com/rust-lang/cargo/pull/12681) |
| 145 | +- `-Zbindeps`: Support dependencies from registries. |
| 146 | + [#12421](https://github.com/rust-lang/cargo/pull/12421) |
| 147 | + |
14 | 148 | ### Documentation
|
15 | 149 |
|
16 | 150 | - ❗ Policy change: Checking `Cargo.lock` into version control is now the default choice,
|
|
19 | 153 | [Lockfile docs](https://doc.rust-lang.org/nightly/cargo/guide/cargo-toml-vs-cargo-lock.html),
|
20 | 154 | [CI docs](https://doc.rust-lang.org/nightly/cargo/guide/continuous-integration.html),
|
21 | 155 | [#12382](https://github.com/rust-lang/cargo/pull/12382)
|
| 156 | + [#12630](https://github.com/rust-lang/cargo/pull/12630) |
| 157 | +- SemVer: Update documentation about removing optional dependencies. |
| 158 | + [#12687](https://github.com/rust-lang/cargo/pull/12687) |
| 159 | +- Contrib: Add process for security responses. |
| 160 | + [#12487](https://github.com/rust-lang/cargo/pull/12487) |
| 161 | +- cargo-publish: warn about upload timeout. |
| 162 | + [#12733](https://github.com/rust-lang/cargo/pull/12733) |
| 163 | +- mdbook: use *AND* search when having multiple terms. |
| 164 | + [#12548](https://github.com/rust-lang/cargo/pull/12548) |
| 165 | +- Established publish best practices |
| 166 | + [#12745](https://github.com/rust-lang/cargo/pull/12745) |
| 167 | +- Clarify caret requirements. |
| 168 | + [#12679](https://github.com/rust-lang/cargo/pull/12679) |
| 169 | +- Clarify how `version` works for `git` dependencies. |
| 170 | + [#12270](https://github.com/rust-lang/cargo/pull/12270) |
| 171 | +- Clarify and differentiate defaults for split-debuginfo. |
| 172 | + [#12680](https://github.com/rust-lang/cargo/pull/12680) |
| 173 | +- Added missing `strip` entries in `dev` and `release` profiles. |
| 174 | + [#12748](https://github.com/rust-lang/cargo/pull/12748) |
| 175 | + |
| 176 | +### Internal |
| 177 | + |
| 178 | +- Updated to `curl-sys` 0.4.66, which corresponds to curl 8.3.0. |
| 179 | + [#12718](https://github.com/rust-lang/cargo/pull/12718) |
| 180 | +- Updated to `gitoxide` 0.54.1. |
| 181 | + [#12731](https://github.com/rust-lang/cargo/pull/12731) |
| 182 | +- Updated to `git2` 0.18.0, which corresponds to libgit2 1.7.1. |
| 183 | + [#12580](https://github.com/rust-lang/cargo/pull/12580) |
| 184 | +- Updated to `cargo_metadata` 0.17.0. |
| 185 | + [#12758](https://github.com/rust-lang/cargo/pull/12610) |
| 186 | +- Updated target-arch-aware crates to support mips r6 targets |
| 187 | + [#12720](https://github.com/rust-lang/cargo/pull/12720) |
| 188 | +- publish.py: Remove obsolete `sleep()` calls. |
| 189 | + [#12686](https://github.com/rust-lang/cargo/pull/12686) |
| 190 | +- Define `{{command}}` for use in src/doc/man/includes |
| 191 | + [#12570](https://github.com/rust-lang/cargo/pull/12570) |
| 192 | +- Set tracing target `network` for networking messages. |
| 193 | + [#12582](https://github.com/rust-lang/cargo/pull/12582) |
| 194 | +- cargo-test-support: Add `with_stdout_unordered`. |
| 195 | + [#12635](https://github.com/rust-lang/cargo/pull/12635) |
| 196 | +- dep: Switch from `termcolor` to `anstream`. |
| 197 | + [#12751](https://github.com/rust-lang/cargo/pull/12751) |
| 198 | +- Put `Source` trait under `cargo::sources`. |
| 199 | + [#12527](https://github.com/rust-lang/cargo/pull/12527) |
| 200 | +- SourceId: merge `name` and `alt_registry_key` into one enum. |
| 201 | + [#12675](https://github.com/rust-lang/cargo/pull/12675) |
| 202 | +- TomlManifest: fail when package_root is not a directory. |
| 203 | + [#12722](https://github.com/rust-lang/cargo/pull/12722) |
| 204 | +- util: enhanced doc of `network::retry` doc. |
| 205 | + [#12583](https://github.com/rust-lang/cargo/pull/12583) |
| 206 | +- refactor: Pull out cargo-add MSRV code for reuse |
| 207 | + [#12553](https://github.com/rust-lang/cargo/pull/12553) |
| 208 | +- refactor(install): Move value parsing to clap |
| 209 | + [#12547](https://github.com/rust-lang/cargo/pull/12547) |
| 210 | +- Fixed spurious errors with networking tests. |
| 211 | + [#12726](https://github.com/rust-lang/cargo/pull/12726) |
| 212 | +- Use a more compact relative-time format for `CARGO_LOG` internal logging. |
| 213 | + [#12542](https://github.com/rust-lang/cargo/pull/12542) |
| 214 | +- Use newer std API for cleaner code. |
| 215 | + [#12559](https://github.com/rust-lang/cargo/pull/12559) |
| 216 | + [#12604](https://github.com/rust-lang/cargo/pull/12604) |
| 217 | + [#12615](https://github.com/rust-lang/cargo/pull/12615) |
| 218 | + [#12631](https://github.com/rust-lang/cargo/pull/12631) |
| 219 | +- Buffer console status messages. |
| 220 | + [#12727](https://github.com/rust-lang/cargo/pull/12727) |
| 221 | +- Use enum to describe index summaries to provide a richer information when summaries are not available for resolution. |
| 222 | + [#12643](https://github.com/rust-lang/cargo/pull/12643) |
| 223 | +- Use shortest path for resolving the path from the given dependency up to the root. |
| 224 | + [#12678](https://github.com/rust-lang/cargo/pull/12678) |
| 225 | +- Read/write the encoded `cargo update --precise` in the same place |
| 226 | + [#12629](https://github.com/rust-lang/cargo/pull/12629) |
| 227 | +- Set MSRV for internal packages. |
| 228 | + [#12381](https://github.com/rust-lang/cargo/pull/12381) |
| 229 | +- ci: Update Renovate schema |
| 230 | + [#12741](https://github.com/rust-lang/cargo/pull/12741) |
| 231 | +- ci: Ignore patch version in MSRV |
| 232 | + [#12716](https://github.com/rust-lang/cargo/pull/12716) |
22 | 233 |
|
23 | 234 | ## Cargo 1.73 (2023-10-05)
|
24 | 235 | [45782b6b...rust-1.73.0](https://github.com/rust-lang/cargo/compare/45782b6b...rust-1.73.0)
|
|
0 commit comments