What’s New

v0.7.0 (22 March 2024)

This release makes the codes API public. It also completely retires the cmor module in favour of py-cordex.cmor.

New Features

Internal Changes

  • Pin numpy < 1.26.3, causes problems with installing Fortran extensions (GH158).

  • Update ERA5 cmorizer and preprocessor (GH146).

Breaking Changes

v0.6.1 (20 October 2023)

Patch release to fix preprocessing issues.

Internal Changes

  • Fix SST interpolation and extrapolation for CF preprocessor (GH140).

  • Fix ERA5 cmorizer subprocess call (GH141).

v0.6.0 (25 August 2023)

This release contains some internal refactoring for upcoming CMIP6 simulations. There has also been an update on the documentation. The preproc.ERA5() version is now compatible with the latest conventions of the DKRZ ECMWF data pool. There has also been some significant clean up of the internal preprocessor modules.

Internal Changes

  • Fixed E721 rule, switched to ruff for linting in pre-commit, added dependabot.yml (GH132).

  • Renamed output_pattern to file_pattern() and added afile patterns (GH132).

  • Domain notebook running on readthedocs (GH126).

  • Refactoring of core modules, now using domain_id keyword instead of short_name (GH125).

  • Renamed master to main.

Deprecations

Breaking Changes

  • Refactoring of preproc.ERA5() for new DKRZ data pool conventions (GH129).

  • Refactoring and clean up of preprocessing module (GH130).

v0.5.1 (24 May 2023)

Updates for REMO run workflows.

Bugfixes

v0.5.0 (3 March 2023)

This release comes with updates for CMIP6 and ERA5 downscaling.

New Features

  • Added output_pattern() for creating output file naming patterns (GH113).

Internal Changes

  • Updates for CI pipeline (GH108).

  • Updates for ERA5 cmorizer to work with the new DKRZ ERA5 catalog (GH112).

  • UV correction is now optional in cmor.remap_remo() (GH111).

Documentation

  • Updates GHG notebook with ssp scenario table (GH114).

v0.4.1 (19 January 2023)

Patch release for preprocessor updates.

Internal Changes

  • Allow multiple input directories for CF preprocessor (GH106).

  • Added scratch keyword to gfile API (GH106).

  • Drop python3.7 support in favour of latest xarray releases (GH106).

v0.4.0 (15 November 2022)

This release comes with an updated preprocessing module for preprocessing of CMIP6 model data and the double nesting preprocessor (includes ptop). There are also some additional tools for working with forcing files and an updated documentation.

New Features

  • Added magic_numbers() to API (GH85).

  • New module for gfile creation from CMIP6 datasets (GH78, GH89).

  • Additional CF preprocessor option which ueses xesmf for horizontal interpolation (GH100). This is not part of the user API yet.

  • New notebook on greenhouse gas concentration (GHG). This documents how we create GHG forcing tables for CMIP6 downscaling (GH92).

  • Command line interface pradd-vars for variable replacement: This tool can be used to replace soil variables in a forcing file with data from a REMO output file (warm soil) (GH93).

  • Updates for (double-nesting) preprocessor (GH98), includes an implementation for using a top level pressure (ptop) during vertical interpolation (GH104).

Internal Changes

  • Pinned setuptools < 60.0 due to Fortran build system (GH94).

  • Table fetching now ignores file hashes. The tables will now be pulled from the main branch instead of master in the tables repository (GH97). Older versions will rely on the master branch, so that one is now frozend and protected.

  • Updates and fixes for the preprocessing module (GH100, GH104).

Documentation

  • Documentation updates (GH87).

v0.3.4 (11 July 2022)

Patch release to use pyremo for cmorization tests with CORDEX-CMIP6 cmor tables.

Internal Changes

  • Updated pyremo.cmor API to choose cmor grids table (GH83)

v0.3.3 (27 June 2022)

Patch release to fix version bug.

v0.3.2 (24 June 2022)

Patch release to fix preprocessor bugs.

Internal Changes

  • Switched to automatic version numbering using setuptools_scm, added publish-pypi.yaml workflow (GH80).

Bugfixes

  • Updated path resource for pyremo.analysis for use at DKRZ on levante filesystem (GH76).

  • Fixed SST interpolation in preprocessing of CMIP models, uses now masks with xesmf (GH79).

  • Fixed global attributes in forcing data inherited from driving model (GH81).

v0.3.1 (4 May 2022)

Patch release to fix .zenodo.json, update documentation and add pre-commit hooks.

Internal Changes

  • Added nbQA to pre-commit hooks and formatted notebooks (GH72).

Bugfixes

  • Fixed .zenodo.json format and added pre-commit hook (GH71).

v0.3.0 (4 May 2022)

This release comes with a new double nesting preprocessing API, a command line interface for the pressure interpolation, updated cmorization features and a new ERA5 cmorizer to handle ERA5.1 data. Documentation has also improved and contains an updated tutorial on how to explore REMO NetCDF output.

New Features

  • Added double nesting preprocessor API (GH34).

  • prsint: a command line interface for the pressure interpolator (GH53, GH66, GH68).

  • ERA5 cmorizer includes ERA5.1 to work with DKRZ data pool (GH52).

  • Added python3.10 support (GH46).

  • Updated cmorization module for use with CMIP6 (GH48, GH49, GH51) and CORDEX vocabulary. The underlying tables are only used for testing and should not yet be uses for actual data publication, see also here.

Internal Changes

  • Added tests for pyremo.preproc module (GH34).

  • Updated documentation including an improved contribution guide (GH63, GH65).

  • Fixed issues with dask.delayed in preproc.era5 running in batch mode (GH58).

  • Added .pre-commit-config.yaml and linting.yaml to run linter checks (GH55).

  • Code is reformatted to apply to flake8 and black conventions (GH55).

  • ERA5 cmorizer works with pandas datatables (GH52).

  • Tutorial data source is now on github (GH47).

  • Added fortran extensions pyintorg and pydruint to extra dependencies (GH64).

  • Added CI-extensions.yaml for git actions testing with fortran extensions.

  • Included tests for pyremo.prsint with fortran extension (GH43).

  • Pinned sphinx and jinja dependencies (GH45).

Breaking Changes

  • Updated cmor API of cmor.cmorize_variable to use actual filenames of tables (GH48).

Bugfixes

  • Fixed bug in prsint for vertical level coordinate (GH57).

v0.2.0 (24 February 2022)

This is a major restructuring release and comes with a new package structure and a lot of reintegrated tools. It includes a new preprocessing module, pressure interpolation and cmorization based on an xarray API.

New Features

  • Included physics package with xarray API.

  • Included preprocessing interface for xarray data structures.

  • Included ERA5 cmorizer.

  • Includes experimental cmorization module (GH20, GH21, GH22, GH23, GH25, GH26).

  • Included production analysis (GH33).

  • Command line tool for remo analysis (GH35, GH36).

Internal Changes

  • Tables are removed from the package and stored in an extra github repo.

  • Tables are download at first access using pooch.

  • New setup structure and github ci (GH16).

  • Legacy modules are ignored for coverage (GH23).

  • Cleaned up import structure, avoid unneccessary warnings (GH42).

Documentation

  • Lots of new python notebooks are rendered into the documentation.

  • Documentation now includes preprocessing and pressure interpolation examples.

0.1.0 (23 July 2020)

  • First release on PyPI.