返回资讯中心
外部精选
软件工程
#开发者实时流

新构建工具 Blaze 发布,Rust 增量重建速度最高提升 92 倍

来源标题:Rebuild Rust in Milliseconds

Blaze 已发布,可作为 cargo build/run/test 的直接替代品,官方称增量重建速度最高提升 92 倍。它采用常驻后台的守护进程,把编译代码和查询结果保留在内存中,代码变更时只重新编译改动的函数,并用自带链接器完成链接。在 ripgrep 等真实项目上,编辑后的重建在 macOS arm64 快 10 倍、Linux aarch64 快 24 倍、Linux x86-64 快 11 倍。

Hacker News 最新rustbytes2026/11/2 · 今天13 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

Rust Bytes 2026年11月2日 4 1 分享 图片:Blaze——毫秒级重建 Rust

十一月快乐,Rustaceans!

本期我们将介绍一款新的 Rust 构建工具,聚焦一个项目,精选本周 10 个精彩链接,并为你带来一道挑战题。

毫秒级重建 Rust

如果说 Rustaceans 能在一件事上达成共识,那就是 Rust 很棒,但构建时间不太行,尤其是在较大的项目上。上周,Blaze 发布了,作为 cargo build/run/test 命令的直接替代品,承诺增量重建最高可提速 92 倍。

Blaze 采用了一种与 cargo 和 rustc 截然不同的方法。受 rust-analyzer 和 salsa 等工具的启发,它通过将项目状态(包括编译后的代码和查询结果)以长期运行的守护进程形式保留在内存中,从而实现更快的构建。

当检测到代码变更时,它只重新编译更新的函数,并使用自己的链接器链接程序。它还会更新所有后续调用以使用更新后的版本。

更令人印象深刻的是:

在 macOS arm64 上编辑重建快 10 倍,在 Linux aarch64 上快 24 倍,在 Linux x86-64 上快 11 倍(基于 ripgrep、nushell、Helix 和 Bun 等真实项目进行基准测试)。 构建产物仍然落在常规的 /target 目录中,因此你现有的工具链可以继续工作。 Blaze 的命令与大多数 Cargo 命令、标志和设置兼容。 需要时可选择启用实时重载模式。 请注意,Blaze 使用其自己固定版本的 rust nightly,因此在关键项目上运行时务必非常谨慎,并以 cargo check 作为事实来源。 我知道这个项目最终会走向何方吗?不知道。我知道的是,它将改变我们日常构建 Rust 的方式。

愿它茁壮成长,迎来自己的少年时代。

bitflags

bitflags 生成具有明确定义语义和符合人体工程学的终端用户 API 的标志枚举。

bitflags! 宏将简短的定义变成一个功能齐全的类型,所有集合运算都已内置。 内置字符串解析和格式化,因此你的标志可以通过配置文件或 CLI 参数往返传递,无需额外的胶水代码。 可选的 serde、bytemuck 和 arbitrary 支持,当你需要该类型与 crate 图的其余部分良好配合时。 对底层位类型进行显式控制,同时仍在其上提供符合人体工程学的 API。 Bitflags 是开源的,地址为 https://github.com/bitflags/bitflags。

一项关于 Rust 可变参数泛型的调查收到 3300 多份回复,显示出替代元组宏的强烈需求,尤其是在 Bevy/ECS/解析器中;优先级为中等,但对复杂性的怀疑依然存在。Rust 基金会人员配置更新发布,新设技术服务总监一职,David Wood 临时接任;外联与传播合并为对外关系部门,由 Lori Lorusso 领导。

Symbolica 基于 Rust 的计算机代数系统现已通过 WebAssembly 在浏览器中运行,附带 Typst 插件、精确非线性求解、代数数以及 HEPkit 粒子物理工具。

Maor Kern 在《It's the Memory Latency, Stupid》中解释了内存延迟为何重要,展示了基数分区如何保持哈希表对缓存友好,并减少 DRAM 停顿。

Nordic Semiconductor 正在波士顿(混合办公)招聘一名高级嵌入式操作系统现场工程师。如果你精通 AOSP、Linux、C/C++ 和 Rust,他们想和你聊聊。

Praveen Perera 通过 cuda-oxide 重写了 GPU 内核,用基于 Rust 的实现取代 ONNX、cuDNN 和 cuBLAS,在相同准确率下,说话人分离速度比 pyannote 快 60 倍。

Infinity 是一个轻量级 Rust 框架,用于运行大规模并发 agent,免费休眠,并在 Lambda 上缩容到零。

Rust 终于有了 2026 年的目标,要缩小 target/ 这个无底洞。产物、调试信息和 GC 的优化已提上日程,但进展目前因资金问题受阻。

Zed 1.26.2 发布,带来可选的 Pyrefly Python、可展开的调试器变量树,以及 JS 调试器中针对 WebAssembly 的 DWARF 调试。

Kivooeo 写了《What Stable Rust Stands On》,揭示编译器依赖于 83 个 nightly 特性。值得注意的例子包括 deref_patterns(支持通过 Box 进行匹配)和结构体的 default_field_values。

Firezone 推出了 sanstun,一个 sans-IO 的 Rust WireGuard 实现,可实现更安全的 API、无锁速率限制和并行加密以提升吞吐量。

上周我们让你实现了 first_missing_positive 挑战。这是本周的挑战。

给定一个字符串 s,当且仅当可以恰好删除一个 Unicode 标量值(char)使剩余字符串成为回文时,返回 true。

图片:Rust Bytes 挑战第 144 期:恰好一次编辑回文

在 Rust Playground 上测试你的解决方案。完成后,在 X、BlueSky、Mastodon、LinkedIn 上分享你的解决方案并标记我们,或回复此邮件。

CodeCrafters 打造了精彩的 Rust 课程,将你的技能推向基础之外。

你将享受从零构建真实世界项目的乐趣,包括 Git、Docker、Redis、Kafka、SQLite、Grep、BitTorrent、HTTP Server、解释器和 DNS。

课程是自定进度的,因此你可以按自己的速度学习。

免费加入,升级时可享 40% 折扣。[affiliate]

X | BlueSky | Mastodon | GitHub | LinkedIn | 请我们喝咖啡 | hello@rustbytes.com

祝你十一月高效多产,记得注意安全、多喝水!

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →