diff --git a/Changelog.rst b/Changelog.rst index 2bee5eaa55..5b3e8d907c 100644 --- a/Changelog.rst +++ b/Changelog.rst @@ -6,6 +6,7 @@ Version NEXTVERSION * New methods to allow changing units in a chain: `cf.Field.to_units`, `cf.Data.to_units` (https://github.com/NCAS-CMS/cf-python/issues/874) +* New dependency: ``distributed>=2025.5.1`` ---- diff --git a/cf/__init__.py b/cf/__init__.py index 74aaa73f89..97a24eadd6 100644 --- a/cf/__init__.py +++ b/cf/__init__.py @@ -209,6 +209,19 @@ f"Got {dask.__version__} at {dask.__file__}" ) +try: + import distributed +except ImportError as error1: + raise ImportError(_error0 + str(error1)) +else: + _minimum_vn = "2025.5.1" + if Version(distributed.__version__) < Version(_minimum_vn): + raise ValueError( + "Bad distributed version: cf requires " + f"distributed>={_minimum_vn}. " + f"Got {distributed.__version__} at {distributed.__file__}" + ) + try: import scipy except ImportError as error1: diff --git a/cf/functions.py b/cf/functions.py index 82799009ec..3bfdcb3a60 100644 --- a/cf/functions.py +++ b/cf/functions.py @@ -3171,6 +3171,7 @@ def environment(display=True, paths=True): s3fs: 2024.12.0 /home/miniconda3/lib/python3.12/site-packages/s3fs/__init__.py scipy: 1.15.1 /home/miniconda3/lib/python3.12/site-packages/scipy/__init__.py dask: 2025.5.1 /home/miniconda3/lib/python3.12/site-packages/dask/__init__.py + distributed: 2025.5.1 /home/miniconda3/lib/python3.12/site-packages/distributed/__init__.py cftime: 1.6.4.post1 /home/miniconda3/lib/python3.12/site-packages/cftime/__init__.py cfunits: 3.3.7 /home/miniconda3/lib/python3.12/site-packages/cfunits/__init__.py cfdm: 1.12.2.0 /home/miniconda3/lib/python3.12/site-packages/cfdm/__init__.py @@ -3196,6 +3197,7 @@ def environment(display=True, paths=True): s3fs: 2024.12.0 scipy: 1.15.1 dask: 2025.5.1 + distributed: 2025.5.1 cftime: 1.6.4.post1 cfunits: 3.3.7 cfdm: 1.12.2.0 diff --git a/docs/source/installation.rst b/docs/source/installation.rst index e9e6cf2e15..fc58d8664a 100644 --- a/docs/source/installation.rst +++ b/docs/source/installation.rst @@ -194,7 +194,10 @@ Required * `numpy `_, versions 2.0.0 or newer. -* `dask `_, version 2025.5.1. +* `dask `_, version 2025.5.1 or newer. + +* `distributed `_, version 2025.5.1 or + newer. * `netCDF4 `_, 1.7.2 or newer. diff --git a/requirements.txt b/requirements.txt index 1bfcaec175..297589f029 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,5 +5,6 @@ cfdm>=1.12.2.0, <1.12.3.0 psutil>=0.6.0 cfunits>=3.3.7 dask>=2025.5.1 +distributed>=2025.5.1 packaging>=20.0 scipy>=1.10.0