#94 Proposal: Enable Python Generators by default for EPEL8 and EPEL7
Closed: Fixed by tdawson. Opened by tdawson.

Last year Fedora enabled python generators by default for F30 builds.[1][2]
python-rpm-generators is now in both RHEL 8 and RHEL 7.7.

I propose that we enable python-generators by default for both EPEL8 and EPEL7.

This will allow Fedora python package maintainers to maintain EPEL packages easier.
It will also stop broken packages due to missing dependencies.[3]

[1] - https://fedoraproject.org/wiki/Changes/EnablingPythonGeneratorsByDefault
[2] - https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/5CFYGHOBMSIIUQX5QBCPC4R6NE42G5OE/
[3] - https://fedoraproject.org/wiki/Changes/EnablingPythonGenerators#Benefit_to_Fedora
[4] - https://bugzilla.redhat.com/show_bug.cgi?id=1757463


:thumbsup: to enabling this in EPEL 8. This will make it easier to take work from Fedora directly into EPEL 8.

+1 to enabling this in EPEL-8 and then if in a month we do not find issues enabling it in 7.

+1 from me

This passed in the EPEL board meeting. There were a few people missing from the meeting so I will wait one week before implementing this, just incase concerns come up.

Once this is in place, I'll create a pull request for our packager docs: https://pagure.io/fork/ktdreyer/packaging-committee/diff/master..py3-dep-generator-epel8

+1, fine with me (sorry I missed the meeting yesterday)

So ... I was setting things up for this, and found that RHEL 8 already has python3-rpm-generators enabled.
python2-devel requires python3-rpm-generators (yep, that's right)
platform-python-devel requires python3-rpm-generators
and python36-devel requires platform-python-devel.

And looking the root.log of the bugs, python3-rpm-generators was installed during builds.

I'm sorry about that. I could have sworn that I looked at the root.log, but I somehow missed it.

Bug has been opened with Red Hat
https://bugzilla.redhat.com/show_bug.cgi?id=1774260

So, according to the bug, it looks like RHEL8 isn't going to change.
After discussion at our last EPEL meeting, it was decided to put this into epel-rpm-macros.
After various testing, it looks like we just need to add /usr/lib/rpm/fileattrs/pythondist.attr to epel-rpm-macros.
This file doesn't conflict with anything, because it is missing in the RHEL8 python3-rpm-generators.
An updated epel-rpm-macros, with this change in it, is available in epel8-playground. After a day or two of testing there, we will move it to the regular epel8.

Successful build and testing in epel8-playground.
Build for epel8 is done and in bodhi updates.
https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-92c30fbb1e

When you enable this for EPEL 7, make sure to only glob for Python 3 files in the attr file.
The Python 2 package from RHEL 7 don't have the necessary provides.

This is now enabled and done in EPEL8, for several months. All bugs appear to have been ironed out.

There were a few concerns about rolling this out for EPEL7.
I also haven't heard any more complaints since we rolled this out for EPEL8.

Do people still want this done for EPEL7? Or are we good with just EPEL8?

I haven't heard any requests to port this to EPEL7.
I'm closing this ticket.
If someone does want to have this happen in EPEL7, they should open a new issue.

Metadata Update from @tdawson:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

This issue has been migrated to Fedora Forge:
https://forge.fedoraproject.org/epel/steering/issues/94

Please continue any further discussion there.

Metadata