Bug 2373998 - EPEL 9: Adjust virtualenv RPM wheels mechanism for Python 3.13+
Summary: EPEL 9: Adjust virtualenv RPM wheels mechanism for Python 3.13+
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: python-virtualenv
Version: epel9
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Miro Hrončok
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2025-06-20 09:51 UTC by Miro Hrončok
Modified: 2025-07-13 01:56 UTC (History)
5 users (show)

Fixed In Version: python-virtualenv-20.21.1-15.el9
Clone Of:
Environment:
Last Closed: 2025-07-13 01:56:41 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Fedora Package Sources python-virtualenv pull-request 137 0 None None None 2025-07-03 10:48:07 UTC

Description Miro Hrončok 2025-06-20 09:51:24 UTC
When Python 3.13+ is added to EL 9, virtualenv in EPEL 9 will look for the wheels in /usr/share/python3.13-wheels/

We need to add:

    Requires:       (python3.13-pip-wheel if python3.13)
    Requires:       (python3.13-setuptools-wheel if python3.13)

And since we don't have python3.13-wheel-wheel we need to either backport https://src.fedoraproject.org/rpms/python-virtualenv/pull-request/133 (but adjust the Python version this applies to to 3.13+) or if that fails, package python3.13-wheel-wheel into EPEL 9 and add a requirement for that as well.

Comment 1 Miro Hrončok 2025-06-27 08:51:32 UTC
Currently, basic usage works:

<mock-chroot> sh-5.1$ virtualenv --python python3.13 vvv
created virtual environment CPython3.13.5.final.0-64 in 203ms
  creator CPython3Posix(dest=/builddir/vvv, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(extra_search_dir=/usr/share/python3.13-wheels,download=False, pip=bundle, via=copy, app_data_dir=/builddir/.local/share/virtualenv)
    added seed packages: pip==25.1.1
  activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator

<mock-chroot> sh-5.1$ vvv/bin/pip list
Package Version
------- -------
pip     25.1.1


But requesting --setuptools bundle without pytohn3.13-setuptools-wheel downloads it from the internet by default. So does --wheel bundle.

Either way, it's not totally broken (unless offline).

<mock-chroot> sh-5.1$ virtualenv --python python3.13 vvv --setuptools bundle 
fail
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/virtualenv/seed/embed/via_app_data/via_app_data.py", line 83, in _get
    result = get_wheel(
  File "/usr/lib/python3.9/site-packages/virtualenv/seed/wheels/acquire.py", line 28, in get_wheel
    wheel = download_wheel(
  File "/usr/lib/python3.9/site-packages/virtualenv/seed/wheels/acquire.py", line 68, in download_wheel
    raise CalledProcessError(process.returncode, cmd, **kwargs)
subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'pip', 'download', '--progress-bar', 'off', '--disable-pip-version-check', '--only-binary=:all:', '--no-deps', '--python-version', '3.13', '-d', '/builddir/.local/share/virtualenv/wheel/house', 'setuptools']' returned non-zero exit status 1.
failed to download setuptools version bundle, pip download exit code 1
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f295cfe8370>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f295cfe84c0>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f295cfe8ac0>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f295cfe8250>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f295d322100>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
ERROR: Could not find a version that satisfies the requirement setuptools (from versions: none)
ERROR: No matching distribution found for setuptools

RuntimeError: seed failed due to failing to download wheels setuptools

Comment 2 Miro Hrončok 2025-06-30 15:05:50 UTC
Pushed my work to https://github.com/hroncok/python-virtualenv/commits/epel9-313/ as src.fp.o is down.

Will resume working on this once I can CI test it and run scratch builds.

Comment 4 Fedora Update System 2025-07-04 21:02:07 UTC
FEDORA-EPEL-2025-258b4fad81 (python-virtualenv-20.21.1-15.el9) has been submitted as an update to Fedora EPEL 9.
https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2025-258b4fad81

Comment 5 Fedora Update System 2025-07-05 01:13:15 UTC
FEDORA-EPEL-2025-258b4fad81 has been pushed to the Fedora EPEL 9 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2025-258b4fad81

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

Comment 6 Fedora Update System 2025-07-13 01:56:41 UTC
FEDORA-EPEL-2025-258b4fad81 (python-virtualenv-20.21.1-15.el9) has been pushed to the Fedora EPEL 9 stable repository.
If problem still persists, please make note of it in this bug report.


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