Rustup 工作组很高兴地宣布发布 Rustup 版本 1.23.0。 Rustup 是安装 Rust 的推荐工具,Rust 是一种编程语言,它赋予每个人构建可靠高效软件的能力。
如果您已经安装了旧版本的 rustup,获取 rustup 1.23.0 就像关闭您的 IDE 并运行一样简单
rustup self update
Rustup 还会在正常工具链更新结束时自动更新自身
rustup update
如果您还没有安装,可以从我们网站上的相应页面 获取 rustup。
Rustup 1.23.0 中的新功能
支持 Apple M1 设备
Rustup 现在已原生支持新的 Apple M1 设备,您可以像在其他平台上安装一样在新的 Mac 上安装它!
请注意,在撰写此博客文章时,aarch64-apple-darwin
编译器处于 第 2 层目标:预编译二进制文件从 Rust 1.49 开始可用(目前处于 beta 频道),但没有在它们上执行自动测试。
您可以关注 问题 #73908 以跟踪将 Apple Silicon 支持提升至第 1 层所需的工作。
支持安装次要版本
Rust 团队每六周发布一个新版本,定期带来新功能和错误修复。有时回归会出现在稳定版本中,团队会发布一个包含该回归修复的“点版本”。例如,1.45.1 和 1.45.2 是 Rust 1.45.0 的点版本,而 1.46.0 和 1.47.0 都没有点版本。
使用 rustup 1.22.1 或更早版本,如果您想使用稳定版本,您可以安装 stable
(它会自动更新到最新版本)或一个特定的版本号,例如 1.48.0
、1.45.0
或 1.45.2
。从这个版本的 rustup(1.23.0)开始,您还可以安装次要版本,而无需指定补丁版本,例如 1.48
或 1.45
。这些“虚拟”版本将始终指向该周期的最新补丁版本,因此 rustup toolchain install 1.45
将为您提供 1.45.2 工具链。
rust-toolchain
的新格式
rustup 1.5.0 版本引入了 rust-toolchain
文件,允许您为项目选择默认工具链。当文件存在时,rustup 会确保在本地系统上安装文件中指定的工具链,并且在调用 rustc
或 cargo
时会使用该版本
$ cat rust-toolchain
nightly-2020-07-10
$ cargo --version
cargo 1.46.0-nightly (fede83ccf 2020-07-02)
该文件非常适合希望使用特定 nightly 版本的项目,但它不允许添加额外的组件(如 clippy
)或编译目标。Rustup 1.23.0 为该文件引入了新的可选 TOML 语法,支持指定组件和目标
[toolchain]
channel = "nightly-2020-07-10"
components = ["rustfmt", "clippy"]
targets = ["wasm32-unknown-unknown"]
新语法不会替换旧语法,两者将继续工作。您可以在 "rustup 手册的“覆盖”章节" 中了解更多关于覆盖默认工具链的信息。
其他更改
rustup 1.23.0 中还有更多更改:在 变更日志 中查看它们!从这个版本开始,rustup 的文档也包含在 rustup 手册 中。
感谢
感谢所有为 rustup 1.23.0 贡献力量的人!
- Aaron Loucks
- Aleksey Kladov
- Aurelia Dolo
- Camelid
- Chansuke
- Carol (Nichols || Goulding)
- Daniel Silverstone
- Dany Marcoux
- Eduard Miller
- Eduardo Broto
- Eric Huss
- Francesco Zardi
- FR Bimo
- Ivan Nejgebauer
- Ivan Tham
- Jake Goulding
- Jens Reidel
- Joshua M. Clulow
- Jynn Nelson
- Jubilee Young
- Leigh McCulloch
- Lzu Tao
- Matthias Krüger
- Matt Kraai
- Matt McKay
- Nick Ashley
- Pascal Hertleif
- Paul Lange
- Pietro Albini
- Robert Collins
- Stephen Muss
- Tom Eccles