Bug 1313853 - cdbs: Provide a Python 3 subpackage
cdbs: Provide a Python 3 subpackage
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: cdbs (Show other bugs)
rawhide
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Sandro Mani
Fedora Extras Quality Assurance
: Reopened
Depends On:
Blocks: PYTHON3
  Show dependency treegraph
 
Reported: 2016-03-02 08:00 EST by Tomas Orsava
Modified: 2016-03-06 06:21 EST (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-03-06 06:21:50 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Tomas Orsava 2016-03-02 08:00:31 EST
Upstream, this software supports Python 3. Please provide a Python 3
package for Fedora.


According to the Python packaging guidelines [0], software must be
packaged for Python 3 if upstream supports it.
The guidelines give detailed information on how to do this, and even
provide an example spec file [1].

The current best practice is to provide subpackages for the two Python
versions (called "Common SRPM" in the guidelines). Alternatively, if
nothing depends on your Python2 package, you can just switch to Python 3
entirely.

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


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


[0] https://fedoraproject.org/wiki/Packaging:Python
[1] https://fedoraproject.org/wiki/Packaging:Python#Example_common_spec_file
Comment 1 Sandro Mani 2016-03-02 08:06:27 EST
I suppose this package was picked up because its source archive contains some py files? Anyhow, the package does not actually contain any python modules.

/usr/bin/cdbs-edit-patch
/usr/libexec/cdbs
/usr/libexec/cdbs/licensecheck2dep5
/usr/libexec/cdbs/list-packages
/usr/libexec/cdbs/waf-unpack
/usr/share/cdbs
/usr/share/cdbs/1
/usr/share/cdbs/1/class
/usr/share/cdbs/1/class/ant-vars.mk
/usr/share/cdbs/1/class/ant.mk
/usr/share/cdbs/1/class/autotools-files.mk
/usr/share/cdbs/1/class/autotools-vars.mk
/usr/share/cdbs/1/class/autotools.mk
/usr/share/cdbs/1/class/cmake.mk
/usr/share/cdbs/1/class/docbookxml.mk
/usr/share/cdbs/1/class/gnome.mk
/usr/share/cdbs/1/class/hbuild.mk
/usr/share/cdbs/1/class/kde.mk
/usr/share/cdbs/1/class/langcore.mk
/usr/share/cdbs/1/class/makefile-vars.mk
/usr/share/cdbs/1/class/makefile.mk
/usr/share/cdbs/1/class/pd.mk
/usr/share/cdbs/1/class/perl-build-vars.mk
/usr/share/cdbs/1/class/perl-build.mk
/usr/share/cdbs/1/class/perl-makemaker-vars.mk
/usr/share/cdbs/1/class/perl-makemaker.mk
/usr/share/cdbs/1/class/perl-vars.mk
/usr/share/cdbs/1/class/perlmodule-vars.mk
/usr/share/cdbs/1/class/perlmodule.mk
/usr/share/cdbs/1/class/python-autotools.mk
/usr/share/cdbs/1/class/python-distutils.mk
/usr/share/cdbs/1/class/python-module.mk
/usr/share/cdbs/1/class/python-sugar.mk
/usr/share/cdbs/1/class/python-vars.mk
/usr/share/cdbs/1/class/qmake.mk
/usr/share/cdbs/1/class/scons-vars.mk
/usr/share/cdbs/1/class/scons.mk
/usr/share/cdbs/1/class/waf.mk
/usr/share/cdbs/1/rules
/usr/share/cdbs/1/rules/buildcore.mk
/usr/share/cdbs/1/rules/buildvars.mk
/usr/share/cdbs/1/rules/debhelper.mk
/usr/share/cdbs/1/rules/dpatch.mk
/usr/share/cdbs/1/rules/simple-patchsys.mk
/usr/share/cdbs/1/rules/tarball.mk
/usr/share/cdbs/1/rules/upstream-tarball.mk
/usr/share/cdbs/1/rules/utils.mk
/usr/share/doc/cdbs
/usr/share/doc/cdbs/TODO
/usr/share/licenses/cdbs
/usr/share/licenses/cdbs/COPYING
/usr/share/man/man1/cdbs-edit-patch.1.gz
Comment 2 Petr Viktorin 2016-03-02 08:17:47 EST
I expect that it was picked up because of /usr/libexec/cdbs/waf-unpack, which does have a Python shebang. This drags in python2 as a dependency.
Comment 3 Sandro Mani 2016-03-02 08:20:42 EST
Indeed. That should be okay though, assuming the script also works with python3, right?
Comment 4 Petr Viktorin 2016-03-02 08:29:35 EST
Currently, a Fedora install always has a py3 interpreter (since dnf depends on it). Python 2 is not in the default install, it's only installed with individual packages that require it.
Since the cdbs RPM now depends on Python 2, chances are that installing it will pull in an extra interpreter. Changing the shebang to #!/usr/bin/python3 would prevent this.
Comment 5 Sandro Mani 2016-03-02 10:54:04 EST
Ah ok, I see now that /usr/bin/python will keep pointing to python2. I'll change the shebang.
Comment 6 Sandro Mani 2016-03-06 06:21:50 EST
cdbs-0.4.130-4.fc25 built.

Note You need to log in before you can comment on or make changes to this bug.