Release Notes (What's New)
Version 2.4.0 (January 14, 2026)
For a list of all changes in this release, see the full changelog. Below are the changes we think users may wish to be aware of.
Features
- Added an optional installation variant "fast" which introduces
Numbaas an optional dependency to support optimised implementations for some metrics.scores.probability.crps_cdfwill now automatically switch to an optimised implementation ifNumbais installed in the environment. The "fast" variant can be installed withpip install scores[fast]if wanted. See PR #931.
Bug Fixes
- Fixed a bug in
scores.continuous.tw_squared_errorthat caused the code to fail if the first object in the tuple forinterval_where_onewas an xr.DataArray and the second was a float, e.g. np.inf. This method has now been corrected to allow afloator anintfor the interval arguments. See PR #948.
Documentation
- Updated links to the new verification site https://jwgfvr.github.io/forecastverification (which will replace the prior site: https://www.cawcr.gov.au/projects/verification) in
docs/included.md,tests/categorical/test_contingency.pyandsrc/scores/continuous/standard_impl.py. See PR #933, PR #934 and PR #935. - Updated the documentation and citation links for the
scoringrulesentry in "Related Works". See PR #937. - Fixed rendering (removed an unintentional block quote), and thereby also resolved a sphinx build error, in the
scores.continuous.nsedocstring. See PR #936.
Internal Changes
- Sped up (improved the computational efficiency of) the continuous ranked probability score (CRPS) for ensembles, by sorting the ensemble members to compute the CRPS spread term. See PR #928.
Contributors to this Release
Belinda Trotta* (@btrotta-bom), Taylor Mandelbaum* (@aaTman), Tennessee Leeuwenburg (@tennlee), Nicholas Loveday (@nicholasloveday), Stephanie Chong (@Steph-Chong), Robert J. Taggart (@rob-taggart) and Nikeeth Ramanathan (@nikeethr).
* indicates that this release contains their first contribution to scores.
We also acknowledge the developers of xskillscore and properscoring as we have adapted code from their repositories under a suitable compatible license. This acknowledgment has also been added to NOTICE.md as is best practice. The xarray wrapper function scores.probability.crps_numba.crps_cdf_exact_fast is based on the code for crps_ensemble from xskillscore (https://github.com/xarray-contrib/xskillscore/blob/main/xskillscore/core/probabilistic.py), released under the Apache-2.0 License with copyright attributed to xskillscore developers (as at 11 Dec 2025). The vectorisation of crps_at_point follows the example of _crps_ensemble_gufunc from properscoring (https://github.com/properscoring/properscoring/blob/master/properscoring/_gufuncs.py), released under the Apache-2.0 License with copyright attributed to The Climate Corporation (2015).