[Python-Dev] Backporting ensurepip to 2.7, Which commands to install?

Geoffrey Spear geoffspear at gmail.com
Wed Oct 22 13:10:16 CEST 2014

On Wed, Oct 22, 2014 at 6:15 AM, Pekka Klärck <peke at iki.fi> wrote:
> [Replying to a mail that was sent before I joined this list. Quoting,
> headers, etc. aren't exactly right.]
> Nick Coghlan wrote:
>>On 4 October 2014 10:51, Donald Stufft <donald at stufft.io> wrote:
>>> Whoops, I misred.
>>> So to be clear, you think:
>>> install -> pip, pip2, pip2.7
>>> altinstall -> pip2.7
>> To spell out the assumption I didn't make clear when helping with the
>> backport PEP, the difference comes from PEP 394, which specifies the
>> following behaviour when installing Python itself:
>> Python 2.7: python, python2, python2.7
>> Python 3.4: python3, python3.4
>> That maps to ensurepip as:
>> Python 2.7: pip, pip2, pip2.7
>> Python 3.4: pip3, pip3.4
> I just installed Python 3.4.2 on Windows and noticed that its Scripts
> directory has these files out-of-the-box:
> easy_install.exe
> easy_install-3.4.exe.
> pip.exe
> pip3.exe
> pip3.4.exe
> Based on Nick's explanation above, having pip.exe there looks like bug
> in the installer and could easily cause a conflict with other pip
> installations. I don't understand why easy_install is included there
> in the first place, but easy_install.exe can obviously cause a similar
> conflict.

Nick's explanation is based on PEP 394, which explicitly does not
apply to Windows. The Windows Python executables are called
"python.exe" and "pythonw.exe"; no "3" has ever been part of the name
and it's not surprising that there's a matching "pip.exe". The
pip3.exe and pip3.4.exe being installed are actually the anomalies
here, but I wouldn't call them a bug.

More information about the Python-Dev mailing list