Changelog#

v0.11.0 - unreleased#

New Features#

Breaking changes#

  • Using Cholesky decomposition for finding covariance localization radius and drawing from the multivariate normal distribution (#408) By Victoria Bauer.

  • The supported versions of some dependencies were changed (#399, #405):

    Package

    Old

    New

    regionmask

    >=0.8

    >=0.9

    statsmodels

    not specified

    >=0.13

Deprecations#

Bug fixes#

Documentation#

Internal Changes#

  • Start testing the minimum versions of required dependencies (#398). By Mathias Hauser.

  • Restore compatibility with pandas version v2.2 and xarray version v2024.02 (#404). By Mathias Hauser.

v0.10.0 - 2024.01.04#

version 0.10.0 fixes the bug in the legacy calibration and is thus not numerically backward compatible. It also updated the supported python, pandas and xarray versions. Updating the pandas version will create an error when trying to load pickled mesmer bundles, requiring to use mesmer version v0.9.0 for this.

Bug fixes#

Ensure de-duplicating the historical ensemble members conserves their order. Previously, the legacy calibration routines used np.unique, which shuffles them. See #338 for details. (#339). By Mathias Hauser.

Breaking changes#

  • Removed support for python 3.7 and python 3.8 ( #163, #365, #367, and #371). By Mathias Hauser.

  • The supported versions of some dependencies were changed (#369):

    Package

    Old

    New

    pandas

    <2.0

    >=2.0

    xarray

    not specified

    >=2023.04

New Features#

v0.9.0 - 2023.12.19#

version 0.9.0 is a big step towards rewriting mesmer. All statistical functionality was extracted and works for xarray data objects. It also contains data handling functions to prepare climate model data using xarray.

  • The restructured code is fully functional and can be used to calibrate and emulate temperature. However, it is still missing wrappers which encapsulate the full chain and helpers to simplify calibrating several scenarios and ensemble members.

  • This version still contains the legacy routines to train and emulate temperature. It should have no numerical changes, only minimal changes in usage, and offers speed gains over v0.8.3.

Known bugs#

For the legacy training, the influence of the global variability is underestimated, because the historical ensemble members are shuffled “randomly”. This is kept in v0.9.0 for backward compatibility and will be fixed in a follow-up bug fix release. For details see #338.

New Features#

Breaking changes#

Deprecations#

  • The function mesmer.create_emulations.create_emus_gt has been renamed to create_emulations.gather_gt_data() (#246). By Mathias Hauser.

  • The function mesmer.utils.select.extract_time_period is now deprecated and will be removed in a future version. Please raise an issue if you use this function (#243). By Mathias Hauser.

Bug fixes#

  • Fix three issues with core.regionmaskcompat.mask_3D_frac_approx(). Note that these issues are only relevant if passing xarray objects and/ or masks close to the poles (#202 and #218). By Mathias Hauser.

Documentation#

Internal Changes#

v0.8.3 - 2021-12-23#

New Features#

  • Add mesmer.stats._linear_regression (renamed to mesmer.stats._fit_linear_regression_np in #142). Starts the process of refactoring the codebase (#116). By Zeb Nicholls.

Bug fixes#

  • Initialize llh_max to -inf to ensure the cross validation loop is entered (#110). By Jonas Schwaab.

Documentation#

  • Fix copyright notice and release version in documentation (#127). By Zeb Nicholls.

Internal Changes#

  • Automatically upload the code coverage to codecov.io after the test suite has run (#99). By Mathias Hauser.

  • Internal refactor: moved a number of inline comments to their own line (especially if this allows to have the code on one line instead of several) and other minor cleanups (#98). By Mathias Hauser.

  • Refactor io.load_cmipng_tas and io.load_cmipng_hfds to de-duplicate their code and add tests for them (#55). By Mathias Hauser.

v0.8.2 - 2021-10-07#

Bug fixes#

  • Reintroduce ability to read in cmip5 data from the cmip5-ng archive at ETH (#90). By Lea Beusch.

Internal Changes#

  • Reproduce the test files because of a change in regionmask which affected the mesmer tests (#95). By Mathias Hauser.

  • Refactor and speed up of the Gaspari-Cohn function and the calculation of the great circle distance (#85, #88). By Mathias Hauser.

  • The geopy package is no longer a dependency of mesmer (#88). By Mathias Hauser.

  • Convert README from Markdown to reStructuredText to fix package build errors. Also allows to include the README in the docs to avoid duplication (#102). By Mathias Hauser.

v0.8.1 - 2021-07-15#

  • Update example script (#80).

v0.8.0 - 2021-07-13#

  • First release on PyPI and conda (#79).