Open
Description
Iris needs a public statement on how it handles NetCDF files that deviate from the CF conventions. This will serve multiple benefits:
- More certainty when discussing if/how Iris should load a particular file.
- Clearer direction when developing the codebase.
- Set user expectations.
Writing this statement will involve making some difficult decisions. A working group is tackling this now: @tkknight, @bjlittle, @lbdreyer, @pp-mo, @trexfeathers, @stephenworsley, @ESadek-MO, @scottrobinson02, @HGWright
Factors at play
- More CF compliance means smoother collaboration between institutions, and Iris can play a part in raising awareness.
- CF evolves over time, so may develop 'opinions' on things that previously didn't matter and invalidate older files.
- The available tooling can make it difficult to address non-compliances in a file.
- UX - being strict/verbose about CF compliance makes the user experience more awkward.
- Iris has a place in the scientific Python community - people choose Iris / Xarray / raw netCDF4 / something else / for different purposes, and CF handling plays a part in that.
- Continuing to work in the face of CF non-compliances could need more defensive code.
Items affected
(please edit if you know of others)
- Failing to load cubes due to
cell_method
issues #5119 - Cellmethod tolerance #5126
- What should happen to non-loaded coordinates etcetera? #5068
- Failing to load a NetCDF dataset #5067
- Allow exemptions to coordinate axis guessing on save #5003
- Warn or error rather than returning None from name check in netcdf #4495
- loading cubes with differing units for time and time_bounds #1801
- Loading not possible with non-standard netcdf variable names #5171
- Case insensitive lenient special name support? #4453
- Handling of Standard name aliases #5257
### Tasks
- [ ] https://github.com/SciTools/iris/issues/5068
- [ ] https://github.com/SciTools/iris/issues/5119
Metadata
Metadata
Assignees
Type
Projects
Status
No status
Status
No status