Dostępna jest wersja projektu Nuitka 1.2, rozwijającego kompilator do translacji skryptów w języku Python na reprezentację w języku C, którą następnie można skompilować do pliku wykonywalnego wykorzystującego libpython w celu zapewnienia maksymalnej kompatybilności z CPython (używane są natywne narzędzia CPython do zarządzania obiektami). Zapewniona jest pełna zgodność z aktualnymi wersjami Pythona 2.6, 2.7 oraz 3.3 – 3.10. W porównaniu do CPython, skompilowane skrypty wykazują w testach pystone wzrost wydajności o 335%. Kod projektu jest dystrybuowany na licencji Apache.
Wśród zmian w nowej wersji:
- Zapewniono wyjście błędu podczas próby użycia z wersją Pythona 3.11, która jeszcze nie jest w pełni wspierana. Aby obejść to ograniczenie, zaproponowano flagę „—experimental=python311”.
- Dla macOS dodano opcję „—macos-sign-notarization” do cyfrowego podpisywania, co ułatwia tworzenie podpisanych aplikacji dla Apple App Store. Wprowadzone optymalizacje przyspieszają uruchamianie.
- Do skompilowanych funkcji dodano atrybuty „__compiled__” oraz „__compiled_constant__”, które mogą być używane w pośrednikach, takich jak pyobjc, do generowania bardziej optymalnego kodu.
- Rozszerzono możliwości wtyczki anti-bloat, która teraz może być używana do zmniejszenia liczby pakietów przy korzystaniu z bibliotek xarray i pint.
- Dodano szereg nowych optymalizacji oraz przeprowadzono prace nad poprawą skalowalności. Zrealizowano cachowanie zawartości katalogów podczas skanowania modułów.
Źródło: opennet.ru
