Rust 大会:2025 年主要公告
本周在柏林举行的年度 RustConf 2025 大会为语言未来几年的发展定下了基调。Rust 基金会团队和核心开发者发布了一系列重大公告,这些公告将改变编译器本身及其生态系统。我们为您整理了每位 Rust 开发者都应了解的关键新闻。
1. 期待已久的 LTS 版本
最大的惊喜是宣布了 Rust 历史上首个长期支持(LTS)版本。Rust 1.80 版本将获得 24 个月的支持,包括有保障的安全补丁和关键错误修复。这对于企业用户来说是重要的一步,他们此前因快速的更新周期而对采用 Rust 有所顾虑。LTS 版本将于 2025 年 10 月提供下载。
2. 新的借用检查器 – Polonius
经过数年的 nightly 开发,Polonius 终于稳定了。新的借用检查器显著简化了借用处理:它能更灵活地处理多个可变引用,并消除了约 40% 困扰初学者的误报。据开发者称,Polonius 将在 Rust 1.82 中默认启用。这将使代码更简洁,语言学习也不再那么痛苦。
3. trait 中 async fn 的稳定化
最受欢迎的功能之一终于走出了实验阶段。从 Rust 1.84 开始,开发者可以直接在 trait 中声明异步方法,而无需通过关联类型进行变通。这简化了多态异步代码的编写,并加速了与 Tokio 和 Async-std 等库的协作。预计许多 Web 框架(Actix、Rocket)将在稳定化后立即发布更新版本。
4. 标准库的扩展
std 中新增了有用的类型和方法:
- CursorMut — 用于 Vec 和 String 的可变游标(类似于 Cursor,但支持写入)。
- LazyCell — 无需 Mutex 的惰性初始化,适用于数据仅计算一次的场景。
- Vec::dedup_by_key — 根据键值去重,无需手动迭代。
- HashMap::entry_modify — 对键对应的条目进行原子性修改。
这些新增功能减少了对外部 crate 的依赖,简化了代码维护。
5. 生态系统:cargo-script 与文档改进
cargo-script 工具现已集成到主 cargo 中。现在,您可以像运行脚本一样运行单个 .rs 文件(例如用于任务自动化),而无需创建完整项目。命令 cargo script main.rs 会自动加载嵌入在注释中的 Cargo.toml 中的依赖项。
此外,还宣布将迁移到新的文档引擎,该引擎能生成更易读的页面,包含类型导航和内嵌的使用示例。更新后的 doc.rust-lang.org 将于下个月以测试版模式上线。
大会总结
RustConf 2025 表明,该语言正稳步走向成熟,同时并未失去其核心价值——安全性和性能。LTS 版本发布、trait 中 async 的稳定化以及新的