11 hónapnyi fejlesztés után megjelent a Perl programozási nyelv új stabil ága, az 5.34-es verzió. Az új kiadás körülbelül 280 000 sornyi kódmódosítást tartalmazott, ami 2100 fájlt érintett, és 78 fejlesztőt érintett.
Az 5.34-es ág a nyolc évvel ezelőtt megállapított fix fejlesztési ütemtervnek megfelelően került kiadásra, amely évente egyszer új stabil ágak, háromhavonta pedig kisebb kiadások kiadását írja elő. Az első kisebb kiadás, a Perl 5.34.1, körülbelül egy hónap múlva jelenik meg, és a Perl 5.34.0 implementálása során felfedezett legjelentősebb hibákat javítja. A Perl 5.34 megjelenésével együtt az 5.30-as ág támogatása is megszűnt; jövőbeli frissítések csak akkor jelenhetnek meg, ha kritikus biztonsági problémákat fedeznek fel. A kísérleti 5.35-ös ág fejlesztése is megkezdődött, amely a Perl 5.36 stabil kiadásának alapját képezi majd 2022 májusában vagy júniusában, kivéve, ha a Perl 5-öt a Perl 7 ág váltja fel.
Főbb változások:
- Kísérleti támogatás került a try/catch kivételkezeléshez, amely a nem nyilvánvaló eval szintaxis helyett használható. A try blokk egy végrehajtandó kódblokkot tartalmaz, a catch blokk pedig az első blokk végrehajtása során felmerülő kivételek kezelésére szolgáló kódot. A catch blokk egy változót definiál, amely a kivétel keletkezésekor átadott adatokat tartalmazza (például, ha egy kivétel keletkezik, a megadott karakterlánc argumentumként kerül átadásra a die hívásnak). Az ugró utasítások, beleértve a return, goto, next, last és redo utasításokat, megengedettek a try és catch blokkokon belül. use feature 'try'; try { a_function(); } catch ($e) { warn "Hiba történt: $e"; }
- Az „{a,n}” blokkokban, beleértve a reguláris kifejezésekben használtakat is, mostantól megengedett egy tartomány üres alsó korlátjának használata. Például a „{,3}” mostantól megadható.
- A szóközök mostantól engedélyezettek a kapcsos zárójelekkel ({m,n}, \b{}, \g{}, \k{}, \N{}, \o{} és \x{}) rendelkező paraméterekben, ha a szóköz kapcsos zárójel vagy vessző mellett található, dupla escape-hez, vagy reguláris kifejezés mintákban, pl. mostantól megadható a "qr/a{ 5, 7 }/" vagy az "\x{ FFFC }" érték idézőjelek nélkül.
- A hexadecimális (0xddddd) és bináris (0bddddd) literálok mellett egy új szintaxist is javasolunk az oktális számok megadására – "0oddddd". Az áttekinthetőség kedvéért aláhúzásjelek is használhatók (0o123_456). Az új szintaxis támogatását a beépített oct() függvény is hozzáadta.
- Kijavítottunk egy memóriaszivárgást a reguláris kifejezésmotorban.
- Az alap disztribúcióban található modulok verziói frissültek. A csomag mostantól tartalmazza az ExtUtils::PL2Bat modult, amely Perl szkripteket konvertál BAT fájlokká a következőben való futtatáshoz: Windows.
- Hozzáadott támogatás a Perl 9front rendszerhez (a Plan9 egy elágazása) történő fordításához. Továbbfejlesztett Plan9 támogatás és macOSA Symbian operációs rendszer támogatása megszűnt.
Forrás: opennet.ru
