PyPA 仕様¶
Page Status: | Complete |
---|---|
Last Reviewed: | 2016-01-22 |
Python Packaging Authority が管理している現在アクティブな相互運用性に関する仕様のリストを示す。
Package distribution metadata¶
Core metadata¶
現在の core metadata ファイルフォーマット バージョン 1.2 の仕様は PEP 345 にある。
しかし、当該 PEP の version specifiers および environment markers セクションについては他の PEP が優先される(後述)。さらに、メタデータファイルは以下の追加フィールドを含んでもよい:
Provides-Extra (複数可)¶
オプション機能の名前を含む文字列。有効な Python 識別子でなければならない。オプション機能が要求されたかどうかによって条件付き依存関係を記述するのに使える。
例:
Provides-Extra: pdf
Requires-Dist: reportlab; extra == 'pdf'
角括弧で囲むことでオプションの依存関係を要求でき、カンマで区切ることで複数指定することもできる。要求された各機能について要件が評価され、 distribution の要件セットに追加される。
Example:
Requires-Dist: beaglevote[pdf]
Requires-Dist: libexample[test, doc]
機能名 test と doc は予約されており、それぞれ自動テストとドキュメント生成が必要であるとマークするのに使われる。
Requires-Dist:
で参照されない Provides-Extra:
を指定するのは合法だ。
Version Specifiers¶
バージョン番号の要件、およびバージョン間の比較指定のセマンティクスは PEP 440 で定義されている。
この PEP の version specifiers セクションは PEP 345 の version specifiers セクションに優先する。
Dependency Specifiers¶
他のコンポーネントへの依存関係を宣言するための dependency specifier フォーマットは PEP 508 で定義されている。
この PEP の environment markers セクションは PEP 345 の environment markers セクションに優先する。
Source Distribution Format¶
Source distribution 形式 (sdist
) には今のところ正式な定義がない。代わりに、その形式は setup.py sdist
コマンドを実行した際の標準ライブラリの distutils
モジュールの動作によって暗黙に定義される。