diff --git a/rerun_py/rerun_sdk/rerun/notebook.py b/rerun_py/rerun_sdk/rerun/notebook.py index b10356e8e5a5..6d79b6c97113 100644 --- a/rerun_py/rerun_sdk/rerun/notebook.py +++ b/rerun_py/rerun_sdk/rerun/notebook.py @@ -38,6 +38,9 @@ def set_default_size(*, width: int | None, height: int | None) -> None: _default_height = height +_version_mismatch_checked = False + + class Viewer: """ A viewer embeddable in a notebook. @@ -80,6 +83,20 @@ def __init__( """ try: + global _version_mismatch_checked + if not _version_mismatch_checked: + import importlib.metadata + import warnings + + rerun_notebook_version = importlib.metadata.version("rerun-notebook") + rerun_version = importlib.metadata.version("rerun-sdk") + if rerun_version != rerun_notebook_version: + warnings.warn( + f"rerun-notebook version mismatch: rerun-sdk {rerun_version}, rerun-notebook {rerun_notebook_version}", + category=ImportWarning, + ) + _version_mismatch_checked = True + from rerun_notebook import Viewer as _Viewer # type: ignore[attr-defined] except ImportError: logging.error("Could not import rerun_notebook. Please install `rerun-notebook`.")