PyPy v8.0.0 is a major release that ships interpreters for Python 2.7, Python 3.11, and Python 3.12 (3.12 provided as beta quality). The major-version bump follows a move of Linux buildbots to manylinux_2_28 images (AlmaLinux 8) using glibc 2.28 and gcc 14, so prebuilt tarballs now require glibc≥2.28. A key compatibility advance is support for the cp312-abi3 limited ABI: PyPy hides its PyObject extension field (ob_pypy_link) inside a prefix so its C headers match CPython’s when Py_LIMITED_API=0x030C0000, and PyPy no longer mangles limited-API function names. Import machinery and external tooling (pip, uv, etc.) still need to accept abi3 wheels, and the team is collaborating with Cython and PyO3 to smooth adoption.
Implementation-side changes include incremental RPython code-generation improvements - computed gotos, more aggressive inlining, and source comments mapping generated C back to RPython - yielding modest interpreter speedups. The internal HPy backend has been dropped as the default but remains toggleable in the source. A clang-based pyhdrdump tool was revived to compare PyPy and CPython headers. Binary builds cover major x86 and aarch64 platforms, with other architectures supported by downstream packagers or sponsor-funded builds. The release urges library maintainers to provide CFFI-compatible interfaces or use upcoming cp312-abi3 wheels, links to the full changelog, and an open invitation to contribute.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.