Rust 生态
Rust 生态包含许多工具,主要是这些:
-
rustc
:Rust 编译器将.rs
转为二进制和其它中间格式1。 -
cargo
:Rust 依赖管理和构建工具。Cargo 知道如何下载位于 https://crates.io 的依赖并在你构建工程时传给rustc
。Cargo 还附带了一个内置的测试运行器,用于执行单元测试2。 -
rustup
:Rust 工具链安装器和升级器。这个工具用于安装和当新版本 Rust 释放时更新rustc
和cargo
。此外,rustup
还能下载标准库的文档。你可以同时安装多个版本的 Rust,rustup
将允许你根据需要在它们之间切换。
要点:
-
Rust 有一个快速发布计划,每六周发布一个新版本。新版本保持对旧版本的向后兼容性 — 并启用新功能。
-
有三个发布通道:“stable”、 “beta” 和 “nightly”。
-
每六个星期,在 “nightly”, “beta” 中进行了测试的新功能将会成为 “stable”。
-
Rust 也有 版本:现在的版本是 Rust 2021。之前的版本是 Rust 2015 和 Rust 2018。
-
每个版本可以允许对语言进行向后不兼容的更改。
-
为了防止破坏代码,版本是可选的:你可以通过
Cargo.toml
为你的 crate 选择版本。 -
为了避免分裂生态,Rust 编译器可以混合为不同版本编写的代码。
-
请注意,不通过
cargo
直接使用编译器是非常罕见的(绝大部分用户都从不这样做)。 -
可能值得一提的是,Cargo 本身就是一个非常强大和全面的工具。它具有很多高级功能,包括但不限于:
- 构造项目/包
- 工作空间
- 开发依赖和运行依赖的管理/缓存
- 安装脚本
- 全局安装
- 它还可以通过子命令插件进行拓展(例如 cargo clippy)。
-
通过 Cargo 官方文档 了解更多
-