perl5321delta - perl v5.32.1 的新增功能
本文档介绍了 5.32.0 版本和 5.32.1 版本之间的差异。
如果您要从较早的版本(例如 5.30.0)升级,请首先阅读 perl5320delta,其中介绍了 5.30.0 和 5.32.0 之间的差异。
没有与 Perl 5.32.0 故意不兼容的更改。如果存在,它们是错误,我们要求您提交报告。请参阅下面的 "报告错误"。
Data::Dumper 已从 2.174 版升级到 2.174_01 版。
已修复多个内存泄漏问题。
DynaLoader 已从 1.47 版升级到 1.47_01 版。
Module::CoreList 已从 5.20200620 版升级到 5.20210123 版。
Opcode 已从 1.47 版升级到 1.48 版。
已添加警告,提示使用 perl 解释器评估不受信任的代码。
Safe 已从 2.41 版升级到 2.41_01 版。
已添加警告,提示使用 perl 解释器评估不受信任的代码。
Perl 新制定的治理规则的文档。
Perl 安全团队如何运作以及团队如何评估新的安全报告的文档。
我们已尝试更新文档以反映此文档中列出的更改。如果您发现我们错过了任何更改,请在 https://github.com/Perl/perl5/issues 中提交问题。
此外,已进行以下选定的更改
记录范围操作行为更改。
已对诊断输出(包括警告和致命错误消息)进行了以下添加或更改。有关诊断消息的完整列表,请参阅 perldiag。
\K 不允许在正则表达式中进行前瞻/后顾;在 m/%s/ 中标记为 <-- HERE
在某些涉及嵌套环顾的情况下,错误地生成了此错误。此问题已得到修复。
现在已识别出较新的英特尔 C/C++ 编译器 64 位版本,并设置了正确的标志。
现在,当 Configure 检查 va_copy
时,我们捕获 SIGBUS。
在多个系统上,尝试确定我们是否需要 va_copy
或类似的函数会导致 SIGBUS,而不是预期的 SIGSEGV,这以前会导致核心转储。
添加和更改了测试,以反映此版本中的其他新增内容和更改。
已更新 darwin 的提示文件,以处理 10 之后的未来 macOS 版本。现在可以在 macOS Big Sur 上构建 Perl。
已修复 Minix 上的构建错误。
涉及左侧 undef
的一些列表赋值经过过度优化,并产生了不正确的结果。
修复了其中一些具有递归子模式的正则表达式匹配不正确的错误。
修复了在为调试内存问题编译 Perl 并启用 PERL_MEM_LOG 时导致构建挂起的死锁。
修复了在“no warnings 'uninitialized'”下运行时使用链式比较运算符时的崩溃。
不再吞咽全局销毁期间从析构器抛出的异常。
Perl 5.32.1 代表了自 Perl 5.32.0 以来大约 7 个月的开发,包含了来自 23 位作者的 80 个文件中的大约 7,000 行更改。
不包括自动生成的文件、文档和发布工具,对 23 个 .pm、.t、.c 和 .h 文件进行了大约 1,300 行的更改。
Perl 凭借活跃的用户和开发者社区,在第四个十年中继续蓬勃发展。已知以下人员为 Perl 5.32.1 的改进做出了贡献
Adam Hartley、Andy Dougherty、Dagfinn Ilmari Mannsåker、Dan Book、David Mitchell、Graham Knop、Graham Ollis、Hauke D、H.Merijn Brand、Hugo van der Sanden、John Lightsey、Karen Etheridge、Karl Williamson、Leon Timmermans、Max Maischein、Nicolas R.、Ricardo Signes、Richard Leach、Sawyer X、Sevan Janiyan、Steve Hay、Tom Hukins、Tony Cook。
上面的列表几乎肯定是不完整的,因为它是由版本控制历史自动生成的。特别是,它不包括向 Perl bug 跟踪器报告问题的(非常感谢的)贡献者的姓名。
此版本中包含的许多更改源自 Perl 核心包含的 CPAN 模块。我们感谢整个 CPAN 社区帮助 Perl 蓬勃发展。
要获得所有 Perl 历史贡献者的更完整列表,请参阅 Perl 源代码发行版中的 AUTHORS 文件。
如果您发现您认为是错误的问题,您可以在 https://github.com/Perl/perl5/issues 上查看 perl 错误数据库。Perl 主页 https://www.perl5.cn/ 上也可能有相关信息。
如果您认为您有一个未报告的错误,请在 https://github.com/Perl/perl5/issues 上打开一个问题。务必将您的错误精简为一个微小但充分的测试用例。
如果您报告的错误具有安全影响,不适合发送到公共问题跟踪器,请参阅 perlsec 中的 "SECURITY VULNERABILITY CONTACT INFORMATION",了解如何报告该问题的详细信息。
如果您希望感谢 Perl 5 Porters 为我们在 Perl 5 中所做的工作,您可以通过运行 perlthanks
程序来实现
perlthanks
这会向 Perl 5 Porters 列表发送一封电子邮件,表达您的谢意。
Changes 文件,了解如何查看已更改内容的详尽详细信息。
INSTALL 文件,了解如何构建 Perl。
通用内容的自述文件。
版权信息的Artistic 和Copying 文件。