Доступний випуск проекту Nuitka 1.1, що розвиває компілятор для трансляції скриптів мовою Python у виставу мовою C, яку потім можна скомпілювати у виконуваний файл, що використовує libpython для забезпечення максимальної сумісності з CPython (використовуються штатні засоби CPython для управління об'єктами). Забезпечено повну сумісність з актуальними випусками Python 2.6, 2.7, 3.3 - 3.10. У порівнянні з CPython скомпіловані скрипти демонструють у тестах pystone підвищення продуктивності на 335%. Код проекту розповсюджується під ліцензією Apache.
Серед змін у новій версії:
- Розширено можливості завдання конфігурації у форматі Yaml.
- Внесені оптимізації, пов'язані з виключенням невикористовуваних компонентів стандартної бібліотеки (zoneinfo, concurrent, asyncio тощо), які дозволили домогтися зменшення розміру файлів, що виконуються.
- Додано підтримку альтернативного синтаксису («|») в порівнянні зі зразком на основі оператора «match», що з'явився у гілці Python 3.10.
- Забезпечена сумісність із jinja2.PackageLoader.
- Реалізовано можливість зміни розміру атрибуту __defaults__.
- Додана підтримка функцій importlib.metadata.distribution, importlib_metadata.distribution, importlib.metadata.metadata та importlib_metadata.metadata.
- У режим компіляції в один файл (Onefile) додано підтримку включення до основного виконуваного файлу додаткових бінарних файлів.
- У скомпілованих модулях реалізовано можливість використання функції importlib.resources.files.
- У опції «-include-package-data» дозволено вказівку масок файлів, наприклад, «-include-package-data=package_name=*.txt».
- Для macOS реалізовано підтримку засвідчення виконуваних файлів цифровим підписом.
- Для плагінів надано метод для перевизначення функцій для файлу, що виконується.
- Розширено можливості плагіна anti-bloat, який тепер може застосовуватися для зменшення кількості пакетів при використанні бібліотек rich, pyrect та pytorch. Реалізовано можливість використання регулярних виразів у правилах заміни.
- Усунуто регресивні зміни, які стали наслідком значних оптимізацій, реалізованих у минулому випуску.
Джерело: opennet.ru