Bug 2260169

Summary: Spurious warning 'W: python-missing-require' when inspecting Python package
Product: [Fedora] Fedora Reporter: Sandro <gui1ty>
Component: rpmlintAssignee: Miro Hrončok <mhroncok>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 39CC: j, mhroncok, spotrh, twoerner
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: rpmlint-2.5.0-5.fc40 rpmlint-2.5.0-5.fc39 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-01-27 01:29:37 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Sandro 2024-01-24 19:23:12 UTC
After updating to version 2.5.0 of rpmlint, I'm seeing false warning when inspecting Python RPM packages:

rpmlint: 2.5.0
configuration:
    /usr/lib/python3.12/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-legacy-licenses.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
checks: 32, packages: 2

fawltydeps.noarch: W: python-missing-require importlib_metadata
fawltydeps.noarch: W: python-missing-require isort
fawltydeps.noarch: W: python-missing-require pip-requirements-parser
fawltydeps.noarch: W: python-missing-require pydantic
fawltydeps.noarch: W: python-missing-require setuptools

Downgrading rpmlint to 2.4.0 makes this go away:

rpmlint: 2.4.0
configuration:
    /usr/lib/python3.12/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-legacy-licenses.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
checks: 31, packages: 1

Reproducible: Always

Steps to Reproduce:
1. Upgrade rpmlint to 2.5.0
2. Grab an RPM from koji (e.g. https://kojipkgs.fedoraproject.org//packages/fawltydeps/0.13.3/1.fc40/noarch/fawltydeps-0.13.3-1.fc40.noarch.rpm)
3. Run rpmlint on the RPM
Actual Results:  
Spurious warning: 'W: python-missing-require'

Expected Results:  
No warning when there's no issue.

`rpm -q --requires` shows all dependencies as expected:

$ rpm -q --requires -p fawltydeps-0.13.3-1.fc40.noarch.rpm 
(python3.12dist(isort) < 6~~ with python3.12dist(isort) >= 5.10)
(python3.12dist(pip-requirements-parser) < 33~~ with python3.12dist(pip-requirements-parser) >= 32.0.1)
(python3.12dist(pydantic) < 3~~ with python3.12dist(pydantic) >= 1.10.2)
(python3.12dist(setuptools) < 69~~ with python3.12dist(setuptools) >= 65.5.1)
/usr/bin/python3
python(abi) = 3.12
python3.12dist(importlib-metadata) >= 6
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsZstd) <= 5.4.18-1
rpmlib(RichDependencies) <= 4.12.0-1
rpmlib(TildeInVersions) <= 4.10.0-1

Comment 1 Miro Hrončok 2024-01-25 11:12:43 UTC
I've forwarded this to upstream: https://github.com/rpm-software-management/rpmlint/issues/1171

Comment 2 Fedora Update System 2024-01-25 11:48:05 UTC
FEDORA-2024-fb09a82093 has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2024-fb09a82093

Comment 3 Fedora Update System 2024-01-25 11:55:31 UTC
FEDORA-2024-fafa8714ce has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2024-fafa8714ce

Comment 4 Fedora Update System 2024-01-25 11:57:20 UTC
FEDORA-2024-fb09a82093 has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 5 Fedora Update System 2024-01-26 01:05:49 UTC
FEDORA-2024-fafa8714ce has been pushed to the Fedora 39 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-fafa8714ce`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-fafa8714ce

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2024-01-27 01:29:37 UTC
FEDORA-2024-fafa8714ce has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.