Rhyddhau iaith raglennu Python 3.14

Ar Γ΄l blwyddyn o ddatblygiad, mae datganiad sylweddol o iaith raglennu Python 3.14 wedi'i gyhoeddi. Bydd y gangen newydd yn cael ei chefnogi am flwyddyn a hanner, ac wedi hynny am dair blynedd a hanner arall, bydd atebion yn cael eu creu er mwyn dileu gwendidau.

Ymhlith y nodweddion newydd a ychwanegwyd yn Python 3.14 (1, 2, 3):

  • Mae cefnogaeth swyddogol ar gyfer adeiladu CPython heb y Glo Dehonglydd Byd-eang (GIL) wedi'i weithredu. Mae adeiladu heb y GIL yn dileu'r broblem o baralelu gweithrediadau ar systemau aml-graidd, a achosir gan y ffaith bod y GIL yn atal mynediad cydamserol i wrthrychau a rennir o wahanol edafedd. Mae analluogi'r GIL yn cyflwyno gorbenion ychwanegol oherwydd newidiadau yn y casglwr sbwriel, system rheoli cof, a chloi cyntefigion. Er enghraifft, mae defnyddio cyfrif cyfeiriadau ar gyfer ynysu edafedd yn arwain at ostyngiad perfformiad o tua 10% mewn sgriptiau un edau. Fodd bynnag, gellir gwrthbwyso'r gorbenion hyn trwy baralelu gweithrediadau.
  • Ychwanegwyd cefnogaeth ar gyfer llinynnau-t (llythrennau wedi'u rhagddodi Γ’ 't'), sy'n eich galluogi i ddefnyddio cystrawen debyg i linynnau-f i greu eich trinwyr templed eich hun ar gyfer llinynnau. Yn wahanol i linynnau-f, mae llinynnau-t yn dychwelyd gwrthrych sy'n storio data llinyn statig a gwerthoedd amnewidiol ar wahΓ’n. Mae'r storfa ar wahΓ’n hon yn caniatΓ‘u ichi atodi eich trinwyr eich hun sy'n effeithio ar werthoedd amnewidiol yn unig. Er enghraifft, gallwch atodi trinwr i drosi'r gwerth amnewidiol i lythrennau mawr neu i ddianc rhag nodau arbennig wrth amnewid data allanol mewn llinyn. amrywiaeth = 'Stilton' template = t'Rhowch gynnig ar gaws {amrywiaeth}!' print(rhestr(templed)) print(lower_upper(templed)) ['Rhowch gynnig ar gaws ', Rhyngosodiad('Stilton', 'amrywiaeth', Dim, Β»), ' caws!'] Rhowch gynnig ar gaws STILTON! attributes = {'src': 'limburger.jpg', 'alt': 'caws hyfryd'} template = t' ' argraffu (html (templedi))
  • Mae'r modiwl concurrent.interpreters wedi'i ychwanegu at y llyfrgell safonol. Mae'n caniatΓ‘u i nifer o achosion ynysig o'r dehonglydd Python redeg ar yr un pryd mewn un broses. Yn flaenorol, dim ond trwy'r C-API yr oedd y gallu hwn ar gael. Gellir defnyddio gweithrediad cydamserol nifer o ddehonglwyr i baraleli gweithrediadau, yn debyg i redeg nifer o brosesau paralel, ond, yn wahanol i'r model amlbroses, mae'n defnyddio llai o adnoddau. Ar lefel y cymhwysiad, gellir defnyddio'r model actor a CSP (Cyfathrebu Prosesau Dilyniannol) i wahanu gweithrediadau ar draws dehonglwyr.
  • Mae CPython yn gweithredu math newydd o ddehonglydd sy'n defnyddio galwadau cynffon rhwng swyddogaethau C gan weithredu codau beit Python unigol, yn lle un swyddogaeth fawr gyda datganiadau switsh/case. Pan gaiff ei adeiladu yn Clang 19, mae'r dehonglydd newydd yn dangos gwelliant perfformiad o 3-5% wrth redeg meincnodau perfformiad py. Mae'r dehonglydd newydd ar gael ar hyn o bryd fel opsiwn ar gyfer pensaernΓ―aethau x86-64 ac AArch64 ac mae angen o leiaf Clang 19 arno (addewir cefnogaeth GCC yn ddiweddarach).
  • Cefnogir prosesu gohiriedig anodiadau ar gyfer swyddogaethau, dosbarthiadau a modiwlau bellach. Nid yw anodiadau bellach yn cael eu prosesu ar unwaith, ond cΓ’nt eu storio fel swyddogaethau arbenigol a'u gwerthuso pan fo angen. Mae'r ymddygiad newydd hwn yn symleiddio gweithio gydag anodiadau ac yn lleihau gorbenion prosesu anodiadau yn ystod amser rhedeg. Mae'r modiwl annotationlib ar gael ar gyfer archwilio anodiadau gohiriedig.
  • Mae'r pecyn cywasgu wedi'i ychwanegu at y llyfrgell safonol, gan ddarparu swyddogaethau ar gyfer cywasgu a dadgywasgu data gan ddefnyddio amrywiol algorithmau. Yn ogystal Γ’'r modiwlau compression.lzma, compression.bz2, compression.gzip, a compression.zlib, sy'n darparu mynediad at swyddogaethau a oedd ar gael yn flaenorol yn y modiwlau lzma, bz2, gzip, a zlib, mae modiwl compression.zstd newydd wedi'i ychwanegu, gan weithredu'r algorithm ZSTD (Zstandard).
  • Yn y mynegiadau "except" ac "except*", mae'n ganiataol hepgor cromfachau os yw'r mynegiant yn nodi sawl math o eithriad ac nad yw'n defnyddio'r allweddair "as". try: connect_to_server() except TimeoutError, ConnectionRefusedError: print('Mae'r rhwydwaith wedi peidio Γ’ bod!')
  • Mae amlygu cystrawen wedi'i weithredu yn y gragen ryngweithiol PyREPL. Mae allbwn lliwiedig wedi'i alluogi mewn cyfleustodau CLI ar gyfer y modiwlau unittest, argparse, json, a calendr.
  • Ychwanegwyd rhyngwyneb ar gyfer cysylltu dadfygwyr a phroffiliwyr allanol Γ’ phrosesau CPython sydd eisoes yn rhedeg heb fod angen eu stopio ac ailgychwyn a heb effeithio ar berfformiad.
  • Mae'r modiwl pdb bellach yn cefnogi cysylltiadau o bell Γ’ phrosesau Python sy'n rhedeg. Er enghraifft, i gysylltu Γ’ phroses 1234, gallwch ddefnyddio'r gorchymyn "python -m pdb -p 1234."
  • Mae'r modiwl uuid wedi'i ddiweddaru gyda'r ffwythiannau uuid6(), uuid7(), ac uuid8(), gan weithredu fersiynau 6, 7, ac 8 o'r dynodwyr UUID.
  • Ychwanegwyd allbwn rhybudd wrth ddefnyddio'r mynegiadau "return", "break", a "continue" i adael y bloc "finally".
  • Mae'r PyInitConfig C API wedi'i ychwanegu ar gyfer addasu ymgychwyn Python heb ddibynnu ar strwythurau C, gan ganiatΓ‘u ar gyfer newidiadau sy'n cydymffurfio ag ABI. Darperir y ffwythiannau PyConfig_Get() a PyConfig_Set() ar gyfer adfer a gosod cyfluniad, yn ogystal Γ’'r ffwythiant PyInitConfig_AddModule() ar gyfer ychwanegu modiwl gydag estyniad.
  • Negeseuon gwall gwell. Ychwanegwyd argymhellion ar gyfer datrys camgymeriadau teipio mewn allweddeiriau.
  • Mae'r pecyn yn integreiddio canlyniadau gwaith i ddisodli gweithrediadau Python o algorithmau cryptograffig a gynigir yn y modiwlau hashlib a hmac gyda fersiynau gyda phrawf mathemategol (ffurfiol) o ddibynadwyedd, a baratowyd gan y prosiect "HACL*". Mae'r holl swyddogaethau hash diofyn a HMAC a ddarperir yn Python wedi'u disodli Γ’ fersiynau y darperir prawf ffurfiol o gydymffurfiaeth (gwiriad ffurfiol) ar eu cyfer. Ymhlith pethau eraill, mae gweithrediad HMAC-BLAKE2 wedi'i ychwanegu, gan ddefnyddio cyfarwyddiadau AVX2 SIMD i gyflymu cyfrifiadau.
  • Ychwanegwyd rhyngwyneb llinell orchymyn newydd ("python -m asyncio ps PID" a "python -m asyncio pstree PID") ar gyfer archwilio prosesau Python sy'n rhedeg gyda thasgau anghydamserol (asyncio).
  • Π’ состав Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… сборок для macOS ΠΈ Windows Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ JIT-компилятор. Π˜Π½ΡΡ‚Π°Π»Π»ΡΡ‚ΠΎΡ€ для Windows Π·Π°ΠΌΠ΅Π½Ρ‘Π½ Π½Π° ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ установок.
  • I wirio cyfanrwydd cydosodiadau, defnyddir system gwirio cod cryptograffig Sigstore yn lle llofnodion PGP.
  • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Ρ‹ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ сборки для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Android.

Yn yr oriau nesaf, bydd profion alffa cangen Python 3.15 yn dechrau, a fydd yn y cam rhyddhau alffa am saith mis, pan fydd nodweddion newydd yn cael eu hychwanegu a bygiau'n cael eu trwsio (yn unol Γ’'r amserlen ddatblygu newydd, gweithio ar y newydd cangen yn dechrau ymhen pum mis cyn rhyddhau'r gangen flaenorol ac erbyn i'r datganiad nesaf gyrraedd y cam profi alffa). Ar Γ΄l hyn, bydd fersiynau beta yn cael eu profi am dri mis, pan fydd ychwanegu nodweddion newydd yn cael ei wahardd a bydd pob sylw yn cael ei roi i drwsio bygiau. Am y ddau fis olaf cyn y rhyddhau, bydd y gangen yn y cam rhyddhau ymgeisydd, pan fydd y sefydlogi terfynol yn cael ei berfformio.

Ffynhonnell: opennet.ru

Prynu gwesteio dibynadwy ar gyfer gwefannau sydd Γ’ diogelwch DDoS, gweinyddwyr VPS VDS πŸ”₯ Prynu cynnal gwefannau dibynadwy gyda diogelwch DDoS, gweinyddion VPS VDS | ProHoster