Sakin yaren shirye-shirye Perl 5.30.0

Bayan watanni 11 na ci gaba ya faru sakin sabon reshe mai tsayi na harshen shirye-shiryen Perl - 5.30. A cikin shirya sabon saki, game da 620 dubu Lines code aka canza, da canje-canje shafi 1300 fayiloli, da kuma 58 developers sun shiga cikin ci gaban.

An saki reshe na 5.30 daidai da ƙayyadaddun jadawalin ci gaban da aka amince da shi shekaru shida da suka gabata, wanda ke nuna sakin sabbin rassa tabbatattu sau ɗaya a shekara da sake sake gyara kowane wata uku. A cikin kusan wata guda, ana shirin sakin sakin gyara na farko na Perl 5.30.1, wanda zai gyara manyan kurakuran da aka gano yayin aiwatar da Perl 5.30.0. Tare da sakin Perl 5.30, an dakatar da goyon baya ga reshen 5.26, wanda za a iya fitar da sabuntawa a nan gaba kawai idan an gano matsalolin tsaro masu mahimmanci. Hakanan an fara aiwatar da tsarin haɓaka reshen gwaji na 5.31, a kan abin da za a samar da ingantaccen sakin Perl 2020 a cikin Mayu 5.32.

Maɓalli canji:

  • An ƙara goyan bayan gwaji don ayyukan "" zuwa maganganun yau da kullun.(?‹! tsarin)"Kuma"(?‹= tsari)» don iyakance isa ga samfuran masu suna waɗanda aka sarrafa a baya. Dole ne ma'anar ƙirar ta kasance a cikin haruffa 255 na ma'anar tunani;
  • Matsakaicin ƙimar ma'auni ("n") a cikin "{m,n}" tubalan magana na yau da kullum an ƙara zuwa 65534;
  • Ƙara iyaka goyon baya abin rufe fuska don haskaka wasu nau'ikan haruffa a cikin maganganun yau da kullun, suna rufe saitin Unicode daban-daban. Misali, kalmar “qr! \p{nv= /(?x) \A [0-5] \z / }!" yana ba ku damar zaɓar duk haruffa Unicode waɗanda ke ayyana lambobi daga 0 zuwa 5, gami da haruffan Thai ko Bengali na lambobi;
  • Ƙara tallafi don haruffa masu suna a cikin maganganun yau da kullun
    ƙirar ciki waɗanda aka iyakance ta hanyar ƙididdiga ɗaya (qr'\N{name}');

  • Taimakon ƙayyadaddun Unicode an sabunta shi zuwa sigar 12.1. An cire tutar ci gaban gwaji daga kira sv_utf8_downgrade da sv_utf8_decode, ana amfani da shi wajen haɓaka haɓakawa a cikin harshen C;
  • An ƙara ikon gina perl tare da aiwatar da ayyuka tare da yanki mai goyan bayan aiki mai zare da yawa (-Accflags='-DUSE_THREAD_SAFE_LOCALE'). A baya can, an yi amfani da irin wannan aiwatarwa kawai lokacin gina nau'i mai nau'i mai nau'i na Perl, amma yanzu ana iya kunna shi don kowane ginin;
  • Haɗa tutocin "-Dv" (ingantaccen fitarwar gyara kurakurai) da kuma "-Dr" (regex debugging) tutoci yanzu yana haifar da kunna duk hanyoyin magance maganganun yau da kullun;
  • An cire abubuwan da aka yanke a baya:
    • Yanzu akwai azaman mai raba layi da haruffan kati yarda amfani kawai zane-zane (Ba a yarda da harufan Unicode masu haɗaka ba).
    • An Kashe goyan baya ga wasu nau'ikan da aka daɗe da amfani da kalmar "{" a cikin maganganun yau da kullun ba tare da kuɓuta ba.
    • Ƙaramar ta amfani da sysread(), syswrite(), recv() da aika () ayyuka tare da masu sarrafa ":utf8".
    • An haramta yin amfani da ma'anar "na" a cikin maganganun sharadi na ƙarya (misali, "$ x na idan 0").
    • An cire tallafi don masu canji na musamman "$*" da "$#".
      An dakatar da goyan bayan kiran aikin juji () a fakaice (dole ne a saka a sarari CORE:: juji()).

    • An cire aikin Fayil::Glob::glob (yakamata kayi amfani da Fayil::Glob::bsd_glob).
    • Ƙara kariya ga fakitin() daga dawo da jerin Unicode da ba daidai ba.
    • Ƙarshen goyan bayan amfani da macros waɗanda ke yin ayyuka tare da UTF-8 a cikin lambar XS (C blocks) an jinkirta har sai sakin na gaba.
  • Ingantattun Ayyuka:
    • An haɓaka ayyukan fassara daga UTF-8 zuwa shimfidar haruffa (lambar lamba), misali, yin ord ("\ x7fff") aiki yanzu yana buƙatar 12% ƴan umarni. Ayyukan ayyuka na duba daidaitattun jerin halayen UTF-8 kuma an ƙara haɓaka;
    • An kawar da maimaita kira a cikin aikin finalize_op();
    • An yi ƙananan haɓakawa zuwa lambar don rugujewar haruffa iri ɗaya da ayyana azuzuwan halaye a cikin maganganun yau da kullun;
    • An inganta canza ma'anar nau'in sa hannu zuwa waɗanda ba a sanya hannu ba (IV zuwa UV);
    • Algorithm don juyar da lambobi zuwa kirtani an haɓaka ta hanyar sarrafa lambobi biyu lokaci ɗaya maimakon ɗaya;
    • An samu cigaba shirya dangane da bincike ta LGTM;
    • Ingantaccen lambar a cikin fayiloli regcomp.c, regcomp.h da regexec.c;
    • A cikin maganganu na yau da kullun, sarrafa alamu kamar "qr/[^a]/" tare da haruffan ASCII an haɓaka sosai.
  • An dawo da tallafi ga dandalin Minix3. Yana yiwuwa a gina ta amfani da Microsoft Visual Studio 2019 mai tarawa (Visual C ++ 14.2);
  • Sabbin nau'ikan kayayyaki da aka haɗa a cikin ainihin fakitin. An cire moduloli daga babban abun da ke ciki B:: Gyara и Wuri :: Lambobi.

source: budenet.ru

Add a comment