Bug 2277510

Summary: puddletag 2.30 does not start with python3-pyparsing 3.1.2
Product: [Fedora] Fedora Reporter: Daniel Moerner <dmoerner>
Component: puddletagAssignee: Terje Røsten <terje.rosten>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 40CC: mgogala, terje.rosten
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: puddletag-2.3.0-3.fc40 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-05-15 18:56:46 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 Daniel Moerner 2024-04-27 15:09:02 UTC
puddletag 2.30 crashes on start with python3-pyparsing 3.1.2, which means it does not work on Fedora 40.

Upstream bug reports:

https://github.com/puddletag/puddletag/issues/897 (dupe, but confirms failure on Fedora 40)
https://github.com/puddletag/puddletag/issues/884

Looks like this can be fixed by waiting for a new upstream release and pushing it to Fedora 40, or cherry-picking https://github.com/puddletag/puddletag/pull/880


Reproducible: Always

Steps to Reproduce:
1. sudo dnf install puddletag
2. puddletag
Actual Results:  

$ puddletag
puddletag Version: 2.3.0
Locale: C
Traceback (most recent call last):
  File "/usr/bin/puddletag", line 352, in <module>
    from puddlestuff.puddletag import MainWin
  File "/usr/lib/python3.12/site-packages/puddlestuff/puddletag.py", line 14, in <module>
    from . import mainwin
  File "/usr/lib/python3.12/site-packages/puddlestuff/mainwin/__init__.py", line 4, in <module>
    from . import dirview
  File "/usr/lib/python3.12/site-packages/puddlestuff/mainwin/dirview.py", line 12, in <module>
    from ..tagmodel import has_previews
  File "/usr/lib/python3.12/site-packages/puddlestuff/tagmodel.py", line 32, in <module>
    from .audio_filter import parse as filter_audio
  File "/usr/lib/python3.12/site-packages/puddlestuff/audio_filter.py", line 183, in <module>
    bool_expr.enablePackrat()
  File "/usr/lib/python3.12/site-packages/pyparsing/util.py", line 265, in _inner
    return fn(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pyparsing/core.py", line 1132, in enable_packrat
    ParserElement.packrat_cache = _FifoCache(cache_size_limit)  # type: ignore[assignment]
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pyparsing/util.py", line 105, in __init__
    keyring = [object()] * size
              ~~~~~~~~~~~^~~~~~
TypeError: can't multiply sequence by non-int of type 'Forward'

Expected Results:  
The software starts

Comment 1 Terje Røsten 2024-05-06 18:08:51 UTC
*** Bug 2279126 has been marked as a duplicate of this bug. ***

Comment 2 Fedora Update System 2024-05-06 18:39:52 UTC
FEDORA-2024-9954bde6aa (puddletag-2.3.0-3.fc40) has been submitted as an update to Fedora 40.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-9954bde6aa

Comment 3 Fedora Update System 2024-05-07 04:56:23 UTC
FEDORA-2024-9954bde6aa has been pushed to the Fedora 40 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-9954bde6aa`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-9954bde6aa

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

Comment 4 Fedora Update System 2024-05-15 18:56:46 UTC
FEDORA-2024-9954bde6aa (puddletag-2.3.0-3.fc40) has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.