Description of problem: Calibre won't run. Fails with python traceback. Version-Release number of selected component (if applicable): 4.13 (FYI, newest version via the calibre website is 4.17 if you guys end up refreshing this to fix the problem.) How reproducible: Always. Steps to Reproduce: 1. sudo dnf install calibre -y 2. calibre 3. FAIL Actual results: [todd@localhost ~]$ calibre Traceback (most recent call last): File "/usr/bin/calibre", line 20, in <module> sys.exit(calibre()) File "/usr/lib64/calibre/calibre/gui_launch.py", line 72, in calibre main(args) File "/usr/lib64/calibre/calibre/gui2/main.py", line 542, in main listener = create_listener() File "/usr/lib64/calibre/calibre/gui2/main.py", line 513, in create_listener return Listener(address=gui_socket_address()) File "/usr/lib64/calibre/calibre/utils/ipc/server.py", line 109, in __init__ self._listener._unlink.cancel() AttributeError: 'NoneType' object has no attribute 'cancel'
I have no time currently to look into this, but perhaps one of my co-maintainers will do so.
The bug appears after upgrading to python 3.8.3. I have confirmed that calibre 4.13 runs with python 3.8.2 by downgrading using "dnf downgrade python3". I think I have found the source of the bug and it looks to be fixed in calibre 4.15 (https://github.com/kovidgoyal/calibre/commit/7b6416ac6522fc40f24f6baf3ca552b17a8b91d6) The reason it happens after upgrading to python 3.8.3 is that python 3.8.3 added support for abstract socket namespace in the multiprocessing library. (https://bugs.python.org/issue39850) And the line which raises the AttributeError is a workaround for the previous lack of support for abstract sockets. So this bug should be fixable by packaging the newest calibre version (4.17).
*** Bug 1841572 has been marked as a duplicate of this bug. ***
*** Bug 1840432 has been marked as a duplicate of this bug. ***
*** Bug 1840290 has been marked as a duplicate of this bug. ***
Could someone try this scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=45155009 and confirm it fixes it for you? I'll look at doing an offical build in a bit here...
Hi Kevin, it fixes the problem for me. Thanks for the quick fix!
(In reply to Suvayu from comment #7) > > Hi Kevin, it fixes the problem for me. Same here. Thanks, Kevin!
Great. Official build coming up...
thank you !!
FEDORA-2020-37c359a64e has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-37c359a64e
how do I test it please?
FEDORA-2020-37c359a64e has been pushed to the Fedora 32 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-37c359a64e` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-37c359a64e See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
(In reply to william.garber from comment #12) > how do I test it please? If you follow the bodhi link, you will see a command line that's on top of the page. That will install the update for you, then you can check if that resolves the bug and if it's generally functional. You can leave feedback on the bodhi page. When an update is published, it takes about a day to be available in the repositories (see the timestamps on the bodhi page). Hope this helps.
it works so far.
FEDORA-2020-37c359a64e has been pushed to the Fedora 32 stable repository. If problem still persists, please make note of it in this bug report.
Similar problem has been detected: Just installed Calibre using Discover software center and am not able to open it. reporter: libreport-2.13.1 cmdline: /usr/bin/python3 /usr/bin/calibre --detach crash_function: __init__ exception_type: AttributeError executable: /usr/bin/calibre interpreter: python3-3.8.6-1.fc32.x86_64 kernel: 5.8.16-200.fc32.x86_64 package: calibre-4.13.0-1.fc32 reason: server.py:109:__init__:AttributeError: 'NoneType' object has no attribute 'cancel' runlevel: N 5 type: Python3 uid: 1000