目錄

名稱

CPAN::Meta::History::Meta_1_0 - META.yml 的 1.0 版元資料規格

前言

這是 META.yml 檔案 1.0 版規格的歷史副本,版權所有者為 Ken Williams,並採用與 Perl 相同的條款授權。

與原始版本的不同

說明

本文件說明 META.yml 規格的 1.0 版。

META.yml 檔案說明已貢獻 Perl 套件的重要屬性,例如在 CPAN 上找到的套件。它通常由 Module::BuildExtUtils::MakeMaker 等工具建立。

META.yml 檔案中的欄位旨在協助維護模組集合(例如 CPAN)的人員、撰寫安裝工具(例如 CPANCPANPLUS)的人員,或只是想在下載並開始安裝之前了解一些有關發行資訊的人員。

格式

META.yml 檔案以 YAML 格式撰寫。我們選擇 YAML 而非 XML 或 Data::Dumper 的原因,已在 MakeMaker 郵件清單的 此討論串 中說明。

META.yml 檔案的第一行應為有效的 YAML 文件標頭,例如 "--- #YAML:1.0"

欄位

META.yml 檔案的其餘部分是一個大型 YAML 對應,其鍵值在此處說明。

名稱

範例:Module-Build

發行版的名稱。通常透過採用發行版中的「主模組」並將「::」變更為「-」來建立。然而,有時會完全不同,例如 libwww-perl 發行版。

版本

範例:0.16

META.yml 檔案所指的發行版本。

授權

範例:perl

此發行版可使用和重新發行的授權。

必須是下列授權之一

perl

此發行版可在與 perl 相同的條款下複製和重新發行(這是 CPAN 上模組最常見的授權選項)。這是一種雙重授權,使用者可以在 GPL 版本 1 或 Artistic 版本 1 授權之間選擇。

gpl

此發行版根據 GNU 通用公共授權版本 2 (http://opensource.org/licenses/GPL-2.0) 的條款發行。

lgpl

此發行版根據 GNU 寬通用公共授權版本 2 (http://opensource.org/licenses/LGPL-2.1) 的條款發行。

artistic

此發行版根據標準 perl 發行版中的 Artistic 檔案所指定的 Artistic 授權版本 1 授權 (http://opensource.org/licenses/Artistic-Perl-1.0).

bsd

此發行版根據 BSD 3 條款授權 (http://opensource.org/licenses/BSD-3-Clause) 授權。

開源

此套分發軟體已取得其他開放原始碼計畫核准的授權,請參閱 http://www.opensource.org/licenses/

無限制

此套分發軟體已取得 www.opensource.org 核准的授權,但允許在無限制的狀況下分發。

限制

此套分發軟體在未取得作者和/或著作權持有人的特別許可下,不得重新分發。

分發類型

範例:模組

此套分發軟體中包含哪些類型的內容。CPAN 上的大部分內容都是 模組(也可能表示模組的集合),但有些內容是 指令碼

需求

範例

Data::Dumper: 0
File::Find: 1.03

一個 YAML 對應,指出此套分發軟體正確運作所需的 Perl 模組。金鑰是模組名稱,而值是版本規格,如 Module::Build 的「需求」參數文件 中所述。

注意:">= 1.2, != 1.5, < 2.0" 等特殊規格的確切性質可能會變更。屆時將在此處提供事先通知。"1.2" 等簡單規格的格式不會變更。

建議

範例

Data::Dumper: 0
File::Find: 1.03

一個 YAML 對應,指出此套分發軟體建議使用的 Perl 模組,以增強運作。

建置需求

範例

Data::Dumper: 0
File::Find: 1.03

一個 YAML 對應,指出建置和/或測試此套分發軟體所需的 Perl 模組。這些依賴關係在安裝模組後不再需要。

衝突

範例

Data::Dumper: 0
File::Find: 1.03

一個 YAML 對應,指出在安裝此套分發軟體時無法安裝的 Perl 模組。這是一個相當罕見的情況。

動態設定

範例:0

一個布林旗標,指出是否必須執行 Build.PLMakefile.PL(或類似),或是否可以僅透過參照其元資料檔來建置、測試和安裝此模組。如果模組在建置/安裝過程中執行一些動態組態(詢問問題、感測環境等),則將此設為 true 值的主要原因。

目前 Module::Build 實際上不會對此旗標執行任何動作 - 可能會由 CPAN.pm 等較高層級的工具來執行有用的動作。它可能會帶來許多安全性、封裝和便利性的改進。

generated_by

範例:Module::Build 版本 0.16

指出用於建立此 META.yml 檔的工具。包含工具名稱和版本是良好的格式,但這個欄位基本上是不透明的,至少目前是如此。

相關專案

DOAP

用於描述軟體專案的 RDF 字彙。http://usefulinc.com/doap

歷史