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 you need more instructions, a guide for porting Python-based RPMs is available at [2]. 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 [2] http://python-rpm-porting.readthedocs.io/
Created attachment 1186155 [details] Spec file patch to provide Python 3 subpackage
Created attachment 1186156 [details] Updated spec file Changelog correction
Created attachment 1187101 [details] Updated spec file Hi Tomáš, may I ask you to review the updated spec file patch which I have adjusted according to the request of Matthias (bug #1311552)? Thank you.
Hi Jan! The patch looks great, there's just one tiny detail: In the original spec file, in the %prep section there's the following: # Remove bundled egg-info rm -rf %{pypi_name}.egg-info That's usually a good idea, because the .egg-info gets generated anew during the build. Therefore I suggest leaving this line in the spec file. Apart from that, everything looks superb!
Hi Tomáš, thanks for your review. As I understand from the recommendation of Matthias (bug #1311552), if %autosetup replaces %setup then "rm -rf %{pypi_name}.egg-info" command is not required any more.
Oh, I did not know that, my apologies! In that case, the patch looks good to me!
Jan, Tomas, %autosetup replaces %setup. I don't remember the reasons. Removing the upstream provided egg-info is discouraged anyways. That was a change around 2 years ago, driven by kchamart, but neither he nor me remember the the reasons for that anymore. The recommendation to remove egg-info has been removed from python packaging guidelines then.
Difference between %setup and %autosetup is, that autosetup applies patches listed in %patch???.
Hello Matthias. Yes, differences between %setup and %autosetup are: - %autosetup applies patches (Patch0, Patch1 ...) automatically - %autosetup has option -q (quiet) enabled by default
If maintainer has nothing against, we can push this reviewed patch after a week.
(In reply to Lumír Balhar from comment #10) > If maintainer has nothing against, we can push this reviewed patch after a > week. Which patch are you speaking of? The last patch is marked obsolete here.
(In reply to Matthias Runge from comment #11) > (In reply to Lumír Balhar from comment #10) > > If maintainer has nothing against, we can push this reviewed patch after a > > week. > > Which patch are you speaking of? The last patch is marked obsolete here. I believe you are mistaken, the last patch [0] is not obsoleted. [0] https://bugzilla.redhat.com/attachment.cgi?id=1187101
committed the patch and fixed the build afterwards, mrunge's python-django-pyscss-2.0.2-4.fc26 completed http://koji.fedoraproject.org/koji/buildinfo?buildID=795604 Thanks!