Whatβs New in Iris#
v2.3.0.dev973 (25 Oct 2022) [unreleased]#
This document explains the changes made to Iris for this release (View all changes.)
v2.3.0.dev973 Release Highlights
The highlights for this major/minor release of Iris include:
N/A
And finally, get in touch with us on GitHub if you have any issues or feature requests for improving Iris. Enjoy!
π’ Announcements#
Welcome to @ESadek-MO and @TTV-Intrepid who made their first contributions to Iris π
β¨ Features#
@ESadek-MO edited
expand_filespecs()
to allow expansion of non-existing paths, and added expansion functionality tosave()
. (Issue #4772, PR #4913)@trexfeathers and Julian Heming added new mappings between CF standard names and UK Met Office LBFC codes. (PR #4859)
@pp-mo changed the metadata of a face/edge-type
MeshCoord
, to be same as the face/edge coordinate in the mesh from which it takes its.points
. Previously, all MeshCoords took their metadata from the node coord, but only a node-type MeshCoord now does that. Also, the MeshCoord.var_name
is now that of the underlying coord, whereas previously this was always None. These changes make MeshCoord more like an ordinaryAuxCoord
, which avoids some specific known usage problems. (Issue #4860, PR #5020)
π Bugs Fixed#
@rcomer and @pp-mo (reviewer) factored masking into the returned sum-of-weights calculation from
SUM
. (PR #4905)@schlunma fixed a bug which prevented using
iris.cube.Cube.collapsed()
on coordinates whose number of bounds differs from 0 or 2. This enables the use of this method on mesh coordinates. (Issue #4672, PR #4870)@bjlittle and @lbdreyer (reviewer) fixed the building of the CF Standard Names module
iris.std_names
for thesetup.py
commandsdevelop
andstd_names
. (Issue #4951, PR #4952)@lbdreyer and @pp-mo (reviewer) fixed the cube print out such that scalar ancillary variables are displayed in a dedicated section rather than being added to the vector ancillary variables section. Further, ancillary variables and cell measures that map to a cube dimension of length 1 are now included in the respective vector sections. (PR #4945)
@rcomer removed some old redundant code that prevented determining the order of time cells. (Issue #4697, PR #4729)
π£ Incompatible Changes#
N/A
π Performance Enhancements#
@rcomer and @pp-mo (reviewer) increased aggregation speed for
SUM
,COUNT
andPROPORTION
on real data. (PR #4905)@bouweandela made
iris.coords.Coord.cells()
faster for time coordinates. This also affectsiris.cube.Cube.extract()
,iris.cube.Cube.subset()
, andiris.coords.Coord.intersect()
. (PR #4969)@bouweandela improved the speed of
iris.cube.Cube.subset()
/iris.coords.Coord.intersect()
. (PR #4955)
π₯ Deprecations#
N/A
π Dependencies#
@rcomer introduced the
dask >=2.26
minimum pin, so that Iris can benefit from Daskβs support for NEP13 and NEP18. (PR #4905)@trexfeathers advanced the Cartopy pin to
>=0.21
, as Cartopyβs change to default Transverse Mercator projection affects an Iris test. See SciTools/cartopy@fcb784d and SciTools/cartopy@8860a81 for more details. (PR #4968)@trexfeathers introduced the
netcdf4!=1.6.1
pin to avoid a problem with segfaults. (PR #4968)@trexfeathers updated the Matplotlib colormap registration in
iris.palette
in response to a deprecation warning. Using the new Matplotlib API also means amatplotlib>=3.5
pin. (PR #4998)
π Documentation#
@ESadek-MO, @TTV-Intrepid and @trexfeathers added a gallery example for zonal means plotted parallel to a cartographic plot. (PR #4871)
@Esadek-MO added a key-terms Glossary page into the user guide. (PR #4902)
@pp-mo added a code example for converting ORCA-gridded data to an unstructured cube. (PR #5013)
πΌ Internal#
@rcomer removed the obsolete
setUpClass
method from Iris testing. (PR #4927)@bjlittle and @lbdreyer (reviewer) removed support for
python setup.py test
, which is a deprecated approach to executing package tests, see pypa/setuptools#1684. Also performed assortedsetup.py
script hygiene. (PR #4948, PR #4949, PR #4950)@pp-mo split the module
iris.fileformats.netcdf
into separateloader
andsaver
submodules, just to make the code easier to handle.@trexfeathers adapted the benchmark for importing
iris.palette
to cope with new colormap behaviour in Matplotlib v3.6. (PR #4998)@rcomer removed a now redundant workaround for an old matplotlib bug, highlighted by Issue #4090. (PR #4999)
@rcomer added the
show
option to the documentation Makefiles, as a convenient way for contributors to view their built documentation. (PR #5000)