From 5bd6f92d14406e67cd4d09eb0b290e8f0c6d805e Mon Sep 17 00:00:00 2001 From: Nicola Masotti Date: Mon, 26 Oct 2026 19:25:38 +0100 Subject: [PATCH] Declare zarr and dask as dependencies, require xarray >= 2025.6 --- pyproject.toml | 8 +++----- uv.lock | 18 +++++++++--------- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index e8bfbe4..5e21aa9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,6 @@ requires = ["setuptools>=77", "setuptools_scm>=8"] [dependency-groups] dev = [ - "dask>=2026.8.0", "deptry>=0.25.1", "mypy>=1.15.0", "myst-parser>=4.0.1", @@ -15,8 +14,7 @@ dev = [ "pytest-cov>=5.0", "ruff>=0.15", "sphinx>=7.2", - "sphinx-autoapi>=3.6.0", - "zarr>=3.1.6" + "sphinx-autoapi>=3.6.0" ] [project] @@ -32,7 +30,7 @@ classifiers = [ "Programming Language :: Python :: 3.14", "Topic :: Scientific/Engineering" ] -dependencies = ["attrs>=23.1", "cfgrib>=0.9.10.4", "ecmwf-datastores-client>=0.1", "ecmwf-opendata>=0.2", "numpy>=2.0", "pandas>=2.2.2", "polytope-client>=0.7.1", "xarray>=2024.10"] +dependencies = ["attrs>=23.1", "cfgrib>=0.9.10.4", "dask>=2026.8.0", "ecmwf-datastores-client>=0.1", "ecmwf-opendata>=0.2", "numpy>=2.0", "pandas>=2.2.2", "polytope-client>=0.7.1", "xarray>=2025.6", "zarr>=3.1.6"] description = "Xarray backend to access ECMWF datastores" dynamic = ["version"] license = "Apache-2.0" @@ -49,7 +47,7 @@ branch = true [tool.deptry.per_rule_ignores] DEP001 = ["cartopy", "matplotlib"] -DEP002 = ["cfgrib"] +DEP002 = ["cfgrib", "dask", "zarr"] [tool.mypy] strict = true diff --git a/uv.lock b/uv.lock index 2356acf..dbdd044 100644 --- a/uv.lock +++ b/uv.lock @@ -2477,20 +2477,22 @@ wheels = [ dependencies = [ {name = "attrs"}, {name = "cfgrib"}, + {name = "dask"}, {name = "ecmwf-datastores-client"}, {name = "ecmwf-opendata"}, {name = "numpy", version = "2.4.6", source = {registry = "https://pypi.org/simple"}, marker = "python_full_version < '3.12'"}, {name = "numpy", version = "2.5.4", source = {registry = "https://pypi.org/simple"}, marker = "python_full_version >= '3.12'"}, {name = "pandas"}, {name = "polytope-client"}, - {name = "xarray"} + {name = "xarray"}, + {name = "zarr", version = "3.1.6", source = {registry = "https://pypi.org/simple"}, marker = "python_full_version < '3.12'"}, + {name = "zarr", version = "3.4.1", source = {registry = "https://pypi.org/simple"}, marker = "python_full_version >= '3.12'"} ] name = "xarray-ecmwf" source = {editable = "."} [package.dev-dependencies] dev = [ - {name = "dask"}, {name = "deptry"}, {name = "mypy"}, {name = "myst-parser"}, @@ -2502,26 +2504,25 @@ dev = [ {name = "ruff"}, {name = "sphinx", version = "9.0.4", source = {registry = "https://pypi.org/simple"}, marker = "python_full_version < '3.12'"}, {name = "sphinx", version = "9.1.0", source = {registry = "https://pypi.org/simple"}, marker = "python_full_version >= '3.12'"}, - {name = "sphinx-autoapi"}, - {name = "zarr", version = "3.1.6", source = {registry = "https://pypi.org/simple"}, marker = "python_full_version < '3.12'"}, - {name = "zarr", version = "3.4.1", source = {registry = "https://pypi.org/simple"}, marker = "python_full_version >= '3.12'"} + {name = "sphinx-autoapi"} ] [package.metadata] requires-dist = [ {name = "attrs", specifier = ">=23.1"}, {name = "cfgrib", specifier = ">=0.9.10.4"}, + {name = "dask", specifier = ">=2026.8.0"}, {name = "ecmwf-datastores-client", specifier = ">=0.1"}, {name = "ecmwf-opendata", specifier = ">=0.2"}, {name = "numpy", specifier = ">=2.0"}, {name = "pandas", specifier = ">=2.2.2"}, {name = "polytope-client", specifier = ">=0.7.1"}, - {name = "xarray", specifier = ">=2024.10"} + {name = "xarray", specifier = ">=2025.6"}, + {name = "zarr", specifier = ">=3.1.6"} ] [package.metadata.requires-dev] dev = [ - {name = "dask", specifier = ">=2026.8.0"}, {name = "deptry", specifier = ">=0.25.1"}, {name = "mypy", specifier = ">=1.15.0"}, {name = "myst-parser", specifier = ">=4.0.1"}, @@ -2532,8 +2533,7 @@ dev = [ {name = "pytest-cov", specifier = ">=5.0"}, {name = "ruff", specifier = ">=0.15"}, {name = "sphinx", specifier = ">=7.2"}, - {name = "sphinx-autoapi", specifier = ">=3.6.0"}, - {name = "zarr", specifier = ">=3.1.6"} + {name = "sphinx-autoapi", specifier = ">=3.6.0"} ] [[package]]