Allocator 稳定化进入最终意见征询期
alloc: stabilise Allocator(rust-lang/rust PR #156882,作者 nia-e)已进入最终意见征询期(final-comment-period),标签含 disposition-merge、relnotes,并涉及 T-libs / T-lang。目标是稳定一套最小可用的 Allocator trait,以及 Box::new_in()、Vec::new_in()、System / Global 分配器,并为 T: GlobalAlloc 提供 Allocator 的 blanket impl;当前有意限制自定义分配器实例化路径,先聚焦 Box 与 Vec。
稳定化报告见 HackMD 上的 proposed stabilisation report。lang 侧讨论中明确了两点:Box<T, A> 在 A 上不视为 fundamental;当 A ≠ Global 时,Box 不带 noalias 及对应的语言级唯一性要求(自定义分配器是普通 Rust 代码,部分实现会在释放时从数据指针回推分配器状态)。All-hands 上 libs 与生态相关方有过讨论,认为现有设计可在保持向后兼容的前提下继续扩展。
原文链接:https://github.com/rust-lang/rust/pull/156882
Rust 调试体验调查 2026 结果
Rust 官方博客发布 2026 年调试调查结果。调查于 2 月进行,回收超过 2300 份回复;动机来自年度调查里调试体验长期靠后的反馈。
约 46% 受访者当前在用调试器,超过一半目前不为 Rust 使用调试器。除 print / dbg! 外,最常见是 IDE 内的 lldb;Linux 上命令行 gdb 略高于 IDE lldb。约 87% 用调试器逐步执行,一半多用于挂起/崩溃进程的栈回溯;只有约四分之一用于调试 async。约 44% 会在 Rust 与其它语言混用的程序上调试,其中 C 约占 70%。痛点方面:约 74% 提到值的展示差,约 55% 无法打印变量;步进问题里 async 约 28%、宏约 23%。标准库类型上常见抱怨是 enum 与集合(如 HashMap、Vec)。约 62% 的库作者不知道 debugger_visualizer 属性。文中列出后续重点:改进 enum/集合/字符串在调试器中的展示、async 栈与状态机步进、常见调试器的基础文档;并提到 GSoC 在加强 debuginfo / visualizer 测试。完整 PDF 报告在 rust-lang/surveys 仓库。
原文链接:https://blog.rust-lang.org/2026/09/07/rust-debugging-survey-2026-results/
电动滑板车固件逆向与 Rust 重写
作者 Ben 发文记录对 Egret GT 电动滑板车的硬件与固件逆向,并用 Rust 重写显示单元固件。车型宣传续航约 100 km,带 320×480 LCD 抬头显示速度、模式、电量与续航。
从手机 App 的蓝牙逻辑可见:可对显示板、控制器、按键板等路径做固件更新;还会传出模式时长、温度、电机电流、电池电压与充电历史等指标,部分里程/充电数据会关联车 ID 上报。显示单元 USB-C 口官方称只充电,实际有两根脚被用作不合规的 CAN 总线。作者用 ESP32-C6、SN65HVD230 与 MCP2515 搭嗅探/发送装置,记录启动与运行 CAN 帧,随后分析组件通信并编写自定义显示固件。文章发布于 2026-08-09。
原文链接:https://bensimms.moe/reverse-engineering-scooter
mbrotli:100% safe Rust 的 Brotli 编解码
mbrotli 是用 safe Rust 重写的 Brotli 压缩/解压库(非 C 包装)。生产代码 forbid(unsafe_code)(测试除外),SIMD 压缩走 fearless_simd;支持 quality 0–11,在等价流式设置下可与 Google Brotli v1.2.0 做逐字节对比。当前 crates.io 约 0.4.1,需要 Rust 1.89+。
API 覆盖一次性 Vec/slice、std::io::Read/Write 适配器、增量 session,以及可跨请求复用的工作区;并行压缩由调用方调度线程(库不自建线程池)。解码基准在记录机型上相对 Google C 中位约 3.1–3.7×;编码速度随 quality/负载在接近或超过 C 实现之间变化。另有实验性 Shared Brotli / RFC 9841 成帧能力(feature 门控)。仓库:https://github.com/Mnwa/mbrotli 。
原文链接:https://github.com/Mnwa/mbrotli
From Rust中文社区 Mike
社区学习交流平台订阅:
评论区
写评论还没有评论