Поздравляю всех нас!

После года разработки в ветке 5.17.х вышел следующий стабильный релиз интерпретатора: Perl 5.18.0

Официальный анонс:
http://www.nntp.perl.org/group/perl.perl5.porters/2013/05/msg201940.html

В ближайшее время вы сможете установить при помощи perlbrew.

Краткая сводка изменений:

- Предупреждения (warnigns) об использовании экспериментальный функционала в исполняемом коде. Предупреждения можно отключить при помощи no warnings "experimental::$feature"

- Ключи хэшей теперь возвращаются в случайном порядке.
Сортировка ключей в рамках одного хэша остается стабильной, но два идентичных хэша вернут ключи в разном порядке.

- Поддержка Unicode 6.2

- next, last, redo и dump могут использовать в качестве меток произвольные выражения, которые будут вычисляться во время работы программы. В предыдущих версиях не-константная метка интерпретировалась как пустая строка:
  next $label_name;

- Следующие встроенные функции теперь находятся в пространстве CORE::
"defined", "delete", "exists", "glob", "pos", "protoytpe", "scalar", "split", "study", и "undef"

- Поддержка отрицательных имен сигналов в kill()
  kill -INT, ... будет работать так же как kill -2, ...

- Весь функционал семейства smartmatch помечен как “экспериментальный”.
Операторы ~~, given и when (появились в 5.10) могут перестать быть частью языка либо их поведение будет существенно изменено.

Кроме этого, закрыт вектор атаки описанный в CVE-2013-1667 с использованием специально сконструированного ключа хэша. Это изменение портировано в maint-ветки с 5.8 по 5.16 и вошло в релизы perl 5.14.4 и 5.16.3.

Приведенный список изменений не полон. Для ознакомления с полным списком изменения пожалуйста прочтите perldelta.pod релиза: https://metacpan.org/module/RJBS/perl-5.18.0/pod/perldelta.pod

-yko
_______________________________________________
Kiev-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/kiev-pm

Ответить