Source code for refyre.utils.optional_imports

from contextlib import contextmanager
from refyre.config import logger

[docs] @contextmanager def optional_dependencies(error: str = "ignore"): assert error in {"raise", "warn", "ignore"} try: yield None except ImportError as e: if error == "raise": raise e if error == "warn": msg = f'Missing optional dependency "{e.name}". Use pip or conda to install.' logger.debug(f'Warning: {msg}')