Kutolewa kwa Nuitka 2.0, mkusanyaji wa lugha ya Python

Mradi wa Nuitka 2.0 sasa unapatikana, ambao hutengeneza mkusanyaji wa kutafsiri hati za Python kuwa uwakilishi wa C, ambao unaweza kisha kukusanywa kuwa utekelezekaji kwa kutumia libpython kwa utangamano wa juu zaidi wa CPython (kwa kutumia zana asilia za usimamizi wa kitu cha CPython). Utangamano kamili na matoleo ya sasa ya Python 2.6, 2.7, 3.3 - 3.11 imehakikishwa. Ikilinganishwa na CPython, hati zilizokusanywa zinaonyesha uboreshaji wa utendaji wa 335% katika alama za pystone. Msimbo wa mradi unasambazwa chini ya leseni ya Apache.

Miongoni mwa mabadiliko katika toleo jipya:

  • Imeongeza uwezo wa kutumia vigeu katika usanidi wa kifurushi, huku kuruhusu kuuliza thamani kutoka kwa vifurushi vilivyosakinishwa kwa wakati wa kukusanya na kutumia maadili hayo kufafanua mazingira ya nyuma. Usaidizi wa vigezo katika usanidi unakuwezesha kutatua kazi nyingi kwa njia za kawaida ambazo hapo awali zilihitaji kuunganisha plugins.
  • Usaidizi ulioongezwa kwa vigezo vilivyoainishwa na mtumiaji ili kuathiri usanidi wa kila kifurushi. Vigezo vinaweza kusomwa kwa kutumia kitendakazi kipya cha get_parameter na kutumika kuchagua tabia ya moduli (kwa mfano, unaweza kuweka kigezo kuzima Numba JIT au Tochi JIT).
  • Chaguo lililoongezwa "--include-onefile-external-data" ili kubainisha violezo vya faili vya data ambavyo vimefafanuliwa katika usanidi lakini lazima vitolewe kando na faili inayoweza kutekelezeka wakati wa kuunda katika hali ya faili moja.
  • Imeongeza chaguo la "--cf-protection" ili kuweka modi ya ulinzi ya CFI (Control Flow Integrity) katika GCC, ambayo huzuia ukiukaji wa agizo la kawaida la utekelezaji (mtiririko wa kudhibiti).
  • Kwa faili za yaml za programu-jalizi, uwezo wa kuunda hesabu za ukaguzi wa uadilifu umetekelezwa, ambao katika siku zijazo wanapanga kutumia kupanga uthibitishaji wa muda wa utekelezaji.
  • Vitendo huruhusu chaguo nyingi kubainishwa, zikitenganishwa na mistari (laini mpya inatumika kama kikomo). Kwa mfano: include-data-dir: | a=bc=d
  • Uchambuzi wa aina za vitanzi umetekelezwa, ambao utatumika katika siku zijazo kutekeleza uboreshaji maalum.
  • Uboreshaji ulioongezwa ili kuharakisha kazi na vigeu visivyoshirikiwa na vilivyoepukika.
  • Uwezo wa programu-jalizi ya kuzuia uvimbe umepanuliwa, ambayo sasa inaweza kutumika kupunguza idadi ya pakiti unapotumia streamlit, tochi, knetworkx, kusambazwa, skimage, bitsandbytes, tf_keras, pip, networkx na maktaba za pywt (kimsingi, kuunganisha kwa pytest, IPython, pua, triton haijajumuishwa na dask).

Chanzo: opennet.ru

Kuongeza maoni