From pykde Mon Jan 01 17:57:28 2024 From: John Thornton Date: Mon, 01 Jan 2024 17:57:28 +0000 To: pykde Subject: PyQt6.uic Unknown Qt widget: QOpenGLWidget Message-Id: <1739b125-1f6c-4b7f-a265-96966818530c () gnipsel ! com> X-MARC-Message: https://marc.info/?l=pykde&m=170413184808909 I have a simple ui file with just an QOpenGLWidget, when I try and run the file I get this error. Traceback (most recent call last):   File "/home/john/github/pyqt6/QOpenGLWidget/./oglw6-10.py", line 18, in     gui = main()           ^^^^^^   File "/home/john/github/pyqt6/QOpenGLWidget/./oglw6-10.py", line 12, in __init__     uic.loadUi('oglw6-10.ui', self)   File "/usr/lib/python3/dist-packages/PyQt6/uic/load_ui.py", line 86, in loadUi     return DynamicUILoader(package).loadUi(uifile, baseinstance)            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/lib/python3/dist-packages/PyQt6/uic/Loader/loader.py", line 62, in loadUi     return self.parse(filename)            ^^^^^^^^^^^^^^^^^^^^   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 1014, in parse     self._handle_widget(ui_file.widget)   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 842, in _handle_widget     self.traverseWidgetTree(el)   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 818, in traverseWidgetTree     handler(self, child)   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 280, in createWidget     self.traverseWidgetTree(elem)   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 818, in traverseWidgetTree     handler(self, child)   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 512, in createLayout     self.traverseWidgetTree(elem)   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 818, in traverseWidgetTree     handler(self, child)   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 555, in handleItem     self.traverseWidgetTree(elem)   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 818, in traverseWidgetTree     handler(self, child)   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 271, in createWidget     self.stack.push(self._setupObject(widget_class, parent, elem))                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/lib/python3/dist-packages/PyQt6/uic/uiparser.py", line 233, in _setupObject     obj = self.factory.createQtObject(class_name, object_name,           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/lib/python3/dist-packages/PyQt6/uic/objcreator.py", line 117, in createQtObject     raise NoSuchWidgetError(ctor_name) PyQt6.uic.exceptions.NoSuchWidgetError: Unknown Qt widget: QOpenGLWidget I grepped for QOpenGLWidget in /usr/lib/python3/dist-packages/PyQt6/uic and found it in john@cave:/usr/lib/python3/dist-packages/PyQt6/uic$ grep -irn 'QOpenGLWidget' * grep: Compiler/__pycache__/qtproxies.cpython-311.pyc: binary file matches Compiler/qtproxies.py:302:        "QLineEdit", "QMainWindow", "QMenuBar", "QOpenGLWidget", Checking PyQt5 (which works) I find on a slightly different line john@cave:/usr/lib/python3/dist-packages/PyQt5/uic$ grep -irn 'QOpenGLWidget' * grep: Compiler/__pycache__/qtproxies.cpython-311.pyc: binary file matches Compiler/qtproxies.py:289:        "QLineEdit", "QMainWindow", "QMenuBar", "QOpenGLWidget", I'm running john@cave:~$ uname -a Linux cave 6.1.0-10-rt-amd64 #1 SMP PREEMPT_RT Debian 6.1.38-1 (2023-07-14) x86_64 GNU/Linux and PyQt is installed from Debian Thanks JT