Upgrade to latest version of pip

I just spent four hours debugging a boto3 issue, the root cause of which is running pip install --target on older versions of pip ends up installing multiple versions of the same library in subdirectories, e.g. run pip install --target lib requests and you get lib/requests, then run it again and you get lib/requests/requests, and so on, and so forth.

The default version of pip that comes with the python 2.7.10 machine is 1.4.1; the latest version of pip is 8.1.1. It would be nice if the machine came with a newer version.

Here’s one of the two error reports I filed. https://github.com/kennethreitz/requests/issues/3102

I should also mention that you really, really should want to use a newer version; pip 1.4 does not attempt to validate TLS connections, which would allow anyone to man-in-the-middle the connection between CircleCI and pypi.

Furthermore pip 8 contains much better support for retrying failed or dropped TCP connections, as well as much better package cache management, which should reduce the bandwidth requirements on your end.

Are you using the Ubuntu 12.04 image? If it’s acceptable to switch, the Ubuntu 14.04 image on Circle comes with pip 8.1.1 installed by default (for Python 2.7.10).

You can switch build environment in the settings for your project. Does that help?

I had no idea that was an option. I’m surprised that I wasn’t defaulted to the newest, best thing.

(it would also be nice if the Python documentation mentioned this)