Bug 2247030

Summary: python-landslide fails to build: ModuleNotFoundError: No module named 'six'
Product: [Fedora] Fedora Reporter: Karolina Surma <ksurma>
Component: python-landslideAssignee: Michel Lind <michel>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: echevemaster, ksurma, mhroncok, michel
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-landslide-1.1.8-12.fc39 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-12-21 04:00:25 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: 2245829    
Bug Blocks: 2168842, 2231791, 2244836    

Description Karolina Surma 2023-10-30 12:34:57 UTC
python-landslide fails to build with Python 3.13.0a1.

This report is automated and not very verbose, but we'll try to get back here with details.

+ /usr/bin/pytest tests.py
============================= test session starts ==============================
platform linux -- Python 3.13.0a1, pytest-7.4.2, pluggy-1.3.0
rootdir: /builddir/build/BUILD/landslide-1.1.8
collected 0 items / 1 error

==================================== ERRORS ====================================
__________________________ ERROR collecting tests.py ___________________________
ImportError while importing test module '/builddir/build/BUILD/landslide-1.1.8/tests.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/usr/lib64/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
tests.py:3: in <module>
    from landslide import macro
landslide/macro.py:5: in <module>
    from six.moves import html_entities
E   ModuleNotFoundError: No module named 'six'
=============================== warnings summary ===============================
landslide/macro.py:39
  /builddir/build/BUILD/landslide-1.1.8/landslide/macro.py:39: SyntaxWarning: invalid escape sequence '\w'
    html_entity_re = re.compile('&(\w+?);')

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
ERROR tests.py
!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!
========================= 1 warning, 1 error in 0.07s ==========================


Possible solution: add BuildRequirement on python3-six to the packages' specfile.



For the build logs, see:
https://copr-be.cloud.fedoraproject.org/results/@python/python3.13/fedora-rawhide-x86_64/06578973-python-landslide/

For all our attempts to build python-landslide with Python 3.13, see:
https://copr.fedorainfracloud.org/coprs/g/python/python3.13/package/python-landslide/

Testing and mass rebuild of packages is happening in copr.
You can follow these instructions to test locally in mock if your package builds with Python 3.13:
https://copr.fedorainfracloud.org/coprs/g/python/python3.13/

Let us know here if you have any questions.

Python 3.13 is planned to be included in Fedora 41.
To make that update smoother, we're building Fedora packages with all pre-releases of Python 3.13.
A build failure prevents us from testing all dependent packages (transitive [Build]Requires),
so if this package is required a lot, it's important for us to get it fixed soon.

We'd appreciate help from the people who know this package best,
but if you don't want to work on this now, let us know so we can try to work around it on our side.

Comment 1 Miro Hrončok 2023-10-30 12:39:19 UTC
According to https://koschei.fedoraproject.org/package/python-landslide this also fails to build in Rawhide and Fedora 39.

The cause is likely https://src.fedoraproject.org/rpms/python-urllib3/pull-request/25 (using bundled six in urllib3).

Comment 2 Miro Hrončok 2023-11-11 12:34:01 UTC
Why does this depend on six? six should be available in copr.

Comment 3 Michel Lind 2023-12-12 19:15:42 UTC
(In reply to Miro Hrončok from comment #2)
> Why does this depend on six? six should be available in copr.

apologies, you're right. I'm testing an update now, and will put up a PR modernizing landslide and updating it to the latest version after, for other maintainers to look at - this would not have been an issue had the package used dynamic BR generation.

Comment 4 Fedora Update System 2023-12-13 03:03:32 UTC
FEDORA-2023-4474367d96 has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2023-4474367d96

Comment 5 Fedora Update System 2023-12-14 01:28:52 UTC
FEDORA-2023-4474367d96 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-2023-4474367d96`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-4474367d96

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

Comment 6 Fedora Update System 2023-12-21 04:00:25 UTC
FEDORA-2023-4474367d96 has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.