内容

名称

perl5221delta - perl v5.22.1 的新功能

描述

本文档描述了 5.22.0 版本和 5.22.1 版本之间的差异。

如果您从 5.20.0 等早期版本升级,请先阅读 perl5220delta,其中描述了 5.20.0 和 5.22.0 之间的差异。

不兼容的更改

除了以下单个例外之外,没有故意与 5.20.0 不兼容的更改,我们认为这是一个明智的更改,以便在人们决定它们因为 Perl 5.22.0 实现中的错误而毫无价值并避免在将来使用它们之前,使新的 \b{wb} 和(特别是)\b{sb} 功能变得合理。如果存在其他任何不兼容的更改,它们都是错误,我们要求您提交报告。请参阅下面的 "报告错误"

边界检查结构

已修复了边界检查结构(在 Perl 5.22 中引入)\b{gcb}\b{sb}\b{wb}\B{gcb}\B{sb}\B{wb} 的几个错误,包括段错误。所有 \B{} 现在匹配空字符串;而 \b{} 则不匹配。 [GH #14976]

模块和语义

更新的模块和语义

文档

对现有文档的更改

perltie

perlvar

诊断

已对诊断输出(包括警告和致命错误消息)进行以下添加或更改。有关诊断消息的完整列表,请参阅 perldiag

对现有诊断的更改

配置和编译

平台支持

平台特定说明

IRIX
  • 在某些情况下,IRIX stdio fgetc() 和 fread() 将 errno 设置为 ENOENT,这根据 IRIX 或 POSIX 文档都没有意义。现在在这些情况下会清除 Errno。 [GH #14557]

  • 已修复将长双精度数乘以无穷大时的错误。 [GH #14993]

  • 现在所有测试在使用默认构建配置的 IRIX 上都通过了。

精选的错误修复

致谢

Perl 5.22.1 代表了自 Perl 5.22.0 以来大约 6 个月的开发,包含了来自 27 位作者的 130 个文件中的大约 19,000 行更改。

不包括自动生成的 文件、文档和发布工具,大约有 1,700 行更改涉及 44 个 .pm、.t、.c 和 .h 文件。

Perl 继续在第三个十年中蓬勃发展,这得益于充满活力的用户和开发人员社区。以下人员已知为 Perl 5.22.1 的改进做出了贡献

Aaron Crane、Abigail、Andy Broad、Aristotle Pagaltzis、Chase Whitener、Chris 'BinGOs' Williams、Craig A. Berry、Daniel Dragan、David Mitchell、Father Chrysostomos、Herbert Breunung、Hugo van der Sanden、James E Keenan、Jan Dubois、Jarkko Hietaniemi、Karen Etheridge、Karl Williamson、Lukas Mai、Matthew Horsfall、Peter Martini、Rafael Garcia-Suarez、Ricardo Signes、Shlomi Fish、Sisyphus、Steve Hay、Tony Cook、Victor Adam。

上面的列表几乎肯定是不完整的,因为它是由版本控制历史自动生成的。特别是,它不包括向 Perl 错误跟踪器报告问题的贡献者(非常感谢)的姓名。

此版本中包含的许多更改源自 Perl 核心包含的 CPAN 模块。我们感谢整个 CPAN 社区帮助 Perl 蓬勃发展。

有关 Perl 所有历史贡献者的更完整列表,请参阅 Perl 源代码分发中的 AUTHORS 文件。

报告错误

如果您发现您认为是错误的内容,您可能需要查看最近发布到 comp.lang.perl.misc 新闻组和 https://rt.perl.org/ 上的 Perl 错误数据库的文章。您也可以在 Perl 主页 https://www.perl5.cn/ 上找到信息。

如果您认为您遇到了未报告的错误,请运行随您的发行版提供的 perlbug 程序。请确保将您的错误缩减为一个微小但足够的测试用例。您的错误报告以及 perl -V 的输出将被发送到 [email protected],由 Perl 移植团队进行分析。

如果您要报告的错误存在安全隐患,不适合发送到公开存档的邮件列表,那么请将其发送到 [email protected]。这指向一个封闭的订阅未存档邮件列表,其中包括所有核心提交者,他们将能够帮助评估问题的影響,找出解决方案,并帮助协调在 Perl 支持的所有平台上发布补丁以减轻或解决问题。请仅将此地址用于 Perl 核心中的安全问题,不要用于在 CPAN 上独立分发的模块。

另请参阅

Changes 文件,了解如何查看有关更改的详尽信息。

INSTALL 文件,了解如何构建 Perl。

README 文件,了解一般信息。

ArtisticCopying 文件,了解版权信息。