Perl 5.30.0 发布


Perl 5.30.0 发布

Perl 5.28.0 发布一年后,发布了 Perl的5.30.0.

重要变化:

  • 添加了对 Unicode 版本 11、12 和草案 12.1 的支持;
  • “{m, n}”形式的正则表达式量词中给出的上限“n”已加倍至 65534;
  • 现在部分支持 Unicode 属性值规范中的元字符;
  • 添加了对 qr'N{name}' 的支持;
  • Perl 现在可以编译为始终使用区域设置线程安全操作;
  • 现在实验性地支持有限可变长度与正则表达式模式;
  • 现在使用更快的方法转换为UTF-8;
  • 现在可以毫无问题地支持突厥语 UTF-8 语言环境;
  • 从内核中删除了 opASSIGN 宏的使用;

已删除的功能和不兼容的更改:

  • 删除的模块:Math::BigInt::CalcEmu、arybase、Locale::Code、B::Debug;
  • 模式分隔符现在应该是字素;
  • 分隔符现在应该是字素;
  • 现在禁止在正则表达式模式中使用一些以前已弃用的未转义左括号“{”;
  • 现在,将非零值分配给 $[(第一个数组元素的索引)是致命的;
  • 以前处理 :utf8 时已弃用的 sysread()/syswrite() 现在是致命的。
  • 错误条件下的 my() 现在被禁用;
  • 已弃用 $* (用于启用多行匹配的变量,已在 Perl v5.10.0 中删除)和 $# (用于格式化输出数字的变量,已在 Perl v5.10 中删除。);
  • 不推荐使用 dump() 的不合格使用;
  • 删除了 File::Glob::glob();
  • pack() 无法再返回无效的 UTF-8;
  • 通用脚本中的任何一组数字在另一个脚本执行的脚本中都是有效的;
  • JSON::PP 默认包含allow_nonref;

已弃用的功能:

  • 您不能再在 XS 代码中使用各种处理 UTF-8 的宏;

来源: linux.org.ru

添加评论