• Sources: PyPy release post, HN discussion
  • Summary: The release dated 2026-09-19 adds Python 3.12 support at beta quality alongside 2.7 and 3.11, raises the Linux tarball floor to glibc 2.28 through manylinux_2_28, which is why the major version moved, drops the internal HPy backend behind a build option, and marks 3.11 as the last release of that line barring security fixes. For packaging, PyPy now hides its ob_pypy_link extension field behind a prefix so PyObject matches CPython's layout under Py_LIMITED_API=0x030C0000, and it no longer mangles limited-API exports, so PyTuple_New is exported under its own name instead of PyPyTupleNew. The goal is installing cp312-abi3 wheels built for CPython, and it is not usable yet, because the import machinery must still accept abi3.so objects and pip and uv must still treat those wheels as candidates.
  • Why it matters: Reusing CPython abi3 wheels would remove the main packaging reason extension-heavy projects skip PyPy, once the import and installer changes land.
  • Follow-up: Track whether PyPy import machinery, pip and uv accept cp312-abi3 wheels on PyPy.

send feedback on this story