Liberasyon Nuitka 2.0, yon du pou lang Python

Gen yon lage nan pwojè Nuitka 2.0 ki disponib, ki devlope yon du pou tradui scripts Python nan yon reprezantasyon C, ki ka Lè sa a, dwe konpile nan yon dosye ègzèkutabl lè l sèvi avèk libpython pou maksimòm konpatibilite ak CPython (itilize zouti natif natal CPython pou jere objè). Bay konpatibilite konplè ak degaje aktyèl Python 2.6, 2.7, 3.3 - 3.11. Konpare ak CPython, scripts konpile montre yon amelyorasyon pèfòmans 335% nan tès pystone. Kòd pwojè a distribye anba lisans Apache.

Pami chanjman ki fèt nan nouvo vèsyon an:

  • Te ajoute kapasite nan sèvi ak varyab nan konfigirasyon pake, ki pèmèt ou rechèch valè soti nan pakè enstale nan tan konpile epi sèvi ak valè sa yo defini backend la. Sipò pou varyab nan konfigirasyon an pèmèt ou rezoud anpil travay nan fason estanda ki te deja oblije konekte grefon.
  • Te ajoute sipò pou paramèt itilizatè defini pou enfliyanse konfigirasyon chak pake. Paramèt yo ka li lè l sèvi avèk nouvo fonksyon get_parameter la epi yo itilize pou chwazi konpòtman modil yo (pa egzanp, ou ka mete yon paramèt pou enfim Numba JIT oswa Torch JIT).
  • Te ajoute opsyon "--include-onefile-external-data" pou presize modèl dosye done ki defini nan konfigirasyon an men yo dwe apwovizyone separeman de dosye ègzèkutabl la lè w ap bati nan mòd onefile.
  • Te ajoute opsyon "--cf-protection" pou mete mòd pwoteksyon CFI (Control Flow Entegrity) nan GCC, ki bloke vyolasyon lòd egzekisyon nòmal la (koule kontwòl).
  • Pou fichye yaml plugin yo, yo te aplike abilite pou kreye checksums pou chèk entegrite yo, ki nan fiti yo planifye pou yo itilize pou òganize verifikasyon tan exécuter.
  • Aksyon pèmèt plizyè opsyon yo dwe espesifye, separe pa liy (yon nouvo liy yo itilize kòm yon delimiter). Pa egzanp: include-data-dir: | a=bc=d
  • Yon analiz de kalite bouk yo te aplike, ki pral itilize nan lavni an aplike optimize selektif.
  • Te ajoute optimize pou pi vit travay ak varyab ki pa pataje ak chape.
  • Kapasite plugin anti-bloat la te elaji, ki kounye a ka itilize pou redwi kantite pake lè w ap itilize bibliyotèk streamlit, torch, knetworkx, distribye, skimage, bitsandbytes, tf_keras, pip, networkx ak pywt (fondamantalman, obligatwa). pytest, IPython, nen, triton eskli ak dask).

Sous: opennet.ru

Add nouvo kòmantè