用語集¶
Page Status: | Complete |
---|---|
Last Reviewed: | 2015-09-08 |
- Binary Distribution
- Built Distribution のうち、コンパイル済み拡張を含むもの。
- Built Distribution
- Distribution 形式のうち、中身のファイルとメタデータをターゲットシステムの正しい場所へ移動するだけでインストールができるもの。Wheel はそのような形式だが、distutils の Source Distribution はそうではない。後者はインストール前にビルドステップを要するからだ。この形式は Python ファイルがプリコンパイルを要するというわけではない(Wheel は意図的にコンパイル済み Python ファイルを含めていない)。
- Distribution Package
バージョン管理されたアーカイブファイルで、Python パッ ケージ 、モジュール 、およびその他のリソースファイルを含む。Release の配布に使われる。エンドユーザがインターネットからダウンロードしてインストールするのはこのアーカイブファイルだ。
Distribution package は単に「パッケージ」とか “distribution” と呼ばれる方が一般的だが、このガイドでは明快さのためにこの長い用語を使うこともある。これは Import Package (これもよく「パッケージ」と呼ばれる)や、その他の類のディストリビューション(例えば、Linux ディストリビューションや Python 言語ディストリビューション。これらにしても単に「ディストリビューション」と呼ばれがち)との混同を避けるためだ。
- Egg
- setuptools が導入した Built Distribution 形式で、Wheel に取って代わられた。詳しくは、 The Internal Structure of Python Eggs および Python Eggs を見よ。
- Extension Module
- Python 実装における低レベル言語で書かれた モジュール: Python の場合 C/C++, Jython の場合 Java。通常、単一の動的ロード可能なコンパイル済みファイル内にある(例えば、Unix の Python拡張なら共有オブジェクト (.so) ファイル、Windows の Python 拡張なら DLL (拡張子 .pyd), Jython 拡張なら Java クラスファイル)。
- Known Good Set (KGS)
- 互換性を持つようにバージョン指定された distribution のセット。通常、テストスイートが全てのテストを通ってはじめて特定のパッケージセットが known good set と宣言される。この用語は、複数の独立した distribution からなるフレームワークやツールキットでよく使われる。
- Import Package
他のモジュール、または再帰的に他のパッケージを含む Python モジュール。
Import package は単に「パッケージ」と呼ばれる方が一般的だが、このガイドでは明快さのためにこの長い用語を使うことがある。これは Distribution Package (これもよく「パッケージ」と呼ばれる)との混同を避けるためだ。
- Module
- Python におけるコード再利用の基本単位。Pure Module, Extension Module のいずれか。
- Package Index
- Distributions のリポジトリで、パッケージ の発見と利用を自動化する Web インターフェースを備えている。
- Project
ライブラリ、フレームワーク、スクリプト、プラグイン、アプリケーション、データやその他リソースのコレクション、またはそれらの組み合わせ。Distribution へパッケージされる。
ほとんどのプロジェクトは distutils または setuptools を使って Distributions を作るので、現在におけるプロジェクトの実際的な定義は、そのルートディレクトリに setup.py を含むものと言ってもよい。ここで “setup.py” は distutils, setuptools が使うプロジェクト仕様のファイル名だ。
Python プロジェクトの名前は一意でなければならず、この名前が PyPI に登録される。各プロジェクトは一つ以上の リリース を含み、各リリースは一つ以上の distribution を含む。
プロジェクト名はそれを動かす際にインポートされるパッケージ名と同じにするという強い規約がある。しかしこれは必ずしも真ではない。プロジェクト ‘foo’ から distribution をインストールしたとき、それがパッケージ ‘bar’ しか提供しない、ということも可能だ。
- Pure Module
- Python で書かれ、単一の .py ファイルに格納された モジュール (.pyc / .pyo ファイルに関連付けられているかもしれない)。
- PyPA は Python パッケージングにおける重要プロジェクトの多くを管理する作業グループだ。https://www.pypa.io サイトの管理、 github, bitbucket 上でのプロジェクトのホスト、 pypa-dev メーリングリスト における議論を行っている。
- Python Package Index (PyPI)
- PyPI は Python コミュニティのデフォルト Package Index だ。全ての Python 開発者が distributions を利用、配布できる。
- Release
特定の時点における プロジェクト のスナップショット。バージョン識別子で示される。
あるリリースで複数の Distributions が公開されることもある。例えば、プロジェクトのバージョン 1.0 がリリースされたとき、source distribution 形式と Windows インストーラ distribution 形式が利用できるかもしれない。
- Requirement
- インストールする パッケージ の指定。PyPA 推奨インストーラである pip は様々な形の指定ができるが、それらは全て “requirement” とみなせる。詳しくは、pip install リファレンスを見よ。
- Requirement Specifier
- Package Index からパッケージをインストールする際、 pip に渡す指定の形式。EBNF 図は setuptools ドキュメントの pkg_resources.Requirement エントリを見よ。例えば、”foo>=1.3” は requirement specifier であり、ここで “foo” はプロジェクト名、”>=1.3” は Version Specifier である。
- Requirements File
- pip を使ってインストールできる Requirements のリストを含むファイル。詳しくは、pip ドキュメントの Requirements Files を見よ。
- setup.py
- distutils と setuptools のためのプロジェクト仕様ファイル。
- Source Archive
- リリース の生のソースコードを含むアーカイブ。Source Distribution または Built Distribution を作る前段階。
- Source Distribution (or “sdist”)
- Distribution 形式の一つで、通常
python setup.py sdist
で生成される。pip のようなツールでインストールを行ったり、Built Distribution を生成するのに必要なメタデータとソースファイルを含む。 - System Package
- オペレーティングシステムのネイティブ形式で提供されるパッケージ(例: rpm, dpkg ファイル)。
- Version Specifier
- Requirement Specifier のバージョン部分。例えば、 “foo>=1.3” の “>=1.3” の部分。PEP 440 には、Python パッケージングが現在サポートする specifiers の 完全な仕様 がある。PEP 440 のサポートは setuptools v8.0 および pip v6.0 で実装された。
- Virtual Environment
- 隔離された Python 環境。この中ではパッケージを特定アプリケーション専用にインストールでき、システムワイドにはインストールされない。詳しくは、仮想環境の作成 セクションを見よ。
- Wheel
- PEP 427 で導入された Built Distribution 形式で、 Egg 形式の置き換えを意図している。pip は現在 wheel をサポートしている。
- Working Set
- インポートできる distributions の集合。これらは変数 sys.path 上にある distributions だ。ある working set では、1 プロジェクトに対応する distribution は高々 1 つだ。