据Slashdot报道,在今年的Python语言峰会上,软件工程师David Hewitt代表Rust for CPython项目团队介绍了将Rust引入CPython的设想、时间表和成功标准,并讨论该项目如何推进并最终成为CPython的永久组成部分。Python安全开发者驻地Seth Larson在报道中称,去年没有人说“不要这样做”;在PyCon US 2025试探水温后,Hewitt此次回到峰会,询问Python核心开发者希望从Rust得到什么。
Hewitt充当Rust for CPython项目的“大使”。该项目团队目前由核心开发者Kirill Podoprigora和Emma Smith领导,两人也是Rust for CPython PEP草案的作者;Emma还在PyCon US 2026上介绍了这一项目。团队在Discord频道中约有60名开发者,其中包括少数Python核心开发者和一个来自Rust项目的代表团。团队拥有将Rust集成到既有代码库的经验,例如Android和Linux内核,并表示对这项工作感到兴奋,如果项目推进,愿意提供支持。
David Hewitt说明了Rust可能如何具体帮助CPython:被标记为“type-crash”的问题数量一直在稳步上升。他提到,Jeff Vander Stoep将Android采用Rust描述为“快速行动并修复问题”,而Android自采用Rust以来,同等大小的补丁需要更少的修订次数。
一年前最大的担忧之一是,与CPython相比,Rust的平台支持不足。CPython当时官方以一级、二级或三级支持20种不同架构和平台。Hewitt表示,Rust对不同平台的支持自去年以来已经扩大,正变得“越来越不令人担忧”。提案建议请Python发行版在Python 3.16(2027年10月)中尝试使用可选的Rust支持,并将平台特定问题报告给上游,以便在Python 3.17(2028年10月)时间线前后得到解决。
按照设想,首批随Python发布的Rust代码将出现在Python 3.16(2027年10月),但它是完全可选的,现有C代码会保留为后备。Rust最早成为构建CPython的必需条件,要等到2029年的Python 3.18,距今至少还有三年。
Rust for CPython团队已选择zlib模块作为第一个获得可选Rust实现的模块,因为他们希望在“小范围”内实现“显著改进”。拟议的Rust实现将使用zlib-rs;该项目已被Firefox、uv和Cargo大量测试和使用,并且在许多平台上比zlib和zlib-ng更快。这一小改动会产生实际影响:zlib压缩算法被Python打包广泛使用,如果提案被接受,Python 3.16中几乎每次pip install都会加速。