[Python-Dev] PEP 397 (Python launcher for Windows) reference implementation (original) (raw)

Paul Moore p.f.moore at gmail.com
Sun Jul 3 17:39:07 CEST 2011


On 30 June 2011 13:50, Paul Moore <p.f.moore at gmail.com> wrote:

On 30 June 2011 12:13, Michael Foord <fuzzyman at voidspace.org.uk> wrote:

I have that email (the update one from Mark not the silent nodding from Tim) still sitting in my inbox waiting for me to properly read through and comment on... Sorry for being useless, I'll try and move it up the priority list.

I really like the PEP and think it will be a huge step forward for Windows users - so it's purely the details that need thrashing out (heh). That's my situation, too. I'll try to look through it properly in the next day or two.

OK, having looked through this, it looks pretty solid to me. I might try installing Vinay's implementation and seeing how it feels in use, as well...

On restoring associations, I think it's entirely reasonable not to bother. It would be nice if py.exe remained installed as long as any (all-users) Python installation remained on the PC, but this may be complicated (given that older versions won't uninstall it) so maybe don't even bother with that.

Actually, I'd question whether this shouldn't be packaged as a separate application, available as an independent download from python.org (I do think it's important enough to be hosted on python.org rather than PyPI, though). Future versions of python could bundle it as well, but that could be purely for convenience and to ensure that users don't miss it.

If Python does bundle it, then I'd suggest that it remain a separate item in add/remove programs. That allows the user to choose whether to uninstall it or not. As py.exe and python live in separate directories (except in per-user installs) the installers don't have any nasty interactions like who deletes the directory to worry about. If you want to bother with an "active installation count" mechanism (whether SharedDLLs or a simple count/listing in the py.ini file, or something else) then when the count hits "No", just offer the user the choice to uninstall as part of the Python uninstall.

I'd be inclined not to worry too much about per-user installations. Are per-user file associations possible? I've never used them, myself. As a simple approach, just install py.exe alongside python.exe in the user dir, don't worry about it being on PATH or having a separate add/remove programs item, and let the user do what he wants with it. Of course, if someone with more experience of per-user installs and the sorts of environment where they are needed wants to suggest something different, believe them rather than me!

Basically, my feeling is that the core functionality is fine. Nothing in this will make life worse for anyone, so we can safely leave corner cases to be addressed later (with a standalone release, if it's urgent enough).

Paul.



More information about the Python-Dev mailing list