[Distutils] What does it mean for Python to "bundle pip"?
Steve Dower
Steve.Dower at microsoft.com
Tue Aug 20 17:10:14 CEST 2013
Oscar Benjamin wrote:
> Paul wrote:
>> Given that the installer includes the py.exe launcher, if you leave the
>> defaults, then at a command prompt "python" doesn't work. But that's fine,
>> because "py" does. And if you have multiple versions of Python installed, you
>> don't *want* python on PATH, because then you have to manage your PATH. Why
>> bother when "py -2.7" or "py -3.3" does what you want with no path management?
>> Once you want any *other* executables, though, you have to deal with PATH
>> (especially in the multiple Pythons case). That is a new issue, and one that
>> hasn't been thought through yet, and we don't have a good solution.
>
> From a user perspective I think that 'py -3.4 -m pip ...' is an improvement as
> it means I can easily install or upgrade for a particular python installation (I
> tend to have a few). There's no need to put Scripts on PATH just to run pip. I
> think this should be the recommended invocation for Windows users.
Crazy idea:
py install <other args>
(or 'py --install ...', but I think 'py install' is currently invalid and could be used?)
which the launcher executes identically to:
py -m pip install <other args>
(Implicitly extended to other relevant commands... I'm not proposing a complete list.)
Pros:
* allows implicit bootstrapping on first use (from a bundled pip, IMO, in case no network is available)
* multiple Python versions are handled nicely and consistently ('py -3.3 install ...')
* can minimize officially supported API surface (as Paul described at the start of this thread)
* pip becomes an internal implementation detail that can be entirely replaced
* one less character of typing (slightly tongue-in-cheek, but some people count :) )
Cons:
* doesn't apply on *nix (or does/could it?)
* requires the most new code of any of the options
* more difficult to update the launcher than a user-installed package
* others that I can't think of because I'm suffering from confirmation bias?
Thoughts?
Cheers,
Steve
More information about the Distutils-SIG
mailing list