Релиз Python 3.15

9 октября 2026 года состоялся релиз стабильной версии языка программирования Python 3.15, где экспериментальный JIT-компилятор стал быстрее, а также появился встроенный тип данных sentinel, кодировка UTF-8 по умолчанию, явный механизм «ленивого» импорта (lazy imports) для ускорения запуска скриптов, новый встроенный тип frozendict и файлы конфигурации для инициализации пакетов.

«Python 3.15.0 — это новейший мажорный выпуск языка программирования Python; он включает множество новых функций и оптимизаций по сравнению с Python 3.14, реализованных в 5643 коммитах от 1012 участников сообщества», — пояснили в команде проекта.

Поддержка этой ветки запланирована в течение полутора лет. Потом ещё три с половиной года для Python 3.15 будут выходить исправления с устранением уязвимостей. Выпуск Python 3.14 состоялся год назад.

Основные улучшения и изменения в Python 3.15:

  • улучшения интерпретатора:

    • добавлен встроенный тип sentinel;

    • Python теперь использует UTF-8 в качестве кодировки по умолчанию;

    • распаковка в генераторах (comprehensions);

    • явный отложенный импорт для ускорения запуска;

    • добавлен встроенный тип frozendict;

    • файлы конфигурации запуска пакетов ;

    • JIT-компилятор Python всё ещё находится на экспериментальной стадии, однако в версии 3.15 он стал значительно быстрее. Ожидается, что в среде Linux (x86-64) JIT-компилятор обеспечит прирост производительности в среднем (по геометрическому среднему) на 7–8% по сравнению со стандартным интерпретатором Python. Сообщается, что на системах macOS с архитектурой AArch64 JIT-компилятор работает на 11–12% быстрее интерпретатора с поддержкой tail-calling.

  • значительные улучшения стандартной библиотеки:

    • специализированный пакет для организации инструментов профилирования в Python;

    • Tachyon — высокочастотный статистический сэмплирующий профилировщик.

  • новые возможности системы типов:

    • TypedDict с типизированными дополнительными элементами;

    • аннотирование форм типов с помощью TypeForm;

    • непересекающиеся базовые классы в системе типов.

  • улучшения C API:

    • новый C API PyBytesWriter для создания объектов bytes в Python;

    • защита от финализации в C API;

    • стабильный ABI для сборок с поддержкой free-threading и соответствующий C API.

  • изменения в процессе сборки: указатели на кадры (frame pointers) включены по умолчанию, что улучшает возможности системного мониторинга и отладки;

  • изменения в выпуске:

    • официальные 64-битные бинарные файлы для Windows теперь используют интерпретатор с поддержкой tail-calling;

    • официальные бинарные файлы для macOS теперь по умолчанию включают поддержку free-threading.

  • текстовый квест от разработчика Barry Warsaw, посвященный новинкам Python 3.15:

Вы просыпаетесь в «Фойе запуска» (Startup Foyer) где-то внутри интерпретатора и прокладываете путь к «Вратам релиза» (Release Gate). По пути вам встретятся восемнадцать головоломок, и каждая из них основана на реальной функции Python 3.15, которую вам предстоит использовать на практике. Вы не просто отвечаете на скучные вопросы — вы пишете и запускаете код в интерпретаторе Python 3.15.

Для решения некоторых задач требуется проверка типов; в таких случаях ответы проверяются с помощью инструмента pyrefly (который добавлен в зависимости именно для этой цели), а вердикт содержит сообщение, выданное самой утилитой.

Проще всего запустить игру командой: uvx —python 3.15 whatsnewt

И да, здесь есть «пасхалки».

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев