Skip to content

Commit d27b901

Browse files
committed
Update changelog for 1.74.0
1 parent 5530d3c commit d27b901

File tree

1 file changed

+184
-1
lines changed

1 file changed

+184
-1
lines changed

CHANGELOG.md

Lines changed: 184 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,122 @@
11
# Changelog
22

33
## Cargo 1.74 (2023-11-16)
4-
[80eca0e5...HEAD](https://github.com/rust-lang/cargo/compare/80eca0e5...HEAD)
4+
[80eca0e5...rust-1.74.0](https://github.com/rust-lang/cargo/compare/80eca0e5...rust-1.74.0)
55

66
### Added
77

8+
- 🎉 The `[lints]` table has been stabilized, allowing you to configure reporting levels for rustc and other tool lints in `Cargo.toml`.
9+
([RFC 3389](https://github.com/rust-lang/rfcs/blob/master/text/3389-manifest-lint.md))
10+
([docs](https://doc.rust-lang.org/nightly/cargo/reference/manifest.html#the-lints-section))
11+
[#12584](https://github.com/rust-lang/cargo/pull/12584)
12+
[#12648](https://github.com/rust-lang/cargo/pull/12648)
13+
- 🎉 The unstable features `credential-process` and `registry-auth` have been stabilized.
14+
These features consolidate the way to authenticate with private registries.
15+
([RFC 2730](https://github.com/rust-lang/rfcs/blob/master/text/2730-cargo-token-from-process.md))
16+
([RFC 3139](https://github.com/rust-lang/rfcs/blob/master/text/3139-cargo-alternative-registry-auth.md))
17+
([docs](https://doc.rust-lang.org/nightly/cargo/reference/registry-authentication.html))
18+
[#12590](https://github.com/rust-lang/cargo/pull/12590)
19+
[#12622](https://github.com/rust-lang/cargo/pull/12622)
20+
[#12623](https://github.com/rust-lang/cargo/pull/12623)
21+
[#12626](https://github.com/rust-lang/cargo/pull/12626)
22+
[#12641](https://github.com/rust-lang/cargo/pull/12641)
23+
[#12644](https://github.com/rust-lang/cargo/pull/12644)
24+
[#12649](https://github.com/rust-lang/cargo/pull/12649)
25+
[#12671](https://github.com/rust-lang/cargo/pull/12671)
26+
[#12709](https://github.com/rust-lang/cargo/pull/12709)
27+
Notable changes:
28+
- Introducing a new protocol for both external and built-in providers to store and retrieve credentials for registry authentication.
29+
- Adding the `auth-required` field in the registry index's `config.json`, enabling authenticated sparse index, crate downloads, and search API.
30+
- For using alternative registries with authentication, a credential provider must be configured to avoid unknowingly storing unencrypted credentials on disk.
31+
- These settings can be configured in `[registry]` and `[registries]` tables.
32+
- 🎉 `--keep-going` flag has been stabilized and is now available in each build command
33+
(except `bench` and `test`, which have `--no-fail-fast` instead).
34+
([docs](https://doc.rust-lang.org/cargo/commands/cargo-build.html#option-cargo-build---keep-going))
35+
[#12568](https://github.com/rust-lang/cargo/pull/12568)
36+
- Added `--dry-run` flag and summary line at the end for `cargo clean`.
37+
[#12638](https://github.com/rust-lang/cargo/pull/12638)
38+
- Added a short alias `-n` for cli option `--dry-run`.
39+
[#12660](https://github.com/rust-lang/cargo/pull/12660)
40+
- Added support for `target.'cfg(..)'.linker`.
41+
[#12535](https://github.com/rust-lang/cargo/pull/12535)
42+
- Allowed incomplete versions when they are unambiguous for flags like `--package`.
43+
[#12591](https://github.com/rust-lang/cargo/pull/12591)
44+
[#12614](https://github.com/rust-lang/cargo/pull/12614)
45+
846
### Changed
947

48+
- ❗️ Changed how arrays in configuration are merged.
49+
The order was unspecified and now follows how other configuration types work for consistency.
50+
[summary](https://blog.rust-lang.org/inside-rust/2023/08/24/cargo-config-merging.html)
51+
[#12515](https://github.com/rust-lang/cargo/pull/12515)
52+
- ❗️ cargo-clean: error out if `--doc` is mixed with `-p`.
53+
[#12637](https://github.com/rust-lang/cargo/pull/12637)
54+
- cargo-update: silently deprecate `--aggressive` in favor of the new `--recursive`.
55+
[#12544](https://github.com/rust-lang/cargo/pull/12544)
56+
- cargo-update: `-p/--package` can be used as a positional argument.
57+
[#12545](https://github.com/rust-lang/cargo/pull/12545)
58+
[#12586](https://github.com/rust-lang/cargo/pull/12586)
59+
- cargo-install: suggest `--git` when the package name looks like a URL.
60+
[#12575](https://github.com/rust-lang/cargo/pull/12575)
61+
- cargo-add: summarize the feature list when it's too long.
62+
[#12662](https://github.com/rust-lang/cargo/pull/12662)
63+
[#12702](https://github.com/rust-lang/cargo/pull/12702)
64+
- Shell completion for `--target` uses rustup but falls back to rustc.
65+
[#12606](https://github.com/rust-lang/cargo/pull/12606)
66+
- Help users know possible `--target` values.
67+
[#12607](https://github.com/rust-lang/cargo/pull/12607)
68+
- Enhanced "registry index not found" error message.
69+
[#12732](https://github.com/rust-lang/cargo/pull/12732)
70+
- Enhanced CLI help message of `--explain`.
71+
[#12592](https://github.com/rust-lang/cargo/pull/12592)
72+
- Enhanced deserialization errors of untagged enums with `serde-untagged`.
73+
[#12574](https://github.com/rust-lang/cargo/pull/12574)
74+
[#12581](https://github.com/rust-lang/cargo/pull/12581)
75+
- Enhanced the error when mismatching prerelease version candidates.
76+
[#12659](https://github.com/rust-lang/cargo/pull/12659)
77+
- Enhanced the suggestion on ambiguous Package ID spec.
78+
[#12685](https://github.com/rust-lang/cargo/pull/12685)
79+
- Enhanced TOML parse errors to show the context.
80+
[#12556](https://github.com/rust-lang/cargo/pull/12556)
81+
- Enhanced filesystem error by adding wrappers around `std::fs::metadata`.
82+
[#12636](https://github.com/rust-lang/cargo/pull/12636)
83+
- Enhanced resolver version mismatch warning.
84+
[#12573](https://github.com/rust-lang/cargo/pull/12573)
85+
- Use clap to suggest alternative argument for unsupported arguments.
86+
[#12529](https://github.com/rust-lang/cargo/pull/12529)
87+
[#12693](https://github.com/rust-lang/cargo/pull/12693)
88+
[#12723](https://github.com/rust-lang/cargo/pull/12723)
89+
- Removed redundant information from cargo new/init `--help` output.
90+
[#12594](https://github.com/rust-lang/cargo/pull/12594)
91+
- Console output and styling tweaks.
92+
[#12578](https://github.com/rust-lang/cargo/pull/12578)
93+
[#12655](https://github.com/rust-lang/cargo/pull/12655)
94+
[#12593](https://github.com/rust-lang/cargo/pull/12593)
95+
1096
### Fixed
1197

98+
- Use full target spec for `cargo rustc --print --target`.
99+
[#12743](https://github.com/rust-lang/cargo/pull/12743)
100+
- Copy PDBs also for EFI targets.
101+
[#12688](https://github.com/rust-lang/cargo/pull/12688)
102+
- Fixed resolver behavior being independent of package order.
103+
[#12602](https://github.com/rust-lang/cargo/pull/12602)
104+
- Fixed unnecessary clean up of `profile.release.package."*"` for `cargo remove`.
105+
[#12624](https://github.com/rust-lang/cargo/pull/12624)
106+
12107
### Nightly only
13108

109+
- `-Zasymmetric-token`: Created dedicated unstable flag for asymmetric-token support.
110+
[#12551](https://github.com/rust-lang/cargo/pull/12551)
111+
- `-Zasymmetric-token`: Improved logout message for asymmetric tokens.
112+
[#12587](https://github.com/rust-lang/cargo/pull/12587)
113+
- `-Zmsrv-policy`: **Very** preliminary MSRV resolver support.
114+
[#12560](https://github.com/rust-lang/cargo/pull/12560)
115+
- `-Zscript`: Hack in code fence support.
116+
[#12681](https://github.com/rust-lang/cargo/pull/12681)
117+
- `-Zbindeps`: Support dependencies from registries.
118+
[#12421](https://github.com/rust-lang/cargo/pull/12421)
119+
14120
### Documentation
15121

16122
- ❗ Policy change: Checking `Cargo.lock` into version control is now the default choice,
@@ -19,6 +125,83 @@
19125
[Lockfile docs](https://doc.rust-lang.org/nightly/cargo/guide/cargo-toml-vs-cargo-lock.html),
20126
[CI docs](https://doc.rust-lang.org/nightly/cargo/guide/continuous-integration.html),
21127
[#12382](https://github.com/rust-lang/cargo/pull/12382)
128+
[#12630](https://github.com/rust-lang/cargo/pull/12630)
129+
- SemVer: Update documentation about removing optional dependencies.
130+
[#12687](https://github.com/rust-lang/cargo/pull/12687)
131+
- Contrib: Add process for security responses.
132+
[#12487](https://github.com/rust-lang/cargo/pull/12487)
133+
- cargo-publish: warn about upload timeout.
134+
[#12733](https://github.com/rust-lang/cargo/pull/12733)
135+
- mdbook: use *AND* search when having multiple terms.
136+
[#12548](https://github.com/rust-lang/cargo/pull/12548)
137+
- Established publish best practices
138+
[#12745](https://github.com/rust-lang/cargo/pull/12745)
139+
- Clarify caret requirements.
140+
[#12679](https://github.com/rust-lang/cargo/pull/12679)
141+
- Clarify how `version` works for `git` dependencies.
142+
[#12270](https://github.com/rust-lang/cargo/pull/12270)
143+
- Clarify and differentiate defaults for split-debuginfo.
144+
[#12680](https://github.com/rust-lang/cargo/pull/12680)
145+
- Added missing `strip` entries in `dev` and `release` profiles.
146+
[#12748](https://github.com/rust-lang/cargo/pull/12748)
147+
148+
### Internal
149+
150+
- Updated to `curl-sys` 0.4.66, which corresponds to curl 8.3.0.
151+
[#12718](https://github.com/rust-lang/cargo/pull/12718)
152+
- Updated to `gitoxide` 0.54.1.
153+
[#12731](https://github.com/rust-lang/cargo/pull/12731)
154+
- Updated to `git2` 0.18.0, which corresponds to libgit2 1.7.1.
155+
[#12580](https://github.com/rust-lang/cargo/pull/12580)
156+
- Updated to `cargo_metadata` 0.17.0.
157+
[#12758](https://github.com/rust-lang/cargo/pull/12610)
158+
- Updated target-arch-aware crates to support mips r6 targets
159+
[#12720](https://github.com/rust-lang/cargo/pull/12720)
160+
- publish.py: Remove obsolete `sleep()` calls.
161+
[#12686](https://github.com/rust-lang/cargo/pull/12686)
162+
- Define `{{command}}` for use in src/doc/man/includes
163+
[#12570](https://github.com/rust-lang/cargo/pull/12570)
164+
- Set tracing target `network` for networking messages.
165+
[#12582](https://github.com/rust-lang/cargo/pull/12582)
166+
- cargo-test-support: Add `with_stdout_unordered`.
167+
[#12635](https://github.com/rust-lang/cargo/pull/12635)
168+
- dep: Switch from `termcolor` to `anstream`.
169+
[#12751](https://github.com/rust-lang/cargo/pull/12751)
170+
- Put `Source` trait under `cargo::sources`.
171+
[#12527](https://github.com/rust-lang/cargo/pull/12527)
172+
- SourceId: merge `name` and `alt_registry_key` into one enum.
173+
[#12675](https://github.com/rust-lang/cargo/pull/12675)
174+
- TomlManifest: fail when package_root is not a directory.
175+
[#12722](https://github.com/rust-lang/cargo/pull/12722)
176+
- util: enhanced doc of `network::retry` doc.
177+
[#12583](https://github.com/rust-lang/cargo/pull/12583)
178+
- refactor: Pull out cargo-add MSRV code for reuse
179+
[#12553](https://github.com/rust-lang/cargo/pull/12553)
180+
- refactor(install): Move value parsing to clap
181+
[#12547](https://github.com/rust-lang/cargo/pull/12547)
182+
- Fixed spurious errors with networking tests.
183+
[#12726](https://github.com/rust-lang/cargo/pull/12726)
184+
- Use a more compact relative-time format for `CARGO_LOG` internal logging.
185+
[#12542](https://github.com/rust-lang/cargo/pull/12542)
186+
- Use newer std API for cleaner code.
187+
[#12559](https://github.com/rust-lang/cargo/pull/12559)
188+
[#12604](https://github.com/rust-lang/cargo/pull/12604)
189+
[#12615](https://github.com/rust-lang/cargo/pull/12615)
190+
[#12631](https://github.com/rust-lang/cargo/pull/12631)
191+
- Buffer console status messages.
192+
[#12727](https://github.com/rust-lang/cargo/pull/12727)
193+
- Use enum to describe index summaries to provide a richer information when summaries are not available for resolution.
194+
[#12643](https://github.com/rust-lang/cargo/pull/12643)
195+
- Use shortest path for resolving the path from the given dependency up to the root.
196+
[#12678](https://github.com/rust-lang/cargo/pull/12678)
197+
- Read/write the encoded `cargo update --precise` in the same place
198+
[#12629](https://github.com/rust-lang/cargo/pull/12629)
199+
- Set MSRV for internal packages.
200+
[#12381](https://github.com/rust-lang/cargo/pull/12381)
201+
- ci: Update Renovate schema
202+
[#12741](https://github.com/rust-lang/cargo/pull/12741)
203+
- ci: Ignore patch version in MSRV
204+
[#12716](https://github.com/rust-lang/cargo/pull/12716)
22205

23206
## Cargo 1.73 (2023-10-05)
24207
[45782b6b...rust-1.73.0](https://github.com/rust-lang/cargo/compare/45782b6b...rust-1.73.0)

0 commit comments

Comments
 (0)