[IND] 5 min readOraCore Editors

Python’s JIT future hangs on a new PEP

4 things Python developers need to know about the JIT pause, the six-month clock, and what it means for Python 3.15.

Share LinkedIn
Python’s JIT future hangs on a new PEP

Python’s JIT compiler is on hold until the project gets a new PEP.

The Python steering council has put the JIT compiler project in limbo, and the outcome matters because Python 3.15 had already promised an 8-9 percent geometric mean speedup on x86-64 Linux. Here are the four most important takeaways for developers following the debate.

ItemStatusKey number
Python 3.15 JITExperimental, paused8-9% speedup
Deadline to actPEP required6 months
Default settingDisabledPYTHON_JIT=1
Release timingFeature-frozenOctober

1. The JIT is no longer moving forward in main

Get the latest AI news in your inbox

Weekly picks of model releases, tools, and deep dives — no spam, unsubscribe anytime.

No spam. Unsubscribe at any time.

The steering council has asked for a suspension of new JIT development in Python’s main branch until a new PEP is created and accepted. Bug fixes and security fixes can still land, but feature work is effectively frozen for now.

Python’s JIT future hangs on a new PEP

That is a major shift for a project that had been treated as one of the headline additions to Python 3.15. If no approved proposal arrives within six months, the current JIT code is expected to be removed from main.

  • New feature work: paused
  • Bug and security fixes: allowed
  • Removal trigger: no approved PEP in 6 months

2. Python 3.15’s speed claim is still real, but experimental

The JIT was expected to help Python 3.15 deliver an 8-9 percent geometric mean performance improvement over standard CPython on x86-64 Linux. That number is one reason the announcement caught people off guard.

But the compiler is still experimental and disabled by default. To use it, developers have to set PYTHON_JIT=1 in the environment, which keeps the feature opt-in rather than part of the normal runtime path.

  • Target platform: x86-64 Linux
  • Reported gain: 8-9% geometric mean
  • Default state: off
  • Enablement: environment variable

3. The process complaint is about more than paperwork

The council says the JIT should not have been merged without a proper PEP for a change of this scope. The existing PEP 744 is informational, and the council says it leaves open questions that need clearer answers before the project can keep advancing.

Python’s JIT future hangs on a new PEP

Those questions include who maintains the JIT, how it fits with CPython tooling, what success looks like, and how it relates to third-party JIT efforts. In other words, the issue is not just approval mechanics, but whether the project has a stable long-term shape.

  • Maintenance ownership
  • Tooling compatibility
  • Success metrics
  • Relationship to other JITs

4. The JIT team wants time, not a reset

Key contributor Mark Shannon said stopping all development until a PEP is accepted puts the team in an awkward position, because it creates pressure to write a new proposal quickly without enough time for community discussion. He said a new PEP was already planned for later this year, when the performance case would be stronger.

Shannon also warned that a moratorium could slow momentum and cost the project new contributors. He said working in a fork would be difficult because the optimization machinery creates large code differences that are hard to manage.

  • Requested grace period: one to two months
  • Risk named by Shannon: loss of momentum
  • Forking concern: large code divergence

5. The likely compromise is a more general JIT infrastructure

Steering council member Pablo Galindo Salgado said the goal is not to force competing proposals, but he did point toward a JIT infrastructure that can support multiple implementation strategies. That hints at a preference for a less tightly coupled design.

Another council member, Donghee Na, said the current experimental JIT needs an official PEP and that this is a good time to review different approaches. Thomas Wouters added that the six-month deadline has some flexibility, though he stressed that the work needs to be taken seriously.

  • Possible direction: shared JIT infrastructure
  • Design preference: less coupling to one strategy
  • Deadline: flexible, not imaginary

How to decide

If you care about near-term Python speedups, watch the PEP process and the six-month clock. If you care more about long-term maintainability, the council’s concerns about ownership, tooling, and success criteria are the real story.

For users, the practical answer is simple: the JIT is still experimental, still off by default, and still not something most deployments need to touch today. For CPython contributors, the next PEP will decide whether this becomes a supported path or a cautionary tale.