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

ДоступСн выпуск ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° 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