30350n/pcb2blender

Plugin fails to load

blackbit42 opened this issue · 3 comments

Hi

I am using blender 3.4.1+dfsg-2+b1 on Debian stable.
The plugin installed alright.
image
The File > Import menu doesn't have a 'PCB' entry. I believe that is due to:

$ blender
Read prefs: /home/blackbit/.config/blender/3.4/config/userpref.blend
Traceback (most recent call last):
  File "/usr/share/blender/scripts/modules/addon_utils.py", line 333, in enable
    mod = __import__(module_name)
          ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/blackbit/.config/blender/3.4/scripts/addons/pcb2blender_importer/__init__.py", line 26, in <module>
    register, unregister = register_modules_factory(modules)
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/blackbit/.config/blender/3.4/scripts/addons/pcb2blender_importer/blender_addon_utils/register.py", line 37, in register_modules_factory
    _modules.append(importlib.import_module(f".{module}", package=caller_package))
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/blackbit/.config/blender/3.4/scripts/addons/pcb2blender_importer/importer.py", line 1131, in <module>
    get_internal_asset_path() / "geometry_nodes" / "smooth_by_angle.blend"
    ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/blackbit/.config/blender/3.4/scripts/addons/pcb2blender_importer/importer.py", line 1128, in get_internal_asset_path
    assert False
AssertionError

How can I determine why this assertion fails?

The newest version of the plugin only supports Blender 4.1.1+.

Okay, thanks.
Would it perhaps make sense to add a version check to the plugin so that a proper error message is emitted in case one attempts to load it into an unsupported version of blender?
The error message I got does not really lead the user to understand what the issue is.

Blender itself should already do that. (The warning might not be super obvious I guess).