From 647451772c2290e866d589eec8a096081872e0a0 Mon Sep 17 00:00:00 2001 From: Matt Exact <70145864+MattExact@users.noreply.github.com> Date: Tue, 30 Apr 2024 13:56:00 +0100 Subject: [PATCH] Gracefully handle optional dependencies --- meilisync/discover.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/meilisync/discover.py b/meilisync/discover.py index 69bad74..9b5060a 100644 --- a/meilisync/discover.py +++ b/meilisync/discover.py @@ -13,7 +13,11 @@ def _discover(module: ModuleType, t: Type): ret = {} for m in pkgutil.iter_modules(module.__path__): - mod = importlib.import_module(f"{module.__name__}.{m.name}") + try: + mod = importlib.import_module(f"{module.__name__}.{m.name}") + except ModuleNotFoundError: + # Enables optional dependencies of sources and progress. + continue for _, member in inspect.getmembers(mod, inspect.isclass): if issubclass(member, t) and member is not t: ret[member.type] = member