From 2fb9b75b24022941f09b8e227097b88bd09e68c7 Mon Sep 17 00:00:00 2001 From: "jhr2hi@bosch.com" Date: Wed, 14 Jan 2026 12:37:12 +0000 Subject: [PATCH 1/5] fix draw function for modules --- src/extensions/score_draw_uml_funcs/helpers.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/extensions/score_draw_uml_funcs/helpers.py b/src/extensions/score_draw_uml_funcs/helpers.py index f82e2396..99dc1f52 100644 --- a/src/extensions/score_draw_uml_funcs/helpers.py +++ b/src/extensions/score_draw_uml_funcs/helpers.py @@ -127,7 +127,14 @@ def get_module(component: str, all_needs: dict[str, dict[str, str]]) -> str: need = all_needs.get(component, {}) if need: - module = need.get("includes_back", "") + # includes_back could deliver multiple needs; onlyreturn Modules + parents = need.get("includes_back", []) + if isinstance(parents, str): + parents = [parents] + module = [ + pid for pid in parents + if "mod" in all_needs.get(pid, {}).get("type", "") + ] if module: return module[0] From f2af928078b0e57544a48488ac2b7e0de8386dd5 Mon Sep 17 00:00:00 2001 From: "jhr2hi@bosch.com" Date: Wed, 14 Jan 2026 12:50:37 +0000 Subject: [PATCH 2/5] realy only modules --- src/extensions/score_draw_uml_funcs/helpers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/extensions/score_draw_uml_funcs/helpers.py b/src/extensions/score_draw_uml_funcs/helpers.py index 99dc1f52..a2ecacf3 100644 --- a/src/extensions/score_draw_uml_funcs/helpers.py +++ b/src/extensions/score_draw_uml_funcs/helpers.py @@ -133,7 +133,7 @@ def get_module(component: str, all_needs: dict[str, dict[str, str]]) -> str: parents = [parents] module = [ pid for pid in parents - if "mod" in all_needs.get(pid, {}).get("type", "") + if all_needs.get(pid, {}).get("type") == "mod" ] if module: From 749e0b8c3398431915581c9f67e533b5d2021ef3 Mon Sep 17 00:00:00 2001 From: "jhr2hi@bosch.com" Date: Wed, 14 Jan 2026 13:01:19 +0000 Subject: [PATCH 3/5] format fix --- src/extensions/score_draw_uml_funcs/helpers.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/extensions/score_draw_uml_funcs/helpers.py b/src/extensions/score_draw_uml_funcs/helpers.py index a2ecacf3..f6275dc2 100644 --- a/src/extensions/score_draw_uml_funcs/helpers.py +++ b/src/extensions/score_draw_uml_funcs/helpers.py @@ -131,10 +131,7 @@ def get_module(component: str, all_needs: dict[str, dict[str, str]]) -> str: parents = need.get("includes_back", []) if isinstance(parents, str): parents = [parents] - module = [ - pid for pid in parents - if all_needs.get(pid, {}).get("type") == "mod" - ] + module = [pid for pid in parents if all_needs.get(pid, {}).get("type") == "mod"] if module: return module[0] From 48cad9bcf6645be8f0050e749a683a6f9bf181e9 Mon Sep 17 00:00:00 2001 From: "jhr2hi@bosch.com" Date: Wed, 14 Jan 2026 13:30:55 +0000 Subject: [PATCH 4/5] remove unnecessary double convert --- src/extensions/score_draw_uml_funcs/helpers.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/extensions/score_draw_uml_funcs/helpers.py b/src/extensions/score_draw_uml_funcs/helpers.py index f6275dc2..ac20475b 100644 --- a/src/extensions/score_draw_uml_funcs/helpers.py +++ b/src/extensions/score_draw_uml_funcs/helpers.py @@ -129,8 +129,6 @@ def get_module(component: str, all_needs: dict[str, dict[str, str]]) -> str: if need: # includes_back could deliver multiple needs; onlyreturn Modules parents = need.get("includes_back", []) - if isinstance(parents, str): - parents = [parents] module = [pid for pid in parents if all_needs.get(pid, {}).get("type") == "mod"] if module: From ad16642af1e5ac8de78e96c7c46d53d5c46cf216 Mon Sep 17 00:00:00 2001 From: "jhr2hi@bosch.com" Date: Wed, 14 Jan 2026 13:34:15 +0000 Subject: [PATCH 5/5] add warning for multiple modules --- src/extensions/score_draw_uml_funcs/helpers.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/extensions/score_draw_uml_funcs/helpers.py b/src/extensions/score_draw_uml_funcs/helpers.py index ac20475b..456bed7e 100644 --- a/src/extensions/score_draw_uml_funcs/helpers.py +++ b/src/extensions/score_draw_uml_funcs/helpers.py @@ -127,10 +127,15 @@ def get_module(component: str, all_needs: dict[str, dict[str, str]]) -> str: need = all_needs.get(component, {}) if need: - # includes_back could deliver multiple needs; onlyreturn Modules + # includes_back could deliver multiple needs; only return Modules parents = need.get("includes_back", []) module = [pid for pid in parents if all_needs.get(pid, {}).get("type") == "mod"] + if len(module) > 1: + logger.warning( + f"{component}: included in multiple modules: {module}. Returning first." + ) + if module: return module[0] else: