Bug 1776941

Summary: python-rpm-generators: Adjust for python38 packages
Product: Red Hat Enterprise Linux 8 Reporter: Tomas Orsava <torsava>
Component: python-rpm-generatorsAssignee: Python Maintainers <python-maint>
Status: CLOSED CURRENTRELEASE QA Contact: Lukáš Zachar <lzachar>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 8.2CC: lbalhar, pviktori, sturivny, torsava
Target Milestone: rc   
Target Release: 8.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-rpm-generators-5-6.el8 Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-03-26 10:24:34 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: 1678797, 1747329    

Description Tomas Orsava 2019-11-26 15:42:47 UTC
The non-modular component python-rpm-generators contains machinery that automatically generates Provides and Requires tags for all Python RPM packages (Python 3.6 and Python 2.7).

However, the Provides and Requires tags that need to be generated for new Python 3.8 packages in the python38 module are different.

Thus we need to set the non-modular component python-rpm-generators to ignore Python 3.8 packages. This should be a non-invasive change with respect to other RHEL8 packages.

Comment 1 Lukáš Zachar 2019-11-27 15:50:25 UTC
TlDr: python38 (sub)packages and packages build with python38 cannot provide 'python3dist(*)'.
Such packages can and should contain provide 'python38dist(*)
Reason being it is added only for the _main_ python of the distro.

Acceptance criteria:
- All packages of python38 module provide 'python38dist(*)'
- No package of python38 module provide 'python3dist(*)'
- Package build using python38 module provide 'python38dist(*)'
- Package build using python38 module does not provide 'python3dist(*)'
- Python36 is not affected so still holds that
  - Package build using platform-python does provide 'python3dist(*)'

Comment 2 Tomas Orsava 2019-11-27 15:55:58 UTC
(In reply to Lukáš Zachar from comment #1)
> TlDr: python38 (sub)packages and packages build with python38 cannot provide
> 'python3dist(*)'.
> Such packages can and should contain provide 'python38dist(*)

Just a small correction, it's `python3.8dist(*)`.

> Reason being it is added only for the _main_ python of the distro.
> 
> Acceptance criteria:
> - All packages of python38 module provide 'python38dist(*)'

I would say *most* packages. There are a few packages that don't have EGG/DIST-INFO and thus don't generate the Provides, which is acceptable. However, most packages should have it.


> - No package of python38 module provide 'python3dist(*)'
> - Package build using python38 module provide 'python38dist(*)'
> - Package build using python38 module does not provide 'python3dist(*)'
> - Python36 is not affected so still holds that
>   - Package build using platform-python does provide 'python3dist(*)'

+1!

Comment 3 Tomas Orsava 2019-11-28 12:13:31 UTC
Modified the name to reflect the nature of the bug better.

Comment 5 Tomas Orsava 2019-12-12 16:34:11 UTC
*** Bug 1680745 has been marked as a duplicate of this bug. ***

Comment 6 sturivny 2020-01-22 14:30:08 UTC
I see that gating.yaml file exists and valid
https://src.osci.redhat.com/rpms/python-rpm-generators/raw/rhel-8.2.0/f/gating.yaml
package is gated by test-cases: ['baseos-ci.brew-build.tier1.functional']

Moving this bug to CLOSED state with resolution CURRENTRELEASE

Comment 7 Lukáš Zachar 2020-01-31 10:19:36 UTC
Reopening as this is not a gating bug but a proper feature one.

Comment 9 sturivny 2020-03-26 10:24:34 UTC
Close this bug. This package is gated and has valid gating.yaml