Saadaval on Nuitka 1.1 projekti väljalase, mis arendab kompilaatorit Pythoni skriptide tõlkimiseks C-esitusse, mille saab seejärel libpythoni abil CPythoniga maksimaalse ühilduvuse tagamiseks (kasutades objektide manipuleerimiseks natiivseid CPythoni tööriistu) täitmisfailiks kompileerida. Täielik ühilduvus Pythoni versioonide 2.6, 2.7, 3.3 – 3.10 praeguste väljalasetega. Võrreldes CPythoniga näitavad kompileeritud skriptid Pystone'i testides 335% jõudluse paranemist. Projekti koodi levitatakse Apache litsentsi all.
Uue versiooni muudatuste hulgas:
- Laiendatud on Yaml-vormingus konfiguratsiooni määramise võimalused.
- Tehtud on optimeerimisi seoses standardteegi kasutamata komponentide (zoneinfo, concurrent, asyncio jne) välistamisega, mis võimaldas vähendada tekkivate käivitatavate failide suurust.
- Lisatud on alternatiivse süntaksi ("|") tugi mustrite vastetes Python 3.10-s kasutusele võetud operaatori "match" alusel.
- Ühilduvus jinja2.PackageLoaderiga on tagatud.
- Rakendatud on võimalus muuta atribuudi __defaults__ suurust.
- Lisatud on funktsioonide importlib.metadata.distribution, importlib_metadata.distribution, importlib.metadata.metadata ja importlib_metadata.metadata tugi.
- Onefile'i kompileerimisrežiimile on lisatud tugi täiendavate binaarfailide lisamiseks põhikäivitusfaili.
- Koostatud moodulid rakendavad funktsiooni importlib.resources.files kasutamise võimalust.
- Valik "--include-package-data" võimaldab määrata failimaske, näiteks "--include-package-data=package_name=*.txt".
- MacOS-i jaoks on rakendatud käivitatavate failide digitaalallkirjastamise tugi.
- Pluginate jaoks on ette nähtud meetod käivitatava faili funktsioonide alistamiseks.
- Laiendatud on anti-bloat plugina võimalusi, mida saab nüüd kasutada pakettide arvu vähendamiseks rikaste, pyrecti ja pytorchi teekide kasutamisel. Rakendatud on võimalus kasutada asendusreeglites regulaaravaldisi.
- Viimases versioonis rakendatud olulistest optimeerimistest tulenevad regressiivsed muudatused on lahendatud.
Allikas: opennet.ru