Skip to content

Commit 0ee2a33

Browse files
committed
Update changelog for 1.79.0
1 parent 910efc4 commit 0ee2a33

File tree

1 file changed

+161
-3
lines changed

1 file changed

+161
-3
lines changed

CHANGELOG.md

Lines changed: 161 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,177 @@
11
# Changelog
22

33
## Cargo 1.79 (2024-06-13)
4-
[2fe739fc...HEAD](https://github.com/rust-lang/cargo/compare/2fe739fc...HEAD)
4+
[2fe739fc...rust-1.79.0](https://github.com/rust-lang/cargo/compare/2fe739fc...rust-1.79.0)
55

66
### Added
77

8+
- 🎉 `cargo add` respects `package.rust-version` a.k.a. MSRV when adding new
9+
dependencies. The behavior can be overridden by specifying a version requirement,
10+
or passing the `--ignore-rust-version` flag.
11+
([RFC 3537](https://github.com/rust-lang/rfcs/blob/master/text/3537-msrv-resolver.md))
12+
[#13608](https://github.com/rust-lang/cargo/pull/13608)
13+
- A new `Locking` status message shows dependency changes on any command.
14+
For `cargo update`, it also tells you if any dependency version is outdated.
15+
[#13561](https://github.com/rust-lang/cargo/pull/13561)
16+
[#13647](https://github.com/rust-lang/cargo/pull/13647)
17+
[#13651](https://github.com/rust-lang/cargo/pull/13651)
18+
[#13657](https://github.com/rust-lang/cargo/pull/13657)
19+
[#13759](https://github.com/rust-lang/cargo/pull/13759)
20+
[#13764](https://github.com/rust-lang/cargo/pull/13764)
21+
822
### Changed
923

24+
- ❗️ `RUSTC_WRAPPER`, `RUSTC_WORKSPACE_WRAPPER`, and variables from the `[env]`
25+
table now also apply to the initial `rustc -vV` invocation Cargo uses for
26+
probing rustc information.
27+
[#13659](https://github.com/rust-lang/cargo/pull/13659)
28+
- ❗️ Turns dependencies like `foo = { optional = true }` from `version="*"`
29+
dependencies with a warning into errors.
30+
This behavior has been considered a bug from the beginning.
31+
[#13775](https://github.com/rust-lang/cargo/pull/13775)
32+
- ❗️ Replace dashes with underscores also if `lib.name` is inferred from `package.name`.
33+
This change aligns to the documented behavior. One caveat is that
34+
`cargo metadata` starts reporting underscore lib names.
35+
[#12783](https://github.com/rust-lang/cargo/pull/12783)
36+
- Switch to `gitoxide` for listing files. This improves the performance of
37+
build script and `cargo doc` for computing cache freshness,
38+
as well as fixes some subtle bugs for `cargo publish`.
39+
[#13592](https://github.com/rust-lang/cargo/pull/13592)
40+
[#13696](https://github.com/rust-lang/cargo/pull/13696)
41+
[#13704](https://github.com/rust-lang/cargo/pull/13704)
42+
[#13777](https://github.com/rust-lang/cargo/pull/13777)
43+
- Warn on `-Zlints` being passed and no longer necessary.
44+
[#13632](https://github.com/rust-lang/cargo/pull/13632)
45+
- Warn on unused `workspace.dependencies` keys on virtual workspaces.
46+
[#13664](https://github.com/rust-lang/cargo/pull/13664)
47+
- cargo-init: don't assign `target.name` in Cargo.toml if the value can be inferred.
48+
[#13606](https://github.com/rust-lang/cargo/pull/13606)
49+
- carog-package: normalize paths in `Cargo.toml`, including replacing `\` with `/`.
50+
[#13729](https://github.com/rust-lang/cargo/pull/13729)
51+
- cargo-test: recategorize cargo test's `--doc` flag under “Target Selection”.
52+
[#13756](https://github.com/rust-lang/cargo/pull/13756)
53+
- Emit 1.77 build script syntax error only when msrv is incompatible.
54+
[#13808](https://github.com/rust-lang/cargo/pull/13808)
55+
1056
### Fixed
1157

12-
- Replace dashes with underscores also if `lib.name` is inferred from `package.name`.
13-
[#12783](https://github.com/rust-lang/cargo/pull/12783)
58+
- Dont panic when resolving an empty alias.
59+
[#13613](https://github.com/rust-lang/cargo/pull/13613)
60+
- When using `--target`, the default debuginfo strip rule also applies.
61+
Note that on Windows MSVC Cargo no longer strips by default.
62+
[#13618](https://github.com/rust-lang/cargo/pull/13618)
63+
- Don't crash on Cargo.toml parse errors that point to multi-byte character
64+
[#13780](https://github.com/rust-lang/cargo/pull/13780)
65+
- cargo-add: Maintain sorting of dependency features.
66+
[#13682](https://github.com/rust-lang/cargo/pull/13682)
67+
- cargo-add: Preserve comments when updating simple deps
68+
[#13655](https://github.com/rust-lang/cargo/pull/13655)
69+
- cargo-fix: dont apply same suggestion twice.
70+
[#13728](https://github.com/rust-lang/cargo/pull/13728)
71+
- cargo-package: error when the package specified via `--package` cannot be found
72+
[#13735](https://github.com/rust-lang/cargo/pull/13735)
73+
- credential-provider: trim newlines in tokens from stdin.
74+
[#13770](https://github.com/rust-lang/cargo/pull/13770)
75+
- Don't emit deprecation warning if one of `.cargo/{config,config.toml}` is
76+
a symlink to the other.
77+
[#13793](https://github.com/rust-lang/cargo/pull/13793)
78+
- Follow HTTP redirections when checking if a repo on GitHub is up-to-date.
79+
[#13718](https://github.com/rust-lang/cargo/pull/13718)
80+
- Bash completion fallback in `nounset` mode.
81+
[#13686](https://github.com/rust-lang/cargo/pull/13686)
82+
- Rerun build script when rustflags changed and `--target` was passed.
83+
[#13560](https://github.com/rust-lang/cargo/pull/13560)
84+
- Fix doc collision for lib/bin with a dash in the inferred name.
85+
[#13640](https://github.com/rust-lang/cargo/pull/13640)
1486

1587
### Nightly only
1688

89+
- 🔥 cargo-update: allows `--precise` to specify a pre-release version of a package
90+
([RFC 3493](https://github.com/rust-lang/rfcs/blob/master/text/3493-precise-pre-release-cargo-update.md))
91+
([docs](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#precise-pre-release))
92+
[#13626](https://github.com/rust-lang/cargo/pull/13626)
93+
- RFC 3491: Unused dependencies cleanup
94+
[#13778](https://github.com/rust-lang/cargo/pull/13778)
95+
- `-Zcargo-lints`: Add a basic linting system for Cargo.
96+
This is still under development and not available for general use.
97+
[#13621](https://github.com/rust-lang/cargo/pull/13621)
98+
[#13635](https://github.com/rust-lang/cargo/pull/13635)
99+
[#13797](https://github.com/rust-lang/cargo/pull/13797)
100+
[#13740](https://github.com/rust-lang/cargo/pull/13740)
101+
[#13801](https://github.com/rust-lang/cargo/pull/13801)
102+
- 🔥 `edition2024`: Add default Edition2024 to resolver v3 (MSRV-aware resolver).
103+
[#13785](https://github.com/rust-lang/cargo/pull/13785)
104+
- `edition2024`: Remove underscore field support in 2024.
105+
[#13783](https://github.com/rust-lang/cargo/pull/13783)
106+
[#13798](https://github.com/rust-lang/cargo/pull/13798)
107+
[#13800](https://github.com/rust-lang/cargo/pull/13800)
108+
[#13804](https://github.com/rust-lang/cargo/pull/13804)
109+
- `edition2024`: Error on `[project]` in Edition 2024
110+
[#13747](https://github.com/rust-lang/cargo/pull/13747)
111+
- `-Zmsrv-policy`: Respect '--ignore-rust-version'
112+
[#13738](https://github.com/rust-lang/cargo/pull/13738)
113+
- `-Zmsrv-policy`: Add `--ignore-rust-version` to update/generate-lockfile
114+
[#13741](https://github.com/rust-lang/cargo/pull/13741)
115+
[#13742](https://github.com/rust-lang/cargo/pull/13742)
116+
- `-Zmsrv-policy`: Put MSRV-aware resolver behind a config
117+
[#13769](https://github.com/rust-lang/cargo/pull/13769)
118+
- `-Zmsrv-policy`: Error, rather than panic, on rust-version 'x'
119+
[#13771](https://github.com/rust-lang/cargo/pull/13771)
120+
- `-Zmsrv-policy`: Fallback to 'rustc -V' for MSRV resolving.
121+
[#13743](https://github.com/rust-lang/cargo/pull/13743)
122+
- `-Zmsrv-policy`: Add v3 resolver for MSRV-aware resolving
123+
[#13776](https://github.com/rust-lang/cargo/pull/13776)
124+
- `-Zmsrv-policy`: Don't respect MSRV for non-local installs
125+
[#13790](https://github.com/rust-lang/cargo/pull/13790)
126+
- `-Zmsrv-policy`: Track when MSRV is explicitly set, either way
127+
[#13732](https://github.com/rust-lang/cargo/pull/13732)
128+
- test: don't compress test registry crates.
129+
[#13744](https://github.com/rust-lang/cargo/pull/13744)
130+
131+
### Documentation
132+
133+
- Clarify `--locked` ensuring that Cargo uses dependency versions in lockfile
134+
[#13665](https://github.com/rust-lang/cargo/pull/13665)
135+
- Clarify the precedence of `RUSTC_WORKSPACE_WRAPPER` and `RUSTC_WRAPPER`.
136+
[#13648](https://github.com/rust-lang/cargo/pull/13648)
137+
- Clarify only in the root Cargo.toml the `[workspace]` section is allowed.
138+
[#13753](https://github.com/rust-lang/cargo/pull/13753)
139+
- Clarify the differences between virtual and real manifests.
140+
[#13794](https://github.com/rust-lang/cargo/pull/13794)
141+
142+
### Internal
143+
144+
- 🎉 New member crates [`cargo-test-support`](https://crates.io/crates/cargo-test-support)
145+
and [`cargo-test-macro`](https://crates.io/crates/cargo-test-macro)!
146+
They are designed for testing Cargo itself,
147+
so no guarantee on any stability across versions.
148+
The crates.io publish of this crate is the same as other members crates.
149+
They follow Rust's [6-week release process](https://doc.crates.io/contrib/process/release.html#cratesio-publishing).
150+
[#13418](https://github.com/rust-lang/cargo/pull/13418)
151+
- Fix publish script due to crates.io CDN change
152+
[#13614](https://github.com/rust-lang/cargo/pull/13614)
153+
- Push diagnostic complexity on annotate-snippets
154+
[#13619](https://github.com/rust-lang/cargo/pull/13619)
155+
- cargo-package: Simplify getting of published Manifest
156+
[#13666](https://github.com/rust-lang/cargo/pull/13666)
157+
- ci: update macos images to macos-13
158+
[#13685](https://github.com/rust-lang/cargo/pull/13685)
159+
- manifest: Split out an explicit step to resolve `Cargo.toml`
160+
[#13693](https://github.com/rust-lang/cargo/pull/13693)
161+
- manifest: Decouple target discovery from Target creation
162+
[#13701](https://github.com/rust-lang/cargo/pull/13701)
163+
- manifest: Expose surce/spans for VirtualManifests
164+
[#13603](https://github.com/rust-lang/cargo/pull/13603)
165+
- Update dependencies
166+
[#13609](https://github.com/rust-lang/cargo/pull/13609)
167+
[#13674](https://github.com/rust-lang/cargo/pull/13674)
168+
[#13675](https://github.com/rust-lang/cargo/pull/13675)
169+
[#13679](https://github.com/rust-lang/cargo/pull/13679)
170+
[#13680](https://github.com/rust-lang/cargo/pull/13680)
171+
[#13692](https://github.com/rust-lang/cargo/pull/13692)
172+
[#13731](https://github.com/rust-lang/cargo/pull/13731)
173+
[#13760](https://github.com/rust-lang/cargo/pull/13760)
174+
17175
## Cargo 1.78 (2024-05-02)
18176
[7bb7b539...rust-1.78.0](https://github.com/rust-lang/cargo/compare/7bb7b539...rust-1.78.0)
19177

0 commit comments

Comments
 (0)