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

Nick Coghlan ncoghlan at gmail.com
Wed Oct 16 00:44:04 CEST 2013

On 16 Oct 2013 08:39, "Paul Moore" <p.f.moore at gmail.com> wrote:
> On 15 October 2013 23:17, Paul Moore <p.f.moore at gmail.com> wrote:
> > 1. Use bin instead of Scripts (which means changing sysconfig and
> > possibly distutils or 3rd party tools that hard code the name rather
> > than using sysconfig).
> By the way, I just did a scan. The following from the cpython repo
> will need to change:
> 1. The sysconfig schemes
> 2. distutils/commands/install.py (hard coded INSTALL_SCHEMES variable)
> 3. PC\bdist_wininst\install.c (SCHEME variables hard code Scripts as
> the target for the SCRIPTS section)
> 4. venv (already noted) code and tests
> 5. Documentation
> 6. The installer scripts in Tools\msi\msi.py
> Also, as a result of (3) existing wininst installers will not install
> correctly on Python 3.4+ (they'll put their scripts in "Scripts"
> still). So projects will need to distribute separate installers for
> Python <= 3.3 and 3.4+ if they contain scripts. (This problem goes
> away in the long term if everyone switches to wheels, of course).

The installer compatibility issue is enough to convince me to drop the
directory name change from PEP 453.

I'll redefine that part of the PEP in terms of sysconfig.


> I don't know if bdist_msi has similar issues. That code is not
> something I understand. There's no mention of the Scripts directory so
> I suspect item (2) will take care of building bdist_msi installers.
> But I don't know if they will have the runtime issue that wininst has
> of installing to whatever scripts directory the build was done on,
> rather than the one appropriate for the Python being installed to.
> Paul
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20131016/6797b988/attachment.html>

More information about the Distutils-SIG mailing list