"""Optional runtime progress renderers. Degrades to None when rich is absent so callers fall back to plain-text progress (the CLI stays dependency-free in its fallback path). """ from .plain import PROGRESS_REGISTRY, register_progress # noqa: F401 (re-export) try: from .rich_terminal import RichTerminalProgress except ImportError: # rich not installed RichTerminalProgress = None else: PROGRESS_REGISTRY.register('rich', RichTerminalProgress) __all__ = ["RichTerminalProgress", "PROGRESS_REGISTRY", "register_progress"]