From 582d485572f05d278439504d9345ba762633fbfc Mon Sep 17 00:00:00 2001 From: miro Date: Mon, 9 Dec 2024 16:07:19 +0000 Subject: [PATCH] fix: runtime requirements reading --- ovos_core/skill_manager.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/ovos_core/skill_manager.py b/ovos_core/skill_manager.py index 9ebfb847bd2..7ad445b2c14 100644 --- a/ovos_core/skill_manager.py +++ b/ovos_core/skill_manager.py @@ -303,7 +303,8 @@ def load_plugin_skills(self, network=None, internet=None): LOG.info(f"Consider uninstalling {skill_id} instead of blacklisting it") continue if skill_id not in self.plugin_skills and skill_id not in loaded_skill_ids: - skill_loader = self._get_plugin_skill_loader(skill_id, init_bus=False) + skill_loader = self._get_plugin_skill_loader(skill_id, init_bus=False, + skill_class=plug) requirements = skill_loader.runtime_requirements if not network and requirements.network_before_load: continue @@ -330,7 +331,7 @@ def _get_internal_skill_bus(self): bus = self.bus return bus - def _get_plugin_skill_loader(self, skill_id, init_bus=True): + def _get_plugin_skill_loader(self, skill_id, init_bus=True, skill_class=None): """Get a plugin skill loader. Args: @@ -343,7 +344,10 @@ def _get_plugin_skill_loader(self, skill_id, init_bus=True): bus = None if init_bus: bus = self._get_internal_skill_bus() - return PluginSkillLoader(bus, skill_id) + loader = PluginSkillLoader(bus, skill_id) + if skill_class: + loader.skill_class = skill_class + return loader def _load_plugin_skill(self, skill_id, skill_plugin): """Load a plugin skill. @@ -355,7 +359,7 @@ def _load_plugin_skill(self, skill_id, skill_plugin): Returns: PluginSkillLoader: Loaded plugin skill loader instance if successful, None otherwise. """ - skill_loader = self._get_plugin_skill_loader(skill_id) + skill_loader = self._get_plugin_skill_loader(skill_id, skill_class=skill_plugin) try: load_status = skill_loader.load(skill_plugin) except Exception: