Bug 2207631 - %py3_check_import: /usr/bin/python3.11: can't open file '/usr/lib/rpm/redhat/import_all_modules.py': [Errno 2] No such file or directory
Summary: %py3_check_import: /usr/bin/python3.11: can't open file '/usr/lib/rpm/redhat/...
Keywords:
Status: ON_QA
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: python3.11
Version: CentOS Stream
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Python Maintainers
QA Contact: Lukáš Zachar
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-05-16 11:45 UTC by Miro Hrončok
Modified: 2023-08-11 15:33 UTC (History)
5 users (show)

Fixed In Version: python3.11-3.11.4-4.el8
Doc Type: No Doc Update
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHELPLAN-157345 0 None None None 2023-05-16 11:59:55 UTC

Description Miro Hrončok 2023-05-16 11:45:35 UTC
Description of problem:
With python3.11-rpm-macros-3.11.2-2.el8.noarch the %py3_check_import macro is broken:


In the spec:

%global python3_pkgversion 3.11
...
%py3_check_import rpm rpm.transaction

Expands to:

...
/usr/bin/python3.11 -sP /usr/lib/rpm/redhat/import_all_modules.py rpm rpm.transaction

Breaks with:

Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.Rx4cp2
+ umask 022
+ cd /builddir/build/BUILD
+ cd rpm-4.14.3
+ PATH=/builddir/build/BUILDROOT/rpm-4.14.3-26.el8.x86_64/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin
+ PYTHONPATH=/builddir/build/BUILDROOT/rpm-4.14.3-26.el8.x86_64/usr/lib64/python3.11/site-packages:/builddir/build/BUILDROOT/rpm-4.14.3-26.el8.x86_64/usr/lib/python3.11/site-packages
+ _PYTHONSITE=/builddir/build/BUILDROOT/rpm-4.14.3-26.el8.x86_64/usr/lib64/python3.11/site-packages:/builddir/build/BUILDROOT/rpm-4.14.3-26.el8.x86_64/usr/lib/python3.11/site-packages
+ PYTHONDONTWRITEBYTECODE=1
+ /usr/bin/python3.11 -sP /usr/lib/rpm/redhat/import_all_modules.py rpm rpm.transaction
/usr/bin/python3.11: can't open file '/usr/lib/rpm/redhat/import_all_modules.py': [Errno 2] No such file or directory

Version-Release number of selected component (if applicable): 3.11.2-2.el8


How reproducible: Always.


Steps to Reproduce:
1. Build a spec file with Python 3.11 and %py3_check_import

Actual results:
/usr/bin/python3.11: can't open file '/usr/lib/rpm/redhat/import_all_modules.py': [Errno 2] No such file or directory

Expected results:
%py3_check_import imports packages

Comment 1 Tomas Orsava 2023-05-17 12:36:25 UTC
Let's add the script to python3.11-rpm-macros, but version it's path to include the `3.11` version, so that it doesn't clash with any future Python 3.12+ macros/scripts.

Comment 2 Tomas Orsava 2023-05-31 12:10:58 UTC
And let's add the tests for the macros component as part of this change.

Comment 5 Karolina Surma 2023-08-11 13:28:46 UTC
Testing done in the PR.


Note You need to log in before you can comment on or make changes to this bug.