Skip to content

Failed to register ComfyUI nodes #182

@hossan-tk9004

Description

@hossan-tk9004

When connecting to ComfyUI, the following RuntimeError appears in the terminal:

Image
[SDN-WRN]: Unused ConditioningAverage  is unregistered
Traceback (most recent call last):
  File "C:\Users\<username>\AppData\Roaming\Blender Foundation\Blender\5.0\scripts\addons\ComfyUI-BlenderAI-node\SDNode\tree.py", line 1258, in rtnode_rereg
    NodeRegister.reg_clss(all_clss)
  File "C:\Users\<username>\AppData\Roaming\Blender Foundation\Blender\5.0\scripts\addons\ComfyUI-BlenderAI-node\SDNode\nodes.py", line 2098, in reg_clss
    diff_clss = [c for c in clss if cls.reg_cls(c)]
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\<username>\AppData\Roaming\Blender Foundation\Blender\5.0\scripts\addons\ComfyUI-BlenderAI-node\SDNode\nodes.py", line 2098, in <listcomp>
    diff_clss = [c for c in clss if cls.reg_cls(c)]
                                    ^^^^^^^^^^^^^^
  File "C:\Users\<username>\AppData\Roaming\Blender Foundation\Blender\5.0\scripts\addons\ComfyUI-BlenderAI-node\SDNode\nodes.py", line 2090, in reg_cls
    bpy.utils.register_class(clss)
RuntimeError: Error: Registering node socket class: 'STRING,FILE_3D_GLB,FILE_3D_GLTF,FILE_3D_FBX,FILE_3D_OBJ,FILE_3D_STL,FILE_3D_USDZ,FILE_3D' is too long, maximum length is 64

[SDN-INF]: RegNode Time: 1.41s

When this error occurs, the node list in the ComfyUI Node Editor becomes empty, and no nodes can be added.

As a temporary workaround, I added a try~except block around the reg_cls class method near line 2090 in .\ComfyUI-BlenderAI-node\SDNode\nodes.py to ignore the error:

@classmethod
def reg_cls(cls, clss: NodeBase):
    if not cls.is_new(clss):
        return
    try:
        is_in = clss.bl_label in cls.CLSS_MAP
        cls.unreg_cls(clss)
        bpy.utils.register_class(clss)
        cls.CLSS_MAP[clss.bl_label] = clss
        if is_in:
            logger.warning(f"{clss.bl_label} is updated")
        return clss
    except:
        return

With this workaround, the node list is displayed again.

For now this allows me to continue working, but I am not sure whether ignoring the exception could cause other issues.

I would appreciate a proper fix or an update to avoid this registration error.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions