This release is the baseline for evaluating **RAL3_LFRic708.1** with RMED Ticket <!-- Work around to prevent linking to incorrect ticket -->708 detailing the science configuration. It introduces a fixed evaluation functionality for RAL3-LFRic and RAL3-UM, new functionality, bug fixes, and improvements. Key features for RAL3-LFRic evaluation include:
* Surface fields: spatial plots, timeseries, histograms, model comparison plots, time aggregation by hour of day, validity time, forecast range, area averages.
* Pressure levels fields: spatial plots, timeseries, histograms, model comparison plots, time aggregation by hour of day, validity time, forecast range, area averages, vertical profiles, PDFs.
Additional capabilities: transects, point selection, QQ plots, age of air diagnostics, cape diagnostics that can be selected by the user.
The next release will add analysis on model levels, multi-line plotting, and more derived variables.
[PyPI package](https://pypi.org/project/CSET/25.3.0/) | [conda-forge package](https://anaconda.org/conda-forge/cset) | [workflow tarball](https://github.com/MetOffice/CSET/releases/download/v25.3.0/cset-workflow-v25.3.0.tar.gz)
What's Changed
* Upload hidden coverage files to fix GitHub Actions breakage by jfrost-mo in https://github.com/MetOffice/CSET/pull/832
* Pin GitHub Actions to specific commits to prevent random breakage by jfrost-mo in https://github.com/MetOffice/CSET/pull/846
* Switch to data time cycling to support multiple models and multiple case studies or trials by jfrost-mo in https://github.com/MetOffice/CSET/pull/765
* Note that all documentation shell examples use bash by jfrost-mo in https://github.com/MetOffice/CSET/pull/861
* Add colorbar entries for more standard names by jfrost-mo in https://github.com/MetOffice/CSET/pull/839
* Support python 3.13 and remove usage of tox in CI by jfrost-mo in https://github.com/MetOffice/CSET/pull/872
* Correct execute_recipe docstring; it takes an input directory by jfrost-mo in https://github.com/MetOffice/CSET/pull/869
* Fix colorbar min and max not being set on pcolormesh plots by jfrost-mo in https://github.com/MetOffice/CSET/pull/870
* Error fetch_fcst task when no data found for a model, as it usually indicates a typo in the data path by jfrost-mo in https://github.com/MetOffice/CSET/pull/842
* Rewrite colorbar loading to use default colorbar definition from inside CSET package by jfrost-mo in https://github.com/MetOffice/CSET/pull/871
* Fix spelling of stratiform_rainfall_rate in colorbar definition by jfrost-mo in https://github.com/MetOffice/CSET/pull/878
* Improve transect title by jwarner8 in https://github.com/MetOffice/CSET/pull/829
* Update colorbar definitions by daflack in https://github.com/MetOffice/CSET/pull/892
* Fix typo in comment by jfrost-mo in https://github.com/MetOffice/CSET/pull/906
* Sort conda lock files to aid reviewing by jfrost-mo in https://github.com/MetOffice/CSET/pull/890
* Explicitly use conda-forge conda channel for updating conda and resolving lock files by jfrost-mo in https://github.com/MetOffice/CSET/pull/886
* Exclude `__main__.py` from test coverage measurement by jfrost-mo in https://github.com/MetOffice/CSET/pull/880
* Remove HTTP status check as urlopen already does it by jfrost-mo in https://github.com/MetOffice/CSET/pull/882
* Test templating variables into recipe parser by jfrost-mo in https://github.com/MetOffice/CSET/pull/881
* Test recipe listing and detailing functions by jfrost-mo in https://github.com/MetOffice/CSET/pull/883
* Fix type signature by jwarner8 in https://github.com/MetOffice/CSET/pull/931
* Changes to fix longitude convention to be in the range -180 degrees to 180 degrees where possible by JKPShonk in https://github.com/MetOffice/CSET/pull/896
* Disable strict checking that TLS certificates are well formed by jfrost-mo in https://github.com/MetOffice/CSET/pull/904
* Change CSET introduction on documentation welcome page by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/899
* Harmonise variable names from UM Stash to LFRic variable and long_name by ukmo-huw-lewis in https://github.com/MetOffice/CSET/pull/898
* Add date to cset plot menu items by mo-sanamahmood in https://github.com/MetOffice/CSET/pull/934
* Wrap plot title and increase figure size by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/935
* Fix supported arg type in regrid operator by jwarner8 in https://github.com/MetOffice/CSET/pull/948
* Use non-interactive backend for plotting by jfrost-mo in https://github.com/MetOffice/CSET/pull/951
* Update to WEB_ADDR documentation. by daflack in https://github.com/MetOffice/CSET/pull/955
* Add iris-grib library support by jwarner8 in https://github.com/MetOffice/CSET/pull/960
* Revert "Add iris-grib to dev dependencies" by jfrost-mo in https://github.com/MetOffice/CSET/pull/974
* Import CSET.recipes as recipes during testing for readability by jfrost-mo in https://github.com/MetOffice/CSET/pull/968
* Add nicer error messages for unhandled exceptions by jfrost-mo in https://github.com/MetOffice/CSET/pull/884
* Target lockfile update PR to source branch by jfrost-mo in https://github.com/MetOffice/CSET/pull/963
* Convert CLI interface tests to not use `subprocess.run` by jfrost-mo in https://github.com/MetOffice/CSET/pull/970
* Use regular install for CI tests by jfrost-mo in https://github.com/MetOffice/CSET/pull/463
* Add age of air diagnostic functionality by jwarner8 in https://github.com/MetOffice/CSET/pull/480
* Add mask operators by daflack in https://github.com/MetOffice/CSET/pull/967
* Documentation update for mask operator by daflack in https://github.com/MetOffice/CSET/pull/990
* Adds spatial perturbation operator by daflack in https://github.com/MetOffice/CSET/pull/979
* New callbacks to standardise some dim names by jwarner8 in https://github.com/MetOffice/CSET/pull/983
* Fix location of AOA docs by jwarner8 in https://github.com/MetOffice/CSET/pull/1001
* Fix no title in surface histogram plots by jwarner8 in https://github.com/MetOffice/CSET/pull/1006
* Updates generate_levels_constraint documentation for ensemble functionality by daflack in https://github.com/MetOffice/CSET/pull/1003
* Log cubes that don't merge in `load_cube` operator by jfrost-mo in https://github.com/MetOffice/CSET/pull/1022
* Remove unneeded `name` global attribute by jfrost-mo in https://github.com/MetOffice/CSET/pull/1024
* Adds DKE functionality by daflack in https://github.com/MetOffice/CSET/pull/1002
* Format JSON when writing by jfrost-mo in https://github.com/MetOffice/CSET/pull/1041
* Limit domain statistics to 3 s.f. and move below plot by jfrost-mo in https://github.com/MetOffice/CSET/pull/1040
* Require tasks to succeed in DEBUG mode by jfrost-mo in https://github.com/MetOffice/CSET/pull/1039
* Generalise spatial plot log message by jfrost-mo in https://github.com/MetOffice/CSET/pull/1042
* Separate words in callback function name with _ so it is easier to read by jfrost-mo in https://github.com/MetOffice/CSET/pull/1043
* Handle sorting files outside the current directory in `sort_json.py` script by jfrost-mo in https://github.com/MetOffice/CSET/pull/1046
* Replace all remaining usage of typing.Union with `|` by jfrost-mo in https://github.com/MetOffice/CSET/pull/1047
* Fix typo in rose-edit help by jfrost-mo in https://github.com/MetOffice/CSET/pull/1051
* Add configuration file for GitHub Issue templates by jfrost-mo in https://github.com/MetOffice/CSET/pull/1035
* Merge lead time into initiation time cycling by jfrost-mo in https://github.com/MetOffice/CSET/pull/1053
* Add utility function for equalising attributes by jfrost-mo in https://github.com/MetOffice/CSET/pull/1052
* unify colourbar for relative_humidity between UM and LFRic. by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/1038
* unify colourbar for cloud_base_altitude between um and lfric by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/1059
* Reduce useless log messages by jfrost-mo in https://github.com/MetOffice/CSET/pull/1045
* Adds collapse_by_hour_of_day operator by daflack in https://github.com/MetOffice/CSET/pull/1034
* Sort colorbar JSON files via pre-commit hook by jfrost-mo in https://github.com/MetOffice/CSET/pull/1060
* Handle CubeList in line plotting operator by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/954
* Ensure multiple cases are put into a single cube by daflack in https://github.com/MetOffice/CSET/pull/1050
* Data loading improvements, including loading multiple models by jfrost-mo in https://github.com/MetOffice/CSET/pull/1054
* Improve rose edit and simplify include files by jfrost-mo in https://github.com/MetOffice/CSET/pull/1055
* Collapse by validity time by daflack in https://github.com/MetOffice/CSET/pull/1067
* Update collapse_by_hour for multiple cases by daflack in https://github.com/MetOffice/CSET/pull/1068
* Accept microsecond precision in iris times by jfrost-mo in https://github.com/MetOffice/CSET/pull/1074
* Parallelise CI tests by jfrost-mo in https://github.com/MetOffice/CSET/pull/1071
* Use "spawn" start method for multiprocessing by jfrost-mo in https://github.com/MetOffice/CSET/pull/1075
* Fix issue with rose-suite.conf variable by jwarner8 in https://github.com/MetOffice/CSET/pull/1082
* Remove unnecessary computation from age-of-air test by jfrost-mo in https://github.com/MetOffice/CSET/pull/1081
* Share multiprocessing pool across ensemble members by jfrost-mo in https://github.com/MetOffice/CSET/pull/1080
* Add data fetching script from MASS by jfrost-mo in https://github.com/MetOffice/CSET/pull/1084
* Spatial difference plots by jfrost-mo in https://github.com/MetOffice/CSET/pull/1061
* Make MASS fetch data script executable by jfrost-mo in https://github.com/MetOffice/CSET/pull/1085
* Add additional colour bar definitions from UKEP Plot by jfrost-mo in https://github.com/MetOffice/CSET/pull/1064
* Increase default memory to 4G for processes by jwarner8 in https://github.com/MetOffice/CSET/pull/1090
* Relax shape check in difference plots by jwarner8 in https://github.com/MetOffice/CSET/pull/1088
* Deduplicate an unlimited amount of STASH warnings by jfrost-mo in https://github.com/MetOffice/CSET/pull/1091
* Search for correct log_record in fetch_data tests by jfrost-mo in https://github.com/MetOffice/CSET/pull/1089
* Implement required return value for MASSFileRetriever by jfrost-mo in https://github.com/MetOffice/CSET/pull/1095
* Use CSET read operator to load test data, and improve various fragile tests by jfrost-mo in https://github.com/MetOffice/CSET/pull/1076
* Remove housekeep_raw task from workflow by jfrost-mo in https://github.com/MetOffice/CSET/pull/1104
* Allow `collapse.collapse` to handle a CubeList by jfrost-mo in https://github.com/MetOffice/CSET/pull/985
* Update workflow for single recipe case aggregation by lead time by daflack in https://github.com/MetOffice/CSET/pull/1086
* Update workflow to allow case aggregation by hour of day by daflack in https://github.com/MetOffice/CSET/pull/1101
* Updates workflow for aggregation by validity time by daflack in https://github.com/MetOffice/CSET/pull/1102
* Handle CubeLists in `plot_vertical_line_series` and `plot_scatter_plot` by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/1100
* Add dummy tasks to prevent workflow graph failures by jfrost-mo in https://github.com/MetOffice/CSET/pull/1119
* Update rose-suite.conf.example by jfrost-mo in https://github.com/MetOffice/CSET/pull/1121
* Fix for pressure coordinate name variants plus enforce units to be hPa by jwarner8 in https://github.com/MetOffice/CSET/pull/1106
* Fix issue where pressure coordinate returns Unit object, not str by jwarner8 in https://github.com/MetOffice/CSET/pull/1123
* Allow real-world co-ordinates to be specified in single-point timeseries. by cehalliwell in https://github.com/MetOffice/CSET/pull/943
* Extend histogram plot with CubeList handling capability by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/1116
* switch off auto-scale for x axis to avoid jumping of ticks on x axis … by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/1134
* Various fixes and new recipes for pressure level functionality by jwarner8 in https://github.com/MetOffice/CSET/pull/1127
* Switch web viewer to sidebar layout by jfrost-mo in https://github.com/MetOffice/CSET/pull/1132
* Tidy Conf by making aggregatable collapsible, and fill missing example values. by jwarner8 in https://github.com/MetOffice/CSET/pull/1135
* Histogram enhancements by jwarner8 in https://github.com/MetOffice/CSET/pull/1137
* Fix LFRic time coordinate metadata by jwarner8 in https://github.com/MetOffice/CSET/pull/1117
* Shrink sidebar font size by jfrost-mo in https://github.com/MetOffice/CSET/pull/1142
* Various QuickLook fixes and enhancements of surface plot functionality. by jwarner8 in https://github.com/MetOffice/CSET/pull/1122
* put in colorbar for surface_net_shortwave_flux_difference by BernardClaxton in https://github.com/MetOffice/CSET/pull/1138
* Fix spelling in plot.py by jfrost-mo in https://github.com/MetOffice/CSET/pull/1147
* Search for all varnames and allow user colorbar override by jfrost-mo in https://github.com/MetOffice/CSET/pull/1141
* Support flexible pressure_level dependent colorbars by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/1140
* Fill out colorbar definitions for missing variables by BernardClaxton in https://github.com/MetOffice/CSET/pull/1145
* Unify .gitignore to cover both workflow and library by jfrost-mo in https://github.com/MetOffice/CSET/pull/1151
* Update environments used throughout CSET to python 3.13 by jfrost-mo in https://github.com/MetOffice/CSET/pull/1153
* Run generate_rose_meta script as pre-commit hook by jfrost-mo in https://github.com/MetOffice/CSET/pull/1154
* Rename workflow conda lock files by jfrost-mo in https://github.com/MetOffice/CSET/pull/1157
* Always build conda environment within workflow share directory by jfrost-mo in https://github.com/MetOffice/CSET/pull/1156
* Break long names in sidebar by jfrost-mo in https://github.com/MetOffice/CSET/pull/1160
* Allow release workflow to run on pre-releases by jfrost-mo in https://github.com/MetOffice/CSET/pull/1161
* Unify documentation building Action into pull requests check workflow by jfrost-mo in https://github.com/MetOffice/CSET/pull/1159
* Small additions to regrid and callback by jwarner8 in https://github.com/MetOffice/CSET/pull/1158
* Fix conda failure by jfrost-mo in https://github.com/MetOffice/CSET/pull/1162
* Revert to python 3.12 for workflow environment by jfrost-mo in https://github.com/MetOffice/CSET/pull/1168
* Add missing settings to example suite config by jfrost-mo in https://github.com/MetOffice/CSET/pull/1169
* Remove any repeated or UM colorbars by daflack in https://github.com/MetOffice/CSET/pull/1177
* Fix JSON colorbar entries and ensure we use LFRic names by jwarner8 in https://github.com/MetOffice/CSET/pull/1178
* Add colorbar ranges for different pressure levels by daflack in https://github.com/MetOffice/CSET/pull/1181
* Add shellcheck to pre-commit hooks by jfrost-mo in https://github.com/MetOffice/CSET/pull/1184
* Set website display date at plot creation by jfrost-mo in https://github.com/MetOffice/CSET/pull/1186
* Fix timeseries ylim based on JSON entries, and add gridlines. by jwarner8 in https://github.com/MetOffice/CSET/pull/1175
* Append suffix to difference cube long name by jfrost-mo in https://github.com/MetOffice/CSET/pull/1189
* Simplify logging by jfrost-mo in https://github.com/MetOffice/CSET/pull/1185
* Fix color bars by daflack in https://github.com/MetOffice/CSET/pull/1193
* Fix colorbar for geopotential height differences by daflack in https://github.com/MetOffice/CSET/pull/1195
* Add fixes for vertical line xlim and PDF xlim by jwarner8 in https://github.com/MetOffice/CSET/pull/1182
* Test matplotlib font logs are filtered out by jfrost-mo in https://github.com/MetOffice/CSET/pull/1200
* Remove unneeded callback by jwarner8 in https://github.com/MetOffice/CSET/pull/1205
* Error build_conda when local CSET path not set by jfrost-mo in https://github.com/MetOffice/CSET/pull/1203
* Draw attention to the hyperlink to download the example by jfrost-mo in https://github.com/MetOffice/CSET/pull/1211
* Create needed parent directories when writing the website by jfrost-mo in https://github.com/MetOffice/CSET/pull/1219
* Remove tox by jfrost-mo in https://github.com/MetOffice/CSET/pull/1220
* Updated vertical line series pressure maximum y limit to 100hPa. by mo-LewisBlunn in https://github.com/MetOffice/CSET/pull/1223
* Create standard rose-suite.conf for RAL3-LFRic, with all variables populated. by jwarner8 in https://github.com/MetOffice/CSET/pull/1190
* Modify `ensure_aggregatable_across_cases` to ensure NetCDF cubes are correctly merged by jfrost-mo in https://github.com/MetOffice/CSET/pull/1199
* Model level callback to allow LFRic cubes to merge by daflack in https://github.com/MetOffice/CSET/pull/1227
* Sort diagnostics by display name by jfrost-mo in https://github.com/MetOffice/CSET/pull/1229
* Add iris-grib to dev dependencies by jfrost-mo in https://github.com/MetOffice/CSET/pull/980
* Add case date as subcategory for output website by Sylviabohnenstengel in https://github.com/MetOffice/CSET/pull/1208
* Increase memory and wall clock limits for case aggregation tasks by daflack in https://github.com/MetOffice/CSET/pull/1236
New Contributors
* ukmo-huw-lewis made their first contribution in https://github.com/MetOffice/CSET/pull/898
* mo-sanamahmood made their first contribution in https://github.com/MetOffice/CSET/pull/934
* cehalliwell made their first contribution in https://github.com/MetOffice/CSET/pull/943
* BernardClaxton made their first contribution in https://github.com/MetOffice/CSET/pull/1138
* mo-LewisBlunn made their first contribution in https://github.com/MetOffice/CSET/pull/1223
**Full Changelog**: https://github.com/MetOffice/CSET/compare/v24.8.0...v25.3.0