From 20320367e4f30024b7053eefc6b32af9ab76b44d Mon Sep 17 00:00:00 2001 From: Jon Mease Date: Sun, 13 Oct 2024 08:32:07 -0400 Subject: [PATCH 1/3] chore: Add upper version bound on VegaFusion (#3638) Co-authored-by: Dan Redding <125183946+dangotbanned@users.noreply.github.com> --- altair/utils/_importers.py | 3 ++- pyproject.toml | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/altair/utils/_importers.py b/altair/utils/_importers.py index 14085ebcf..54d8ce3f4 100644 --- a/altair/utils/_importers.py +++ b/altair/utils/_importers.py @@ -12,6 +12,8 @@ def import_vegafusion() -> ModuleType: min_version = "1.5.0" try: + import vegafusion as vf # type: ignore + version = importlib_version("vegafusion") embed_version = importlib_version("vegafusion-python-embed") if version != embed_version or Version(version) < Version(min_version): @@ -23,7 +25,6 @@ def import_vegafusion() -> ModuleType: f" - vegafusion-python-embed=={embed_version}\n" ) raise RuntimeError(msg) - import vegafusion as vf # type: ignore return vf except ImportError as err: diff --git a/pyproject.toml b/pyproject.toml index f01a562bd..3e53c57fc 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,7 +60,7 @@ all = [ "pandas>=0.25.3", "numpy", "pyarrow>=11", - "vegafusion[embed]>=1.6.6", + "vegafusion[embed]>=1.6.6,<2", "anywidget>=0.9.0", "altair_tiles>=0.3.0" ] From bb46f813c3c5af73966cae30faf8d0bd84502233 Mon Sep 17 00:00:00 2001 From: Dan Redding <125183946+dangotbanned@users.noreply.github.com> Date: Sun, 13 Oct 2024 14:28:13 +0100 Subject: [PATCH 2/3] fix(typing): Add untyped `vegafusion` to `mypy` overrides (#3640) --- altair/utils/_importers.py | 2 +- altair/utils/_vegafusion_data.py | 2 +- pyproject.toml | 1 + tests/test_jupyter_chart.py | 2 +- tests/test_transformed_data.py | 2 +- 5 files changed, 5 insertions(+), 4 deletions(-) diff --git a/altair/utils/_importers.py b/altair/utils/_importers.py index 54d8ce3f4..c02cc7011 100644 --- a/altair/utils/_importers.py +++ b/altair/utils/_importers.py @@ -12,7 +12,7 @@ def import_vegafusion() -> ModuleType: min_version = "1.5.0" try: - import vegafusion as vf # type: ignore + import vegafusion as vf version = importlib_version("vegafusion") embed_version = importlib_version("vegafusion-python-embed") diff --git a/altair/utils/_vegafusion_data.py b/altair/utils/_vegafusion_data.py index 970098d33..ecf91ede6 100644 --- a/altair/utils/_vegafusion_data.py +++ b/altair/utils/_vegafusion_data.py @@ -26,7 +26,7 @@ if TYPE_CHECKING: from narwhals.typing import IntoDataFrame - from vegafusion.runtime import ChartState # type: ignore + from vegafusion.runtime import ChartState # Temporary storage for dataframes that have been extracted # from charts by the vegafusion data transformer. Use a WeakValueDictionary diff --git a/pyproject.toml b/pyproject.toml index 3e53c57fc..8b4d58b1d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -436,6 +436,7 @@ module = [ "nbformat.*", "ipykernel.*", "ibis.*", + "vegafusion.*", # This refers to schemapi in the tools folder which is imported # by the tools scripts such as generate_schema_wrapper.py # "schemapi.*" diff --git a/tests/test_jupyter_chart.py b/tests/test_jupyter_chart.py index 0630ce4b3..be26386bb 100644 --- a/tests/test_jupyter_chart.py +++ b/tests/test_jupyter_chart.py @@ -26,7 +26,7 @@ try: - import vegafusion # type: ignore # noqa: F401 + import vegafusion # noqa: F401 transformers = ["default", "vegafusion"] except ImportError: diff --git a/tests/test_transformed_data.py b/tests/test_transformed_data.py index 1c4d8a095..ee689ff68 100644 --- a/tests/test_transformed_data.py +++ b/tests/test_transformed_data.py @@ -10,7 +10,7 @@ import narwhals as nw try: - import vegafusion as vf # type: ignore + import vegafusion as vf except ImportError: vf = None From 796649efd751a7b928ac4f81e192d0ae93f4a3d0 Mon Sep 17 00:00:00 2001 From: Dan Redding <125183946+dangotbanned@users.noreply.github.com> Date: Sun, 13 Oct 2024 15:02:28 +0100 Subject: [PATCH 3/3] chore: Remove outdated `schemapi` comment (#3641) --- pyproject.toml | 3 --- 1 file changed, 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 8b4d58b1d..2adcd15a7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -437,9 +437,6 @@ module = [ "ipykernel.*", "ibis.*", "vegafusion.*", - # This refers to schemapi in the tools folder which is imported - # by the tools scripts such as generate_schema_wrapper.py - # "schemapi.*" ] ignore_missing_imports = true