[Python-Dev] [PEPs] Support the /usr/bin/python2 symlink upstream

Michael Foord fuzzyman at voidspace.org.uk
Mon Mar 7 00:04:31 CET 2011


On 06/03/2011 21:36, "Martin v. Löwis" wrote:
>> I should've mentioned that I'd like a consensus (or a lack of protest)
>> on the changes related to these snippets:
> [...]
>> -"Exclusions of MS Windows"
>
> I think you won't get consensus on that: there are strong proponents 
> and strong opponents (I think Mark being a strong proponent of such
> exclusion, and Michael being a strong opponent). 

Guido said he would like to see the PEP address Windows, although that 
requires *some* consensus.

Paul Moore was +1 on Windows being included. Mark did accept that some 
of the changes were "desirable", but was also concerned they didn't 
address all the issues on Windows. I *would* like to see all the issues 
addressed but I think that is outside the scope of this PEP.

The solution I would like to see for Windows, with other issues to be 
addressed as issues in the bug tracker:

Create version specific (i.e. python32.exe / python32w.exe) binaries 
*plus* a python3.exe / python3w.exe in the installer. Similar for Python 
2.7 if we decide to modify 2.7 for the other platforms. (Presumably the 
same also applies to 3.1?)

It would be fine for these to be binaries duplicating python.exe, or to 
be links (which will mean not supporting some filesystems and possibly 
not some versions of python).

This means that Windows users who add their Python install to the path 
will have python, python3 and python3.2 on the path. (I believe this 
means *most* Windows developers.) Which binary "python" and "python3" 
actually launch when invoked from the command line will depend which 
comes first in the path.

If the installer is enhanced to (optionally) automatically add a python 
install to the path then this should follow the "last installed wins" 
rules as file associations do currently.

An alternative solution, (perfectly acceptable to me) is that when 
python is installed on Windows "for all users" it could put "python.exe" 
*plus* the aforementioned version specific binaries into System32 which 
would automatically put them on the path. This also has the "last 
installed wins" behaviour for "python.exe" and "python3.exe". (Would it 
require installing the appropriate msvcrt into System32 as well and is 
this desirable?)

A generic Python launcher that could be used for the file association 
and honours the Unix style shebang line, delegating to the appropriate 
version of python, is an interesting idea but out of the scope of this PEP.

It would be interesting to see if Mark, or others, are strongly opposed 
to these ideas or have strong preferences. If the biggest downside is 
really that it still leaves some issues unresolved then lets do this and 
tackle the other issues separately.

All the best,

Michael






> I personally don't
> care either way much, but will only do with the Windows installer what
> the PEP tells me to do (if anything) (more precisely, I remain -0
> on changing 2.7, and +0 on changing 3.3).
>
> So it comes back to you as the PEP author to take a stance, which
> you did. It's recommended tradition to record any opposing opinions
> in the PEP, along with rebuttals, so that the same arguments aren't
> brought up over and over again. If discussion then settles, it's
> up to the PEP dictator to approve or reject the whole text.
>
> Regards,
> Martin
> _______________________________________________
> Python-Dev mailing list
> Python-Dev at python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe: 
> http://mail.python.org/mailman/options/python-dev/fuzzyman%40voidspace.org.uk


-- 
http://www.voidspace.org.uk/

May you do good and not evil
May you find forgiveness for yourself and forgive others
May you share freely, never taking more than you give.
-- the sqlite blessing http://www.sqlite.org/different.html



More information about the Python-Dev mailing list