私は、virtualenvでpipを使用して、いくつかのPythonライブラリをパッケージ化してインストールしています。
私がやっていることはかなり一般的なシナリオだと思います。私は、依存関係を明示的に指定できるいくつかのライブラリのメンテナです。私のライブラリのいくつかは、私が制御できない推移的な依存関係を持つサードパーティのライブラリに依存しています。
私が達成しようとしているpip install
のは、私のライブラリの1つで、そのアップストリームの依存関係をすべてダウンロード/インストールすることです。私がpipのドキュメントで苦労しているのは、要件ファイルがそれ自体でこれを実行できるかどうか、またはそれらが実際にを使用するための単なる補足であるかどうかですinstall_requires
。
install_requires
すべてのライブラリで依存関係とバージョン範囲を指定し、要件ファイルのみを使用して競合を解決したり、本番ビルド用にそれらをフリーズしたりしますか?
私が架空の世界に住んでいるとしましょう(私は知っています、私は知っています)、そして私の上流の依存関係は単純であり、競合したり下位互換性を壊したりしないことが保証されています。ピップ要件ファイルを使用せざるを得ないのでしょうか、それとも単にpip / setuptools / distributionにすべてをインストールさせるのinstall_requires
でしょうか?
ここにも似たような質問がたくさんありますが、どちらか一方を使うときや、両方を一緒に使うときほど基本的な質問は見つかりませんでした。