[Distutils] Expectations on how pip needs to change for Python 3.4

Donald Stufft donald at stufft.io
Sat Jul 13 22:14:22 CEST 2013

On Jul 13, 2013, at 3:59 PM, Paul Moore <p.f.moore at gmail.com> wrote:

> On 13 July 2013 19:24, Donald Stufft <donald at stufft.io> wrote:
> 2. This sounds like something that needs fixed on Windows. Even if you say ``-m`` for pip then things are still broken by default for any other package on PyPI that installs a script. So this feels like something wrong with Python on windows not wrong with the script approach.
> It is, and it should be fixed. But in many years, nobody has managed to come up with an acceptable solution. The debates seem to be largely around what happens if you install multiple versions of Python and then remove some of them, and how badly your system PATH gets messed up by this. I don't know how many people actually do things like that, but nevertheless it's never been sorted out. (Not all of the arguments are trivial, either, there are some genuinely difficult issues to resolve, IIRC).
> Ultimately, I guess there are a few options:
> * Accept that Windows is a problem in this regard, but don't worry about it - install executable wrappers/scripts and let the user deal with path issues.

Ultimately I think this is what the community is going to do regardless of what happens here unless we remove the command line tools all together.

> * Promote "python -m pip" as a least common denominator approach, and mildly irritate people who don't use Windows (they can still use the commands, but the docs look odd to them).

This also has the problem where the existing documentation (project READMEs etc) are pointing to ``pip``. So it fractures the documentation about what the command "should" be.

> * Only provide "python -m pip" and seriously annoy people who don't use Windows.

Also invalidate all the existing documentation :)

> * Document the difference, which implies either a certain level of repetitious "pip install (or py -m pip install on Windows)" type of thing, or a high level "For Windows, the pip command is not available directly, you should use ``python -m pip`` in its place (or wrap this in the shell if you prefer)" which people may miss.

This is probably the most realistic approach, at least in my eyes. If the Scripts directory isn't available on windows people are going to need to know to either add it or execute it with python -m pip and that's going to include documentation outside our control. So given that there s a lot of existing documentation around ``pip`` and people are likely to continue that practice windows users will need to know that when random projects say to do ``pip install foo`` they need to translate that too ``python -m pip foo``.
> It would be nice to get feedback from "normal users" on this. I suspect that the scientific community would make a good cross-section (AIUI there's quite a lot of Windows use, and for many people in the community Python is very much a tool, rather than a way of life :-)). Does anyone have links into the scipy groups? I lurk on the IPython lists, so I could ask there, at a pinch…

I don't know any windows users off hand except for you ;) (And you already said you use ``pip`` and not ``python -m pip`` which already works with pip :)

> Paul.

Donald Stufft
PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20130713/771408d7/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 841 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20130713/771408d7/attachment.pgp>

More information about the Distutils-SIG mailing list