Skip to content

Commit bc7e502

Browse files
committed
collapse less relevant items at the bottom
1 parent 5268c5b commit bc7e502

File tree

1 file changed

+31
-37
lines changed

1 file changed

+31
-37
lines changed

posts/2022-09-22-Rust-1.64.0.md

Lines changed: 31 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -77,17 +77,6 @@ able to mitigate with a `cargo update` if needed."
7777

7878
See <https://github.com/rust-lang/rust/pull/78802> for more details.
7979

80-
### Warning about unused tuple-struct fields
81-
82-
If you define a struct containing fields that are never used, rustc will warn
83-
about the unused fields. Now, in Rust 1.64, you can enable the
84-
`unused_tuple_struct_fields` lint to get the same warnings about unused fields
85-
in a tuple struct. In future versions, we plan to make this lint warn by
86-
default.
87-
88-
Fields of type unit (`()`) do not produce a warning, to make it easier to
89-
migrate existing code without having to change tuple indices.
90-
9180
### Enhancing `.await` with `IntoFuture`
9281

9382
Rust 1.64 stabilizes the
@@ -205,36 +194,11 @@ announced](https://blog.rust-lang.org/2022/08/01/Increasing-glibc-kernel-require
205194
already required a newer kernel), and `linux-gnu` targets now require glibc
206195
2.17 (except for targets which already required a newer glibc).
207196

208-
### Profile-guided optimization (PGO) for Windows targets
209-
210-
Windows builds of the Rust compiler now use profile-guided optimization,
211-
providing performance improvements of 10-20% for compiling Rust code on
212-
Windows.
213-
214197
### `rust-analyzer` now available via `rustup`, no longer in preview
215198

216199
Users of `rust-analyzer` can now obtain it via `rustup` on the stable and beta
217200
channels, not just on nightly.
218201

219-
### Cargo workspace inheritance
220-
221-
When working with collections of related libraries or binary crates in one
222-
Cargo workspace, you can now avoid duplication of common field values between
223-
crates, such as common version numbers, repository URLs, or `rust-version`.
224-
This also helps keep these values in sync between crates when updating them.
225-
For more details, see
226-
[`workspace.package`](https://doc.rust-lang.org/cargo/reference/workspaces.html#the-workspacepackage-table),
227-
[`workspace.dependencies`](https://doc.rust-lang.org/cargo/reference/workspaces.html#the-workspacedependencies-table),
228-
and ["inheriting a dependency from a
229-
workspace"](https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#inheriting-a-dependency-from-a-workspace).
230-
231-
### Cargo multi-target builds
232-
233-
When building for multiple targets, you can now pass multiple `--target`
234-
options to `cargo build`, to build all of those targets at once. You can also
235-
set [`build.target`](https://doc.rust-lang.org/cargo/reference/config.html#buildtarget) to an array of multiple targets in `.cargo/config.toml` to
236-
build for multiple targets by default.
237-
238202
### Stabilized APIs
239203

240204
The following methods and trait implementations are now stabilized:
@@ -247,7 +211,37 @@ These APIs are now usable in const contexts:
247211

248212
### Other changes
249213

250-
There are other changes in the Rust 1.64.0 release. Check out what changed in
214+
There are other changes in the Rust 1.64 release, including:
215+
216+
* Windows builds of the Rust compiler now use profile-guided optimization,
217+
providing performance improvements of 10-20% for compiling Rust code on
218+
Windows.
219+
220+
* If you define a struct containing fields that are never used, rustc will warn
221+
about the unused fields. Now, in Rust 1.64, you can enable the
222+
`unused_tuple_struct_fields` lint to get the same warnings about unused
223+
fields in a tuple struct. In future versions, we plan to make this lint
224+
warn by default. Fields of type unit (`()`) do not produce this warning,
225+
to make it easier to migrate existing code without having to change tuple
226+
indices.
227+
228+
* When working with collections of related libraries or binary crates in one
229+
Cargo workspace, you can now avoid duplication of common field values between
230+
crates, such as common version numbers, repository URLs, or `rust-version`.
231+
This also helps keep these values in sync between crates when updating them.
232+
For more details, see
233+
[`workspace.package`](https://doc.rust-lang.org/cargo/reference/workspaces.html#the-workspacepackage-table),
234+
[`workspace.dependencies`](https://doc.rust-lang.org/cargo/reference/workspaces.html#the-workspacedependencies-table),
235+
and ["inheriting a dependency from a
236+
workspace"](https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#inheriting-a-dependency-from-a-workspace).
237+
238+
* When building for multiple targets, you can now pass multiple `--target`
239+
options to `cargo build`, to build all of those targets at once. You can
240+
also set [`build.target`](https://doc.rust-lang.org/cargo/reference/config.html#buildtarget)
241+
to an array of multiple targets in `.cargo/config.toml` to build for
242+
multiple targets by default.
243+
244+
Check out everything that changed in
251245
[Rust](https://github.com/rust-lang/rust/blob/stable/RELEASES.md#version-1640-2022-09-22),
252246
[Cargo](https://github.com/rust-lang/cargo/blob/master/CHANGELOG.md#cargo-164-2022-09-22),
253247
and [Clippy](https://github.com/rust-lang/rust-clippy/blob/master/CHANGELOG.md#rust-164).

0 commit comments

Comments
 (0)