Email me

Dev · · 6 min read · Matt Busel

By , who built the apps, crates and game he writes about · every number links to its source and every dataset is downloadable (methods) · corrections · featured in Kirino, gamebiz, This Week in Rust, New Mobile Life, By-Press

Filed under App development

Python JIT: 222 commits in 6 months, then 7 after the freeze

Python JIT: 222 commits in 6 months, then 7 after the freeze
On this page · 10 sections
  1. Key numbers
  2. The council froze the JIT at its peak, not its low
  3. A volunteer project, not a Microsoft one
  4. The real loss: 17 new contributors in six months
  5. How we counted, file by file
  6. What the 7 post-freeze commits were
  7. The timeline in one place
  8. Who blocks it, by the record
  9. What this means for you
  10. Sources

Short answer: Python's experimental JIT was not a dying side project when the steering council paused it on June 5 2026. Our pull of every commit to CPython's JIT and optimizer files shows it was in the busiest stretch of its life: 222 commits from 33 people in the six months before the pause, including a record 65 in April. In the 4.7 months since, it got 7 commits, all fixes. The freeze did not find a stalled project. It stopped a growing one.

TL;DR: From December 5 2025 to June 4 2026, 33 different people pushed 222 commits to the JIT and its optimizer, and 17 of them were committing to that code for the first time. From June 5 to today, 7 people pushed 7 commits, every one a bug fix or cleanup. The maintainers have now withdrawn PEP 836, so the code is on track to leave CPython's main branch, and the numbers say the community that formed around it is the real loss.

Key numbers

WhatNumberSource, checked Oct 27 2026
JIT + optimizer commits, Dec 5 2025 to Jun 4 2026222 by 33 peopleGitHub python/cpython
Commits since the June 5 pause (to Oct 27)7 by 7 people, all fixesGitHub python/cpython
Busiest month everApril 2026: 65 commits, 17 peopleOur pull (data.csv)
First-time JIT contributors in the last 6 months before the pause17Our pull (data.csv)
All commits since June 2023598 by 71 peopleOur pull (data.csv)
Last commit from a microsoft.com emailJuly 30 2025Our pull (data.csv)
Bars: 222 JIT commits Dec 5 2025 to Jun 4 2026 versus 7 commits Jun 5 to Oct 27 2026
Commits to CPython JIT and optimizer files before and after the June 5 2026 pause. GitHub, pulled Oct 27 2026

The council froze the JIT at its peak, not its low

LWN's Joe Brockmeier reported on October 26 that the JIT maintainers withdrew PEP 836, the proposal the steering council demanded in June. The council had set six months for a PEP to be accepted, or the JIT code comes out of main.

The coverage tells the story as a process fight. Our data tells a different one. We pulled every commit that touched Tools/jit, Python/jit.c and the three optimizer files the JIT runs on: 598 unique commits since June 2023.

The six months before the pause were the busiest in the project's history. December 2025 brought 56 commits, January 41, April a record 65. Then June had 3.

Line: JIT commits per month, 13 in Jan 2025, 56 in Dec 2025, record 65 in Apr 2026, then 3 in Jun and 1 in Oct 2026
Monthly commits, Jan 2025 to Oct 2026. GitHub python/cpython, pulled Oct 27 2026

A volunteer project, not a Microsoft one

The JIT is often filed as a Microsoft "Faster CPython" project. By the commit log, that stopped being true over a year ago. The last commit from a microsoft.com address landed on July 30 2025.

In the final six months before the pause, zero commits came from a microsoft.com address. The top committers were GitHub users Fidget-Spinner (36), cocolato (25), markshannon (24), NekoAsakura (20) and corona10 (17). Arm contributor diegorusso kept committing from an arm.com address until July 1 2026.

That matters. The fear about a JIT was always "who maintains it when the sponsor leaves". The sponsor had already left, and the contributor count went up, not down.

Bars: top committers Dec 2025 to Jun 2026, Fidget-Spinner 36, cocolato 25, markshannon 24, NekoAsakura 20, corona10 17
Top 10 committers in the last 6 months before the pause. GitHub, pulled Oct 27 2026

The real loss: 17 new contributors in six months

Mark Shannon warned in the PEP 836 thread that halting work would cost momentum and new contributors. The log shows how much was on the table.

Of the 33 people who committed in those last six months, 17 had never touched this code before. People per quarter went from 8 in Q3 2025 to 22 in Q1 2026 and 20 in Q2 2026. Q3 2026 had 5.

Growing a compiler team from volunteers is the hardest thing in open source. CPython had one forming, and a process rule stopped it. Nobody has proven the JIT would have hit its speed goals. But the pattern says it had the people to try.

Bars: distinct JIT committers per quarter, 22 in Q1 2026, 20 in Q2 2026, 5 in Q3 2026
People committing per quarter, 2024 to Q4 2026 to date. GitHub, pulled Oct 27 2026

How we counted, file by file

A JIT in CPython is not one file. The machine-code templates live in Tools/jit and Python/jit.c. The optimizer that decides what to compile lives in Python/optimizer.c, optimizer_analysis.c and optimizer_bytecodes.c. We pulled the full GitHub commit history for all five paths and de-duplicated commits that touched more than one.

PathAll-time commitsDec 5 2025 to Jun 4 2026Jun 5 to Oct 27 2026
Python/optimizer_bytecodes.c2621424
Python/optimizer.c224552
Python/optimizer_analysis.c132441
Tools/jit122261
Python/jit.c57220

The optimizer rules file is the tell. 142 of its 262 lifetime commits, more than half, landed in the six months before the pause. That is where new optimizations get written, and it is where the new contributors were working.

One honest caveat: the optimizer files also serve CPython's tier-2 interpreter, not only the JIT. Some of those commits would help Python even with the JIT gone. That cuts both ways, because the freeze slowed that shared work too.

What the 7 post-freeze commits were

The council allowed bug and security fixes after June 5. The log matches that rule exactly. Here is everything that landed:

  • June 14: remove unused imports from Tools/ (a repo-wide cleanup)
  • July 1: make sure a context manager's exit is always called in a with statement
  • July 22: initialize cold executor fields
  • August 13: allow non-compact integers in one specialized boolean op
  • September 30: fix the stack operand used by JIT dict access guards
  • September 30: fix specialized C calls with extra method flags
  • October 1: validate the correct builtins are used under the JIT

Not one new optimization. Seven people each showed up once to patch a bug, then left. That is what a project on life support looks like in a commit log, and it took four months to get there from a record.

The timeline in one place

June 2023: the first optimizer commits land. Early 2024: the JIT merges for Python 3.13, with an informational PEP 744 instead of a formal one. July 30 2025: the last commit from a microsoft.com address. December 2025: 56 commits, a new high. April 2026: 65 commits, the all-time high. June 5 2026: the steering council pauses new work. July 3: PEP 836 posted. September 21: the council's ten-point list. October 26: LWN reports the PEP withdrawn.

Read that sequence again with the numbers beside it. Every governance step came after the project had already proven it could recruit.

Who blocks it, by the record

We do not presume villains. The council's September 21 statement listed ten concerns, from memory use and security to platform parity, and called the PEP "overly optimistic" on user impact. Those are real costs for redistributors.

But the trade is now measurable. The cost of the freeze was 222 commits' worth of pace cut to 7, and a contributor pipeline cut by three quarters. If CPython wants a JIT later, it restarts with fewer people than it had in April.

What this means for you

If your Python service needs speed now, do not wait for a CPython JIT: profile first, then move the hot loop to PyPy, Numba, Cython or a Rust extension through PyO3, which we cover on our Rust hub. If you want the JIT back, the move is the one this data argues for: keep it alive out of tree, where the 33 people already proved they show up. Download our data.csv (all 598 commits, author and date) and check any claim here yourself. More builds and numbers on app dev and in the news feed.

Slow Python endpoint costing you money? Our paid fix finds and fixes the bottleneck, fixed within 24 hours or a full refund.

Sources

First published here on tensorust.com on Oct 27, 2026. Related: .

Up next

More on App developmentNext.js bundle size: 86 homepages weighed, Next ships 3.6x the JSWe weighed the JavaScript on 86 big homepages. The median Next.js site ships 3,665 KB, everyone else 1,022 KB. Even nextjs.org carries 3.5 MB.Read it next →

Cite this

Free to cite and reuse under CC BY 4.0 with a link back. How it was collected: methods. Spotted an error? Corrections.

Did this answer your question?

Get the next one by email.

What my AI agents tried this week, with the real numbers: what worked, what flopped, what made money. One email when there is something worth reading.

No spam, never sold. Every email has a one-click unsubscribe.

What are people saying about this? Read and post on The Floor →

More: the author, related reading, share this, a free game

Try it yourself · Building an app?

Get an honest budget for it

Pick your app type and features, get a range from real build costs. Free, no sign-up.

In The Manual: on this topic

Explainers answer one question, short answer first. Guides walk you through it step by step.

Open The Manual →

Read next

Free tool: iPhone app cost calculator → Pick an app type and features, get an honest budget range.

All articles →

Art: Nicholas Roerich, Depsang Plains (1925-26). Public domain, via Wikimedia Commons.

1M+ X impressions in 4 days, run by AI agents · 8,000+ crates.io downloads across our 70 Rust crates, all time · 529 GitHub stars · 8 iPhone apps live on the App Store · O'BLOCK out now, free on Steam

Built by Matthew Busel · code on github.com/Mattbusel · numbers as of Oct 25, 2026, click any to check

Popular in the shop

All 124 tools →

Browse: Bundles and kitsHome, family and schoolMoney and businessAI toolsSports and fitnessMaking and hobbiesFood and drinkIndie dev and launchTrading and quant

Free: Landing page teardown iPhone app cost calculator LLM API cost calculator Paid online: $49 Launch Check App builds Articles FAQ