Fedora 28 - python warnings

Richard Laager rlaager at wiktel.com
Sat May 12 02:51:17 UTC 2018


On 05/11/2018 09:06 PM, Gary E. Miller via devel wrote:
>>>> The system default is Python 2. The distro doesn't want to change
>>>> this, for backwards compatibility reasons. The distro wants to move
>>>> as many applications as possible to use Python 3. These both seem
>>>> like reasonable positions to me.  
>>>
>>> Sigh.  Not to me.  

^^ Here you disagreed, saying they're not reasonable positions.

>> Are you objecting to backwards compatibility with existing scripts,
>> wanting as many applications running on Python 3 as possible, or both?
> 
> Niether.

^^ Here you said you don't object to either position.

>>> You want to install NTPsec in a way that it is not
>>> fully useable by the user with the default python?
>>> Not good.  That will create a ton of support issues.  
>>
>> I care that running `ntpq` works. I do not care of `python
>> /usr/bin/ntpq` works, as that is not how users run it.
> 
> Once again, missed my point.

What's your concern about "not fully usable" or "support issues" then?
Running `ntpq` and all of the other executables work just fine with the
shebangs pointed to /usr/bin/python3.

>> You're insisting that all packaged applications must use the default
>> Python version and shall not be modified to use a non-default Python
>> version.
> 
> Uh, no.  Missed my point.
Okay, point out where I've gone wrong specifically:

1) You have an on-going objection to people using:
#!/usr/bin/python3

2) You insist that the shebang must remain:
#!/usr/bin/env python

3) We can ignore the env bit as we're disagreeing only or primarily
about python3 vs python:

#!/usr/bin/env python3
vs
#!/usr/bin/env python

and

#!/usr/bin/python3
vs
#!/usr/bin/python

4) We agree that `python` is the system default version of Python.

5) On Fedora, Debian, Ubuntu, and stock upstream Python, that system
default version is Python 2, implemented by way of a python symlink to,
for example, `python2.7`.

6) If every Python application on the system followed your policy of
using `/usr/bin/env python`, then all Python applications on the system
are using the system default version of Python.

7) If everything is using the system default version of Python, then
there is basically no point in having multiple versions of Python be
co-installable.

8) This is an absurd result, given that everyone from upstream through
the distro has gone to extra work to make `python2` and `python3`
co-installable. The obvious intention is that they think one might want
to use both at the same time.


You keep repeating that NTPsec conforms to upstream Python's policy, not
Debian's. That's fine as stated in isolation, and I agree with that
statement as written.

But applied to this particular situation, you have failed to show how
`#!/usr/bin/python3` violates upstream Python's policy. Upstream Python,
out of the box, installs a python3 executable. Why can't we use it in a
shebang when we want to specify Python 3?

-- 
Richard

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ntpsec.org/pipermail/devel/attachments/20180511/c92429bf/attachment.bin>


More information about the devel mailing list