Skip to content

Commit d7c7293

Browse files
authored
Merge pull request #850 from davidhassell/new-dask-from-numpy-v2-from-cfa-in-cfdm
Allow dask>2024.7.1
2 parents 9ffa8e6 + 1b32d62 commit d7c7293

File tree

9 files changed

+44
-40
lines changed

9 files changed

+44
-40
lines changed

Changelog.rst

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
version 3.17.0
22
--------------
33

4-
**2025-??-??**
4+
**2025-03-??**
55

6+
* Set new minimum version of `dask`: ``2025.2.0``
7+
(https://github.com/NCAS-CMS/cf-python/issues/849)
68
* Set a new minimum version of `numpy`: ``2.0.0``
79
(https://github.com/NCAS-CMS/cf-python/issues/843)
810
* Replace dataset aggregation functionality (CFA) with that imported
@@ -14,6 +16,9 @@ version 3.17.0
1416
* Changed dependency: ``Python>=3.9.0``
1517
* Changed dependency: ``numpy>=2.0.0``
1618
* Changed dependency: ``cfdm>=1.12.0.0, <1.12.1.0``
19+
* Changed dependency: ``dask>=2025.2.0``
20+
* Changed dependency: ``netCDF4>=1.7.2``
21+
* Changed dependency: ``cftime>=1.6.4``
1722
* Changed optional dependency: ``esmpy>=8.7.0``
1823
* Removed dependency (now incorporated into ``cfdm``): ``h5py``
1924
* Removed dependency (now incorporated into ``cfdm``): ``h5netcdf``
@@ -26,6 +31,8 @@ version 3.16.3
2631

2732
**2025-01-28**
2833

34+
* Implementation of active storage reduction operations
35+
(https://github.com/NCAS-CMS/cf-python/issues/501)
2936
* Allow ``'nearest_dtos'`` 2-d regridding to work with discrete
3037
sampling geometry source grids
3138
(https://github.com/NCAS-CMS/cf-python/issues/832)
@@ -44,8 +51,6 @@ version 3.16.3
4451
(https://github.com/NCAS-CMS/cf-python/issues/712)
4552
* New class `cf.H5netcdfArray`
4653
* New class `cf.NetCDF4Array`
47-
* New class `cf.CFAH5netcdfArray`
48-
* New class `cf.CFANetCDF4Array`
4954
* Replace core `dask` functionality with that imported from `cfdm`
5055
(https://github.com/NCAS-CMS/cf-python/issues/839)
5156
* Fix bug that sometimes puts an incorrect ``radian-1`` or
@@ -65,7 +70,7 @@ version 3.16.3
6570
global or near-global cyclic subspaces
6671
(https://github.com/NCAS-CMS/cf-python/issues/828)
6772
* New dependency: ``h5netcdf>=1.3.0``
68-
* New dependency: ``h5py>=3.10.0``
73+
* New dependency: ``h5py>=3.12.0``
6974
* New dependency: ``s3fs>=2024.6.0``
7075
* Changed dependency: ``numpy>=1.15,<2.0``
7176
* Changed dependency: ``1.11.2.0<=cfdm<1.11.3.0``

cf/__init__.py

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@
8080
8181
"""
8282

83-
__date__ = "2025-01-28"
84-
__version__ = "3.16.3"
83+
__date__ = "2025-03-??"
84+
__version__ = "3.17.0"
8585

8686
_requires = (
8787
"numpy",
@@ -124,9 +124,8 @@
124124
_minimum_vn = "1.12.0.0"
125125
_maximum_vn = "1.12.1.0"
126126
_cfdm_version = Version(cfdm.__version__)
127-
if (
128-
_cfdm_version < Version(_minimum_vn) or
129-
_cfdm_version >= Version(_maximum_vn)
127+
if _cfdm_version < Version(_minimum_vn) or _cfdm_version >= Version(
128+
_maximum_vn
130129
):
131130
raise RuntimeError(
132131
"Bad cfdm version: cf requires "
@@ -202,15 +201,10 @@
202201
except ImportError as error1:
203202
raise ImportError(_error0 + str(error1))
204203
else:
205-
_minimum_vn = "2024.6.1"
206-
_maximum_vn = "2024.7.1"
207-
if (
208-
Version(dask.__version__) < Version(_minimum_vn) or
209-
Version(dask.__version__) > Version(_maximum_vn)
210-
):
204+
_minimum_vn = "2025.2.0"
205+
if Version(dask.__version__) < Version(_minimum_vn):
211206
raise ValueError(
212-
"Bad dask version: cf requires "
213-
f"{_minimum_vn}<=dask<={_maximum_vn}. "
207+
f"Bad dask version: cf requires dask>={_minimum_vn}. "
214208
f"Got {dask.__version__} at {dask.__file__}"
215209
)
216210

cf/dimensioncoordinate.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,7 @@ def anchor(self, value, cell=False, parameters=None, inplace=False):
263263
*value*; or is the closest to cell to *value* from above
264264
(below) for increasing (decreasing) coordinates.
265265
266-
.. versionadded:: 1.11.2.0
266+
.. versionadded:: 3.16.3
267267
268268
.. seealso:: `period`, `roll`
269269

cf/field.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ class _Axis_characterisation:
196196
Used by `_binary_operation` to help with ascertaining if there is
197197
a common axis in two fields.
198198

199-
.. versionaddedd:: 1.11.2.0
199+
.. versionaddedd:: 3.16.3
200200

201201
"""
202202

@@ -13710,7 +13710,7 @@ def derivative(
1371013710
by default, or ``m.s-1`` if *ignore_coordinate_units*
1371113711
is True.
1371213712

13713-
.. versionadded:: 1.11.2.0
13713+
.. versionadded:: 3.16.3
1371413714

1371513715
{{inplace: `bool`, optional}}
1371613716

cf/functions.py

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -269,18 +269,18 @@ def configuration(
269269
reductions or False to disable them). The default is to
270270
not change the current behaviour.
271271
272-
.. versionadded:: 1.11.2.0
272+
.. versionadded:: 3.16.3
273273
274274
active_storage_url: `str` or `None` or `Constant`, optional
275275
The new value (either a new URL string or `None` to remove
276276
the URL). The default is to not change the value.
277277
278-
.. versionadded:: 1.11.2.0
278+
.. versionadded:: 3.16.3
279279
280280
active_storage_max_requests: `int` or `Constant`, optional
281281
The new value. The default is to not change the value.
282282
283-
.. versionadded:: 1.11.2.0
283+
.. versionadded:: 3.16.3
284284
285285
of_fraction: `float` or `Constant`, optional
286286
Deprecated at version 3.14.0 and is no longer
@@ -1132,7 +1132,7 @@ def _parse(cls, arg):
11321132
class active_storage(ConstantAccess):
11331133
"""Whether or not to attempt active storage reductions.
11341134
1135-
.. versionadded:: 1.11.2.0
1135+
.. versionadded:: 3.16.3
11361136
11371137
.. seealso:: `active_storage_max_requests`, `active_storage_url`,
11381138
`configuration`
@@ -1171,7 +1171,7 @@ class active_storage(ConstantAccess):
11711171
def _parse(cls, arg):
11721172
"""Parse a new constant value.
11731173
1174-
.. versionaddedd:: 1.11.2.0
1174+
.. versionaddedd:: 3.16.3
11751175
11761176
:Parameters:
11771177
@@ -1201,7 +1201,7 @@ def _parse(cls, arg):
12011201
class active_storage_url(ConstantAccess):
12021202
"""The URL location of the active storage reducer.
12031203
1204-
.. versionadded:: 1.11.2.0
1204+
.. versionadded:: 3.16.3
12051205
12061206
.. seealso:: `active_storage`, `active_storage_max_requests`,
12071207
`configuration`
@@ -1240,7 +1240,7 @@ class active_storage_url(ConstantAccess):
12401240
def _parse(cls, arg):
12411241
"""Parse a new constant value.
12421242
1243-
.. versionaddedd:: 1.11.2.0
1243+
.. versionaddedd:: 3.16.3
12441244
12451245
:Parameters:
12461246
@@ -1283,7 +1283,7 @@ class active_storage_max_requests(ConstantAccess):
12831283
collapse operation are utilising active storage. If some are not
12841284
then :math:`N` will likely be underestimated.
12851285
1286-
.. versionadded:: 1.11.2.0
1286+
.. versionadded:: 3.16.3
12871287
12881288
.. seealso:: `active_storage`, `active_storage_url`,
12891289
`configuration`
@@ -1322,7 +1322,7 @@ class active_storage_max_requests(ConstantAccess):
13221322
def _parse(cls, arg):
13231323
"""Parse a new constant value.
13241324
1325-
.. versionaddedd:: 1.11.2.0
1325+
.. versionaddedd:: 3.16.3
13261326
13271327
:Parameters:
13281328
@@ -1488,7 +1488,7 @@ def total_memory():
14881488
def is_log_level_info(logger):
14891489
"""Return True if and only if log level is at least as verbose as INFO.
14901490
1491-
.. versionadded:: 1.11.2.0
1491+
.. versionadded:: 3.16.3
14921492
14931493
.. seealso:: `log_level`
14941494
@@ -3193,7 +3193,7 @@ def environment(display=True, paths=True):
31933193
udunits2 library: /home/user/lib/libudunits2.so.0
31943194
esmpy/ESMF: 8.6.1 /home/user/lib/python3.12/site-packages/esmpy/__init__.py
31953195
Python: 3.12.2 /home/user/bin/python
3196-
dask: 2024.6.0 /home/user/lib/python3.12/site-packages/dask/__init__.py
3196+
dask: 2025.2.0 /home/user/lib/python3.12/site-packages/dask/__init__.py
31973197
netCDF4: 1.6.5 /home/user/lib/python3.12/site-packages/netCDF4/__init__.py
31983198
h5netcdf: 1.3.0 /home/user/lib/python3.12/site-packages/h5netcdf/__init__.py
31993199
h5py: 3.11.0 /home/user/lib/python3.12/site-packages/h5py/__init__.py
@@ -3206,8 +3206,8 @@ def environment(display=True, paths=True):
32063206
cftime: 1.6.3 /home/user/lib/python3.12/site-packages/cftime/__init__.py
32073207
cfunits: 3.3.7 /home/user/lib/python3.12/site-packages/cfunits/__init__.py
32083208
cfplot: 3.3.0 /home/user/lib/python3.12/site-packages/cfplot/__init__.py
3209-
cfdm: 1.11.2.0 /home/user/cfdm/cfdm/__init__.py
3210-
cf: 1.11.2.0 /home/user/cf-python/cf/__init__.py
3209+
cfdm: 1.12.0.0 /home/user/cfdm/cfdm/__init__.py
3210+
cf: 3.17.0 /home/user/cf-python/cf/__init__.py
32113211
32123212
>>> cf.environment(paths=False)
32133213
Platform: Linux-5.15.0-122-generic-x86_64-with-glibc2.35
@@ -3216,7 +3216,7 @@ def environment(display=True, paths=True):
32163216
udunits2 library: /home/user/lib/libudunits2.so.0
32173217
esmpy/ESMF: 8.6.1
32183218
Python: 3.12.2
3219-
dask: 2024.6.0
3219+
dask: 2025.2.0
32203220
netCDF4: 1.6.5
32213221
h5netcdf: 1.3.0
32223222
h5py: 3.11.0
@@ -3229,8 +3229,8 @@ def environment(display=True, paths=True):
32293229
cftime: 1.6.3
32303230
cfunits: 3.3.7
32313231
cfplot: 3.3.0
3232-
cfdm: 1.11.2.0
3233-
cf: 1.11.2.0
3232+
cfdm: 1.12.0.0
3233+
cf: 3.17.0
32343234
32353235
"""
32363236
dependency_version_paths_mapping = {

cf/mixin/fielddomain.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2311,7 +2311,7 @@ def is_discrete_axis(self, *identity, **filter_kwargs):
23112311
23122312
* The axis with geometry cells.
23132313
2314-
.. versionaddedd:: 1.11.2.0
2314+
.. versionaddedd:: 3.16.3
23152315
23162316
.. seealso:: `domain_axis`, `coordinates`
23172317

docs/source/installation.rst

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -194,8 +194,7 @@ Required
194194

195195
* `numpy <http://www.numpy.org>`_, versions 2.0.0 or newer.
196196

197-
* `dask <https://pypi.org/project/dask>`_, versions 2024.6.0 to
198-
2024.7.1 inclusive.
197+
* `dask <https://pypi.org/project/dask>`_, versions 2025.2.0 or newer.
199198

200199
* `netCDF4 <https://pypi.org/project/netcdf4/>`_, 1.7.2 or newer.
201200

docs/source/releases.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,15 @@ Documentation for all versions of cf.
1313
:local:
1414
:backlinks: entry
1515

16+
**CF-1.12**
17+
-----------
18+
19+
* `Version 3.17.0 <https://ncas-cms.github.io/cf-python-docs/3.17.0>`_ (2025-03-??)
20+
1621
**CF-1.11**
1722
-----------
1823

24+
* `Version 3.16.3 <https://ncas-cms.github.io/cf-python-docs/3.16.3>`_ (2025-01-28)
1925
* `Version 3.16.2 <https://ncas-cms.github.io/cf-python-docs/3.16.2>`_ (2024-04-26)
2026
* `Version 3.16.1 <https://ncas-cms.github.io/cf-python-docs/3.16.1>`_ (2024-03-01)
2127
* `Version 3.16.0 <https://ncas-cms.github.io/cf-python-docs/3.16.0>`_ (2023-12-06)

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@ numpy>=2.0.0
44
cfdm>=1.12.0.0, <1.12.1.0
55
psutil>=0.6.0
66
cfunits>=3.3.7
7-
dask>=2024.6.0,<=2024.7.1
7+
dask>=2025.2.0
88
packaging>=20.0
99
scipy>=1.10.0

0 commit comments

Comments
 (0)