【Rust日报】2026-08-28 Jess Izen 出任 Foundation Engineer in Residence
内容提要
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 的退化顶点,基于最近邻查询,各点重建可并行。