Posted at

最新のpipをvirtualenv環境で使う

More than 3 years have passed since last update.

PyConJP 2015の発表で知ったのだが、7.0以降のpipはライブラリのインストール時にsdistよりwheelを優先するようになった模様。

(参考:pipのリリースノート) http://pip.readthedocs.org/en/stable/news/

試したところ、今までだとsdistでインストールしていたパッケージの幾つか(ex. IPython)をwheelでインストールするようになっていた。これにより、virtualenv環境の作成時間が非常に短くなるのが嬉しい。


最新のpipをどうやってインストールするか

ここで示した自身の環境では、「Homebrew経由でインストールされたpip(Python)」によりVirtualenvをインストールしている。

このVirtualenvで作成した環境には「Homebrew経由でインストールされたpip」が使用されているようなので、Pythonごとpipのバージョンを上げた。


pip(Homebrew)のアップグレード

$ brew upgrade python python3


確かにこれでpipのバージョンは上がったものの、同時にPythonのマイナーバージョンを上げてしまい(3.4->3.5)、3.4のダイナミックライブラリを参照しているvimが動かない、というトラブルに見舞われた。

安全にいくならば、Virtualenvのフック機能を利用して、作成したVirtualenv環境内のpipのみアップグレードする方が良いかと思う。


~/.virtualenvs/postmkvirtualenv

...

# ついでにsetuptoolsも最新を使うようにする
pip install --upgrade setuptools
pip install --upgrade pip
...