2012-01-09 14 views
129

最低限のバージョン(pip install package>=0.2)と決してインストールしないでください(理論上のapi:pip install package<0.3)の両方でパッケージをインストールするために、pipに、特に要件ファイル内に指示する方法があるのでしょうか?最小と最大バージョンの範囲でパッケージをピップインストールするにはどうすればいいですか?

私は積極的に開発しているサードパーティのライブラリを使用しているので、私は尋ねます。私はpip要件ファイルに、常に最新の0.5.xブランチのマイナーリリースをインストールするように指定したいが、ピップが(0.6.xのような)新しいメジャーバージョンをインストールしようとは思わないようにしたい。 APIは異なります。 0.6.xブランチが利用できるにもかかわらず、開発者はパッチとバグフィックスを0.5.xブランチにリリースしているので、私の要件ファイルにスタティックpackage=0.5.9行を使用したくないため、これは重要です。

これを行う方法はありますか?

あなたが行うことができます

答えて

169

$ pip install "package>=0.2,<0.3" 

そしてpipは、少なくとも0.2であり、0.3未満のバージョンを想定して、ベストマッチを探します。

これはpip requirements filesにも当てはまります。バージョン指定子の詳細は、PEP 440を参照してください。

+0

"package> = 0.2、<0.3"も有効ですか? –

+0

はい、有効です。私の更新された答えを見て、有効なものと有効でないものの詳細を見つけてください。 –

+0

デッドリンク。公式のドキュメンテーション[here](http://www.pip-installer.org/en/latest/logic.html#requirements-file-format) – tjameson

7

あなたも使用することができます。より一貫して読みやすい

pip install package==0.5.* 

を。

+1

これは、 'requirements.txt' IMOを管理するよりはるかに良い方法です。 'package == 1. *'の代わりに 'package == 1. *'を使うと、パッケージのメジャーバージョン2+をインストールすることができなくなります。メジャーバージョンの変更はしばしば後方互換性がないので望ましいです。 –

関連する問題