From c7662a5d47b5c715e674d16adfd0293272c908a3 Mon Sep 17 00:00:00 2001 From: Jan Lerking Date: Sat, 8 Mar 2025 18:20:34 +0100 Subject: [PATCH] 0.1.0 #23 Added 'Autorun' flag to XtendRSystem Attach() method. Also added a new version() method. /JL --- xtendr/xtendrsystem.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/xtendr/xtendrsystem.py b/xtendr/xtendrsystem.py index 5c334ab..ac08a47 100644 --- a/xtendr/xtendrsystem.py +++ b/xtendr/xtendrsystem.py @@ -4,11 +4,15 @@ import os import json from xtendr.xtendrbase import XtendRBase +__version__ = "0.1.0" + class XtendRSystem: """Plugin system to manage plugins. Example: >>> system = XtendRSystem() + >>> system.version() + XtendR v0.1.0 >>> system.attach("example_plugin") # Assuming 'example_plugin/example_plugin.json' exists >>> system.run("example_plugin") ExamplePlugin is running! @@ -20,6 +24,9 @@ class XtendRSystem: def __init__(self): self.plugins = {} + def version(self) -> str: + return "XtendR v" + __version__ + def attach(self, name: str) -> None: """Dynamically load a plugin from its folder.""" if name in self.plugins: @@ -55,7 +62,8 @@ class XtendRSystem: self.plugins[name] = { 'instance': instance, 'running': False, - 'info': plugin_info + 'info': plugin_info, + 'autorun': False } print(f"Attached plugin '{name}'.") except (ModuleNotFoundError, json.JSONDecodeError, AttributeError) as e: