<div dir="ltr"><div dir="ltr">On Tue, Feb 26, 2019 at 9:58 AM Barry Warsaw <<a href="mailto:barry@python.org">barry@python.org</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I see this question as having several parts, and the conflation of them is part of the reason why the unversioned `python` command is so problematic.  Python is used for:<br>
<br>
* OS functionality<br>
* to run applications that aren’t critical to the OS but are delivered on the OS<br>
* as the entry point to the interactive interpreter<br>
* to run applications written and deployed on the OS but completely outside of it<br>
<br>For OS functionality, there should probably be a separate command not conflated with /usr/bin/python.  The OS can make any adjustments it needs, calling it `spython` (as I think Nick once suggested), or whatever.  Nobody but OS maintainers cares what this is called or what version of Python it exposes.<br></blockquote><div><br></div><div>I'm not sure that's necessary at all -- the OS should simply use an unambiguous path!</div><div><br></div><div>I was a RedHat user way back when when in the midst of the python1.5 => 2.0 transition.</div><div><br></div><div>RedHat had a bunch of system scripts that had (I think):</div><div><br></div><div>#!/usr/bin/env python</div><div><br></div><div>In them (or maybe /usr/bin/python, but I'm pretty sure it was the env version). In any case, when you installed python2 (to local) your system scripts would ll break (even if they were python2 compatible, there wasn't a lot of difference, but RedHat also depended on extra packages...)</div><div><br></div><div>So what we had to do was install python 2, remove the "python" command that came with it, and use "python2" in all our scripts.</div><div><br></div><div>This was simply broken, and it was RedHat's fault. If they had used:</div><div><br></div><div>/usr/bin/python1.5</div><div><br></div><div>in their shebang lines, there would have been no problem. And users could still use the system python1.5 if they wanted, or install an update, or whatever.</div><div><br></div><div>My pint is:</div><div><br></div><div>Any OS that ships OS scripts that expect "python" to be a specific version (or worse, a specific install) is broken.</div><div><br></div><div>Some distros are going to ignore the PEP anyway, so there is no harm (and some good) in specifying in teh PEP the way we think it SHOULD be done, and then see what happens -- we don't need to make the PEP match current practice.</div><div><br></div><div>-CHB</div></div><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><br>Christopher Barker, Ph.D.<br>Oceanographer<br><br>Emergency Response Division<br>NOAA/NOS/OR&R            (206) 526-6959   voice<br>7600 Sand Point Way NE   (206) 526-6329   fax<br>Seattle, WA  98115       (206) 526-6317   main reception<br><br><a href="mailto:Chris.Barker@noaa.gov" target="_blank">Chris.Barker@noaa.gov</a></div></div>