Bug 2223055

Summary: Setzer crashes for missing dependency
Product: [Fedora] Fedora Reporter: Carlos Rodriguez-Fernandez <carlosrodrifernandez>
Component: setzerAssignee: Lyes Saadi <fedora>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 38CC: fedora
Target Milestone: ---Keywords: Desktop, Upgrades
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-07-15 06:01:15 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 Carlos Rodriguez-Fernandez 2023-07-15 02:46:29 UTC
Setzer crashes when trying to open it.

The crash error is the following:

```
detected unhandled Python exception in '/usr/bin/setzer'
Traceback (most recent call last):
File "/usr/bin/setzer", line 31, in <module>
from setzer.workspace.workspace import Workspace
File "/usr/lib/python3.11/site-packages/setzer/workspace/workspace.py", line 24, in <module>
from setzer.document.document import Document
File "/usr/lib/python3.11/site-packages/setzer/document/document.py", line 19, in <module>
import setzer.document.state_manager.state_manager as state_manager
File "/usr/lib/python3.11/site-packages/setzer/document/state_manager/state_manager.py", line 21, in <module>
from setzer.app.service_locator import ServiceLocator
File "/usr/lib/python3.11/site-packages/setzer/app/service_locator.py", line 27, in <module>
import setzer.app.autocomplete_provider.autocomplete_provider as autocomplete_provider
File "/usr/lib/python3.11/site-packages/setzer/app/autocomplete_provider/autocomplete_provider.py", line 25, in <>
import bibtexparser
ModuleNotFoundError: No module named 'bibtexparser'
```

This crash report appears to be the same:

https://retrace.fedoraproject.org/faf/problems/bthash/?bth=aa0bb0ae60a834e7d122351834bf6acf27f931c1

The problem goes away when I install the package: python3-bibtexparser
```
Name         : python3-bibtexparser
Version      : 1.2.0
Release      : 6.fc38
```

Setzer indeed requires that packages:
```
sudo dnf repoquery --requires setzer
...
python3-bibtexparser
...
```

But it appears that it didn't get install during the update that required it for the first time. Setzer has been working fine without that package. I installed it in my system for the first time after that crash.

I think what might have happened is that python3-bibtexparser was not required for setzer but until f37 (see https://src.fedoraproject.org/rpms/setzer/blob/f36/f/setzer.spec, comp. https://src.fedoraproject.org/rpms/setzer/blob/f37/f/setzer.spec). I have been doing in place system upgrades since f34, so it looks that the upgrade from 36 to 37 didn't install the new dependencies, however, setzer didn't crash until the other day. I use it quite frequently, I would have noticed. I would say that the crash began to happen when I updated from setzer-55-1.fc38.noarch to setzer-56-1.fc38.noarch on 10 Jul 2023. Not sure if it is a problem with dnf or with setzer rpm spec.


Reproducible: Always

Steps to Reproduce:
1. run setzer
2.
3.
Actual Results:  
Crashes, it won't open

Expected Results:  
It opens.

Comment 1 Lyes Saadi 2023-07-15 06:01:15 UTC

*** This bug has been marked as a duplicate of bug 2219307 ***

Comment 2 Lyes Saadi 2023-07-15 06:04:32 UTC
Try to update your packages, the fix is already out ! Sorry again for forgetting the dependency !
https://bodhi.fedoraproject.org/updates/FEDORA-2023-e6bf5d18dc

Comment 3 Carlos Rodriguez-Fernandez 2023-07-15 14:38:41 UTC
Thank you Lyes, for addressing this so quickly. I missed the commit history entirely, I see your fix now coming in 56-3. My update the 10th only brought in 56-1, ... I should have done a --refresh.