There is a newer version of the record available.

Published February 11, 2026 | Version v0.6.0
Software Open

xsdba: statistical downscaling and bias adjustment library

  • 1. Ouranos, Montréal, Québec, Canada
  • 2. Centre européen de recherche et de formation avancée en calcul scientifique (CERFACS), Toulouse, France
  • 3. Ouranos Consortium, Montréal, Québec, Canada
  • 4. Institut de recherche d'Hydro-Québec (IREQ), Varennes, Québec, Canada

Description

Contributors: Éric Dupuis (@coxipi), Trevor James Smith (@Zeitsperre), Pascal Bourgault (@aulemahal), Juliette Lavoie (@juliettelavoie).

Changes

  • numpy >=1.26 and numba >=0.58.1 are now required. (PR/231).
  • xsdba now officially supports Python 3.14 and pandas >=3.0. (GH/251, :PR/252).

Fixes

  • xsdba.adjustment.ExtremeValues now throws an error with a clear message when the clustered precipitation exceed 1-q_thresh. This happens when cluster_thresh is too small (still in the bulk of the distribution). (GH/177, PR/184).
  • xsdba.properties.spectral_variance now works with a delta that is not None. (PR/217).
  • xsdba.loess.loess_smoothing fixed for cases when the input has many zeros. (GH/100, PR/208).
  • Fixed an issue with attribute fields added to normalized arrays under newer xarray versions. (PR/223).
  • xsdba.processing.spectral_filter now works with a lambda_long and lambda_short that are not None. (PR/220).
  • Prepend history of operations within dataset attributes instead of appending them. (PR/238).
  • xsdba._processing._adapt_freq now avoids inserting nans. This was solved using (dP0 <= 0)| (dP0.isnull()) and not dP0 < 0 as a condition. (PR/239, GH/248, PR/249).
  • xsdba.properties.decorrelation_length now handles all-nan slices correctly. (GH/255, PR/256).

Internal changes

  • Removed the benchmark.ipynb notebook from the documentation as it was specifically written for benchmarking purposes. (GH/167, PR/206).
  • Removed the API references to ensure that the documentation favours the user guide for learning how to use xsdba and the module index for finding specific functions/classes. (GH/63, PR/206)
  • Adjusted docstrings to allow flake8 violations (RST210 and RST213; \*\* and \* syntax) in docstrings and pylint exceptions for titles with underbars. (GH/167, PR/206)
  • Updated the cookiecutter template to use the latest version of cookiecutter-pypackage. (PR/205):
    • Added a CITATION.cff file for better citation metadata.
    • Replace black, blackdocs and isort pre-commit hooks with ruff.
    • Updated Contributor Covenant Agreement to v3.0.
    • Various updates to CI dependencies and configurations.
  • The minimum supported pytest is now v9.0 and above. pytest conventions and configurations have been updated to use the new TOML format. (PR/231).
  • Many DeprecationWarning API changes from dependencies have been addressed. (PR/250):
    • Replaced xarray.cftime_range with xarray.date_range(..., use_cftime=True).
    • Import check for numpy.trapezoid (replacement of numpy.trapz).
    • Refactored grouped_time_indexes to use GroupBy.map instead of GroupBy.apply.

Files

Ouranosinc/xsdba-v0.6.0.zip

Files (345.1 kB)

Name Size Download all
md5:f49d38a1f8f6df8b840b8f9b5e6467ff
345.1 kB Preview Download

Additional details

Related works

Is supplement to
Software: https://github.com/Ouranosinc/xsdba/tree/v0.6.0 (URL)

Software