目錄

名稱

perl5262delta - perl v5.26.2 的新功能

說明

本文檔說明 5.26.1 版本與 5.26.2 版本之間的差異。

如果您要從較早版本(例如 5.26.0)升級,請先閱讀 perl5261delta,其中說明了 5.26.0 與 5.26.1 之間的差異。

安全性

[CVE-2018-6797] 堆積緩衝區溢位(S_regatom 中的 WRITE 大小為 1)(regcomp.c)

精心設計的正規表示式可能會導致堆積緩衝區寫入溢位,並控制寫入的位元組。 [GH #16185]

[CVE-2018-6798] Perl__byte_dump_string 中的堆積緩衝區溢位(utf8.c)

比對精心設計的區域設定相關正規表示式可能會導致堆積緩衝區讀取溢位,並可能揭露資訊。 [GH #16143]

[CVE-2018-6913] S_pack_rec 中的堆積緩衝區溢位

pack() 可能會導致堆積緩衝區寫入溢位,且項目計數龐大。 [GH #16098]

斷言失敗於 Perl__core_swash_init (utf8.c)

假設的 Unicode 屬性名稱中的控制字元可能會導致 perl 崩潰。此問題已修復。 [perl #132055] [perl #132553] [perl #132658]

不相容變更

沒有任何變更故意與 5.26.1 不相容。若有任何,它們是錯誤,我們要求您提交報告。請參閱下方的 "回報錯誤"

模組和實用程式

更新的模組和實用程式

文件

現有文件變更

perluniprops

平台支援

特定於平台的注意事項

Windows

已改善 Visual C++ 編譯器版本偵測,以適用於非英語語言系統。 [GH #16235]

我們現在正確設定 $Config{libpth} 以使用早於 14.1 的 Visual C++ 版本進行 64 位元組建。 [GH #16269]

已選定的錯誤修正

致謝

Perl 5.26.2 代表自 Perl 5.26.1 以來約 7 個月的開發,包含來自 17 位作者的 82 個檔案中約 3,300 行變更。

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

由於使用者和開發人員的熱情社群,Perl 持續在第三個十年蓬勃發展。已知以下人員貢獻了成為 Perl 5.26.2 的改進

Aaron Crane、Abigail、Chris 'BinGOs' Williams、H.Merijn Brand、James E Keenan、Jarkko Hietaniemi、John SJ Anderson、Karen Etheridge、Karl Williamson、Lukas Mai、Renee Baecker、Sawyer X、Steve Hay、Todd Rinaldo、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 清單,表達您的謝意。

另請參閱

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

INSTALL 檔案,說明如何建置 Perl。

README 檔案,說明一般事項。

ArtisticCopying 檔案,說明版權資訊。