Bug 1391134

Summary: python-cotyledon: python2-cotyledon-tests requires both Python 2 and Python 3
Product: [Fedora] Fedora Reporter: Dominika Krejčí <dkrejci>
Component: python-cotyledonAssignee: Pradeep Kilambi <pkilambi>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 26CC: apevec, pkilambi, pviktori
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-05-03 16:17:38 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1285816    

Description Dominika Krejčí 2016-11-02 15:47:52 UTC
The python2-cotyledon-tests RPM requires both Python 2 and Python 3.

Except in very special circumstances, there is no need for one package
to drag in both Python stacks. Usually, this is a packaging error: for
example, a stray "/usr/bin/python" shebang in a Python 3 package can
introduce a Python 2 dependency.

Please split your package, or remove the stray dependencies.
There is a section on shebangs in the Python RPM Porting Guide [0]
which covers this issue.

It's ok to do this in Rawhide only, however, it would be greatly
appreciated if you could push it to Fedora 25 as well.


If anything is unclear, or if you need any kind of assistance, you can
ask on IRC (#fedora-python on Freenode), or reply here. We'll be happy
to help investigating or fixing this issue!


[0] http://python-rpm-porting.readthedocs.io/en/latest/application-modules.html#are-shebangs-dragging-you-down-to-python-2

Comment 1 Dominika Krejčí 2016-11-23 14:16:52 UTC
Hi Pradeep,
how is it going? Do you need some help?

Comment 2 Pradeep Kilambi 2016-11-23 16:02:22 UTC
Thanks, yea sounds like a packaging issue. I'll look into it.

Comment 3 Pradeep Kilambi 2016-11-24 23:48:00 UTC
I looked at the spec and tried a few things, i'm not quite sure where python3 is sneaking in. In the spec I have:


%package -n python2-%{pypi_name}-tests
Summary:          Cotyledon provides a framework for defining long-running services
Requires:         python-%{pypi_name} = %{version}-%{release}
Requires:         python-oslotest
Requires:         python-testrepository
Requires:         python-testscenarios
Requires:         python-testtools

as seen, there is no python3 specific requires here. I also changed the python-* to python2* in requires to see if that makes any diff.

but when i build, i see:

$ rpm -qRp ~/rpmbuild/RPMS/noarch/python2-cotyledon-tests-1.2.7-3.fc25.noarch.rpm
/usr/bin/python3
python(abi) = 2.7
python-cotyledon = 1.2.7-3.fc25
python-oslotest
python-testrepository
python-testscenarios
python-testtools
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1


I'll keep poking around. If anybody has any further info lemme know.

Comment 4 Pradeep Kilambi 2016-12-01 20:04:28 UTC
the newest build of 1.6.3 fixes this issue:

$ rpm -qRp /home/pkilambi/rpmbuild/RPMS/noarch/python2-cotyledon-tests-1.6.3-1.fc25.noarch.rpm
python(abi) = 2.7
python-cotyledon = 1.6.3-1.fc25
python-oslotest
python-testrepository
python-testscenarios
python-testtools
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1

https://koji.fedoraproject.org/koji/taskinfo?taskID=16698218

Comment 5 Fedora End Of Life 2017-02-28 10:32:52 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 26 development cycle.
Changing version to '26'.

Comment 6 Fedora End Of Life 2018-05-03 08:25:47 UTC
This message is a reminder that Fedora 26 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 26. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '26'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not
able to fix it before Fedora 26 is end of life. If you would still like
to see this bug fixed and are able to reproduce it against a later version
of Fedora, you are encouraged  change the 'version' to a later Fedora
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.

Comment 7 Petr Viktorin (pviktori) 2018-05-03 16:17:38 UTC
It's fixed already. Thank you, Pradeep!