techartorg / bqt

A Blender add-on to support & manage Qt Widgets in Blender (PySide2)
https://github.com/techartorg/bqt/wiki
Mozilla Public License 2.0
162 stars 23 forks source link

missing bl_info dict #52

Closed hannesdelbeke closed 1 year ago

hannesdelbeke commented 1 year ago

Has anyone else had problems with the latest bqt version? Using 3.3LTS and the addon no longer has the bl_info dict which causes an error on start up

slack chatlog: Shea Richardson

I had to do some fix ups to get it functional for 3.3 LTS main one was this: https://tech-artists.slack.com/archives/C0F73KP2N/p1666962461134569 Has anyone else had problems with the latest bqt version? Using 3.3LTS and the addon no longer has the bl_info dict which causes an error on start up could have been related to how we load auto-load our plugins it caused an infinite loop if it did not exist

reported by Shea Richardson who will make a PR 🙏

munkybutt commented 1 year ago

Further info related to the error: It occurs when enabling the addon programmatically using: addon_utils.enable:

Traceback (most recent call last):
  File ".../blender/python/startup/startup.py", line 124, in _auto_enable_addons
    auto_enable_addons(addons_root_path)
  File ".../blender/python/startup/startup.py", line 87, in auto_enable_addons
    bpy.ops.wm.save_userpref()
  File "C:/Program Files/Blender Foundation/Blender 3.3/3.3/scripts/modules/bpy/ops.py", line 97, in __call__
    import bpy
  File "C:/Program Files/Blender Foundation/Blender 3.3/3.3/python/lib/site-packages/shiboken2/files.dir/shibokensupport/__feature__.py", line 142, in _import
    return original_import(name, *args, **kwargs)
  File "C:/Program Files/Blender Foundation/Blender 3.3/3.3/scripts/modules/bpy/__init__.py", line 61, in <module>
    main()
  File "C:/Program Files/Blender Foundation/Blender 3.3/3.3/scripts/modules/bpy/__init__.py", line 58, in main
    utils.load_scripts()
  File "C:/Program Files/Blender Foundation/Blender 3.3/3.3/scripts/modules/bpy/utils/__init__.py", line 301, in load_scripts
    _initialize()
  File "C:/Program Files/Blender Foundation/Blender 3.3/3.3/scripts/modules/addon_utils.py", line 29, in _initialize
    enable(addon.module)
  File "C:/Program Files/Blender Foundation/Blender 3.3/3.3/scripts/modules/addon_utils.py", line 355, in enable
    if mod.bl_info.get("blender", (0, 0, 0)) < (2, 80, 0):
AttributeError: module 'bqt' has no attribute 'bl_info'

The fix is to re-add the bl_info dict to bqt __init__.py file:

bl_info = {
    "name": "Qt for Blender",
    "author": "Tech-Artists.org",
    "version": (0, 2),
    "blender": (2, 80, 3),
    "description": "Qt for Blender",
    "warning": "",
    "wiki_url": "",
}
hannesdelbeke commented 1 year ago

awesome, look forward to the PR next week

hannesdelbeke commented 1 year ago

any chance you have this fix still lying around anywhere? @munkybutt

hannesdelbeke commented 1 year ago

if it's only the bl info, i can do this myself

munkybutt commented 1 year ago

Hey bud - yeah it is just the top level dict called bl_info that is required

hannesdelbeke commented 1 year ago

https://github.com/techartorg/bqt/commit/1ec8e4e643aa148b77557263dd6f670028c42851 added bl_info to the bqt/__init__.py . The startup in dist doesn't has bl_info added, but i plan to delete this file, see https://github.com/techartorg/bqt/issues/61

hannesdelbeke commented 1 year ago

removed the leftover empty addon, finsihing the cleanup. closing this.