03.02.2023

Выпуск Nuitka 1.2, компилятора для языка Python

Доступен выпуск проекта Nuitka 1.2, развивающего компилятор для трансляции скриптов на языке Python в представление на языке C, которое затем можно скомпилировать в исполняемый файл, использующий libpython для обеспечения максимальной совместимости с CPython (используются штатные средства CPython для управления объектами). Обеспечена полная совместимость с актуальными выпусками Python 2.6, 2.7, 3.3 — 3.10. По сравнению с CPython скомпилированные скрипты демонстрируют в тестах pystone повышение производительности на 335%. Код проекта распространяется под лицензией Apache.

Среди изменений в новой версии:

  • Обеспечен вывод ошибки при попытке использования с версией Python 3.11, которая ещё в полной мере не поддерживается. Для обхода данного ограничения предложен флаг «—experimental=python311».
  • Для macOS добавлена опция «—macos-sign-notarization» для заверения по цифровой подписи, упрощающая создания подписанных приложений для Apple App Store. Внесены оптимизации ускоряющие запуск.
  • В скомпилированные функции добавлены атрибуты «__compiled__» и «__compiled_constant__», которые могут использоваться в прослойках, подобных pyobjc, для генерации более оптимального кода.
  • Расширены возможности плагина anti-bloat, который теперь может применяться для уменьшения числа пакетов при использовании библиотек xarray и pint.
  • Добавлена большая порция новых оптимизаций и проведена работа по улучшению масштабируемости. Реализовано кэширвоание содержимого каталогов при сканировании модулей.

Источник: https://www.opennet.ru/opennews/art.shtml?num=58202 Источник.