Changelog

Unreleased

24.8.0 (2024-08-29)

This release contains a large number of bug fixes and small improvements, and sets the stage for the major cycling improvement (Issue #750) coming in the next release in a few days.

24.6.0 (2024-06-17)

This release contains a quite a number of small improvements, increasing the reliability of CSET significantly, and paving the way for further improvements to come.

  • @jfrost-mo replaced how the encoding of subprocess output is determined in PR #604. This adds support for python before 3.11, and more accurately reflects the encoding.

  • @jwarner8 add intelligent determination of whether to plot country lines in PR #655

  • @daflack fixed inflow properties recipe in PR #662

  • @daflack added science review guidance to the documentation in PR #649

  • @jfrost-mo ensured cartopy data files are included in the GitHub Actions cache in PR #647

  • @jfrost-mo improved the error message for missing data files in PR #663

  • @jfrost-mo grouped the package install logs in GitHub Actions in PR #645

  • @daflack added an inflow layer properties diagnostic in PR #353

  • @jfrost-mo fixed LFRic cube metadata on load in PR #627. This means that loading LFRic data no longer requires special steps in the recipe.

  • @jfrost-mo made the install_restricted_files.sh script non-interactive in PR #606. This should make it less confusing to use.

  • @Sylviabohnenstengel added information to rose-meta for colorbar selection and provided path to example JSON file in PR #632

  • @jfrost-mo added a Generative AI policy in PR #624

  • @jfrost-mo linked to the CSET discussion forum in PR #625

  • @jwarner8 use common operator to identify x/y coord names in regrid operator PR #626

  • @jwarner8 added generic cube util for common functions so all operators can use to reduce repetition in PR #620

  • @JorgeBornemann added METPlus GridStat functionality (NIWA) in PR #629

  • @jfrost-mo added a code of conduct in PR #618

  • @jfrost-mo fixed some rose edit metadata so the subarea selectors show up when enabled in PR #612

  • @jfrost-mo removed some old recipes that are now redundant in PR #512

  • @jfrost-mo added a git cheat sheet to the documentation in PR #598

  • @jfrost-mo added a warning when input files don’t exist in PR #518. This makes it easier to see if configuration mistakes were made.

  • @jfrost-mo improved the documentation for adding a new diagnostic in PR #603

  • @dasha-shchep added generate_area_constraint operator and added to LFRic recipes in PR #522. This was their first contribution 🎉

  • @Sylviabohnenstengel added a vertical line plotting operator that plots vertical profiles using an optional series coordinate and an optional sequence coordinate in PR #567. The series coordinate is currently tested for pressure and the sequence coordinate allows displaying vertical profiles over time using the time slider functionality. Furthermore added a recipe to plot vertical profiles and test functions for the vertical plot operator.

  • @jfrost-mo dropped python 3.9 support in PR #448 The minimum required python is now 3.10.

  • @jfrost-mo fixed some outdated documentation examples in PR #546

  • @jfrost-mo added setuptools as an explicit dependency of the workflow in PR #543

  • @cjohnson-pi added support for custom plotting styles in PR #570. This avoids many issues of side-by-side plots having different scales, or extreme values causing plots to saturate.

  • @Sylviabohnenstengel documentation: removed necessity to add new recipe to flow.cylc.

  • @Ashfinn fixed a typo in the documentation in PR #573. This was their first contribution 🎉

  • @jfrost-mo fixed how arguments from the CSET_ADDOPTS environment variable are parsed in PR #569. This fixes issues with passing lists into recipes.

  • @jfrost-mo added a dead link checker to the documentation in PR #556

  • @Sylviabohnenstengel documented the common error of operating on a CubeList instead of a Cube in PR #541

  • @Sylviabohnenstengel documented how to update your conda environment in PR #519

  • @Sylviabohnenstengel documented the common error of no cubes being loaded in PR #513

  • @Sylviabohnenstengel and @jfrost-mo redid the rose-meta sort orders so that workflow configuration makes more sense in PR #504

  • @jfrost-mo updated the example rose-suite.conf to reflect what a modern version should look like in PR #508

24.4.1 (2024-04-19)

This release contains a large generalisation of the CSET workflow, allowing use of templating to use the same recipe for multiple variables. It also adds cycling to the workflow, so a long workflow can be efficiently processed in parallel.

24.2.1 (2024-03-04)

A small bug fix release containing several fixes that ensure portability on Australia’s NCI system.

24.2.0 (2024-02-13)

This release open sources the cylc workflow, allowing for much easier running of CSET over large datasets. It also includes support for parametrising recipes to allow a single recipe to work for many cases.

0.5.0 (2023-11-24)

Small update featuring some better looking plots (though still a work-in-progress, see Issue #240) and a documentation fix.

0.4.0 (2023-11-23)

Containing many months of work, this release contains many usability improvements, new generic operators, and a big change to the output, where it is now generated as handily viewable HTML pages.

0.3.0 (2023-08-02)

This release contains some major changes to the user experience. This includes many of the CLI commands changing names, and the CSET Documentation being completely restructured. Hopefully this should be the last major reshuffle of the user experience, as we are getting closers to being feature complete for our MVP.

Other highlights include the addition of the cset graph command for visualising recipes, and the cset cookbook command for dumping the built in recipes to disk.

0.2.0 (2023-06-16)

Lots of good work in the release towards making the recipe format more usable.

0.1.0 (2023-04-24)

The first release of CSET! 🎉 This release contains basic operators to do reading, writing, filtering, and plotting of data. It is however still quite limited in each of them, and still doesn’t promise much in the way of API stability, with things undoubtedly going to undergo significant change in the near future.

This release also serves as a basis for packaging CSET out into the wider world; packages will be released on PyPI, and conda-forge.