【Rust日报】2026-10-12 热门 crate 里 65% 仍低于 1.0

💡 原文中文,约2200字,阅读约需6分钟。
📝

内容提要

分析前1000个热门Rust crate发现,65%的最高版本仍低于1.0,许多crate长期未更新但下载量巨大。另有文章讨论supertrait义务应由impl还是调用方证明,结论倾向模块化证明。proofs.rs网站登记Rust形式化验证结果,支持Kani和Creusot。TokioConf 2027征稿截止2026年11月30日。

🔎

延伸解读

低于 1.0 不等于不成熟

文章统计显示,前 1000 个热门 crate 中 65% 最高版本仍低于 1.0,但其中不少已长期未更新,如 fnv 上次发布是 2020 年 5 月,近 90 天仍有 1.83 亿次下载。作者将这类归为“已经做完”。这说明版本号低于 1.0 并不直接代表质量差或维护停滞,读者应结合下载量、更新时间和实际使用情况判断,而非仅看版本号。

supertrait 义务的归属之争

Niko Matsakis 的文章比较了 supertrait 义务的两种证明方式:模块化证明要求 impl 自身证明 supertrait 成立,外部证明则把义务推给调用方。文章以 trait Magic: Copy 为例,模块化下 impl Magic for String 不合法,外部证明下 impl 可写但调用处编不过。结论倾向模块化证明,并指出 unsafe trait 若 impl 不可单独信任,调用方的信任也会落空。

proofs.rs 的定位与限制

proofs.rs 是公开登记 Rust crate 形式化验证结果的网站,按 crate 和 API 列出报告,写明验证性质并链接到存放验证代码和证据的 GitHub 仓库。目前 cargo-proofs 支持 Kani 和 Creusot,示例包括 itoa 1.0.18 的功能正确性等。但站点明确不给 crate 发安全认证,且处于早期 beta,读者应将其视为参考信息而非权威保证。

TokioConf 2027 征稿要点

TokioConf 2027 将于 2027 年 4 月 26 日至 27 日在俄勒冈州波特兰 The Armory 举行,征稿截止时间为 2026 年 11 月 30 日 23:59 太平洋时间。征稿范围包括用 Rust 和 Tokio 做产品、设计与架构、测试与验证、性能,以及 AI 与 Rust。有意投稿者需注意截止时间,并通过指定提交页提交。

❓

Q&A

前1000个热门Rust crate中,有多少比例的最高版本仍低于1.0?

根据对crates.io API拉取的按历史下载量排序的前1000个crate的分析,其中649个(即65%)的最高版本仍低于1.0。

为什么有些Rust crate长期不更新但下载量依然很高?

作者将长期没有新版本的crate归为“已经做完”这一类。例如fnv上次发布是2020年5月,但近90天仍有1.83亿次下载;same-file、ident_case、hex等也有类似情况。这些crate功能稳定,无需频繁更新。

supertrait义务应该由impl还是调用方来证明?

Niko Matsakis的文章讨论了两种做法:模块化证明要求impl自己证明supertrait成立;外部证明则将义务交给调用方。文章结论是supertrait义务应按模块化证明处理,即impl必须能证明supertrait成立。

proofs.rs是什么网站?它提供哪些功能?

proofs.rs是一个公开登记Rust crate形式化验证结果的网站。它按crate和API列出验证报告,写明验证了哪些性质,并链接到存放验证代码和证据的GitHub仓库。每份报告有评论区,但站点不给crate发安全认证。目前支持Kani和Creusot工具,处于早期beta阶段。

TokioConf 2027的征稿截止日期是什么时候?

TokioConf 2027的征稿截止时间是2026年11月30日23:59太平洋时间。会议将于2027年4月26日至27日在俄勒冈州波特兰的The Armory举行。

proofs.rs目前支持哪些形式化验证工具?

proofs.rs目前支持Kani和Creusot两种形式化验证工具。用户可以通过cargo-proofs提交验证结果。

🏷️

标签

➡️

继续阅读