v3.15.0.dev125 (26 Feb 2026) [unreleased]#
This document explains the changes made to Iris for this release (View all changes.)
v3.15.0.dev125 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#
Weโve had a makeover! โจ All user documentation pages have been reorganised into a new structure: User Manual. This restructure is to maximise discoverability of the available pages, as well as embracing the Diataxis framework for better engagement with user needs going forward.
โจ Features#
@ukmo-ccbunney added new cube component convenience methods that allow for manipulation of any named dimensional component that can be attached to a cube (i.e. coordinates, cell measures and ancillary variables) via a common interface. The following methods are provided:
component()andcomponents(): get one or more components from a cubeadd_component(): add a component to a cuberemove_component(): remove a component from a cubecomponent_dims(): return the cube dimension(s) spanned by a component.
@ESadek-MO added functionality to allow
concatenate(),rolling_window()andintersection()to work with dataless cubes. (PR #6860, PR #6757)@HGWright added to the Nimrod loader to expand the types of Nimrod files it can load. This includes selecting which Nimrod table to use the data entry headers from. (Issue #4505, PR #6763)
๐ Bugs Fixed#
N/A
๐ฃ Incompatible Changes#
N/A
๐ Performance Enhancements#
N/A
๐ฅ Deprecations#
@ESadek-MO has deprecated the
IrisTestclass, and other unittest-based testing conveniences in favour of the conveniences found iniris/tests/_shared_utils.py. (PR #6950)@hsteptoe has deprecated the use of the copy kwarg across
iris.pandasto reflect changes to the default behaviour of pandas v3 New pandas v3 copy behaviour. (PR #6948)
๐ Dependencies#
N/A
๐ Documentation#
@tkknight reduced the space used on the documentation homepage by the quick link cards to allow for easier reading. (PR #6886)
@tkknight added a gallery carousel to the documentation homepage. (PR #6884)
@bjlittle added the
:user:extlinksgithubuser convenience. (PR #6931)@pp-mo added a page on how to access datafiles in S3 buckets. (Issue #6374, PR #6951)
@trexfeathers, @stephenworsley and @tkknight reorganised all user documentation pages into a new structure: User Manual. This restructure is to maximise discoverability of the available pages, as well as embracing the Diataxis framework for better engagement with user needs going forward. (Issue #6511, PR #6868)
๐ผ Internal#
@trexfeathers and @hdyson updated
_ff_replacement.pyto clarify that Iris supports Ancillaries. (PR #6792)@trexfeathers adapted
test_OceanSigmaZFactoryfor NumPy 2.4 - only 0-dimensional arrays can now be converted to scalars. (PR #6876)@trexfeathers updated benchmarking to source Mule from its new home: MetOffice/mule . (PR #6879)
@tkknight removed flake8, we have ruff now instead. (PR #6889)
@trexfeathers and @ukmo-ccbunney updated CI to support Python 3.14 inline with SPEC0 Minimum Supported Dependencies. Note: pyvista (and hence geovista) is not yet compatible with Python 3.14, so :module:~iris.experimental.geovista is currently only available for Python <3.14. (PR #6816, Issue #6775)
@ESadek-MO, @trexfeathers, @bjlittle, @HGWright, @pp-mo, @stephenworsley and @ukmo-ccbunney converted the entirity of the tests from unittest to pytest. Iris is now also ruff-PT compliant, save for PT019. (Issue #6212, PR #6939)
@hsteptoe and @ESadek-MO (reviewer) updated chained assignment useage within the tests associated with
iris.pandasto reflect changes in pandas v3 New pandas v3 copy behaviour. (PR #6948, Issue #6761)@hsteptoe and @ESadek-MO (reviewer) added static type hinting to
iris.pandas. (PR #6948)