On 06/19/2017 10:50 AM, Iryna Shcherbina wrote:
The reason behind the second change is that there are a lot of Python
2 only packages having `python-xxx` in Requires, which will start
pulling Python 3 dependencies when we switch to Python 3 as default.
This will most possibly cause a number of unexpected issues, which is
what we are trying to avoid.
If you expect your package to work when we switch to Python 3 as
default, then you should already switch it to Python 3 or provide a
Python 3 subpackage and depend on `python3-xxx`.
It seems to me that there are two kinds of Python packages affected by
this issue: some track the evolution of the ecosystem and make sure they
work with both Python 2 and 3, while the others assume a specific
environment, and expect the user to conform to that. What I dislike
about this proposal is that it imposes on the first kind: their package
name needs to change, presumably to 'pyton3-xxx' even though the package
might work with python2 as well. This sounds like penalizing the good
behavior.
Is it possible to modify the proposal scope to only affect the Python
2-only packages? I realize that it makes it harder to police compliance,
but the sanction is that the stragglers will fail, and will need to get
fixed by either porting, or specifying better Requires.
In the end, I think the right approach should be to choose which
approach results in less overall work to the packagers: a big mandatory
upfront change, or voluntary incremental mods, and mopping up the
problems when they start showing up.
Iryna
On 06/19/2017 04:11 PM, Tom Hughes wrote:
On 19/06/17 14:59, Iryna Shcherbina wrote:
Recently, there were two important changes to Python packaging
guidelines. The first one bans usingtheambiguous `python` prefix in
binary RPM package names [1]. Thus you must explicitly
definethePython version by using either `python2-` or `python3-`.
The second change bans depending on anything using the ambiguous
`python-` prefixed names in (Build)Requires [2].
I don't understand the logic behind the second change with regard to
Requires, or at least I think there are cases where it makes no sense.
If I have a package with a python script using #!/usr/bin/python and
importing xxx then isn't python-xxx the correct thing to require so
that it will continue to behave correctly when we switch to python 3
as default?
If I change it to python2-xxx then I'll just have to change it again
when we switch the default?
Tom
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org