Skip to content

When Will Python Add Rust Code? Rust for CPython Roadmap and Python 3.16 Timeline

Python programming

Purpose

I’ve been following the Rust for CPython project for a while. Many Python developers ask: when will Python actually include Rust code in CPython? The answer is clearer now - Python 3.16, not 3.15.

The Context

CPython has been written entirely in C since its inception. The Rust for CPython project aims to introduce Rust as an additional implementation language. Rust offers memory safety benefits without sacrificing performance. This is not about replacing Python syntax - it’s about improving the internal implementation of CPython itself.

I think this is a significant shift for Python’s development approach. Memory safety issues in C have caused vulnerabilities in Python’s past. Rust could address these at the language level.

Recent Progress

According to the official Python Insider announcement from April 2026, the project has made concrete progress:

  • Build system work completed for cross-platform compatibility
  • CI builds now pass on all tested platforms with Rust integration
  • Productive discussions with the Rust team about CPython integration needs
  • API design work started with public issues tagged api-design on GitHub

I find the build system milestone particularly important. Building CPython with Rust on multiple platforms is a prerequisite for any real integration. Without this, the project couldn’t proceed.

Why Python 3.16 Instead of 3.15

The decision to target 3.16 instead of 3.15 makes sense to me. Python 3.16 provides:

  • One full year to refine the reference implementation
  • Adequate time for PEP discussion and community feedback
  • Buffer for addressing integration challenges

PEP discussions in the Python community can be lengthy. Technical proposals need scrutiny from many contributors. Rushing this process risks poor decisions that affect Python for years.

The Roadmap Timeline

Here’s what I understand from the announced roadmap:

Rust for CPython Roadmap 2026
Timeline:
─────────────────────────────────────────────────────────────────────────────
March 2026 Build system work completed ✓
April 2026 API design planning, select extension module for Rust
May 2026 API design finalized, implementation begins
│ └── PyCon US sprint scheduled
June 2026 PEP writing begins
July 2026 PEP finalized and submitted for discussion
─────────────────────────────────────────────────────────────────────────────
May 2027 Python 3.16 Beta 1
October 2027 Python 3.16 Final Release

The roadmap shows steady progression from build infrastructure to actual implementation. I notice that the PEP submission in July 2026 aligns with giving roughly 10 months before the 3.16 beta in May 2027.

What This Means for Python Developers

For most Python developers, the immediate impact is minimal. Here’s what I understand:

  1. Rust API will remain internal initially - Not a public API for extension writers yet
  2. Later PEP will stabilize the API - A future proposal will make the API public
  3. Only one extension module in 3.16 - Proof of concept, not widespread Rust adoption
  4. Long-term benefits - Core performance and safety improvements over time

I think this measured approach is wise. Introducing Rust to one module first allows the team to learn from real implementation before expanding.

How to Get Involved

If you’re interested in contributing:

  • Join the Discord community
  • Attend weekly meetings
  • Check GitHub issues tagged api-design
  • Follow the Python Insider blog for updates

The project is open to community participation. API design discussions are public, so anyone can follow or contribute ideas.

Summary

In this post, I explained the Rust for CPython project roadmap. The key point is Python 3.16 will be the first version with Rust code, with PEP submission planned for July 2026. The build system work is complete, API design is underway, and one extension module will serve as proof of concept. This is a foundational change for Python’s development approach, even if the immediate impact on Python developers is limited.

Final Words + More Resources

My intention with this article was to help others share my knowledge and experience. If you want to contact me, you can contact by email: Email me

Here are also the most important links from this article along with some further resources that will help you in this scope:

Oh, and if you found these resources useful, don’t forget to support me by starring the repo on GitHub!

Comments