目錄

名稱

perl5261delta - perl v5.26.1 的新增功能

說明

本文件說明 5.26.0 版本和 5.26.1 版本之間的差異。

如果您要從較早的版本(例如 5.24.0)升級,請先閱讀 perl5260delta,其中描述了 5.24.0 和 5.26.0 之間的差異。

安全性

[CVE-2017-12837] 正規表示式編譯器中的堆緩衝區溢位

使用不區分大小寫的修飾詞編譯某些正規表示式模式可能會導致堆緩衝區溢位並使 perl 崩潰。此問題現已修復。 [GH #16021]

[CVE-2017-12883] 正規表示式解析器中的緩衝區過度讀取

對於正規表示式模式中的某些類型的語法錯誤,錯誤訊息可能會包含隨機、可能很大的記憶體區塊內容,或可能使 perl 崩潰。此問題現已修復。 [GH #16025]

[CVE-2017-12814] Windows 上的 $ENV{$key} 堆疊緩衝區溢位

Windows 上 %ENV 程式碼中可能的堆疊緩衝區溢位已透過完全移除緩衝區修復,因為它本來就是多餘的。 [GH #16051]

不相容變更

沒有任何變更故意與 5.26.0 不相容。如果存在任何變更,它們就是錯誤,我們要求您提交報告。請參閱下方的 "報告錯誤"

模組和實用程式

已更新的模組和實用程式

平台支援

特定平台注意事項

FreeBSD
  • 已修正使用 g++ 於 FreeBSD-11.0 編譯的問題。 [GH #15984]

Windows
  • 已新增使用 Microsoft Visual Studio 2017(包含 Visual C++ 14.1)於 Windows 上編譯 Perl 的支援。

  • 在 Perl 的 64 位元組建構中,使用 GCC 6 編譯 XS 模組會因 strtollstrtoull 的對應錯誤而失敗。此問題已修正。 [GH #16074] [cpan #121683] [cpan #122353]

已選取的錯誤修正

致謝

Perl 5.26.1代表自Perl 5.26.0以來約4個月的開發,包含來自23位作者、橫跨85個檔案的約8,900行變更。

排除自動產生的檔案、文件和發行工具,約有990行變更套用至38個.pm、.t、.c和.h檔案。

Perl在第三個十年持續蓬勃發展,要歸功於活躍的使用者和開發人員社群。已知以下人員貢獻了改善,這些改善成為Perl 5.26.1

Aaron Crane、Andy Dougherty、Aristotle Pagaltzis、Chris 'BinGOs' Williams、Craig A. Berry、Dagfinn Ilmari Mannsåker、David Mitchell、E. Choroba、Eric Herman、Father Chrysostomos、Jacques Germishuys、James E Keenan、John SJ Anderson、Karl Williamson、Ken Brown、Lukas Mai、Matthew Horsfall、Ricardo Signes、Sawyer X、Steve Hay、Tony Cook、Yves Orton、Zefram。

以上清單幾乎可以確定不完整,因為它是從版本控制記錄自動產生的。特別是,它不包含向Perl錯誤追蹤器回報問題的(非常感謝的)貢獻者的姓名。

此版本中包含的許多變更源自於 Perl 核心所包含的 CPAN 模組。我們感謝整個 CPAN 社群協助 Perl 蓬勃發展。

如需 Perl 所有歷史貢獻者的更完整清單,請參閱 Perl 原始碼散佈中的 AUTHORS 檔案。

回報錯誤

如果您發現您認為是錯誤的內容,您可以在 https://rt.perl.org/ 查看 perl 錯誤資料庫。Perl 首頁 http://www.perl.org/ 上也可能有相關資訊。

如果您認為您有未回報的錯誤,請執行您的版本隨附的 perlbug 程式。務必將您的錯誤精簡成一個小巧但足夠的測試案例。您的錯誤回報,以及 perl -V 的輸出,將會傳送至 perlbug@perl.org,供 Perl 移植團隊分析。

如果您回報的錯誤具有安全性影響,不適合傳送至公開封存的郵件清單,請參閱 perlsec 中的「安全性漏洞連絡資訊」,了解如何回報問題的詳細資訊。

致謝

如果您想感謝 Perl 5 Porters 我們在 Perl 5 中所做的工作,您可以透過執行 perlthanks 程式來表達謝意

perlthanks

這將會傳送一封電子郵件至 Perl 5 Porters 清單,表達您的謝意。

另請參閱

變更 檔案,說明如何檢視變更內容的詳盡詳細資料。

安裝 檔案,說明如何建置 Perl。

自述 檔案,說明一般事項。

ArtisticCopying 檔案,說明著作權資訊。