Eisiúint na teanga ríomhchlárúcháin Perl 5.30.0

Tar éis 11 mhí d'fhorbairt tharla sé scaoileadh brainse nua cobhsaí den teanga ríomhchlárúcháin Perl - 5.30. Agus an scaoileadh nua á ullmhú, athraíodh thart ar 620 míle línte cód, chuir na hathruithe isteach ar 1300 comhad, agus ghlac 58 forbróir páirt san fhorbairt.

Scaoileadh brainse 5.30 de réir an sceidil forbartha seasta a ceadaíodh sé bliana ó shin, rud a thugann le tuiscint go scaoilfí brainsí cobhsaí nua uair sa bhliain agus scaoileadh ceartaitheach gach trí mhí. I thart ar mhí, tá sé beartaithe an chéad scaoileadh ceartaitheach Perl 5.30.1 a scaoileadh, rud a cheartóidh na hearráidí is suntasaí a aithníodh le linn chur i bhfeidhm Perl 5.30.0. In éineacht le scaoileadh Perl 5.30, cuireadh deireadh le tacaíocht do bhrainse 5.26, agus ní fhéadfar nuashonruithe a scaoileadh amach anseo ach amháin má aithnítear fadhbanna slándála ríthábhachtacha. Tá tús curtha freisin le próiseas forbartha an bhrainse turgnamhach 5.31, agus déanfar scaoileadh cobhsaí de Perl 2020 a fhoirmiú i mBealtaine 5.32 ar a bhonn.

Eochair athruithe:

  • Cuireadh tacaíocht thrialach le haghaidh " "oibríochtaí le slonn rialta.(? ‹!patrún)"Agus"(? ‹ = patrún)» rochtain theoranta ar theimpléid ainmnithe a próiseáladh roimhe seo. Caithfidh sainmhíniú an phatrúin a bheith laistigh de 255 carachtar ón suíomh tagartha;
  • Méadaíodh uasluach an tsonraitheora méide (“n”) i mbloic slonn rialta “{m,n}” go 65534;
  • Cuireadh teoranta leis tacaíocht maisc chun catagóirí áirithe carachtar a aibhsiú i nathanna rialta, a chlúdaíonn tacair éagsúla Unicode. Mar shampla, an abairt “qr! \p{ nv= /(?x) \A [0-5] \z / }!" is féidir leat gach carachtar Unicode a shainíonn na huimhreacha ó 0 go 5 a roghnú, lena n-áirítear litriú uimhreacha Téalainnis nó Beangáilis;
  • Tacaíocht bhreise do charachtair ainmnithe i nathanna rialta
    taobh istigh de phatrúin teoranta ag comharthaí athfhriotail aonair (qr'\N{name}');

  • Tacaíocht sonraíochta Unicode nuashonraithe go leagan 12.1. Baineadh an bhratach forbartha turgnamhacha de ghlaonna sv_utf8_íosghrádú agus sv_utf8_decode, a úsáidtear i bhforbairt síntí sa teanga C;
  • Cuireadh leis an gcumas perl a thógáil le feidhmiú oibríochtaí le locale a thacaíonn le hoibríocht il-snáithithe (-Accflags = '-DUSE_THREAD_SAFE_LOCALE'). Roimhe seo, níor úsáideadh cur i bhfeidhm den sórt sin ach amháin nuair a bhí leagan il-snáithithe de Perl á thógáil, ach is féidir é a chumasú anois le haghaidh aon thógáil;
  • Trí na bratacha "-Dv" (aschur dífhabhtaithe feabhsaithe) agus "-Dr" (dífhabhtú regex) a chomhcheangal, is féidir gach modh dífhabhtaithe slonn rialta a chumasú anois;
  • Baineadh gnéithe nach raibh réamhmheasta roimhe seo:
    • Mar dheighilteoir líne agus carachtair saoróg anois ceadaithe úsáid amháin grafaim (ní cheadaítear carachtair Unicode ilchodacha).
    • Scortha tacaíocht a thabhairt do roinnt foirmeacha atá as feidhm le fada chun an carachtar “{” a úsáid i nathanna rialta gan éalú uaidh.
    • Tá sé cosc ag baint úsáide as na feidhmeanna sysread(), syswrite(), recv() agus send() le láimhseálaithe ":utf8".
    • Tá sé toirmiscthe sainmhínithe ar “mo” a úsáid i ráitis choinníollacha atá bréagach ó dhúchas (mar shampla, “mo $x más 0”).
    • Baineadh an tacaíocht d'athróga speisialta “$*” agus “$#”.
      Cuireadh deireadh le tacaíocht do ghlaoch intuigthe na feidhme dump() (ní mór duit CORE a shonrú go sainráite anois::dump()).

    • Baineadh an fheidhm Comhad::Glob::glob (ba cheart duit Comhad::Glob::bsd_glob a úsáid).
    • Cosaint bhreise leis an bpac() in aghaidh seichimh míchearta Unicode a thabhairt ar ais.
    • Tá deireadh na tacaíochta maidir le húsáid macraí a dhéanann oibríochtaí le UTF-8 i gcód XS (bloic C) curtha siar go dtí an chéad scaoileadh eile.
  • Optimizations Feidhmíochta:
    • Luathaíodh oibríochtaí aistriúcháin ó UTF-8 go leagan amach na gcarachtar (pointe cód), mar shampla, teastaíonn 7% níos lú treoracha anois chun an oibríocht ord (“\x12fff”) a chomhlíonadh. Méadaíodh freisin ar fheidhmíocht na n-oibríochtaí a sheiceáil cruinneas na sraitheanna carachtar UTF-8;
    • Cuireadh deireadh le glaonna athchúrsacha san fheidhm finalize_op();
    • Rinneadh mionleasuithe ar an gcód chun carachtair chomhionanna a laghdú agus chun aicmí carachtar a shainiú i nathanna rialta;
    • Optamaithe sainmhínithe cineáil sínithe a thiontú go sainmhínithe gan síniú (IV go UV);
    • Cuireadh dlús leis an algartam chun slánuimhreacha a thiontú go teaghrán trí dhá dhigit a phróiseáil ag an am céanna in ionad a haon;
    • Tá feabhsuithe déanta ullmhaithe bunaithe ar anailís LGTM;
    • Cód optamaithe i gcomhaid regcomp.c, regcomp.h agus regexec.c;
    • I sloinn rialta, tá dlús suntasach curtha le próiseáil patrún mar “qr/[^a]/” le carachtair ASCII.
  • Tá an tacaíocht don ardán Minix3 athchóirithe. Is féidir tógáil ag baint úsáide as tiomsaitheoir Microsoft Visual Studio 2019 (Visual C ++ 14.2);
  • Leaganacha nuashonraithe de mhodúil san áireamh sa phacáiste bunúsach. Tá modúil bainte den phríomh-chomhdhéanamh B::Debug и Logán ::Cóid.

Foinse: oscailtenet.ru

Add a comment