v3.10.0.dev53 (14 Jun 2024) [unreleased]#

This document explains the changes made to Iris for this release (View all changes.)

v3.10.0.dev53 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#

  1. N/A

✨ Features#

  1. @ESadek-MO updated the error messages in iris.cube.CubeList.concatenate() to better explain the error. (PR #6005)

🐛 Bugs Fixed#

  1. @bouweandela updated the chunktype of Dask arrays, so it corresponds to the array content. (PR #5801)

  2. @rcomer made the WPERCENTILE aggregator work with rolling_window(). (Issue #5777, PR #5825)

💣 Incompatible Changes#

  1. @rcomer removed the target parameter from as_fields() and save_pairs_from_cube() because it had no effect. (PR #5783)

🚀 Performance Enhancements#

  1. @bouweandela added the option to specify the Dask chunks of the target array in iris.util.broadcast_to_shape(). (PR #5620)

  2. @schlunma allowed iris.analysis.cartography.area_weights() to return dask arrays with arbitrary chunks. (PR #5658)

  3. @bouweandela made iris.cube.Cube.rolling_window() work with lazy data. (PR #5795)

🔥 Deprecations#

  1. N/A

🔗 Dependencies#

  1. @tkknight removed the pin for sphinx <=5.3, so the latest should now be used, currently being v7.2.6. (PR #5901)

📚 Documentation#

  1. @hsteptoe added more detailed examples to Cube functions slices() and slices_over(). (PR #5735)

💼 Internal#

  1. @bouweandela removed a workaround in merge() for an issue with dask.array.stack() which has been solved since 2017. (PR #5923)

  2. @trexfeathers introduced a temporary fix for Airspeed Velocity’s deprecated use of the conda --force argument. To be removed once airspeed-velocity/asv#1397 is merged and released. (PR #5931)

  3. @trexfeathers created iris.tests.stock.realistic_4d_w_everything(); providing a Cube aimed to exercise as much of Iris as possible. (PR #5949)

  4. @trexfeathers deactivated any small ‘unit-style’ benchmarks for default benchmark runs, and introduced larger more ‘real world’ benchmarks where coverage was needed. (PR #5949).

  5. @trexfeathers made a Nox benchmarks session as the recommended entry point for running benchmarks. (PR #5951)

  6. @ESadek-MO added further benchmarks for aggregation and collapse. (PR #5954)

  7. @trexfeathers set the benchmark data generation environment to automatically install iris-test-data during setup. (PR #5958)

  8. @pp-mo reworked benchmark peak-memory measurement to use the tracemalloc package. (PR #5948)

  9. @pp-mo added a benchmark ‘trialrun’ sub-command, to quickly test benchmarks during development. (PR #5957)

  10. @pp-mo moved several memory-measurement benchmarks from ‘on-demand’ to the standard set, in hopes that use of ‘tracemalloc’ (PR #5948) makes the results consistent enough to monitor for performance changes. (PR #5959)

  11. @rcomer made some slices_over() tests go faster (PR #5973)