Rust 1.96.0 发布,稳定 core::range 新类型与 assert_matches!
Rust 官方团队正式发布 1.96.0 稳定版,包含多项语言和标准库更新。
新 Range 类型(core::range)
许多用户期望 Range 及相关 core::ops 类型是 Copy 的,但原来它们直接实现了 Iterator,同时实现 Iterator 和 Copy 是一个 footgun,因此一直回避。RFC 3550 提出了一组替代 Range 类型,这些类型实现 IntoIterator 而非 Iterator,因此也可以是 Copy。相关类型现已稳定:
core::range::Range、core::range::RangeFrom、core::range::RangeInclusive及关联迭代器- 新的 RangeInclusive 将字段公开,避免了旧版本中暴露迭代器耗尽状态的问题
- 公共 API 建议使用
impl RangeBounds,同时接受新旧两种 Range 类型
新断言宏 assert_matches!
新增 assert_matches! 和 debug_assert_matches!,断言某个值是否匹配给定模式,失败时输出 Debug 表示,便于诊断失败原因。注意:因与同名第三方 crate 冲突,这两个宏未加入标准前置导入,需手动 use core::assert_matches 引入。
WebAssembly 目标变更
WebAssembly 目标不再向链接器传递 --allow-undefined,未定义符号现在会变成链接错误而非自动转为 "env" 模块的 WebAssembly 导入。此变更已在 1.96 生效。
两个 Cargo 安全修复
- CVE-2026-5223(中危):Cargo 错误处理第三方注册表 crate tarball 中的符号链接,允许恶意 crate 覆盖同一注册表中另一个 crate 的源代码;1.96 起拒绝提取 tarball 中任何符号链接。crates.io 用户不受影响。
- CVE-2026-5222(低危):URL 规范化后的认证处理问题。
升级:rustup update stable
原文链接:https://blog.rust-lang.org/2026/05/28/Rust-1.96.0/
在越狱 Kindle 上运行 Rust(和 Slint)
作者成功在第 7 代 Kindle Paperwhite 上运行 Rust 程序,实现了图形界面显示和触摸交互,初衷是将 Kindle 用作床头时钟,后续计划开发 Home Assistant 仪表板。
核心技术路径:使用 cargo-zigbuild 交叉编译到 armv7-unknown-linux-musleabihf;选用 Slint GUI 库,软件渲染后通过内存映射写入 /dev/fb0 刷新电子墨水屏;触摸输入则从 /dev/input/event1 读取 Linux 多点触控事件并转换为 Slint 事件。充分利用了 Linux "一切皆文件"的设计哲学。
作者已将 Slint Kindle 后端开源:https://github.com/sverrejb/slint-kindle-backend
原文链接:https://sverre.me/blog/rust-on-kindle/
Rust 将拯救 Linux 免受 AI 威胁——Greg Kroah-Hartman
Linux 稳定内核维护者 Greg Kroah-Hartman 在 Rust Week 大会上指出:最新 AI 漏洞检测程序发现了大量严重的 Linux 安全漏洞(Dirty Frag、Copy Fail、Fragnesia 等),内核团队如今每天要发布约 13 个 CVE。大多数漏洞源于 C 语言的内存管理问题——未检查的指针解引用、忘记解锁、内存泄漏等。
Rust 可在编译时捕获这些错误,强制执行锁的获取与释放,预计可直接消除约 60% 的内核漏洞,减轻维护者负担。此外,即使 Rust 消失,它已促使内核 C 代码引入了 guards 和作用域锁等新模式。
原文链接:https://www.zdnet.com/article/rust-will-save-linux-from-ai-says-greg-kroah-hartman/
Agari:用 Rust 和 Bevy 开发日本立直麻将游戏的一年
作者用 Rust + Bevy 历时一年开发了一款日本立直麻将游戏,起因是现有在线平台 AI 弱、界面风格难以被朋友接受、且需要持续联网。
技术方案:先开发 Rust 计分库 agari(日语"上がり",胡牌),再基于此构建游戏。Bevy 引擎适合场景简单、渲染负载轻的麻将游戏;采用 3D 桌面设计 + 长焦压缩视角,使远近玩家牌张大小接近;多人联机采用主机权威 + 锁步同步架构,并实现了断线重连系统。
设计目标:离线可玩、无账号、无抽卡、可配置 AI 风格、界面简洁(无动漫元素)。
原文链接:https://agari.app/devlog/building-agari/
From Rust中文社区 Mike
社区学习交流平台订阅:
评论区
写评论还没有评论