Famoahana ny fiteny fandaharana Perl 5.30.0

Taorian'ny 11 volana ny fampandrosoana nitranga famoahana sampana stable vaovao amin'ny fiteny fandaharana Perl - 5.30. Tamin'ny fanomanana ny famoahana vaovao, manodidina ny 620 andalana code no niova, ny fanovana dia nisy fiantraikany tamin'ny rakitra 1300, ary ny developer 58 no nandray anjara tamin'ny fampandrosoana.

Sampana 5.30 dia navoaka araka ny fandaharam-pampandrosoana raikitra nankatoavina enin-taona lasa izay, izay midika fa ny famoahana sampana stable vaovao indray mandeha isan-taona sy ny famoahana fanitsiana isaky ny telo volana. Ao anatin'ny iray volana eo ho eo, dia mikasa ny hamoaka ny famoahana fanitsiana voalohany ny Perl 5.30.1, izay hanitsy ny fahadisoana lehibe indrindra hita nandritra ny fampiharana ny Perl 5.30.0. Miaraka amin'ny famoahana ny Perl 5.30, dia natsahatra ny fanohanana ny sampana 5.26, izay mety havoaka amin'ny ho avy ny fanavaozana raha tsy misy ny olana ara-piarovana lehibe. Nanomboka ihany koa ny fizotran'ny fampiroboroboana ny sampana andrana 5.31, izay hiorina amin'ny alàlan'ny famoahana maharitra ny Perl 2020 amin'ny Mey 5.32.

ANDININ- fanovana:

  • Ny fanohanana andrana amin'ny hetsika "" dia nampiana teny mahazatra.(?‹!modely)"Ary"(?‹=modely)» ho an'ny fidirana voafetra amin'ny maodely nomena anarana efa nokarakaraina. Ny famaritana lamina dia tsy maintsy ao anatin'ny tarehintsoratra 255 amin'ny teboka fanondro;
  • Niakatra ho 65534 ny sanda ambony indrindra amin'ny famaritana habe (“n”) amin'ny “{m,n}”;
  • Nampiana voafetra fanohanana saron-tava mba hanasongadinana sokajin'olona sasany amin'ny fomba fiteny mahazatra, mandrakotra ireo andiana Unicode samihafa. Ohatra, ilay fitenenana hoe “qr! \p{nv= /(?x) \A [0-5] \z / }!” mamela anao hisafidy ny endri-tsoratra Unicode rehetra izay mamaritra ny isa manomboka amin'ny 0 ka hatramin'ny 5, ao anatin'izany ny fanononana isa Thai na Bengali;
  • Fanampiana fanampiny ho an'ny tarehintsoratra voatonona amin'ny fomba fiteny mahazatra
    lamina anatiny voafaritry ny teny tokana (qr'\N{name}');

  • Fanohanana fanondroana Unicode nohavaozina ho kinova 12.1. Nesorina tamin'ny antso ny sainam-pampandrosoana andrana sv_utf8_downgrade sy sv_utf8_decode, ampiasaina amin'ny fampandrosoana ny fanitarana amin'ny fiteny C;
  • Nampiana ny fahafahana manangana perl miaraka amin'ny fampiharana asa miaraka amin'ny toerana iray izay manohana ny fampandehanana kofehy maromaro (-Accflags='-DUSE_THREAD_SAFE_LOCALE'). Teo aloha, ny fampiharana toy izany dia tsy nampiasaina afa-tsy tamin'ny fananganana dikan-teny Perl misy kofehy maromaro, saingy azo ampiasaina amin'ny fananganana rehetra;
  • Ny fampifangaroana ny saina "-Dv" (vokatra debugging nohatsaraina) sy ny saina "-Dr" (debug regex) dia izao no mahatonga ny fomba rehetra mety hisian'ny debugging tsy tapaka;
  • Nesorina ireo endri-javatra efa tsy nampiasaina taloha:
    • Azo alaina amin'ny maha-separator andalana sy tarehin-tsoratra wildcard izao navela mampiasa fotsiny graphemes (tsy azo atao ny tarehin-tsoratra Unicode mitambatra).
    • nitohy intsony fanohanana ireo endrika efa lany andro amin'ny fampiasana ny tarehin-tsoratra “{” amin'ny fomba fiteny mahazatra nefa tsy miala amin'izany.
    • Запрещено mampiasa ny sysread(), syswrite(), recv() ary send() miasa miaraka amin'ny ": utf8" mpitantana.
    • Voarara ny mampiasa ny famaritana ny “my” amin'ny fanambarana misy fepetra diso (ohatra, “my $x raha 0”).
    • Nesorina ny fanohanan'ny variables manokana “$*” sy “$#”.
      Ny fanohanana ny fiantsoana an-kolaka ny asa dump() dia natsahatra (tsy maintsy mamaritra mazava tsara ny CORE::dump()).

    • Ny File ::Glob::glob function dia nesorina (tokony hampiasa File::Glob::bsd_glob).
    • Fanampiana fiarovana amin'ny fonosana() amin'ny famerenana ny filaharana Unicode tsy mety.
    • Ny fiafaran'ny fanohanana ny fampiasana macro izay manao asa miaraka amin'ny UTF-8 amin'ny XS code (C blocks) dia nahemotra mandra-pahatongan'ny famoahana manaraka.
  • Fanatsarana ny fampisehoana:
    • Nafaingana ny asa fandikana avy amin'ny UTF-8 mankany amin'ny lamina (teboka kaody), ohatra, ny fampandehanana ny ord(“\x7fff”) dia mitaky torolalana 12% latsaka. Nitombo ihany koa ny fampandehanana ny asa manamarina ny fahamarinan'ny filaharan'ny endri-tsoratra UTF-8;
    • Ny antso miverimberina ao amin'ny asa finalize_op() dia nesorina;
    • Nanao fanatsarana kely ho an'ny kaody amin'ny firodanan'ny tarehin-tsoratra mitovy sy ny famaritana ny kilasy toetra amin'ny fomba fiteny mahazatra;
    • optimisé manova ny famaritana karazana voasonia ho tsy misy sonia (IV ho UV);
    • Ny algorithm amin'ny famadihana integer ho tady dia nohafainganina tamin'ny fanodinana isa roa indray mandeha fa tsy iray;
    • Nisy ny fanatsarana natao vonona mifototra amin'ny fanadihadiana nataon'ny LGTM;
    • Kaody optimized amin'ny rakitra regcomp.c, regcomp.h ary regexec.c;
    • Amin'ny fomba fiteny mahazatra, ny fanodinana ny lamina toy ny “qr/[^a]/” miaraka amin'ny tarehin-tsoratra ASCII dia nahafaingana be.
  • Naverina tamin'ny laoniny ny fanohanana ny sehatra Minix3. Azo atao ny manangana mampiasa ny Microsoft Visual Studio 2019 compiler (Visual C++ 14.2);
  • Ny dikan-teny nohavaozina ao anatin'ny fonosana fototra. Ny Modules dia nesorina tamin'ny famoronana fototra B:: Debug и Locale :: Codes.

Source: opennet.ru

Add a comment