Llançament de Nuitka 1.1, un compilador per al llenguatge Python

Hi ha disponible una versió del projecte Nuitka 1.1, desenvolupant un compilador per traduir scripts de Python a una representació C, que després es pot compilar en un fitxer executable mitjançant libpython per a la màxima compatibilitat amb CPython (utilitzant eines natives de CPython per manipular objectes). Compatibilitat total amb les versions actuals de Python 2.6, 2.7, 3.3 - 3.10. En comparació amb CPython, els scripts compilats mostren una millora del rendiment del 335% a les proves de pystone. El codi del projecte es distribueix sota la llicència Apache.

Entre els canvis de la nova versió:

  • S'han ampliat les possibilitats d'especificar la configuració en format Yaml.
  • S'han fet optimitzacions relacionades amb l'exclusió de components no utilitzats de la biblioteca estàndard (zoneinfo, concurrent, asyncio, etc.), que van permetre reduir la mida dels fitxers executables resultants.
  • S'ha afegit suport per a la sintaxi alternativa ("|") en les coincidències de patrons basades en l'operador "match" introduït a Python 3.10.
  • La compatibilitat amb jinja2.PackageLoader està assegurada.
  • S'ha implementat la capacitat de canviar la mida de l'atribut __defaults__.
  • S'ha afegit suport per a les funcions importlib.metadata.distribution, importlib_metadata.distribution, importlib.metadata.metadata i importlib_metadata.metadata.
  • S'ha afegit suport per incloure fitxers binaris addicionals al fitxer executable principal al mode de compilació Onefile.
  • Els mòduls compilats implementen la capacitat d'utilitzar la funció importlib.resources.files.
  • L'opció "--include-package-data" permet especificar màscares de fitxer, per exemple, "--include-package-data=package_name=*.txt".
  • Per a macOS, s'ha implementat suport per a la signatura digital de fitxers executables.
  • Es proporciona un mètode per als connectors per substituir les funcions de l'executable.
  • S'han ampliat les capacitats del connector anti-inflor, que ara es pot utilitzar per reduir el nombre de paquets quan s'utilitzen les biblioteques rich, pyrect i pytorch. S'ha implementat la capacitat d'utilitzar expressions regulars en regles de substitució.
  • S'han resolt els canvis regressius derivats d'optimitzacions importants implementades en l'última versió.

Font: opennet.ru

Afegeix comentari