Bug 1848938
| Summary: | EL8 build unexpectedly drags Python 3.8 macros | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | Marc Dequènes (Duck) <duck> |
| Component: | python38 | Assignee: | Python Maintainers <python-maint> |
| Status: | CLOSED NOTABUG | QA Contact: | RHEL CS Apps Subsystem QE <rhel-cs-apps-subsystem-qe> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 8.2 | CC: | cstratak, james.antill, mhroncok, ngompa13, praiskup, tdawson |
| Target Milestone: | rc | Keywords: | Reopened |
| Target Release: | --- | Flags: | pm-rhel:
mirror+
|
| 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: | 2020-06-25 10:38:40 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: | |||
This is happening because your build environment doesn't have a newer epel-rpm-macros package. This was fixed in epel-release-8-11, which is available on the mirror network, but apparently not on the mirror your copr build used. Bleck, I mean epel-rpm-macros-8-11, not epel-release-8-11... Clearly it's far too late at night for me to be writing responses. :) Hmm. I thought I already flipped this bug against dnf, perhaps some mid-air collision rejected my change. Sorry for the late reply. Installing: python38-rpm-macros noarch 3.8.0-6.module_el8.2.0+317+61fa6e7d AppStream 66 k Enabling module streams: python38 3.8 Is it really OK to enable modules by simply installing python38-rpm-macros package? Yes, it's expected. When a stream is default, its packages are available and installing them enables the stream. python38:3.8 is a default stream on RHEL. This seems to be a packaging issue in the package you're trying to build, something related to comment#1 or there could be a problem with python packages sharing the same provides. Reassigning to python so the devs can check what could be wrong. If you wish to build Python 3.6 package, buildrequire python36-rpm-macros.
If you wish to build Python 3.8 package, buildrequire python38-rpm-macros.
EPEL macros already should have a workaround in place that prefers python36-rpm-macros if you have not specified the macros explicitly.
> Is it really OK to enable modules by simply installing python38-rpm-macros package?
Define OK. This is how default modular streams were designed.
The EPEL workaround is https://src.fedoraproject.org/rpms/epel-rpm-macros/c/307b3330c011d723855096ae4c80d715abad481c?branch=epel8 -- it ws built in https://koji.fedoraproject.org/koji/buildinfo?buildID=1525373 bu there is no update. Troy, could you plese ship this? When I built it, bodhi wasn't working with authentication. It's working now. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2020-790135c4fa Thanks, Troy. It went in and it is now working fine, thanks a lot all of you :-). BTW From my point of view, this is still an usability bug for RHEL 8. It is only fixed in EPEL. Agreed, it should at least be fixed in 8.3. Thanks to everyone for their input in getting this fixed. I am closing this bug. (In reply to Miro Hrončok from comment #10) > BTW From my point of view, this is still an usability bug for RHEL 8. It is > only fixed in EPEL. Sorry about that. This has been going on so long, and I have so many other EPEL tickets, I thought this was one of them. Don't worry about it. Thanks for the EPEL fix! I stand corrected. The only reason the macros were pulled in originated in EPEL, where this is now fixed. Sorry for the noise. |
Description of problem: Build 1487441 for @pizza-cats/mailman3-rpm-repo-api-3.1 on EL8 fails because it tries to use Python 3.8. It's true since 8.2 it is possible to use 3.8 aside the default 3.6 but it needs to be activated. Here I can see the builder install python38-rpm-macros but the spec file did not request this, only python%{python3_pkgversion}-* BuildRequires, thus only 3.6 build dependencies. The log shows the `python38` module stream is enabled but I think this should be not be the default unless Python 3.8 BuildRequires are detected. Version-Release number of selected component (if applicable): How reproducible: While fixing some warnings I saw this was reproducible but did not attemps on other packages yet. Actual results: Build tries to use Python 3.8. Expected results: Build should stick to the default EL8 Python version unless BuildRequires contains Python 3.8 build dependencies. Additional info: full log: https://download.copr.fedorainfracloud.org/results/@pizza-cats/mailman3-rpm-repo-api-3.1/epel-8-x86_64/01487441-python-pytest-services/builder-live.log.gz