发布 Rust 1.69.0

2023 年 4 月 20 日 · Rust 发布团队

Rust 团队很高兴地宣布一个不错的 Rust 版本,1.69.0。Rust 是一种赋予每个人构建可靠且高效软件能力的编程语言。

如果您之前已经通过 rustup 安装了 Rust,可以使用以下命令获取 1.69.0:

$ rustup update stable

如果您还没有安装,可以从我们的网站上相应的页面获取 rustup,并在 GitHub 上查看 1.69.0 的详细发布说明

如果您想通过测试未来的版本来帮助我们,可以考虑在本地更新以使用 beta 通道 (rustup default beta) 或 nightly 通道 (rustup default nightly)。请报告您遇到的任何错误!

1.69.0 stable 版本包含的内容

Rust 1.69.0 没有引入重大的新特性。但是,它包含许多小改进,包括来自 500 多名贡献者的 3000 多次提交。

Cargo 现在建议自动修复一些警告

Rust 1.29.0 添加了 cargo fix 子命令,用于自动修复一些简单的编译器警告。从那时起,可以自动修复的警告数量持续稳步增加。此外,还增加了对自动修复一些简单的 Clippy 警告的支持。

为了引起对这些增强功能的更多关注,Cargo 现在在检测到可以自动修复的警告时,会建议运行 cargo fixcargo clippy --fix

warning: unused import: `std::hash::Hash`
 --> src/main.rs:1:5
  |
1 | use std::hash::Hash;
  |     ^^^^^^^^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default

warning: `foo` (bin "foo") generated 1 warning (run `cargo fix --bin "foo"` to apply 1 suggestion)

请注意,上面显示的完整 Cargo 调用只有在您想精确地将修复应用于单个 crate 时才需要。如果您想将修复应用于工作空间的所有默认成员,那么简单的 cargo fix(不带额外参数)就足够了。

构建脚本默认不再包含调试信息

为了提高编译速度,Cargo 现在默认避免在构建脚本中输出调试信息。当构建脚本成功执行时,不会有明显影响,但构建脚本中的回溯信息会减少。

如果您想调试构建脚本,可以将此代码片段添加到您的 Cargo.toml 中,以便再次输出调试信息:

[profile.dev.build-override]
debug = true
[profile.release.build-override]
debug = true

稳定的 API

这些 API 现在在 const 上下文 中稳定了:

其他变化

查看 RustCargoClippy 中的所有变化。

1.69.0 的贡献者

许多人共同努力创建了 Rust 1.69.0。没有你们,我们不可能做到。感谢大家!