Recent Releases of cfdm
cfdm - 1.12.3.1
2025-10-15
- Python 3.9 support removed (https://github.com/NCAS-CMS/cfdm/issues/353)
- When changing array data type, retain cached data elements cast to the new type (https://github.com/NCAS-CMS/cfdm/issues/358)
- Fix bug that prevented
cfdm.readfrom reading a file with#characters in its file name (https://github.com/NCAS-CMS/cfdm/issues/356) - Changed dependency:
Python>=3.10.0
What's Changed
- Allow
#in file names by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/357 - Retain cached data array values when changing dtype by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/359
- Remove support for Python 3.9 (EOL) by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/360
Full Changelog: https://github.com/NCAS-CMS/cfdm/compare/v1.12.3.0...v1.12.3.1
Climate Change - Climate Data Standards
- Python
Published by davidhassell 2 months ago
cfdm - 1.12.3.0
2025-08-18
- Fix
cfdm.Data.reshapewhen the underlying data originate on disk (https://github.com/NCAS-CMS/cfdm/issues/348) - New keyword parameter to
cfdm.Field.dump:data(https://github.com/NCAS-CMS/cfdm/issues/345) - New dependency:
distributed>=2025.5.1
Climate Change - Climate Data Standards
- Python
Published by sadielbartholomew 4 months ago
cfdm - 1.12.2.0
2025-06-05
- Implement lossy compression via quantization (https://github.com/NCAS-CMS/cfdm/issues/330)
- New quantization classes:
cfdm.Quantization,cfdm.mixin.QuantizationMixin(https://github.com/NCAS-CMS/cfdm/issues/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(https://github.com/NCAS-CMS/cfdm/issues/330) - Improve performance in
cfdm.readby caching any array values retrieved from disk (https://github.com/NCAS-CMS/cfdm/issues/313) - New keyword parameter to
cfdm.write:chunk_cache(https://github.com/NCAS-CMS/cfdm/issues/328) - Read Zarr datasets with
cfdm.read(https://github.com/NCAS-CMS/cfdm/issues/335) - Read multiple datasets simultaneously with
cfdm.read(https://github.com/NCAS-CMS/cfdm/issues/336) - New keyword parameters to
cfdm.read:recursive,followlinks(https://github.com/NCAS-CMS/cfdm/issues/336) - New keyword parameters to
cfdm.read:cdl_string(https://github.com/NCAS-CMS/cfdm/issues/337) - Update CF aggregation keywords (https://github.com/NCAS-CMS/cfdm/issues/341)
- Set new minimum version of
dask:2025.5.1(https://github.com/NCAS-CMS/cfdm/issues/339) - New dependency:
zarr>=3.0.8 - Changed dependency:
dask>=2025.5.1
Climate Change - Climate Data Standards
- Python
Published by davidhassell 7 months ago
cfdm - 1.12.1.0
2025-04-01
- Set new method
cfdm.Array.astype(https://github.com/NCAS-CMS/cfdm/issues/331) - Set new maximum version of
dask:2025.3.0(https://github.com/NCAS-CMS/cfdm/issues/332) - Changed dependency:
dask>=2025.2.0,<=2025.3.0
What's Changed
- Add
astypemethod onArraysubclasses. Pin Dask. by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/333
Full Changelog: https://github.com/NCAS-CMS/cfdm/compare/v1.12.0.0...v1.12.1.0
Climate Change - Climate Data Standards
- Python
Published by davidhassell 9 months ago
cfdm - 1.12.0.0
2025-03-18
- Set new minimum version of
dask:2025.2.0(https://github.com/NCAS-CMS/cfdm/issues/321) - Set new minimum version of
numpy:2.0.0(https://github.com/NCAS-CMS/cfdm/issues/318) - Introduction of reading and writing of aggregation datasets (for CF-1.13) (https://github.com/NCAS-CMS/cfdm/issues/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 https://github.com/NCAS-CMS/cfdm/pull/316
- Introduction of aggregation datasets by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/320
- Add missing docstrings by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/322
- Move to numpy version 2 by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/323
- Allow dask>2024.7.1 by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/326
- Add missing docs by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/327
Full Changelog: https://github.com/NCAS-CMS/cfdm/compare/v1.11.2.1...v1.12.0.0
Climate Change - Climate Data Standards
- Python
Published by davidhassell 9 months ago
cfdm - 1.11.2.1
2025-02-26
- Re-introduction of
cfdm.Data.datetime_as_string(https://github.com/NCAS-CMS/cfdm/pull/324)
What's Changed
- Reinstate cfdm.Data.datetime_as_string by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/324
Full Changelog: https://github.com/NCAS-CMS/cfdm/compare/v1.11.2.0...v1.11.2.1
Climate Change - Climate Data Standards
- Python
Published by davidhassell 10 months ago
cfdm - 1.11.2.0
2025-01-28
- Introduction of
daskfor all data manipulations (https://github.com/NCAS-CMS/cfdm/issues/317) - Fix bug that returned incorrect results when an invalid identifer is provided to
cf.Field.cell_methods(https://github.com/NCAS-CMS/cfdm/issues/299) - Upgrades to allow cfdm to work with Python 3.12 (https://github.com/NCAS-CMS/cfdm/issues/302)
- Extension to the HDF5 chunks API (https://github.com/NCAS-CMS/cfdm/issues/309)
- New function
cfdm.netcdf_flattenerthat replaces the import ofnetcdf_flattener(https://github.com/NCAS-CMS/cfdm/issues/286) - New function
cfdm.netcdf_indexerthat applies netCDF masking and unpacking to arbitrary arrays (https://github.com/NCAS-CMS/cfdm/issues/285) - Allow access to netCDF-4 files in S3 object stores (https://github.com/NCAS-CMS/cfdm/issues/285)
- Allow a choice of netCDF engines (https://github.com/NCAS-CMS/cfdm/issues/285)
- Fix bug that caused
cfdm.writeto fail when a parametric Z dimension coordinate did not have acomputed_standard_nameattribute (https://github.com/NCAS-CMS/cfdm/issues/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 https://github.com/NCAS-CMS/cfdm/pull/292
- Update linting package versions for Python 3.12 by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/306
- Fix
cfdm.writewhen a parametric Z dimension coordinate does not have a compute_standard_name attribute by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/304 - h5netcdf read by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/307
- Extension to the HDF5 chunks API by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/310
- Fix bug that returned incorrect results when an invalid identifer is provided to
cf.Field.cell_methodsby @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/300 - Introduction of Dask for all data manipulations by @davidhassell in https://github.com/NCAS-CMS/cfdm/pull/312
Full Changelog: https://github.com/NCAS-CMS/cfdm/compare/v1.11.1.0...v1.11.2.0
Climate Change - Climate Data Standards
- Python
Published by davidhassell 11 months ago
cfdm - 1.11.1.0
2024-03-01
- New keyword parameter to
cfdm.Field.insert_dimension:constructs(https://github.com/NCAS-CMS/cfdm/issues/287) - New example field
11: discrete sampling geometry trajectory features (https://github.com/NCAS-CMS/cfdm/issues/289)
Climate Change - Climate Data Standards
- Python
Published by sadielbartholomew almost 2 years ago
cfdm - 1.11.0.0
2023-12-06
- Python 3.7 support removed (https://github.com/NCAS-CMS/cfdm/issues/274)
- Implemented the reading and manipulation of UGRID mesh topologies for CF-1.11 (https://github.com/NCAS-CMS/cfdm/issues/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
Climate Change - Climate Data Standards
- Python
Published by davidhassell about 2 years ago
cfdm - 1.10.1.2
2023-08-31
- Fix bug that prevented "https://" netCDF files from being read (https://github.com/NCAS-CMS/cfdm/issues/268)
Climate Change - Climate Data Standards
- Python
Published by sadielbartholomew over 2 years ago
cfdm - 1.10.1.1
2023-07-21
- Fix bug that caused very slow reads of datasets with compression by gathering or DSG ragged arrays (https://github.com/NCAS-CMS/cfdm/issues/260)
- Fix bug that prevented
cfdm.readfrom accessing remote files in URL locations (https://github.com/NCAS-CMS/cfdm/issues/262)
Climate Change - Climate Data Standards
- Python
Published by davidhassell over 2 years ago
cfdm - 1.10.1.0
2023-04-26
- New method:
cfdm.Data.get_data - Changes to facilitate CFA-netCDF in cf-python (https://github.com/NCAS-CMS/cfdm/pull/255)
cfdm.readnow always returns unicode strings from netCDF files (https://github.com/NCAS-CMS/cfdm/issues/251)- Fix bug in
cf.Data.second_elementfor some data shapes (https://github.com/NCAS-CMS/cfdm/issues/249) - Fix bug when writing to disk coordinates with a
computed_standard_name(https://github.com/NCAS-CMS/cfdm/pull/254)
Climate Change - Climate Data Standards
- Python
Published by davidhassell over 2 years ago
cfdm - 1.10.0.3
2023-03-10
- New method:
cfdm.Field.del_properties(https://github.com/NCAS-CMS/cfdm/pull/241) - New keyword parameter to
cfdm.unique_constructs: ignore_properties(https://github.com/NCAS-CMS/cfdm/issues/240) - New keyword parameter to
cfdm.NetCDFArray:missing_values(https://github.com/NCAS-CMS/cfdm/issues/246) - Fixed bug that caused
cf.writeto erroneously change external netCDF variable names (https://github.com/NCAS-CMS/cfdm/issues/244)
Climate Change - Climate Data Standards
- Python
Published by sadielbartholomew almost 3 years ago
cfdm - 1.10.0.2
2023-01-26
- New class:
cfdm.InterpolationSubarray(https://github.com/NCAS-CMS/cfdm/issues/228) - Relocate the call to
NetCDFRead._customize_read_varsto earlier inNetCDFRead.read(https://github.com/NCAS-CMS/cfdm/issues/233)
Climate Change - Climate Data Standards
- Python
Published by davidhassell almost 3 years ago
cfdm - 1.10.0.1
2022-10-31
- New method:
cfdm.Data.get_tie_point_indices - New method:
cfdm.Data.get_interpolation_parameters - New method:
cfdm.Data.get_dependent_tie_points - Record the names of files that contain the original data (https://github.com/NCAS-CMS/cfdm/issues/215)
- New method:
cfdm.Field.get_original_filenames - New method:
cfdm.Data.get_original_filenames - New keyword parameter to
cfdm.write:omit_data(https://github.com/NCAS-CMS/cfdm/issues/221) - Fixed bug that caused incorrect data assignment with some multiple list indices (https://github.com/NCAS-CMS/cfdm/issues/217)
- Fixed bug that caused a failure when printing date-time data with the first element masked (https://github.com/NCAS-CMS/cfdm/issues/211)
Climate Change - Climate Data Standards
- Python
Published by davidhassell about 3 years ago
cfdm - 1.10.0.0
2022-08-17
- New method:
cfdm.Field.auxiliary_coordinate - New method:
cfdm.Field.cell_measure - New method:
cfdm.Field.cell_method - New method:
cfdm.Field.coordinate - New method:
cfdm.Field.coordinate_reference - New method:
cfdm.Field.dimension_coordinate - New method:
cfdm.Field.domain_ancillary - New method:
cfdm.Field.domain_axis - New method:
cfdm.Field.field_ancillary - New method:
cfdm.Field.indices - New attribute:
cfdm.Field.array - New attribute:
cfdm.Field.datetime_array - New construct retrieval API methods (https://github.com/NCAS-CMS/cfdm/issues/179)
- Implement (bar writing to netCDF files) lossy compression by coordinate subsampling (https://github.com/NCAS-CMS/cfdm/issues/167)
Climate Change - Climate Data Standards
- Python
Published by davidhassell over 3 years ago
cfdm - 1.9.0.4
2022-07-18
- Upgrade to allow cfdm to work with Python 3.10 (https://github.com/NCAS-CMS/cfdm/issues/187)
- Fix bug that caused a hang when reading zero-length files (https://github.com/NCAS-CMS/cfdm/issues/190)
- Fix bug to prevent error when writing vlen strings to a netCDF file when compression has been set (for
netCDF4>=1.6.0) (https://github.com/NCAS-CMS/cfdm/issues/199)
Climate Change - Climate Data Standards
- Python
Published by davidhassell over 3 years ago
cfdm - 1.9.0.3
2022-03-10
- Fixed bug that caused a failure from
cfdm.writewhen writing identical (auxiliary) coordinates to different data variables in different groups (https://github.com/NCAS-CMS/cfdm/issues/177) - Fixed bug that caused
cf.Domain.__str__to fail when a dimension coordinate construct does not have data (https://github.com/NCAS-CMS/cfdm/issues/174) - New dependency:
packaging>=20.0 - Changed dependency:
cftime>=1.6.0
Climate Change - Climate Data Standards
- Python
Published by davidhassell almost 4 years ago
cfdm - 1.9.0.2
2022-01-31
- Fixed bug that caused a
cfdm.writefailure when a vertical coordinate reference construct has no coordinates (https://github.com/NCAS-CMS/cfdm/issues/164) - Fixed bug that caused a failure when downstream
identitiesmethods return anitertools.chainobject (https://github.com/NCAS-CMS/cfdm/issues/170)
Climate Change - Climate Data Standards
- Python
Published by davidhassell almost 4 years ago
cfdm - 1.9.0.1
2021-10-12
- Fixed bug that prevented some geometry coordinates being written to netCDF CLASSIC files (https://github.com/NCAS-CMS/cfdm/issues/140)
- Fixed bug that a caused segmentation fault when appending a string data type to netCDF files (https://github.com/NCAS-CMS/cfdm/issues/155)
- Fixed bug in
cf.Field.get_domainwhen there are climatological time axes (https://github.com/NCAS-CMS/cfdm/issues/159)
Climate Change - Climate Data Standards
- Python
Published by davidhassell about 4 years ago
cfdm - 1.9.0.0
2021-09-21
- Python 3.6 support removed (https://github.com/NCAS-CMS/cfdm/issues/139)
- Conversion of
cfdm.Domainto a non-abstract that may be read from and written to a netCDF dataset (https://github.com/NCAS-CMS/cfdm/issues/111) - New method:
cfdm.Domain.creation_commands - New method:
cfdm.Domain.climatological_time_axes - New method:
cfdm.AuxiliaryCoordinate.del_climatology - New method:
cfdm.AuxiliaryCoordinate.get_climatology - New method:
cfdm.AuxiliaryCoordinate.is_climatology - New method:
cfdm.AuxiliaryCoordinate.set_climatology - New method:
cfdm.DimensionCoordinate.del_climatology - New method:
cfdm.DimensionCoordinate.get_climatology - New method:
cfdm.DimensionCoordinate.is_climatology - New method:
cfdm.DimensionCoordinate.set_climatology - New function:
cfdm.unique_constructs - New function:
cfdm.example_fields - Construct access API changes from 1.8.9.0 applied to
Field.convert - Improved error message for invalid inputs to
Field.convert - Raise exception when attempting to write multiply defined coordinate reference parameters (https://github.com/NCAS-CMS/cfdm/issues/148)
- Interpret format specifiers for size 1
cfdm.Dataarrays (https://github.com/NCAS-CMS/cfdm/issues/152) - Fix file name expansions in
cfdm.write(https://github.com/NCAS-CMS/cfdm/issues/157)
Climate Change - Climate Data Standards
- Python
Published by davidhassell over 4 years ago
cfdm - 1.8.9.0
2021-05-25
- Construct access API changes (https://github.com/NCAS-CMS/cfdm/issues/124, https://github.com/NCAS-CMS/cfdm/issues/130, https://github.com/NCAS-CMS/cfdm/issues/132, https://github.com/NCAS-CMS/cfdm/issues/137)
- Performance enhancements (https://github.com/NCAS-CMS/cfdm/issues/124, https://github.com/NCAS-CMS/cfdm/issues/130)
- New write mode
mode='a'for appending to, rather than over-writing, a netCDF file on disk (https://github.com/NCAS-CMS/cfdm/issues/143) - Better error message in the case of a
numpy.ma.core.MaskErroroccurring upon reading of CDL files with only header or coordinate information (https://github.com/NCAS-CMS/cfdm/issues/128) - Fix for zero-sized unlimited dimensions when read from a grouped netCDF file (https://github.com/NCAS-CMS/cfdm/issues/113)
- Fix bug causing occasional non-symmetric
equalsoperations (https://github.com/NCAS-CMS/cfdm/issues/133) - Changed dependency:
cftime>=1.5.0 - Changed dependency:
netCDF4>=1.5.4
Climate Change - Climate Data Standards
- Python
Published by davidhassell over 4 years ago
cfdm - 1.8.8.0
2020-12-18
- The setting of global constants can now be controlled by a context manager (https://github.com/NCAS-CMS/cfdm/issues/100)
- Fixed bug that caused a failure when writing a dataset that contains a scalar domain ancillary construct (https://github.com/NCAS-CMS/cfdm/issues/98)
- Changed dependency:
cftime>=1.3.0
Climate Change - Climate Data Standards
- Python
Published by davidhassell over 4 years ago