PyPy: Выпуск PyPy v8.0.0 Заметка
Planet Python на русском

PyPy: Выпуск PyPy v8.0.0

PyPy выпустил версию 8.0.0, что знаменует собой значительное обновление. Этот релиз включает поддержку Python 2.7, Python 3.11 и бета-версию Python 3.12. Сборочные боты Linux были обновлены для использования образов manylinux_2_28, теперь требующих glibc2.28. Важным нововведением является новая модель C-слоя PyPy, нацеленная на совместимость с ограниченным ABI CPython для колес. Это обновление скрывает специфичные для PyPy расширения в модулях C-расширений, приводя заголовки PyPy в соответствие с заголовками CPython при использовании ограниченного API. Хотя импортный механизм и инструменты экосистемы все еще нуждаются в полном распознавании объектов abi3.so, предпринимаются усилия с Cython и PyO3 для обеспечения бесшовной интеграции. Генерация кода RPython получила улучшения, включая вычисляемые переходы и более агрессивное встраивание, хотя прирост производительности скромный. Внутренний бэкенд HPy был удален, так как он не получил достаточной поддержки. Возрожденный инструмент pyhdrdump доступен для сравнения файлов заголовков PyPy и CPython. Релиз предлагает три интерпретатора: PyPy2.7, PyPy3.11 (который будет последним для этой версии) и PyPy3.12 beta. PyPy — это быстрая, прямая замена CPython, использующая трассирующий JIT-компилятор. Бинарные сборки доступны для различных распространенных архитектур, а поддержка большего числа платформ предоставляется сторонними упаковщиками.