-
Notifications
You must be signed in to change notification settings - Fork 26
Closed
Description
This is the discussion page for the major (breaking) changes in this release.
Xarray engine
A new Xarray engine "earthkit" was implemented and used by default in Field.to_xarray(). The old (cfgrib) engine can also be
invoked via engine="cfgrib". This is definitely a BREAKING change.
Q:
- Is "earthkit" should be the default?
- Should we print a warning on first calling
to_xarray()that the default engine changed?
SimpleFieldList
This is a fieldlist that simply stores a list of arbitrary fields. It is a top level object and can be directly imported from earthkit-data. For detailed discussion see here: #471
Q:
- Is it a good name?
Array backend
The array backends for the fields/fieldlists were refactored and simplified with some breaking changes. For detailed discussion see here: #471
Q:
- The
array-api-compatpackage became a mandatory dependency. Is it acceptable?
Field modification
The Field.copy() and Field.to_field() methods were added to alter field metadata and values. They have slightly different behaviours.
copy(): returns a new field containing modified metadata or/and values. The original field kept unaltered. The new field acts like a wrapper around the original field.to_field(): returns a new (in-memory)ArrayField(values array + Metadata object). New values, array_backend and/or new metadata can be specified. Always callsoverride()to generate the metadata for the newArrayField(so for GRIB data it clones a new handle). The name was chosen to match the existingFieldList.to_fieldlist()method, which currently turns a fieldlist into aSimpleFieldListcontainingArrayFields(so basically callsto_field()on each field).
Q:
- Is
copy()a suitable name - Should we keep both
copy()andto_field()? Or unify them? What should happen toto_fieldlist()?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels