Skip to content

Rust 1.88.0 新版本发布

发表于:2025-06-30
Rust 新闻

摘要

Rust 1.88.0 新版本发布,此次版本带来了多个功能和改进。

-Rust 团队发布了最新的 Rust 版本 1.88.0。照例可以通过rustup update stable 快速升级到最新版本。

此次版本带来了多个功能和改进:

  • Let chains 语法稳定

Let chains链式表达式终于稳定了,允许在if / if let while / while let 后通过&& 链接子表达式, 子表达式可以直接引用前面 let 语句作用域中的变量而无需嵌套

if let Channel::Stable(v) = release_info()
    && let Semver { major, minor, .. } = v
    && major == 1
    && minor == 88
{
    println!("`let_chains` was stabilized in this version");
}

新语法需要Rust 2024版本

  • Naked functions 支持通过naked_asm宏编写汇编级别的函数

支持编写 naked funtions 来完全控制某个函数的汇编级别的代码,通过#[unsafe(naked)]属性和naked_asm宏很方便的实现

#[unsafe(naked)]
pub unsafe extern "sysv64" fn wrapping_add(a: u64, b: u64) -> u64 {
    // Equivalent to `a.wrapping_add(b)`.
    core::arch::naked_asm!(
        "lea rax, [rdi + rsi]",
        "ret"
    );
}
  • Boolean configuration cfg 属性编译条件支持true和false字面量

之前无任何条件的编译选项如cfg(all())cfg(any()) 现在可以用cfg(true)cfg(false) 来更加直观的表示

  • Cargo 工具自动缓存清理功能稳定

从 1.88.0 版本后,Cargo 将会在命令执行的后台自动清理家目录的缓存,有助于减少硬盘空间的占用。在这之前 ,如果不手动处理,从网络上下载的资源会永远占用磁盘空间,现在 Cargo 工具会有策略的删除长时间未访问的历史缓存。

  • 稳定了一大批 API,比如 Cell::update, impl Default for *const T

原文链接:https://blog.rust-lang.org/2025/06/26/Rust-1.88.0/

最后更新于: