Interpause / Interpause/auto-sd-paint-ext
bug on krita app at startup after install krita extension in A1111
- Dominant language
- Python
- Stars
- 482
- Forks
- 37
- PR merge metrics
- No merged PRs in 30d
Description
Hello,
i have installed krita extension to A1111, follow the process the link krita extension to the krita desktop app. everything looks fine on A1111 side : i have no message error on launch in the terminal.
When i try to launch the krita app on my desk i have 3 error messages boxes. I have to close the first one, to see the second and close it to see the third. Here are the messages
1 message :
TypeError
Python 3.10.7: /Applications/krita.app/Contents/MacOS/krita
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/Applications/krita.app/Contents/Frameworks/krita-python-libs/krita/dockwidgetfactory.py in createDockWidget(self=)
14 super(DockWidgetFactory, self).__init__(_id, _dockPosition)
15 self.klass = _klass
16
17 def createDockWidget(self):
18 return self.klass()
self =
self.klass = .Docker'>
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py in __init__(self=.Docker object>, *args=(), **kwargs={})
11 self.setWindowTitle(page.name)
12 self.create_interface()
13 self.update_interface()
14 self.connect_interface()
15 self.setWidget(self.widget)
self = .Docker object>
self.update_interface = .Docker.upda...iff.docker.create_docker..Docker object>>
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py in update_interface(self=.Docker object>)
23
24 def update_interface(self):
25 self.page_widget.cfg_init()
26
27 def connect_interface(self):
self = .Docker object>
self.page_widget =
self.page_widget.cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/img2img.py in cfg_init(self=)
23
24 def cfg_init(self):
25 super(Img2ImgPage, self).cfg_init()
26
27 self.tips.setVisible(not script.cfg("minimize_ui", bool))
builtinsuper =
global Img2ImgPage =
self =
).cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/img_base.py in cfg_init(self=)
71
72 def cfg_init(self):
73 self.ext_layout.cfg_init()
74 self.prompt_layout.cfg_init()
75 self.seed_layout.cfg_init()
self =
self.ext_layout =
self.ext_layout.cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py in cfg_init(self=)
116 self.dropdown.cfg_init()
117 if set(self.ext_names()) != set(self.ext_widgets.keys()):
118 self._init_ext_widgets()
119 for widget in self.ext_widgets.values():
120 widget.cfg_init()
self =
self._init_ext_widgets = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py in _init_ext_widgets(self=)
107 self._clear_ext_widgets()
108 for ext_name in self.ext_names():
109 widget = ExtWidget(script.ext_cfg, self.ext_type, ext_name)
110 widget.setVisible(False)
111 self.addWidget(widget)
widget =
global ExtWidget =
global script =
script.ext_cfg =
self =
self.ext_type = 'scripts_img2img'
ext_name = 'Outpainting mk2'
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py in __init__(self=, ext_cfg=, ext_type='scripts_img2img', ext_name='Outpainting mk2', *args=(), **kwargs={})
57 w = QCheckBox(ext_cfg, k, o["label"])
58 elif o["type"] == "multiselect":
59 w = QMultiCheckBoxLayout(ext_cfg, o["opts"], k, o["label"])
60 else:
61 continue
w = None
global QMultiCheckBoxLayout =
ext_cfg =
o = {'is_index': False, 'label': 'Outpainting direction', 'opts': [['left', 'left'], ['right', 'right'], ['up', 'up'], ['down', 'down']], 'type': 'multiselect', 'val': ['left', 'right', 'up', 'down']}
k = 'scripts_img2img_outpaintingmk2_3'
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/widgets/checkbox.py in __init__(self=, cfg=, options_cfg=[['left', 'left'], ['right', 'right'], ['up', 'up'], ['down', 'down']], selected_cfg='scripts_img2img_outpaintingmk2_3', label='Outpainting direction', *args=(), **kwargs={})
61 self.qcheckboxes = []
62 for opt in self.options_cfg:
63 checkbox = _QCheckBox(opt)
64 self.qcheckboxes.append(checkbox)
65 self.row.addWidget(checkbox)
checkbox undefined
global _QCheckBox =
opt = ['left', 'left']
TypeError: arguments did not match any overloaded call:
QCheckBox(parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
QCheckBox(text: str, parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
__cause__ = None
__class__ =
__context__ = None
__delattr__ =
__dict__ = {}
__dir__ =
__doc__ = 'Inappropriate argument type.'
__eq__ =
__format__ =
__ge__ =
__getattribute__ =
__gt__ =
__hash__ =
__init__ =
__init_subclass__ =
__le__ =
__lt__ =
__ne__ =
__new__ =
__reduce__ =
__reduce_ex__ =
__repr__ =
__setattr__ =
__setstate__ =
__sizeof__ =
__str__ =
__subclasshook__ =
__suppress_context__ = False
__traceback__ =
args = ("arguments did not match any overloaded call:\n Q...t] = None): argument 1 has unexpected type 'list'",)
with_traceback =
The above is a description of an error in a Python program. Here is
the original traceback:
Traceback (most recent call last):
File "/Applications/krita.app/Contents/Frameworks/krita-python-libs/krita/dockwidgetfactory.py", line 18, in createDockWidget
return self.klass()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py", line 13, in __init__
self.update_interface()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py", line 25, in update_interface
self.page_widget.cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/img2img.py", line 25, in cfg_init
super(Img2ImgPage, self).cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/img_base.py", line 73, in cfg_init
self.ext_layout.cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py", line 118, in cfg_init
self._init_ext_widgets()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py", line 109, in _init_ext_widgets
widget = ExtWidget(script.ext_cfg, self.ext_type, ext_name)
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py", line 59, in __init__
w = QMultiCheckBoxLayout(ext_cfg, o["opts"], k, o["label"])
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/widgets/checkbox.py", line 63, in __init__
checkbox = _QCheckBox(opt)
TypeError: arguments did not match any overloaded call:
QCheckBox(parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
QCheckBox(text: str, parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
----------------------------------------------------------
2nd message :
TypeError: unhashable type: 'list'
TypeError
Python 3.10.7: /Applications/krita.app/Contents/MacOS/krita
Mon Sep 25 17:29:39 2023
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/Applications/krita.app/Contents/Frameworks/krita-python-libs/krita/dockwidgetfactory.py in createDockWidget(self=)
14 super(DockWidgetFactory, self).__init__(_id, _dockPosition)
15 self.klass = _klass
16
17 def createDockWidget(self):
18 return self.klass()
self =
self.klass = .Docker'>
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py in __init__(self=.Docker object>, *args=(), **kwargs={})
11 self.setWindowTitle(page.name)
12 self.create_interface()
13 self.update_interface()
14 self.connect_interface()
15 self.setWidget(self.widget)
self = .Docker object>
self.update_interface = .Docker.upda...iff.docker.create_docker..Docker object>>
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py in update_interface(self=.Docker object>)
23
24 def update_interface(self):
25 self.page_widget.cfg_init()
26
27 def connect_interface(self):
self = .Docker object>
self.page_widget =
self.page_widget.cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/txt2img.py in cfg_init(self=)
30
31 def cfg_init(self):
32 super(Txt2ImgPage, self).cfg_init()
33 self.highres.cfg_init()
34
builtinsuper =
global Txt2ImgPage =
self =
).cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/img_base.py in cfg_init(self=)
71
72 def cfg_init(self):
73 self.ext_layout.cfg_init()
74 self.prompt_layout.cfg_init()
75 self.seed_layout.cfg_init()
self =
self.ext_layout =
self.ext_layout.cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py in cfg_init(self=)
118 self._init_ext_widgets()
119 for widget in self.ext_widgets.values():
120 widget.cfg_init()
121
122 def cfg_connect(self):
widget =
widget.cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py in cfg_init(self=)
69 def cfg_init(self):
70 for w in self.widgets:
71 w.cfg_init()
72
73 def cfg_connect(self):
w =
w.cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/widgets/combo_box.py in cfg_init(self=)
68 def cfg_init(self):
69 opts = sorted(
70 set(
71 self.cfg(self.options_cfg, "QStringList")
72 if isinstance(self.options_cfg, str)
builtinset =
self =
self.cfg =
self.options_cfg = [['positive', 'positive'], ['negative', 'negative']]
builtinisinstance =
builtinstr =
TypeError: unhashable type: 'list'
__cause__ = None
__class__ =
__context__ = None
__delattr__ =
__dict__ = {}
__dir__ =
__doc__ = 'Inappropriate argument type.'
__eq__ =
__format__ =
__ge__ =
__getattribute__ =
__gt__ =
__hash__ =
__init__ =
__init_subclass__ =
__le__ =
__lt__ =
__ne__ =
__new__ =
__reduce__ =
__reduce_ex__ =
__repr__ =
__setattr__ =
__setstate__ =
__sizeof__ =
__str__ =
__subclasshook__ =
__suppress_context__ = False
__traceback__ =
args = ("unhashable type: 'list'",)
with_traceback =
The above is a description of an error in a Python program. Here is
the original traceback:
Traceback (most recent call last):
File "/Applications/krita.app/Contents/Frameworks/krita-python-libs/krita/dockwidgetfactory.py", line 18, in createDockWidget
return self.klass()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py", line 13, in __init__
self.update_interface()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py", line 25, in update_interface
self.page_widget.cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/txt2img.py", line 32, in cfg_init
super(Txt2ImgPage, self).cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/img_base.py", line 73, in cfg_init
self.ext_layout.cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py", line 120, in cfg_init
widget.cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py", line 71, in cfg_init
w.cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/widgets/combo_box.py", line 70, in cfg_init
set(
TypeError: unhashable type: 'list'
-------------------------
Third message :
3rd error :
TypeError: arguments did not match any overloaded call:
QCheckBox(parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
QCheckBox(text: str, parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
TypeError
Python 3.10.7: /Applications/krita.app/Contents/MacOS/krita
Mon Sep 25 17:31:17 2023
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/Applications/krita.app/Contents/Frameworks/krita-python-libs/krita/dockwidgetfactory.py in createDockWidget(self=)
14 super(DockWidgetFactory, self).__init__(_id, _dockPosition)
15 self.klass = _klass
16
17 def createDockWidget(self):
18 return self.klass()
self =
self.klass = .Docker'>
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py in __init__(self=.Docker object>, *args=(), **kwargs={})
11 self.setWindowTitle(page.name)
12 self.create_interface()
13 self.update_interface()
14 self.connect_interface()
15 self.setWidget(self.widget)
self = .Docker object>
self.update_interface = .Docker.upda...iff.docker.create_docker..Docker object>>
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py in update_interface(self=.Docker object>)
23
24 def update_interface(self):
25 self.page_widget.cfg_init()
26
27 def connect_interface(self):
self = .Docker object>
self.page_widget =
self.page_widget.cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/inpaint.py in cfg_init(self=)
67
68 def cfg_init(self):
69 super(InpaintPage, self).cfg_init()
70 # self.mask_blur_layout.cfg_init()
71 self.fill_layout.cfg_init()
builtinsuper =
global InpaintPage =
self =
).cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/img_base.py in cfg_init(self=)
71
72 def cfg_init(self):
73 self.ext_layout.cfg_init()
74 self.prompt_layout.cfg_init()
75 self.seed_layout.cfg_init()
self =
self.ext_layout =
self.ext_layout.cfg_init = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py in cfg_init(self=)
116 self.dropdown.cfg_init()
117 if set(self.ext_names()) != set(self.ext_widgets.keys()):
118 self._init_ext_widgets()
119 for widget in self.ext_widgets.values():
120 widget.cfg_init()
self =
self._init_ext_widgets = >
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py in _init_ext_widgets(self=)
107 self._clear_ext_widgets()
108 for ext_name in self.ext_names():
109 widget = ExtWidget(script.ext_cfg, self.ext_type, ext_name)
110 widget.setVisible(False)
111 self.addWidget(widget)
widget =
global ExtWidget =
global script =
script.ext_cfg =
self =
self.ext_type = 'scripts_inpaint'
ext_name = 'Outpainting mk2'
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py in __init__(self=, ext_cfg=, ext_type='scripts_inpaint', ext_name='Outpainting mk2', *args=(), **kwargs={})
57 w = QCheckBox(ext_cfg, k, o["label"])
58 elif o["type"] == "multiselect":
59 w = QMultiCheckBoxLayout(ext_cfg, o["opts"], k, o["label"])
60 else:
61 continue
w = None
global QMultiCheckBoxLayout =
ext_cfg =
o = {'is_index': False, 'label': 'Outpainting direction', 'opts': [['left', 'left'], ['right', 'right'], ['up', 'up'], ['down', 'down']], 'type': 'multiselect', 'val': ['left', 'right', 'up', 'down']}
k = 'scripts_inpaint_outpaintingmk2_3'
/Users/deno/Library/Application Support/krita/pykrita/krita_diff/widgets/checkbox.py in __init__(self=, cfg=, options_cfg=[['left', 'left'], ['right', 'right'], ['up', 'up'], ['down', 'down']], selected_cfg='scripts_inpaint_outpaintingmk2_3', label='Outpainting direction', *args=(), **kwargs={})
61 self.qcheckboxes = []
62 for opt in self.options_cfg:
63 checkbox = _QCheckBox(opt)
64 self.qcheckboxes.append(checkbox)
65 self.row.addWidget(checkbox)
checkbox undefined
global _QCheckBox =
opt = ['left', 'left']
TypeError: arguments did not match any overloaded call:
QCheckBox(parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
QCheckBox(text: str, parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
__cause__ = None
__class__ =
__context__ = None
__delattr__ =
__dict__ = {}
__dir__ =
__doc__ = 'Inappropriate argument type.'
__eq__ =
__format__ =
__ge__ =
__getattribute__ =
__gt__ =
__hash__ =
__init__ =
__init_subclass__ =
__le__ =
__lt__ =
__ne__ =
__new__ =
__reduce__ =
__reduce_ex__ =
__repr__ =
__setattr__ =
__setstate__ =
__sizeof__ =
__str__ =
__subclasshook__ =
__suppress_context__ = False
__traceback__ =
args = ("arguments did not match any overloaded call:\n Q...t] = None): argument 1 has unexpected type 'list'",)
with_traceback =
The above is a description of an error in a Python program. Here is
the original traceback:
Traceback (most recent call last):
File "/Applications/krita.app/Contents/Frameworks/krita-python-libs/krita/dockwidgetfactory.py", line 18, in createDockWidget
return self.klass()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py", line 13, in __init__
self.update_interface()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/docker.py", line 25, in update_interface
self.page_widget.cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/inpaint.py", line 69, in cfg_init
super(InpaintPage, self).cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/img_base.py", line 73, in cfg_init
self.ext_layout.cfg_init()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py", line 118, in cfg_init
self._init_ext_widgets()
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py", line 109, in _init_ext_widgets
widget = ExtWidget(script.ext_cfg, self.ext_type, ext_name)
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/pages/extension.py", line 59, in __init__
w = QMultiCheckBoxLayout(ext_cfg, o["opts"], k, o["label"])
File "/Users/deno/Library/Application Support/krita/pykrita/krita_diff/widgets/checkbox.py", line 63, in __init__
checkbox = _QCheckBox(opt)
TypeError: arguments did not match any overloaded call:
QCheckBox(parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
QCheckBox(text: str, parent: typing.Optional[QWidget] = None): argument 1 has unexpected type 'list'
config : Mac book pro M1, osx 13.6, Krita 5.2.
can someone help ?
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with widgets/checkbox.py at QMultiCheckBoxLayout.__init__, then inspect the option data passed from pages/extension.py. Reproduce the failure by launching Krita after installing the extension and verify that the Krita docker opens without the reported TypeError messages.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100