diff --git a/Features/__init__.py b/Features/__init__.py index 3b88f74..3a01e5d 100644 --- a/Features/__init__.py +++ b/Features/__init__.py @@ -4,7 +4,11 @@ import inspect for loader, name, is_pkg in pkgutil.walk_packages(__path__): - module = loader.find_module(name).load_module(name) + try: + module = loader.find_module(name).load_module(name) + except Exception as e: + print("Skipping feature module {}: {}".format(name, e)) + continue for name, value in inspect.getmembers(module): if name.endswith('Feature'): diff --git a/main.py b/main.py index f4c31ad..06b2f43 100644 --- a/main.py +++ b/main.py @@ -53,7 +53,11 @@ def loadFeatures(): classes = inspect.getmembers(sys.modules["Features"], inspect.isclass) for featureName, featureClass in classes: - feature = featureClass(); + try: + feature = featureClass() + except Exception as e: + print("Skipping feature {}: {}".format(featureName, e)) + continue for cmd in feature.cmdpairs: commands[cmd] = feature.cmdpairs[cmd]