<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 16 November 2017 at 05:29, Zachary Ware <span dir="ltr"><<a href="mailto:zachary.ware+pydev@gmail.com" target="_blank">zachary.ware+pydev@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Wed, Nov 15, 2017 at 1:07 PM, Steve Dower <<a href="mailto:steve.dower@python.org">steve.dower@python.org</a>> wrote:<br>
> My preferred solution for this is to rename "py.exe" to "python.exe" (or<br>
> rather, make a copy of it with the new name), and extend (or more likely,<br>
> rewrite) the launcher such that:<br>
><br>
> * if argv[0] == "py.exe", use PEP 514 company/tag resolution to find and<br>
> launch Python based on first command line argument<br>
> * if argv[0] == "python<numeric tag>.exe", find the matching<br>
> PythonCore/<tag> install (where tag may be a partial match - e.g.<br>
> "python3.exe" finds the latest PythonCore/3.x)<br>
> * else, if argv[0] == "<module><numeric tag>.exe, find the matching<br>
> PythonCore/<tag> install and launch "-m <module>"<br>
><br>
> With the launcher behaving like this, we can make as many hard links as we<br>
> want in its install directory (it only gets installed once, so only needs<br>
> one PATH entry, and this is C:\Windows for admin installs):<br>
> * python.exe<br>
> * python2.exe<br>
> * python3.exe<br>
> * python3.6.exe<br>
> * pip.exe<br>
> * pip2.exe<br>
> * pip3.exe<br>
<br>
I haven't been following this thread closely, but this sounds lovely.<br>
I'm not terribly keen on cluttering up C:\Windows with this, but<br>
that's a minor issue.<br></blockquote><br></div>I'd missed Steve's post before writing my last one. This sounds like a really nice technical solution to me, too, especially as it will handle Python 2 as well (even for Python 2 only systems, the launcher is available as an independently installable executable).</div><div class="gmail_extra"><br></div><div class="gmail_extra">Regardless of the underlying implementation details though, a PEP would be a helpful way of writing it up so we can make sure <a href="http://packaging.python.org">packaging.python.org</a> and other resources properly account for it.<br clear="all"></div><div class="gmail_extra"><br></div><div class="gmail_extra">Cheers,</div><div class="gmail_extra">Nick.<br></div><div class="gmail_extra"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">Nick Coghlan | <a href="mailto:ncoghlan@gmail.com" target="_blank">ncoghlan@gmail.com</a> | Brisbane, Australia</div>
</div></div>