【Rust日报】2026-09-08 官方发布 Rust 调试调查结果

💡 原文中文,约2100字,阅读约需5分钟。
📝

内容提要

Rust官方发布2026年调试调查结果,超2300人参与。46%使用调试器,IDE内lldb最常用,87%用于单步执行。主要痛点是值展示差、无法打印变量,async调试困难。另有ply容器运行时、Minecraft WASM运行Rust的mod、drevo GUI框架等新项目介绍。

🔎

延伸解读

调试器使用现状与痛点

调查显示,超过46%的受访者当前使用Rust调试器,但超过一半的人不用,主要原因是日志/打印调试更快(约81%)。在使用的调试器中,IDE内lldb最常用,87%用于单步执行。主要痛点集中在值展示差(74%以上)和无法打印变量(超过55%),标准库中的enum、HashMap、Vec等类型被频繁点名。

async调试与混合语言调试的挑战

只有约四分之一的人调试async代码,而约28%的人在单步时遇到async相关问题。此外,约44%的开发者会调试Rust与其他语言混用的程序,其中C约占70%,C++约43%,Python约20%。这表明异步调试和跨语言调试是Rust调试体验中的薄弱环节,官方已将其列为优先改进方向。

debugger_visualizer属性认知度低

约62%的库作者尚不知道debugger_visualizer属性,该属性可用于自定义调试器中的值展示。这可能是导致值展示差痛点的一个因素。官方据此列出优先改进方向,包括enum变体展示、集合内容展示、字符串文本渲染、async栈与文档等,以提升整体调试体验。

Q&A

Rust 官方 2026 年调试调查的主要结果是什么?

调查于 2026 年 2 月进行,回收超过 2300 份回复。结果显示,超过 46% 的受访者当前在使用 Rust 调试器,但超过一半目前不用。主要痛点是值展示差(超过 74%)和无法打印变量(超过 55%)。

Rust 开发者最常用的调试器是哪些?

排除 print/dbg! 后,IDE 内 lldb 最常用,其次是命令行 gdb。在 Linux 上,gdb CLI 以微弱优势领先 IDE lldb;在 Windows、macOS 和 WSL 上,IDE lldb 至少领先 6%。

Rust 开发者使用调试器的主要用途是什么?

约 87% 的受访者使用调试器进行单步执行,略超一半用于从挂起或崩溃进程获取栈信息,只有约四分之一调试 async 代码。

Rust 开发者不使用调试器的原因是什么?

最常见的原因是日志/打印调试更快,约 81% 的受访者这么认为。

Rust 调试中最常见的痛点有哪些?

主要痛点是值展示差(超过 74%)和无法打印变量(超过 55%)。标准库中的 enum、集合(尤其是 HashMap 和 Vec)被频繁点名。此外,约 51% 在单步时遇到问题,async 和宏也分别有 28% 和 23% 的问题。

Rust 官方计划如何改进调试体验?

官方根据调查结果列出了优先改进方向,包括 enum 变体展示、集合内容展示、字符串文本渲染、async 栈与文档等。

ply 是什么?它有哪些特点?

ply 是一个用 Rust 写的 Linux 容器运行时与包管理器,目标是单机部署场景。它是一个约 5 MB 的静态二进制,无中心守护进程,应用以前台进程运行,日志进终端,信号与退出码直接回传。依赖模型接近 Cargo,使用 ply.toml 和 ply.lock。

Rusted Computer 是什么?它如何运行 Rust 程序?

Rusted Computer 是一个 Minecraft mod,在游戏内加入可编程计算机,通过 WASM 运行程序,因此理论上支持任何可编译到 WebAssembly 的语言,当前主要面向 Rust。WASM 运行时目前是 Java 实现的 Chicory。

drevo 框架的布局系统有什么特点?

drevo 是一个组件化的 Rust UI 框架,提供基于混合整数线性规划(MILP)的约束布局,思路接近 iOS Auto Layout。布局容器支持对齐、线性轴与网格,可以表达如“A 的高度等于 B 的宽度并填满屏幕”等约束。

🏷️

标签

➡️

继续阅读