內容

名稱

perl5122delta - perl v5.12.2 的新功能

說明

本文檔說明 5.12.1 版本和 5.12.2 版本之間的差異。

如果您要從較早的主要版本升級,例如 5.10.1,請先閱讀 perl5120delta,其中說明了 5.10.0 和 5.12.0 之間的差異,以及 perl5121delta,其中說明了 5.12 穩定發行系列中較早的變更。

不兼容變更

沒有任何變更故意與 5.12.1 不相容。如果存在任何變更,它們是錯誤,歡迎回報。

核心增強

除了下面列出的錯誤修正之外,此版本的核心語言不應有任何使用者可見的變更。

模組和實用程式

新的模組和實用程式

此版本未引入任何新的模組或實用程式。

實用程式變更

在之前的版本中,no VERSION; 陳述式觸發了一個錯誤,可能導致 feature 套件被載入,並意外啟用 strict 模式。

已更新的模組

Carp

從版本 1.16 升級到 1.17。

Carp 現在會偵測不完整的 caller() 覆寫,並避免使用虛假的 @DB::args。為了提供回溯,Carp 依賴於 caller 內建函式的特定行為。Carp 現在會偵測其他程式碼是否已使用不完整的實作覆寫此函式,並相應修改其回溯。之前不完整的覆寫會導致回溯中的值不正確(最佳情況),或模糊的致命錯誤(最糟情況)

這修正了某些由模組不正確地覆寫 caller() 導致的 Bizarre copy of ARRAY 案例。

CPANPLUS

已從 CPANPLUS 0.9004 反向移植一個 cpanp-run-perl 的修補程式。這解決了 RT #55964RT #57106,這兩個都與安裝使用 Module::Install::DSL 的套件時發生的錯誤有關。

File::Glob

已修正一個回歸,該回歸導致在載入 File::Glob 後找不到 CORE::GLOBAL::glob 而發生崩潰。現在,它會正確地透過 pp_glob 回退到外部 glob。

File::Copy

File::Copy::copy(FILE, DIR) 現在有文件說明。

File::Spec

已從版本 3.31 升級到 3.31_01。

已在 File::Spec::VMS 中進行了多項移植性修正:現在會將冒號視為原生檔案規格中的分隔符號;會辨識脫字符號轉義的分隔符號,以更好地處理延伸檔案規格;如果輸入目錄名稱為空,catpath() 會傳回一個空目錄,而不是目前的目錄;abs2rel() 會正確地處理 Unix 風格的輸入。

公用程式變更

現有文件變更

安裝和設定改進

設定改進

編譯改進

選定的錯誤修正

特定平台注意事項

AIX

Windows

VMS

致謝

Perl 5.12.2 自 Perl 5.12.1 發布以來,約歷經三個月的開發,包含來自 36 位作者、橫跨 100 個檔案的約 2,000 行變更。

Perl 持續蓬勃發展邁入第三個十年,這要歸功於活躍的使用者和開發人員社群。已知下列人員為 Perl 5.12.2 的改進做出貢獻

Abigail、Ævar Arnfjörð Bjarmason、Ben Morrow、brian d foy、Brian Phillips、Chas. Owens、Chris 'BinGOs' Williams、Chris Williams、Craig A. Berry、Curtis Jewell、Dan Dascalescu、David Golden、David Mitchell、Father Chrysostomos、Florian Ragwitz、George Greer、H.Merijn Brand、Jan Dubois、Jesse Vincent、Jim Cromie、Karl Williamson、Lars Dɪᴇᴄkᴏᴡ 迪拉斯、Leon Brocard、Maik Hentsche、Matt S Trout、Nicholas Clark、Rafael Garcia-Suarez、Rainer Tammer、Ricardo Signes、Salvador Ortiz Garcia、Sisyphus、Slaven Rezic、Steffen Mueller、Tony Cook、Vincent Pit 和 Yves Orton。

回報錯誤

如果您發現您認為是錯誤的問題,您可能會查看最近張貼到 comp.lang.perl.misc 新聞群組的文章和 http://rt.perl.org/perlbug/ 上的 perl 錯誤資料庫。您也可以在 Perl 首頁 http://www.perl.org/ 上找到相關資訊。

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

如果您回報的錯誤具有安全性影響,不適合傳送至公開封存的郵件清單,請將其傳送至 perl5-security-report@perl.org。這會指向一個封閉訂閱、未封存的郵件清單,其中包括所有核心提交者,他們將能夠協助評估問題的影響,找出解決方案,並協助協調在 Perl 支援的所有平台上發布修補程式以減輕或修正問題。請僅將此地址用於 Perl 核心中的安全性問題,而非 CPAN 上獨立發布的模組。

另請參閱

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

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

一般事項的 README 檔案。

版權資訊的 ArtisticCopying 檔案。