FS#73160 - [cura] Segfault when trying to add a support blocker

Attached to Project: Community Packages
Opened by Dirk (dsohler) - Sunday, 26 December 2021, 05:31 GMT
Last edited by Sven-Hendrik Haase (Svenstaro) - Monday, 07 February 2022, 07:17 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Jelle van der Waa (jelly)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

Cura “gracefully crashes” when trying to add a support blocker. This worked a few weeks ago but doesn’t anymore. Since Cura in the repos is out of date since some time this is likely caused by a dependency being updated.


Additional info:
* cura version 4.11.0-1
* see screenshot for information given by cura in the GUI

Steps to reproduce:
1. Start cura
2. load a model (doesn’t matter what model)
3. select the model and click the “support blocker” icon from the sidebar and click the model to apply



Error traceback given by cura:

Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/UM/Qt/Bindings/MainWindow.py", line 186, in mousePressEvent
self._mouse_device.handleEvent(event)
File "/usr/lib/python3.10/site-packages/UM/Qt/QtMouseDevice.py", line 25, in handleEvent
self.event.emit(e)
File "/usr/lib/python3.10/site-packages/UM/Signal.py", line 219, in emit
self.__performEmit(*args, **kwargs)
File "/usr/lib/python3.10/site-packages/UM/Signal.py", line 332, in __performEmit
func(dest, *args, **kwargs)
File "/usr/lib/python3.10/site-packages/UM/Controller.py", line 397, in event
if self._active_tool and self._active_tool.event(event):
File "/usr/lib/cura/plugins/SupportEraser/SupportEraser.py", line 91, in event
picked_position = picking_pass.getPickedPosition(event.x, event.y)
File "/usr/lib/python3.10/site-packages/cura/PickingPass.py", line 93, in getPickedPosition
distance = self.getPickedDepth(x, y)
File "/usr/lib/python3.10/site-packages/cura/PickingPass.py", line 81, in getPickedDepth
distance = output.pixel(px, py) # distance in micron, from in r, g & b channels
TypeError: arguments did not match any overloaded call:
pixel(self, QPoint): argument 1 has unexpected type 'float'
pixel(self, int, int): argument 1 has unexpected type 'float'



Logs given by cura:

Thread 0x00007f60a77fe640 (most recent call first):
File "/usr/lib/cura/plugins/USBPrinting/USBPrinterOutputDeviceManager.py", line 87 in _updateThread
File "/usr/lib/python3.10/threading.py", line 946 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f60a7fff640 (most recent call first):
File "/usr/lib/cura/plugins/RemovableDriveOutputDevice/RemovableDrivePlugin.py", line 61 in _updateThread
File "/usr/lib/python3.10/threading.py", line 946 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f60baffd640 (most recent call first):
File "/usr/lib/python3.10/site-packages/UM/Backend/Backend.py", line 165 in _storeStderrToLogThread
File "/usr/lib/python3.10/threading.py", line 946 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f60bb7fe640 (most recent call first):
File "/usr/lib/python3.10/site-packages/UM/Backend/Backend.py", line 153 in _storeOutputToLogThread
File "/usr/lib/python3.10/threading.py", line 946 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f60f97fa640 (most recent call first):
File "/usr/lib/python3.10/threading.py", line 320 in wait
File "/usr/lib/python3.10/threading.py", line 460 in acquire
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 98 in _nextJob
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 124 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f60f9ffb640 (most recent call first):
File "/usr/lib/python3.10/threading.py", line 320 in wait
File "/usr/lib/python3.10/threading.py", line 460 in acquire
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 98 in _nextJob
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 124 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f60fa7fc640 (most recent call first):
File "/usr/lib/python3.10/threading.py", line 320 in wait
File "/usr/lib/python3.10/threading.py", line 460 in acquire
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 98 in _nextJob
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 124 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f60faffd640 (most recent call first):
File "/usr/lib/python3.10/threading.py", line 320 in wait
File "/usr/lib/python3.10/threading.py", line 460 in acquire
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 98 in _nextJob
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 124 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f60fb7fe640 (most recent call first):
File "/usr/lib/python3.10/threading.py", line 320 in wait
File "/usr/lib/python3.10/threading.py", line 460 in acquire
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 98 in _nextJob
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 124 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f60fbfff640 (most recent call first):
File "/usr/lib/python3.10/threading.py", line 320 in wait
File "/usr/lib/python3.10/threading.py", line 460 in acquire
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 98 in _nextJob
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 124 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f6100884640 (most recent call first):
File "/usr/lib/python3.10/threading.py", line 320 in wait
File "/usr/lib/python3.10/threading.py", line 460 in acquire
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 98 in _nextJob
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 124 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Thread 0x00007f6101085640 (most recent call first):
File "/usr/lib/python3.10/threading.py", line 320 in wait
File "/usr/lib/python3.10/threading.py", line 460 in acquire
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 98 in _nextJob
File "/usr/lib/python3.10/site-packages/UM/JobQueue.py", line 124 in run
File "/usr/lib/python3.10/threading.py", line 1009 in _bootstrap_inner
File "/usr/lib/python3.10/threading.py", line 966 in _bootstrap

Current thread 0x00007f611c7f7740 (most recent call first):
File "/usr/lib/python3.10/site-packages/cura/CrashHandler.py", line 396 in _logInfoWidget
File "/usr/lib/python3.10/site-packages/cura/CrashHandler.py", line 182 in _createDialog
File "/usr/lib/python3.10/site-packages/cura/CrashHandler.py", line 86 in __init__
File "/usr/bin/cura", line 159 in exceptHook
File "/usr/lib/python3.10/site-packages/UM/Qt/QtApplication.py", line 393 in exec_
File "/usr/lib/python3.10/site-packages/cura/CuraApplication.py", line 867 in run
File "/usr/bin/cura", line 233 in <module>



command line output:

2021-12-26 06:26:35,289 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [66]: An uncaught error has occurred!
2021-12-26 06:26:35,289 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: Traceback (most recent call last):
2021-12-26 06:26:35,289 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: File "/usr/lib/python3.10/site-packages/UM/Qt/Bindings/MainWindow.py", line 186, in mousePressEvent
2021-12-26 06:26:35,289 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: self._mouse_device.handleEvent(event)
2021-12-26 06:26:35,289 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: File "/usr/lib/python3.10/site-packages/UM/Qt/QtMouseDevice.py", line 25, in handleEvent
2021-12-26 06:26:35,289 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: self.event.emit(e)
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: File "/usr/lib/python3.10/site-packages/UM/Signal.py", line 219, in emit
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: self.__performEmit(*args, **kwargs)
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: File "/usr/lib/python3.10/site-packages/UM/Signal.py", line 332, in __performEmit
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: func(dest, *args, **kwargs)
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: File "/usr/lib/python3.10/site-packages/UM/Controller.py", line 397, in event
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: if self._active_tool and self._active_tool.event(event):
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: File "/usr/lib/cura/plugins/SupportEraser/SupportEraser.py", line 91, in event
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: picked_position = picking_pass.getPickedPosition(event.x, event.y)
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: File "/usr/lib/python3.10/site-packages/cura/PickingPass.py", line 93, in getPickedPosition
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: distance = self.getPickedDepth(x, y)
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: File "/usr/lib/python3.10/site-packages/cura/PickingPass.py", line 81, in getPickedDepth
2021-12-26 06:26:35,290 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: distance = output.pixel(px, py) # distance in micron, from in r, g & b channels
2021-12-26 06:26:35,291 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: TypeError: arguments did not match any overloaded call:
2021-12-26 06:26:35,291 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: pixel(self, QPoint): argument 1 has unexpected type 'float'
2021-12-26 06:26:35,291 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: pixel(self, int, int): argument 1 has unexpected type 'float'
This task depends upon

Closed by  Sven-Hendrik Haase (Svenstaro)
Monday, 07 February 2022, 07:17 GMT
Reason for closing:  Upstream
Additional comments about closing:  2022-01-02: A task closure has been requested. Reason for request: Was reported upstream at https://github.com/Ultimaker/Cura/issues /10785
Comment by Heinrich K (pokulo) - Sunday, 02 January 2022, 10:05 GMT
This Bug is due to strict type checking of int instead of float in some __init__-Methods, which is new behaviour in Python 3.10.
It was reported upstream at https://github.com/Ultimaker/Cura/issues/10785
And was not fixed as of today.
The GitHub-Issue also provides a patch that worked for me, but theis might be other similar issues that were not patched.
For now probably the AppImage-Version of cura is more stable.

Loading...