Changelog¶
Unreleased (latest)¶
Contributors: Trevor James Smith (@Zeitsperre), Éric Dupuis (@coxipi), Juliette Lavoie (@juliettelavoie)
Changes¶
Speed up import by activating cache=True for in numba-accelerated functions from
xsdba.nbutils
. (PR/135).- Added a new installation recipe (
pip install xsdba[sbck]
) for installing the SBCK package. (PR/139): Note that SBCK support is experimental and that the pybind11 library must be installed prior to installing SBCK.
- Added a new installation recipe (
- New functions related to spectral properties in Fourier space:
Fixes¶
Internal changes¶
v0.4.0 (2025-04-03)¶
Contributors: Trevor James Smith (@Zeitsperre), Jan Haacker (@j-haacker), Éric Dupuis (@coxipi).
Changes¶
xsdba now supports Python3.13. Metadata and CI have been adjusted. (PR/105).
Unpinned numpy and raised minimum supported versions of a few scientific libraries. (PR/105).
More code that needed to be ported from xclim has been added. This includes mainly documentation, as well as testing utilities and a benchmark notebook. (PR/107).
Fixes¶
For fastnanquantile, POT, and xclim have been added to a new extras install recipe. All dependencies can be installed using the
$ python -m pip install xsdba[all]
command. Documentation has been added. (PR/105).Several small dask-related issues (chunking behaviour, dimension order when broadcasting variables, lazy array preservation) have been fixed. (GH/112, GH/113, PR/114).
xsdba.processing.escore
now correctly handles all-nan slices. (GH/109, PR/108).xsdba now uses directly operator instead of using xarray’s derived get_op function. A refactoring in xarray had changed the position of get_op which caused a bug. (PR/120).
For more than 1000 quantiles, fastnanquantile is not used anymore, as it would throw an error. (GH/119, PR/123).
Grouper now throws an error if group=’time’ is used with window>1. (GH/104, PR/122).
Internal changes¶
tox has been configured to test Python3.10 builds against numpy >=1.24.0,<2.0 in the GitHub Workflow pipeline. Passing the numpy keyword to tox (
$ tox -e py3.10-numpy
) will adjust the build. (PR/105).Authorship and Zenodo metadata have been updated. Order of contributions is now developers followed by contributors in alphabetical order. (PR/116).
MBCn.adjust now re-performs the check on ref and hist to ensure they have compatible time arrays (the check is done a second time in adjust since ref and hist are given again). (PR/118).
Updated docs dependencies to use sphinx>=8.2.2. (PR/133).
v0.3.2 (2025-03-06)¶
Contributors: Trevor James Smith (@Zeitsperre).
Fixes¶
- Packaging and security adjustments. (PR/106):
Added deptry, codespell, vulture, and yamllint to the dev dependencies.
Added a few transitive dependencies (packaging, pandas) to the core dependencies.
Added fastnanquantile to the dev dependencies (to be placed in an extras recipe for xsdba v0.4.0+).
Configured deptry to handle optional imports.
A new Makefile command lint/security has been added (called when running $ make lint).
Updated tox.ini with new linting dependencies.
v0.3.1 (2025-03-04)¶
Contributors: Trevor James Smith (@Zeitsperre).
Changes¶
Added POT to the development dependencies. (PR/96).
Fixes¶
Adjusted the documentation dependencies and the sphinx configuration to fix the ReadTheDocs build. (PR/96).
v0.3.0 (2025-03-04)¶
Contributors: Pascal Bourgault (@aulemahal), Éric Dupuis (@coxipi), Trevor James Smith (@Zeitsperre).
Announcements¶
xsdba is now available as a package on the Anaconda conda-forge channel. (PR/82).
Changes¶
Remove the units registry declaration and instead use whatever is set as pint’s application registry. Code still assumes it is a registry based upon the one in cf-xarray (which exports the cf formatter). (GH/44, PR/57).
- Updated the cookiecutter template to use the latest version of cookiecutter-pypackage. (PR/71):
Python and GitHub Actions versions have been updated.
Now using advanced CodeQL configuration.
New pre-commit hooks for vulture (find dead code), codespell (grammatical errors), zizmor (workflow security), and gitleaks (token commit prevention).
Corrected some minor spelling and security issues.
Added upstream testing to the CI pipeline for both daily and push events. (PR/61).
Import last changes in xclim before the embargo (PR/80).
xsdba has begun the process of adoption of the OpenSSF Best Practices checklist. (PR/82).
Add a missing dOTC example to documentation. (PR/86).
Add a new grouping method specific for MBCn which called by passing group=Grouper(“5D”, window=n) where n is an odd positive integer. (PR/79).
Fixes¶
Gave credits to the package to all previous contributors of
xclim.sdba
. (GH/58, PR/59).Pin sphinx-codeautolink to fix ReadTheDocs and correct some docs errors. (PR/40).
Removed reliance on the netcdf4 package for testing purposes. The h5netcdf engine is now used for file IO operations. (PR/71).
Changes to reflect the change of library name xsdba. (PR/72).
Revert changes to allow using group=”time.dayofyear” and interp=”linear” in adjustment methods. (PR/86).
v0.2.0 (2025-01-09)¶
Contributors: Éric Dupuis (@coxipi), Trevor James Smith (@Zeitsperre).
Changes¶
- Split sdba from xclim into its own standalone package. Where needed, some common functionalities were duplicated: (PR/8)
xsdba.units
is an adaptation of thexclim.core.units
modules.Many functions and definitions found in
xclim.core.calendar
have been adapted toxsdba.base
.
Dependencies have been updated to reflect the new package structure. (PR/45).
- Updated documentation configuration: (PR/46)
Significant improvements to the documentation content and layout.
Now using the furo theme for sphinx.
Notebooks are now linted and formatted with nbstripout and nbqa-black.
CSS configurations have been added for better rendering of the documentation and logos.
Added the vulture linter (for identifying dead code) to the pre-commit configuration. (PR/46).
v0.1.0¶
Contributors: Trevor James Smith (@Zeitsperre)
Changes¶
First release on PyPI.