Releases: NCAS-CMS/cfdm
Releases · NCAS-CMS/cfdm
1.12.3.1
2025-10-15
- Python 3.9 support removed (#353)
- When changing array data type, retain cached data elements cast to the new type (#358)
- Fix bug that prevented
cfdm.readfrom reading a file with#characters in its file name (#356) - Changed dependency:
Python>=3.10.0
What's Changed
- Allow
#in file names by @davidhassell in #357 - Retain cached data array values when changing dtype by @davidhassell in #359
- Remove support for Python 3.9 (EOL) by @davidhassell in #360
Full Changelog: v1.12.3.0...v1.12.3.1
1.12.3.0
1.12.2.0
2025-06-05
- Implement lossy compression via quantization (#330)
- New quantization classes:
cfdm.Quantization,cfdm.mixin.QuantizationMixin(#330) - New quantization methods:
cfdm.Field.get_quantization,cfdm.Field.get_quantize_on_write,cfdm.Field.set_quantize_on_write,cfdm.Field.del_quantize_on_write(#330) - Improve performance in
cfdm.readby caching any array values retrieved from disk (#313) - New keyword parameter to
cfdm.write:chunk_cache(#328) - Read Zarr datasets with
cfdm.read(#335) - Read multiple datasets simultaneously with
cfdm.read(#336) - New keyword parameters to
cfdm.read:recursive,followlinks(#336) - New keyword parameters to
cfdm.read:cdl_string(#337) - Update CF aggregation keywords (#341)
- Set new minimum version of
dask:2025.5.1(#339) - New dependency:
zarr>=3.0.8 - Changed dependency:
dask>=2025.5.1
1.12.1.0
2025-04-01
- Set new method
cfdm.Array.astype(#331) - Set new maximum version of
dask:2025.3.0(#332) - Changed dependency:
dask>=2025.2.0,<=2025.3.0
What's Changed
- Add
astypemethod onArraysubclasses. Pin Dask. by @davidhassell in #333
Full Changelog: v1.12.0.0...v1.12.1.0
1.12.0.0
2025-03-18
- Set new minimum version of
dask:2025.2.0(#321) - Set new minimum version of
numpy:2.0.0(#318) - Introduction of reading and writing of aggregation datasets (for CF-1.13) (#319)
- Changed dependency:
Python>=3.9.0 - Changed dependency:
numpy>=2.0.0 - Changed dependency:
netCDF4>=1.7.2 - Changed dependency:
cftime>=1.6.4 - Changed dependency:
dask>=2025.2.0
What's Changed
- Prevent read error for datasets including badly-encoded UGRID meshes by @sadielbartholomew in #316
- Introduction of aggregation datasets by @davidhassell in #320
- Add missing docstrings by @davidhassell in #322
- Move to numpy version 2 by @davidhassell in #323
- Allow dask>2024.7.1 by @davidhassell in #326
- Add missing docs by @davidhassell in #327
Full Changelog: v1.11.2.1...v1.12.0.0
1.11.2.1
2025-02-26
- Re-introduction of
cfdm.Data.datetime_as_string(#324)
What's Changed
- Reinstate cfdm.Data.datetime_as_string by @davidhassell in #324
Full Changelog: v1.11.2.0...v1.11.2.1
1.11.2.0
2025-01-28
- Introduction of
daskfor all data manipulations (#317) - Fix bug that returned incorrect results when an invalid identifer is provided to
cf.Field.cell_methods(#299) - Upgrades to allow cfdm to work with Python 3.12 (#302)
- Extension to the HDF5 chunks API (#309)
- New function
cfdm.netcdf_flattenerthat replaces the import ofnetcdf_flattener(#286) - New function
cfdm.netcdf_indexerthat applies netCDF masking and unpacking to arbitrary arrays (#285) - Allow access to netCDF-4 files in S3 object stores (#285)
- Allow a choice of netCDF engines (#285)
- Fix bug that caused
cfdm.writeto fail when a parametric Z dimension coordinate did not have acomputed_standard_nameattribute (#303) - New class
cfdm.H5netcdfArray - New class
cfdm.NetCDF4Array - Changed dependency:
numpy>=1.15,<2.0 - New dependency:
h5netcdf>=1.3.0 - New dependency:
h5py>=3.10.0 - New dependency:
s3fs>=2024.6.0 - New dependency:
dask>=2024.6.0,<=2024.7.1 - Removed dependency:
netcdf_flattener
What's Changed
- Python 3.12 compatability by @davidhassell in #292
- Update linting package versions for Python 3.12 by @davidhassell in #306
- Fix
cfdm.writewhen a parametric Z dimension coordinate does not have a compute_standard_name attribute by @davidhassell in #304 - h5netcdf read by @davidhassell in #307
- Extension to the HDF5 chunks API by @davidhassell in #310
- Fix bug that returned incorrect results when an invalid identifer is provided to
cf.Field.cell_methodsby @davidhassell in #300 - Introduction of Dask for all data manipulations by @davidhassell in #312
Full Changelog: v1.11.1.0...v1.11.2.0
1.11.1.0
1.11.0.0
2023-12-06
- Python 3.7 support removed (#274)
- Implemented the reading and manipulation of UGRID mesh topologies for CF-1.11 (#270)
- New methods:
cfdm.Field.cell_connectivity,cfdm.Field.cell_connectivities - New methods:
cfdm.Field.domain_topology,cfdm.Field.domain_topologies - New methods:
cfdm.Field.del_mesh_id,cfdm.Field.get_mesh_id,cfdm.Field.has_mesh_id,cfdm.Field.set_mesh_id, - New attribute:
cfdm.Data.sparse_array - New dependency:
scipy>=1.10.0