Рэліз мовы праграмавання Perl 5.34.0

Пасля 11 месяцаў распрацоўкі адбыўся рэліз новай стабільнай галіны мовы праграмавання Perl – 5.34. Пры падрыхтоўцы новага выпуску было зменена каля 280 тыс. радкоў кода, змены закранулі 2100 файлаў, у распрацоўцы прынялі ўдзел 78 распрацоўшчыкаў.

Ветка 5.34 выпушчана ў адпаведнасці з зацверджаным восем гадоў таму фіксаваным графікам распрацоўкі, які прадугледжвае выпуск новых стабільных галін раз у год і карэкціруючых рэлізаў - раз у тры месяцы. Прыкладна праз месяц плануецца выпусціць першы які карэктуе рэліз Perl 5.34.1, у якім будуць выпраўленыя найболей значныя памылкі, выяўленыя падчас укаранення Perl 5.34.0. Адначасова з выхадам Perl 5.34 спынена падтрымка галінкі 5.30, для якой у будучыні могуць быць выпушчаны абнаўленні толькі ў выпадку выяўлення крытычных праблем з бяспекай. Таксама пачаўся працэс распрацоўкі эксперыментальнай галіны 5.35, на базе якой у траўні ці чэрвені 2022 года будзе сфарміраваны стабільны рэліз Perl 5.36, калі Perl 5 не заменіць галінка Perl 7.

Ключавыя змены:

  • Дададзена эксперыментальная падтрымка сінтаксісу try/catch для апрацоўкі выключэнняў, які можна выкарыстоўваць замест не відавочных маніпуляцый з "eval". Блок "try" уключае блок з выкананым кодам, а блок "catch" з кодам для апрацоўкі любога выключэння, якое можа паўстаць пры выкананні першага блока. У «catch» вызначаецца зменная, утрымоўвальная дадзеныя, перададзеныя пры фармаванні выключэння (напрыклад, пры спрацоўванні выключэння на выклік «die» будзе перададзены паказаны ў якасці аргументу радок). Усярэдзіне блокаў "try" і "catch" дазволеныя аператары пераходаў, уключаючы return, goto, next, last і redo. use feature 'try'; try { a_function(); } catch ($e) { warn "An error occurred: $e"; }
  • Дазволена выкарыстанне пустой ніжняй мяжы дыяпазону ў блоках "{a,n}", у тым ліку выкарыстоўваных у рэгулярных выразах. Напрыклад, зараз можна паказваць "{,3}".
  • Усярэдзіне параметраў з фігурнымі дужкамі {m,n}, \b{}, \g{}, \k{}, \N{}, \o{} і \x{} дазволена выкарыстанне прабелаў, калі прабел прылягае да фігурнай дужкі ці коскі, для падвойнага экранавання ці ў шаблонах рэгулярных выразаў, напрыклад, зараз можна паказваць «qr/a{ 5, 7 }/» ці «\x{ FFFC }» без зняволення значэнняў у двукоссі.
  • У дадатак да шаснаццатковым (0xddddd) і двайковым (0bddddd) літаралам прапанаваны новы сінтаксіс для задання васьмярковых лікаў - "0oddddd", у якіх для нагляднасці можна паказваць падкрэслення (0o123_456). Падтрымка новага сінтаксісу таксама дададзена ў функцыю builtin oct().
  • У рухавічку рэгулярных выразаў ухіленая ўцечка памяці.
  • Абноўлены версіі модуляў, якія ўваходзяць у базавую пастаўку. У склад уключаны модуль ExtUtils::PL2Bat для пераўтварэння perl-скрыптоў у bat-файлы для запуску ў Windows.
  • Дададзена падтрымка зборкі Perl для сістэмы 9front (форк Plan9). Палепшана падтрымка Plan9 і macOS. Спынена падтрымка АС Symbian.

Крыніца: opennet.ru

Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы 🔥 Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы | ProHoster