diff options
author | Bastien Montagne <bastien@blender.org> | 2022-04-11 16:32:17 +0300 |
---|---|---|
committer | Bastien Montagne <bastien@blender.org> | 2022-04-11 16:45:52 +0300 |
commit | 0d0a45b89d5144e0715df55f39e25e9a0253a7cf (patch) | |
tree | 1ed9f00bb7b04e3035af8865984abcf66e238d5a /release | |
parent | 883dbfb72f31210c72f1346ca3e36fea9eb98acb (diff) |
Fix/workaround i18n script not finding some messages anymore.
For some reasons(c) some base classes (like `bpy.types.Modifier`) are
not listed anymore by a call to
`bpy.types.ID.__base__.__subclasses__()`, unless they are first accessed
explicitely (e.g. by executing `bpy.types.Modifier` etc.).
Diffstat (limited to 'release')
-rw-r--r-- | release/scripts/modules/bl_i18n_utils/bl_extract_messages.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/release/scripts/modules/bl_i18n_utils/bl_extract_messages.py b/release/scripts/modules/bl_i18n_utils/bl_extract_messages.py index 58461309720..87d54213d1b 100644 --- a/release/scripts/modules/bl_i18n_utils/bl_extract_messages.py +++ b/release/scripts/modules/bl_i18n_utils/bl_extract_messages.py @@ -424,6 +424,13 @@ def dump_rna_messages(msgs, reports, settings, verbose=False): # Recursively process subclasses. process_cls_list(cls.__subclasses__()) + # FIXME Workaround weird new (blender 3.2) issue where some classes (like `bpy.types.Modifier`) + # are not listed by `bpy.types.ID.__base__.__subclasses__()` until they are accessed from + # `bpy.types` (eg just executing `bpy.types.Modifier`). + cls_dir = dir(bpy.types) + for cls_name in cls_dir: + getattr(bpy.types, cls_name) + # Parse everything (recursively parsing from bpy_struct "class"...). process_cls_list(bpy.types.ID.__base__.__subclasses__()) |