diff --git a/src/griffe/loader.py b/src/griffe/loader.py index 9012b831..223673a9 100644 --- a/src/griffe/loader.py +++ b/src/griffe/loader.py @@ -245,7 +245,11 @@ def expand_exports(self, module: Module, seen: set | None = None) -> None: # no for export in module.exports: if isinstance(export, Name): module_path = export.full.rsplit(".", 1)[0] # remove trailing .__all__ - next_module = self.modules_collection[module_path] + try: + next_module = self.modules_collection[module_path] + except KeyError: + logger.debug(f"Cannot expand '{export.full}', try pre-loading corresponding package") + continue if next_module.path not in seen: self.expand_exports(next_module, seen) try: