[Distutils] PEP 453 - virtualenv change to Scripts/bin directory

Paul Moore p.f.moore at gmail.com
Tue Oct 15 22:20:59 CEST 2013

On 15 October 2013 20:31, Paul Moore <p.f.moore at gmail.com> wrote:
> On 15 October 2013 19:25, Ned Deily <nad at acm.org> wrote:
>> It might be worthwhile reviewing the discussion that took place on python-dev
>> last year when Van Lindberg proposed changing the Windows file layout,
>> including the scripts path.
>> https://mail.python.org/pipermail/python-dev/2012-March/117552.html
> Thanks, I thought this had come up before. As the PEP 453 (bundling
> PIP) proposal was originally made by Nick, maybe he would like to
> check that any issues covered there are addressed. Personally, I'm
> going to focus on the implied virtualenv change, on the assumption
> taht PEP 453 is accepted with the Scripts->bin change included (which
> is not to say that I won't read that thread, just that I don't
> personally have any means to change the PEP itself).

I've read a reasonable chunk of that thread. The things that struck me were:

1. It's very confused between a number of proposals, making it
extremely hard to identify which arguments apply to a simple
Scripts->bin renaming (both at the time, and now in hindsight).
2. As far as I can see, on the subject of Scripts->bin, the thread
from python-dev was essentially neutral, nobody could see a benefit
that justified the cost. (PEP 453 doesn't say much on the benefits,
either, FWIW).

By the way, PEP 453 is actually misleading in one respect, distutils
(and setuptools) installs scripts to PythonXY\Scripts (which is
created on first use, not at install time), it's only the
core-supplied scripts that go into PythonXY\Tools\Scripts.

Personally, I'd like to see a better justification than "to improve
consistency". I'd also like the point that the *existing* Scripts
directory (managed by distutils/setuptools installs) will have the
contents of Tools/Scripts dumped into it made explicit and discussed.
(For example, there's a diff.py in Tools/Scripts. Will the new bin
directory be put at the start or end of PATH? If I have .py in my
PATHEXT that matters to me, as diff.py could end up overriding my
existing diff.exe). And I'd like to see the actual patch that
implements the Scripts->bin change - I suspect that it would benefit
from careful review.

Overall, I'm -0 on the proposal, The arguments either way are weak,
and I don't see why backward compatibility is being ignored quite so
calmly. It is entirely peripheral to the PEP as far as I can see, and
not worth including in there.

But once again, that's separate from my point here, which is that I
need to collect information on whether virtualenv users will be
impacted by the corresponding change in virtualenv.

I suggest that virtualenv comments remain on distutils-sig, but
comments on the PEP proposal to rename Scripts be redirected to
python-dev which is where the PEP discussion is taking place. I
*haven't* cross-posted to python-dev, because that would only start a
2-list thread, but can people redirect appropriately any responses?


More information about the Distutils-SIG mailing list