【Rust日报】2026-08-28 Jess Izen 出任 Foundation Engineer in Residence

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

内容提要

Rust基金会任命Jess Izen为驻场工程师,她将全职支持Rust基础设施与维护者,重点改进crates.io对恶意包和供应链威胁的防护。另报道macOS上过大的target目录导致reqwest TLS校验超时,以及closed-trait和vertex_enumeration两个新crate的功能介绍。

🔎

延伸解读

驻场工程师岗位的定位与影响

Rust基金会设立Engineer in Residence岗位,旨在加强共享基础设施与维护者支持,且不占用Maintainers in Residence等带薪岗位的资金。Jess Izen在AWS负责内部crates.io镜像,其经验有助于改进crates.io对恶意包和供应链威胁的防护。该岗位由基金会领导层指导,但Jess仍保持AWS员工身份,可能涉及多方协作。

crates.io安全改进方向

文章指出,驻场工程师的重点之一是增加发布前恶意crate检查,将可疑包送入隔离队列并由人工复核。这意味着未来crates.io可能引入更严格的发布流程,以应对供应链攻击。但具体实施细节尚未确定,后续可能会有Project Goal或pre-RFC,值得关注。

macOS上target目录过大的性能陷阱

在macOS上,启用rustls时证书校验依赖rustls-platform-verifier,会查找进程Info.plist,若缺失则遍历二进制所在目录。当target/debug/deps包含大量文件时,同步校验可能耗时超过10秒,导致连接超时。此问题可通过清理target目录缓解,但根本解决需关注rustls-platform-verifier的查找逻辑。

closed-trait与enum_dispatch的差异

closed-trait将实现者列表视为完整集合,并生成enum与match宏,支持穷尽匹配。与enum_dispatch相比,它不强制为enum生成转发impl,因此更适合有关联类型、无法统一返回类型的场景。但要求实现者集合固定且小,否则维护成本高。

Q&A

Jess Izen 在 Rust 基金会的新职位是什么?她的主要工作方向是什么?

Jess Izen 被任命为 Rust 基金会的 Engineer in Residence,未来一年全职加入基金会工程团队,工作方向由基金会领导层指导。她的主要工作方向是加强 Rust 共享基础设施、社区库与维护者支持,重点改进 crates.io 对恶意包和供应链威胁的防护。

Jess Izen 在担任 Engineer in Residence 之前有哪些相关经验?

Jess 是 Rust Project t-funding-advisors 成员,参与建立 Rust Commercial Network,并维护 axum、tower-http、dial9 等 crate。在 AWS Rust 语言团队,她负责运营 Amazon 内部 crates.io 镜像与开源库/工具;此前在 AWS WAF 用 Rust 做反 DDoS 与 bot 控制。

Rust 基金会计划如何改进 crates.io 以应对供应链威胁?

计划增加发布前恶意 crate 检查,将可疑包送入隔离队列并由人工复核。后续预计会有 Project Goal 和/或 pre-RFC。

macOS 上过大的 target 目录为什么会导致 reqwest TLS 校验超时?

启用 rustls 时默认使用 rustls-platform-verifier,证书校验交给宿主 OS。macOS 会查找进程 Info.plist;普通测试二进制没有该文件时,会遍历二进制所在目录。测试产物在 target/debug/deps,长期编译后约有 75 万个文件,每次新建 client 时同步证书校验遍历该目录超过 10 秒,导致连接超时。

closed-trait crate 的主要功能是什么?它解决了什么问题?

closed-trait 面向实现者集合小且固定的 trait,通过 #[closed_trait::sealed(...)] 和 #[closed_trait::enumerate(match_any)] 在定义处写下实现者列表,生成 enum 和 match 宏,支持对具体类型穷尽 match。它解决了既要按 trait 写泛型代码又要对具体类型穷尽 match 的问题。

vertex_enumeration crate 提供了哪些算法?它们各自有什么特点?

vertex_enumeration 提供两种算法:作者自研方案渐近更慢但更稳健;另一方案受 Voro++ 启发,可处理 valence > 3 的退化顶点,基于最近邻查询,各点重建可并行。

🏷️

标签

➡️

继续阅读