Changelog#
v2.11.0#
Highlights
Two new recipes have been added:
Recipe recipe_aod_aeronet_assess.yml evaluates model aerosol optical depth (AOD) climatologies against ground based observations from the AeroNET measurement network.
Recipe recipe_climate_patterns.yml generates climate patterns from CMIP6 model datasets.
The ESACCI-WATERVAPOUR CMORizer now includes daily data and uses the officially released CDR2 data.
Support for 5 new datasets have been added:
AeroNET
ANU Climate 2.0 Australian data
Australian Gridded Climate Data(AGCD) precipitation
NOAA-ERSST
NSIDC-G02202-sh sea ice fraction
NEW TREND: First time release manager shout-outs!
This is the first ESMValTool release managed by the Met Office! We want to shout this out - and for all future first time release managers to shout-out - to celebrate the growing, thriving ESMValTool community.
This release includes
Bug fixes#
Recipe_ocean_quadmap: Update ATSR to match ESGF name (Pull request #3443) by @rbeucher
Fix recipe_bock20jgr_fig_8-10.yml (Pull request #3665) by @LisaBock
Update the list of datasets used in
recipe_easy_ipcc.yml
(Pull request #3710) by @bouweandela
Documentation#
Improve release tools and documentation (Pull request #3462) by @bouweandela
Fix a typo in the references file (Pull request #3499) by @bouweandela
Fix recipe path in
recipe_perfmetrics.rst
(Pull request #3532) by @TomasTorsvikImproved description of model evaluation recipes (Pull request #3541) by @schlunma
Remove double word in cmorizer documentation (Pull request #3553) by @bettina-gier
Fix Codacy badge (Pull request #3558) by @bouweandela
Update the release schedule for v2.11.0 (Pull request #3573) by @ehogan
Improve the formatting of the recipe documentation template (Pull request #3652) by @mo-gill
Add introduction material on the main documentation page (Pull request #3628) by @bouweandela
Avoid warning in documentation build (Pull request #3675) by @bouweandela
Update the list of broken recipes for
v2.11.0
(Pull request #3706) by @ehogan
Diagnostics#
monitor/multi_dataset.py
improvements: allow data w/otimerange
and improve text formatting (Pull request #3528) by @schlunmaAllow datasets without
project
in multi_datasets.py (Pull request #3552) by @schlunmaPrevent overlapping time axis tick labels in monitoring recipe (Pull request #3682) by @schlunma
New recipe#
Add support for aerosol optical depth climatology metrics to the AutoAssess replacement (Pull request #3048) by @catherinehardacre
CMIP6 climate patterns (Pull request #2785) by @mo-gregmunday
Observational and re-analysis dataset support#
Add cmorizer scripts for NOAA-ERSST. (Pull request #1799) by @bjoernbroetz
Update OceanSODA-ETHZ CMORizer with new source file (Pull request #3535) by @TomasTorsvik
Add CMORizer script for NSIDC-G02202-sh sea ice fraction (Pull request #3512) by @flicj191
CMORizer Australian Gridded Climate Data(AGCD) precipitation (Pull request #3445) by @flicj191
Extend CMORizer NCEP-DOE-R2 (Pull request #3469) by @axel-lauer
Add comment to recipe_lauer13jclim regarding UWisc being superseded by MAC-LWP (Pull request #3537) by @rbeucher
Recipe_autoassess_landsurface_surfrad: Remove CERES-EBAF version to fix ESGF search (Pull request #3438) by @rbeucher
Updating ESACCI-WATERVAPOUR cmorizer (Pull request #3282) by @malininae
CMORiser for ANU Climate 2.0 Australian data (Pull request #3511) by @flicj191
Add AERONET cmorizer (Pull request #3227) by @zklaus
Update CRU CMORizer (Pull request #3381) by @lukruh
Fix recipe_check_obs to be aligned with DKRZ (Pull request #3673) by @LisaBock
Update AERONET data version (Pull request #3692) by @ehogan
Automatic testing#
Move code into function in batch job generation script (Pull request #3491) by @bouweandela
Fix sklearn tests (Pull request #3506) by @schlunma
Pinned sklearn>=1.4.0 (Pull request #3508) by @schlunma
Update sklearn tests to be compatible with current pytest version (pytest >=8.0.0) (Pull request #3517) by @schlunma
Update sklearn tests to be compatible with current pytest version (pytest >=8.0.0) Part 2 (Pull request #3518) by @schlunma
[Circle/CI]Fix test_installation_from_conda Circle CI tests (Pull request #3538) by @valeriupredoi
[Github Actions] install git in OSX and add environment inspection (Pull request #3581) by @valeriupredoi
[CI Github Actions] Update (outdated) actions versions that produce Node.js warnings (Pull request #3586) by @valeriupredoi
Fix
flake8==7
linting issues (Pull request #3634) by @valeriupredoiUse
importlib
as the import mode forpytest
(Pull request #3672) by @ehogan
Installation#
Update dependencies (Pull request #3487) by @bouweandela
Merge v2.10.x into main (Pull request #3489) by @schlunma
Add imagehash package as an ESMValTool dependency (Pull request #3557) by @alistairsellar
Unpin
r-akima
(Pull request #3564) by @valeriupredoiAdding pys2index dependency (Pull request #3577) by @ljoakim
Pin esmpy <8.6.0 (Pull request #3585) by @valeriupredoi
Pin R <4.3.0 (Pull request #3689) by @ehogan
Pin importlib_metadata <8 (Pull request #3700) by @ehogan
Pin matplotlib <3.9.0 on ESMValTool release branch (Pull request #3712) by @ehogan
Dependency updates#
Fix for
recipe_seaice_drift.yml
: fix CRS transformer for “North Pole Stereographic” (Pull request #3531) by @flicj191Fixed attribute handling in austral_jet/main.ncl for iris>=3.8 (Pull request #3603) by @schlunma
Fixed attribute handling in emergent constraint diagnostic for iris>=3.8 (Pull request #3605) by @schlunma
Update the name of the remapcon2 operator in R recipes (Pull request #3611) by @ehogan
Use
iris.FUTURE.save_split_attrs = True
to remove iris warning in many diagnostics (Pull request #3651) by @schlunmaAvoid concatenation error in recipe_pcrglobwb.yml (Pull request #3645) by @bouweandela
Update scipy.integrate.simps import (Pull request #3704) by @ehogan
Improvements#
Add native6, OBS6 and RAWOBS rootpaths to metoffice template in config-user-example.yml and remove temporary dir (Pull request #3613) by @alistairsellar
v2.10.0#
Highlights
Add a realistic IPCC example recipe that reproduces figure 9.3 from AR6. It computes the mean sea-surface temperature anomaly between 1850-2100 over all available CMIP6 models. See the recipe documentation or read the blog post for more information.
Added more plot types to monitoring diagnostic: Hovmoeller Z vs. time, Hovmoeller time vs latlon, variable vs. latitude are now available. See the recipe documentation for more information.
Add support for 4 new datasets:
NOAA-CIRES-20CR v3 reanalysis
NASA MERRA reanalysis
NOAA marine boundary layer data for CH4
MOBO-DIC2004-2019
See Supported datasets for which a CMORizer script is available and Observations for more information.
Many recipes now have up-to-date obs4MIPs dataset names so required data can automatically be downloaded from ESGF.
This release includes
Bug fixes#
Update recipe shapeselect to work with shapely v2 (Pull request #3283) @lukruh
Correctly handle
~
when readingplot_folder
option of monitoring diagnostic (Pull request #3449) @schlunmaFixed provenance tracking for NCL multipanel PNGs (Pull request #3332) @schlunma
Fixed plot paths in NCL provenance tracking (Pull request #3422) @schlunma
Fix erroneous file_type handling in certain NCL diagnostics (Pull request #3474) @zklaus
Fix NCL provenance tracking (Pull request #3477) @schlunma
Fix plots and provenance in Russell diagnostics (Pull request #3479) @schlunma
Documentation#
Add merge instructions to release instructions (Pull request #3292) @remi-kazeroni
Update release schedule after release of v2.9.0 (Pull request #3289) @remi-kazeroni
Add list of failing recipes for v2.9.0 release (Pull request #3294) @remi-kazeroni
Update
mamba
version in readthedocs configuration docs builds (Pull request #3310) @valeriupredoiAdd Romain Beucher to citation file as contributor (Pull request #3318) @valeriupredoi
Removed recipe_carvalhais14nat from list of broken recipes (Pull request #3319) @remi-kazeroni
Add OBS-maintainers team to documentation on OBS data maintenance and CMORizer reviews (Pull request #3335) @remi-kazeroni
Add Pauline Bonnet to citation file (Pull request #3347) @Paulinebonnet111
Ensure compatible zstandard and zstd in readthedocs builds (Pull request #3362) @zklaus
Fix documentation build (Pull request #3397) @bouweandela
Minor updates to release tools (Pull request #3216) @bouweandela
Enhance provenance documentation (Pull request #3305) @alistairsellar
Re-add communities and grants in zenodo file (Pull request #3416) @valeriupredoi
Update Anconda badge in README (Pull request #3375, Pull request #3453) @valeriupredoi
Diagnostics#
Slight refactoring of diagnostic script
galytska23/select_variables_for_tigramite.py
for generality and portability (Pull request #3298) @valeriupredoi and @egalytskaAllow custom variable grouping in diagnostic script
monitor/multi_datasets.py
(Pull request #3343) @schlunmaExtended monitor diagnostic with plot type variable vs. latitude (Pull request #3340) @ellensarauer
Add Hovmoeller Z vs. time plot to monitoring diagnostic (Pull request #3345) @cubeme and @helgehr
Adding Hovmoeller time vs latlon plots to monitoring recipes (Pull request #3341) @lukruh and @jeremykraftdlr
Implied heat transport new diagnostic (Pull request #3177) @mo-abodas
Recipe changes for new statistics preprocessors (percentiles) (Pull request #3351) @schlunma
Add a realistic example recipe (Pull request #3356) @Peter9191 and @bouweandela
Support
CenteredNorm
in diagnostic monitor/multidatasets.py (Pull request #3415) @schlunmaUse new preprocessor statistics calling convention for recipe_easy_ipcc.yml (Pull request #3418) @bouweandela
Adapt to changed style scheme name in matplotlib (Pull request #3475) @zklaus
Add version to dataset in python example recipe to avoid “Unknown file format” issue on JASMIN (Pull request #3322) @ehogan
Add the dataset version in the heatwaves_coldwaves recipe to avoid the “Unknown file format” issue on JASMIN (Pull request #3373) @ehogan
Observational and re-analysis dataset support#
Cmorizer for NOAA-CIRES-20CR v3 reanalysis (clt, clwvi, hus, prw, rlut, rlutcs, rsut, rsutcs) (Pull request #3137) @LisaBock
CMORizer for NASA MERRA reanalysis (Pull request #3039) @axel-lauer
Download and formatting of NOAA marine boundary layer data for CH4 (NOAA-MBL-CH4) (Pull request #3301) @FranziskaWinterstein
Added CMORizer for MOBO-DIC2004-2019 (Pull request #3297) @schlunma
Update obs4MIPs dataset names in quantilebias recipe (Pull request #3330) @rbeucher
Update obs4MIPs dataset names in Schlund20esd recipe (Pull request #3329) @rbeucher
Update obs4MIPs dataset names in flatoipcc recipes (Pull request #3328) @rbeucher
Update obs4mips dataset names in clouds recipes (Pull request #3326) @rbeucher
Update Obs4MIPs dataset names in ECS recipes (Pull request #3327) @rbeucher
Update obs4mips dataset names in Bock et al recipes (Pull request #3324, Pull request #3389 and Pull request #3473) @rbeucher and @bouweandela
Update obs4mips dataset names in radiation budget recipe (Pull request #3323) @rbeucher
Update Obs4MIPs dataset names in perfmetrics CMIP5 recipe (Pull request #3325) @rbeucher
Automatic testing#
Made sklearn test backwards-compatible with sklearn < 1.3 (Pull request #3285) @schlunma
Update conda lock creation Github Action workflow and ship updated conda-lock file (Pull request #3307, Pull request #3407) @valeriupredoi
Compress all bash shell setters into one default option per GitHub Action workflow (Pull request #3315) @valeriupredoi
Remove deprecated option
offline
from CI configuration (Pull request #3367) @schlunma
Installation#
Use ESMValCore v2.10 (Pull request #3486) @bouweandela
Improvements#
Merge v2.9.x into main (Pull request #3286) @schlunma
Allow NCL unit conversion kg s-1 -> GtC y-1 (Pull request #3300) @schlunma
v2.9.0#
Highlights#
A new diagnostic has been added to provide a high-level interface to seaborn, a Python data visualization library based on matplotlib. See the recipe documentation for more information.
We have included a new recipe and diagnostic that represent the major physical processes that describe Arctic-midlatitude teleconnections and provide the basis for the CMIP6 model evaluation for the further application of causal discovery. The results are discussed in the article “Causal model evaluation of Arctic-midlatitude teleconnections in CMIP6” by Galytska et al. (in review in Journal of Geophysical Research: Atmospheres).
It is now possible to use the Dask distributed scheduler, which can significantly reduce the run-time of recipes. Configuration examples and advice are available in the ESMValCore documentation. If configured, the Dask distributed scheduler will also be used by diagnostic scripts written in Python, so make sure to use lazy data wherever it is possible in your (new) diagnostics. More work on improving the computational performance is planned, so please share your experiences, good and bad, with this new feature in ESMValGroup/ESMValCore#1763.
This release includes
Bug fixes#
Fixed usage of
work_dir
in some CMORizer scripts (Pull request #3192) @remi-kazeroniRealize data for scalar cube in recipe_carvalhais14nat to avert issue from dask latest (2023.6.0) (Pull request #3265) @valeriupredoi
Fix failing
mlr
diagnostic test by adding new scikit-learn default tag (Pull request #3273) @remi-kazeroniFix ordering of models in perfmetrics diagnostic script (Pull request #3275) @LisaBock
Documentation#
Update release schedule after v2.8.0 (Pull request #3138) @remi-kazeroni
Added reference entry for Winterstein (Pull request #3154) @FranziskaWinterstein
Show logo on PyPI (Pull request #3185) @valeriupredoi
Add Release Managers for v2.9.0 and v2.10.0 (Pull request #3184) @remi-kazeroni
Fix readthedocs build with esmpy>=8.4.0 and missing ESMFMKFILE variable (Pull request #3205) @valeriupredoi
Add ESMValCore release v2.8.1 into the documentation (Pull request #3235) @remi-kazeroni
Modified links to the tutorial (Pull request #3236) @remi-kazeroni
Fix gitter badge in README (Pull request #3258) @remi-kazeroni
Add release notes for v2.9.0 (Pull request #3266) @bouweandela
Diagnostics#
New plot_type 1d_profile in monitor (Pull request #3178) @FranziskaWinterstein
Add Seaborn diagnostic (Pull request #3155) @schlunma
New recipe and diagnostic for Arctic-midlatitude research (Pull request #3021) @egalytska
Generate climatology on the fly for AutoAssess soil moisture (Pull request #3197) @alistairsellar
Remove “fx_variables” from recipe_tebaldi21esd.yml (Pull request #3211) @hb326
Remove “fx_variables” from ipccwg1ar5ch9 recipes (Pull request #3215) @katjaweigel
Remove “fx_variables” from recipe_wenzel14jgr.yml (Pull request #3212) @hb326
Update obs4MIPs dataset to the current naming scheme in recipe_smpi.yml (Pull request #2991) @bouweandela
Fixed pandas diagnostics for pandas>=2.0.0 (Pull request #3209) @schlunma
Update recipe_impact.yml to work with newer versions of pandas (Pull request #3220) @bouweandela
Add variable long names to provenance record in monitoring diagnostics (Pull request #3222) @bsolino
Observational and re-analysis dataset support#
Add CMORizer for GPCP-SG (pr) (Pull request #3150) @FranziskaWinterstein
Extension of NASA MERRA2 CMORizer (cl, cli, clivi, clw, clwvi) (Pull request #3167) @axel-lauer
Automatic testing#
Add a CircleCI-testing-specific
recipe_python_for_CI.yml
to avoid calling geolocator/Nominatim over CI (Pull request #3159) @valeriupredoiCheck if Python minor version changed after Julia install in development installation test (Pull request #3213) @valeriupredoi
Fix tests using deprecated
esmvalcore._config
module that has been removed in ESMValCore v2.9 (Pull request #3204) @valeriupredoi
Installation#
Add support for Python=3.11 (Pull request #3173) @valeriupredoi
Drop python=3.8 support (Pull request #3193) @valeriupredoi
Repair generation of conda lock files (Pull request #3148) @valeriupredoi
Modernize lock creation script and repair lock generation (Pull request #3174) @valeriupredoi
Pin numpy !=1.24.3 due to severe masking bug (Pull request #3182) @valeriupredoi
Update xesmf to versions >= 0.4.0 (Pull request #2728) @zklaus
Update esmpy import for ESMF version 8.4.0 or larger (Pull request #3188) @valeriupredoi
Relax the pin on iris to allow the use of older versions for performance reasons (Pull request #3270) @bouweandela
Use ESMValCore v2.9.0 (Pull request #3274) @bouweandela
Improvements#
Update pre-commit hooks (Pull request #3189) @bouweandela
Add support for using a dask distributed scheduler (Pull request #3151) @bouweandela
v2.8.0#
Highlights#
This release includes the diagnostics for reproducing figures 3.9, 3.19, 3.42 and 3.43 of the IPCC AR6 WG1 report. See recipe documentation about added recipes.
A new set of recipes and diagnostics has been included to evaluate cloud climatologies from CMIP models as used in Lauer et al. (2023), J. Climate. See recipe documentation about added recipes.
Addition of a set of recipes for extreme events, regional and impact evaluation as used in Weigel et al. (2021), J. Climate and in IPCC AR5. See recipe documentation about added recipes.
Highlights from ESMValCore v2.8.0 here:
ESMValCore now supports wildcards in recipes and offers improved support for ancillary variables and dataset versioning.
Support for CORDEX datasets in a rotated pole coordinate system has been added.
Native ICON output is now made UGRID-compliant on-the-fly.
The Python API has been extended with the addition of three modules:
esmvalcore.config
,esmvalcore.dataset
, andesmvalcore.local
The preprocessor
multi_model_statistics()
has been extended to support more use-cases.
This release includes:
Backwards incompatible changes#
Please read the descriptions of the linked pull requests for detailed upgrade instructions.
Deprecated features scheduled for removal in v2.8.0 or earlier have now been removed (Pull request #2941) @schlunma. Removed
esmvaltool.iris_helpers.var_name_constraint
(has been deprecated in v2.6.0; please useiris.NameConstraint
with the keyword argumentvar_name
instead). Removed write_netcdf and write_plots from recipe_filer.py.No files from the
native6
project will be found if a non-existent version of a dataset is specified (#3041) @remi-kazeroni. The tool now searches for exactversion
ofnative6
datasets. Therefore, it is necessary to make sure that the version number in the directory tree matches with the version number in the recipe to find the files.The conversion of precipitation units from monitoring diagnostic is now done at the preprocessor stage (#3049) @schlunma. To use the unit conversion for precipitation in the new version of this diagnostic, add it as a preprocessor for the precipitation dataset to the recipe.
Bug fixes#
Fix for provenance records from seaice_tsline.ncl (Pull request #2938) @axel-lauer
Fix in validation.py for resolving datasets with identical names by using distinct aliases (Pull request #2955) @FranziskaWinterstein
Bugfix: masking of non-significant differences in zonal.ncl (perfmetrics) (Pull request #2957) @axel-lauer
Fix typo in perfmetrics/main.ncl to add tropopause (Pull request #2966) @FranziskaWinterstein
Fix .png bug in wenzel16nat diagnostics (Pull request #2976) @axel-lauer
Recipe_ocean_Landschuetzer2016: Fix typo in filename to run model vs OBS diagnostics (Pull request #2997) @TomasTorsvik
Fix read_cmor in NCL utilities (Pull request #3007) @axel-lauer
Removed usages of deprecated features that cause diagnostic crashes (Pull request #3009) @schlunma
Replace removed matplotlib.pyplot.savefig option additional_artists (Pull request #3075) @schlunma
Added missing comma to sommer17joss.bibtex (Pull request #3078) @schlunma
Fix call of output_type in aux_plotting.ncl (Pull request #3083) @LisaBock
Remove colorbar from bbox_extra_artists (Pull request #3087) @schlunma
Fix MPI-ESM1-2-HR entries in recipe_tebaldi21esd (Pull request #3093) @remi-kazeroni
Fix bug in provenance writing of perfmetrics recipes v2.8.0 (Pull request #3098) @axel-lauer
Fix recipe_sea_surface_salinity for v2.8 (Pull request #3102) @sloosvel
Fix variable short_name and metadata for ESACCI-LST CMORizer (Pull request #3104) @remi-kazeroni
Fix recipe_carvalhais14: replace outline patch with splines (Pull request #3111) @valeriupredoi
Replace deprecated function cm.register_cmap with mpl.colormaps.register for recipe_ arctic_ocean (Pull request #3112) @TomasTorsvik
Fix recipe_extract_shape.yml (lacking caption for provenance) (Pull request #3126) @valeriupredoi
Community#
Update documentation on pre-installed versions on HPC clusters (Pull request #2934) @remi-kazeroni
Deprecations#
Remove radiation recipes that have been superseded by recipe_radiation_budget along with associated diagnostic scripts (#3115) @alistairsellar
Documentation#
Backward compatibility policy (Pull request #2879) @alistairsellar
Suppress installing and reinstalling dependencies with pip during readthedocs builds (Pull request #2913) @valeriupredoi
Update installation instructions (Pull request #2939) @bouweandela
Update documentation for recipe_extreme_index (Pull request #2951) @katjaweigel
Update documentation and recipe_check_obs (ERA5) (Pull request #2952) @axel-lauer
Updated ICON dataset entry in documentation (Pull request #2954) @schlunma
Add Franziska Winterstein as collaborator in CITATION file (Pull request #3001) @valeriupredoi
Update release schedule for v2.7.0 and v2.8.0 (Pull request #3010) @remi-kazeroni
Add ESMValCore Bugfix release v2.7.1 to the release overview table (Pull request #3028) @valeriupredoi
Detailed instructions for release procedure: running recipes and analyzing the output (Pull request #3032) @valeriupredoi
Link backward compatibility policy to top level of ESMValCore changelog (Pull request #3052) @alistairsellar
Update release instructions (Pull request #3066) @remi-kazeroni
Updated docs and tests regarding new search_esgf option (Pull request #3069) @schlunma
Update script to draft release notes (Pull request #3070) @remi-kazeroni
Synchronize documentation table of contents with ESMValCore (Pull request #3073) @bouweandela
Update environment handling in release documentation (Pull request #3096) @remi-kazeroni
Clarify use (or not) of Jasmin climatology files by soil moisture & permafrost recipes (Pull request #3103) @alistairsellar
Add link to recipe portal in the gallery page (Pull request #3113) @remi-kazeroni
Improve stratosphere documentation (Pull request #3114) @alistairsellar
Added note to documentation that not all datasets used in schlund20jgr recipes are available on ESGF (Pull request #3121) @schlunma
Draft changelog for v2.8.0 (Pull request #3124) @remi-kazeroni
Documenting broken recipes after recipe testing for releases (Pull request #3129) @remi-kazeroni
Increase ESMValTool version to 2.8.0 and update release dates (Pull request #3136) @remi-kazeroni
Diagnostics#
Cloud diagnostics for Lauer et al. (2023) (Pull request #2750) @axel-lauer
Splitting of flato13ipcc.yml into separate recipes and adding recipes for regional Figures (Pull request #2156) @katjaweigel
Adding IPCC AR6 Chapter 3 Figure 3.43 - Pattern Correlation (Pull request #2772) @LisaBock
Adding IPCC AR6 Chapter 3 Fig. 3.42 - Perfmetrics (Pull request #2856) @LisaBock
Comment missing datasets and remove deprecated argument in recipe_climate_change_hotspot (Pull request #2920) @sloosvel
Add plot type annual_cycle to multi-dataset monitoring diagnostic (Pull request #2922) @schlunma
Adding IPCC AR6 Chapter 3 Fig. 3.19 - Speed-Up Of Zonal Mean Wind (Pull request #2984) @LisaBock
Adding IPCC AR6 Chapter 3 Fig. 3.9 - Attribution (Pull request #2986) @LisaBock
Obs4mips CERES-EBAF: update version to latest available through esgf in recipe_validation.yml (Pull request #3002) @valeriupredoi
Improve flexibility of cloud diagnostics (Pull request #3016) @axel-lauer
Let recipe_impact.yml write a CSV file that can directly be used in C4I portal (Pull request #2258) @Peter9192
Fix version numbers of native6 datasets in recipes (#3041) @remi-kazeroni
Removed automatic conversion of precipitation units from monitoring diagnostic (#3049) @schlunma.
Updated recipes for ESMValCore v2.8 (Pull request #3064) @schlunma
Fix cos22esd for release of 2.8 (Pull request #3097) @sloosvel
Diagnostic for recipe_autoassess_stratosphere.yml: remove unused feature incompatible with Matplotlib=3.7.1 (Pull request #3089) @valeriupredoi
Fix numpy deprecation in hype diagnostic (Pull request #3101) @Peter9192
Remove superseded radiation recipes (#3115) @alistairsellar
Removed fx_variables in recipe_mpqb_xch4 and recipe_lauer22jclim_fig8 (Pull request #3117) @axel-lauer
Update Python example recipe (Pull request #3119) @bouweandela
Updated figure settings to account for newer matplotlib version (Pull request #3133) @katjaweigel
Observational and re-analysis dataset support#
Earth System Data Cube (ESDC) cmorizer (Pull request #2799) @bsolino
Added CMORizer for Landschützer2020 (spco2) (Pull request #2908) @schlunma
Added CMORizer for MOBO-DIC_MPIM (dissic) (Pull request #2909) @schlunma
Added CMORizer for OceanSODA-ETHZ (areacello, co3os, dissicos, fgco2, phos, spco2, talkos) (Pull request #2915) @schlunma
Extension of ERA-Interim CMORizer (cl, cli, clw, lwp, rlut, rlutcs, rsut, rsutcs) (Pull request #2923) @axel-lauer
Add JRA-25 cmorizer (clt, hus, prw, rlut, rlutcs, rsut, rsutcs) (Pull request #2927) @LisaBock
New CMORizers for datasets from the NCEP family (NCEP-DOE-R2, NCEP-NCAR-R1, NOAA-CIRES-20CR) (Pull request #2931) @hb326
Updates to the recipes that use the NCEP reanalysis dataset (Pull request #2932) @hb326
MERRA2 cmorizer convert vertical level coordinate units from hPa to Pa (Pull request #3003) @valeriupredoi
MERRA2 cmorizer set UNLIMITED time coordinate (Pull request #3006) @valeriupredoi
Added CMORizers for TCOM-CH4 (CH4) and TCOM-N2O (N2O) (Pull request #3014) @schlunma
Update HadISST cmorizer to include recent years (Pull request #3027) @remi-kazeroni
Automatic testing#
Add DKRZ/Levante batch scripts for release recipe running (Pull request #2883) @valeriupredoi
Remove pytest-flake8 and call the use of flake8 straight (Pull request #2904) @valeriupredoi
Unpin flake8 (Pull request #2937) @valeriupredoi
Fix failing tests that use deprecated feature of sklearn (Pull request #2961) @schlunma
Fix recipe loading tests for esmvalcore before and after version 2.8 (Pull request #3020) @valeriupredoi
Update recipe load test for v2.8 (Pull request #3040) @bouweandela
Test running recipes with the development version of ESMValCore (Pull request #3072) @bouweandela
Fix test_naming.py so it doesn’t let through directories that need be ignored (Pull request #3082) @valeriupredoi
Conda environment files for interim use of esmvalcore=2.8.0rc1 (Pull request #3090) @valeriupredoi
Move flake8 check to a step separate from installation on CircleCI (Pull request #3105) @bouweandela
Recreate conda lock file to harpoon esmvalcore=2.8.0rc1 (Pull request #3108) @valeriupredoi
Update batch script generation to run all recipes in one command (Pull request #3130) @remi-kazeroni
Installation#
Merge release branch release_270stable in main so we pick up unsquashed commits and set the correct version 2.7.0 for main (and up version in CITATION.cff) (Pull request #2896) @valeriupredoi
Unpin NetCDF4 (Pull request #2929) @valeriupredoi
Unpin cf-units (Pull request #2930) @bouweandela
Set the version number on the development branches to one minor version more than the last release (Pull request #2964) @bouweandela
Pin shapely<2.0.0 for linux64 (Pull request #2970) @valeriupredoi
Unpin matplotlib (Pull request #3068) @valeriupredoi
Add packaging as direct dependency to ESMValTool (Pull request #3099) @valeriupredoi
Re-pin sphinx to latest (6.1.3) and add nbsphinx to the environment (Pull request #3118) @valeriupredoi
Conda environment files for esmvalcore=2.8.0rc2 (Pull request #3120) @remi-kazeroni
Remove rc (release candidates) conda channel and re-pin esmvalcore to new stable 2.8 (Pull request #3131) @valeriupredoi
Improvements#
Read config-user.yml using esmvalcore.config module (Pull request #2736) @bouweandela
Make results of recipes schlund20jgr_*.yml deterministic (Pull request #2900) @schlunma
Recipe_gier2020bg.yml: add sorting to SA barplot (Pull request #2905) @bettina-gier
Add the outline of a climatological tropopause to the zonalmean_profile plots (Pull request #2947) @FranziskaWinterstein
Update data finder imports (Pull request #2958) @bouweandela
Add support for the upcoming ESMValCore v2.8 release to the recipe filler tool (Pull request #2995) @bouweandela
Updated monitoring diagnostics with netCDF output and additional logging (Pull request #3029) @schlunma
Use aliases in perfmetrics (Pull request #3058) @FranziskaWinterstein
v2.7.0#
Highlights#
This release has seen the inclusion of the code for figures 3.3, 3.4, 3.5, 3,13 and 3.15 of the IPCC AR6 WG1 report, see them in the new documentation
We have also included new diagnostics and recipe necessary to produce the plots and tables for the journal article “Climate model projections from the Scenario Model Intercomparison Project (ScenarioMIP) of CMIP6” by Tebaldi et al. in ESD 2020-68 from 2021; also see the recipe entry
We have also extended the support for MERRA2 observational dataset, by adding support for a large number of variables, including 3D variables, see the table of supported obs datasets
Backwards incompatible changes#
Remove installation of R dependencies from the help message (Pull request #2761) @remi-kazeroni
Bug fixes#
Fix misplaced provenance records from IPCC AR5 Ch.12 diags (Pull request #2758) @axel-lauer
Fix esmvaltool.utils.testing.regression.compare module to run with Python<3.10 too (Pull request #2778) @valeriupredoi
Fixed small bug that could lead to wrong pr units in monitor/multi_datasets.py (Pull request #2788) @schlunma
Pin xgboost>1.6.1 so we avert documentation failing to build with 1.6.1 (Pull request #2780) @valeriupredoi
Pin matplotlib-base<3.6.0 to avoid conflict from mapgenerator that fails doc builds (Pull request #2830) @valeriupredoi
Fixed wrong latitudes in NDP CMORizer (Pull request #2832) @schlunma
Fix indexer in Autoassess supermeans module use a tuple of (slice(), idx, idx) (Pull request #2838) @valeriupredoi
Replace xarray ufuncs with bogstandard numpy in weighting/climwip/calibrate_sigmas.py (Pull request #2848) @valeriupredoi
Fix units MERRA2 CMORizer (Pull request #2850) @axel-lauer
Fix bug when using log-scale y-axis for ocean transects. (Pull request #2862) @TomasTorsvik
Community#
Add MO-paths to config file (Pull request #2784) mo-tgeddes
Deprecations#
Recipe recipe_esacci_oc.yml replace with new regrid scheme nearest_extrapolate (Pull request #2841) @valeriupredoi
Documentation#
Update release schedule for v2.7 (Pull request #2747) @bouweandela
Add Met Office installation method (Pull request #2751) mo-tgeddes
Add release dates for 2023 (Pull request #2769) @remi-kazeroni
Made maintainer entry mandatory for published recipes (Pull request #2703) @schlunma
Use command with current command line opts for cffconvert in documentation (Pull request #2791) @valeriupredoi
Update CMORizer documentation with command options (Pull request #2795) @remi-kazeroni
Fixed broken link for monthly meetings (Pull request #2806) @remi-kazeroni
Update MO obs4MIPs paths in the user configuration file (Pull request #2813) mo-tgeddes
Fix Windows incompatible file names in documentation of recipe_climate_change_hotspot.yml (Pull request #2823) @ledm
Update documentation for the Landschuetzer 2016 recipe. (Pull request #2801) @TomasTorsvik
Fixed anaconda badge in README (Pull request #2866) @valeriupredoi
Update release strategy notes (Pull request #2734) @sloosvel
Add documentation on how to handle CMORizers for multiple dataset versions (Pull request #2730) @remi-kazeroni
Extending documentation: recipe maintainer + broken recipe policy (Pull request #2719) @axel-lauer
Diagnostics#
Recipe and diagnostics for : Tebaldi et al.,ESD, 2021 (Pull request #2052) debe-kevin
Figures for IPCC AR6 WG1 Chapter 3 (Atmosphere) (Pull request #2533) @LisaBock
Observational and re-analysis dataset support#
Update CERES-EBAF to Ed4.1 (Pull request #2752) @axel-lauer
New CMORizer for CALIPSO-ICECLOUD (Pull request #2753) @axel-lauer
New CMORizer for CLOUDSAT-L2 (Pull request #2754) @axel-lauer
Update MERRA2 cmorizer with extra 2D and 3D variables (Pull request #2774) @valeriupredoi
Automatic testing#
Pin netcdf4 != 1.6.1 since that is spitting large numbers of SegFaults (Pull request #2796) @valeriupredoi
Installation#
Increase esmvalcore version to 2.7.0 in environment files (Pull request #2860) @valeriupredoi
Add iris-esmf-regrid as a dependency (Pull request #2880) @zklaus
Improvements#
Fix tebaldi21esd (Pull request #2749) @axel-lauer
Added option to show basic statistics in plots of monitor/multi_datasets.py (Pull request #2790) @schlunma
Remove retracted datasets from recipe_climate_change_hotspot (Pull request #2854) @sloosvel
v2.6.0#
Highlights#
A new monitoring diagnostic has been added to allow the comparison of model runs against reference datasets. For details, see Monitoring diagnostic to show multiple datasets in one plot (incl. biases).
A tool has been developed to compare the output of recipe runs against previous runs, in order to detect in an automated way breaking changes between releases. Find more information in Comparing recipe runs.
The recipe Climate Change Hotspot allows to compute hotspots in any rectangular region.
Please also note the highlights from the corresponding ESMValCore release here. Thanks to that ESMValTool has gained the following features:
A new set of CMOR fixes is now available in order to load native EMAC model output and CMORize it on the fly.
The version number of ESMValCore is now automatically generated using setuptools_scm, which extracts Python package versions from git metadata.
This release includes
Bug fixes#
Fix dtype for Marrmot recipe results (Pull request #2646) @SarahAlidoost
Adapt test_fix_coords to new version of cf-units (Pull request #2707) @zklaus
Fix nested axes in recipe_martin18_grl and recipe_li17natcc (Pull request #2712) @lukruh
Update common_climdex_preprocessing_for_plots.R (Pull request #2727) @earnone
Community#
Collecting github user names for config-references (Pull request #2677) @lukruh
Deprecations#
Deprecate the function esmvaltool.diag_scripts.shared.var_name_constraint. This function is scheduled for removal in v2.8.0. Please use
iris.NameConstraint
with the keyword argument var_name instead: this is an exact replacement. (Pull request #2655) @schlunma
Documentation#
Documentation Improvements (Pull request #2580) @stacristo
Fixed broken label in the documentation (Pull request #2616) @remi-kazeroni
Add readthedocs configuration file (Pull request #2627) @bouweandela
Update the command for building the documentation (Pull request #2622) @bouweandela
Added DKRZ-Levante to config-user-example.yml (Pull request #2632) @remi-kazeroni
Improved documentation on native dataset support (Pull request #2635) @schlunma
Add documentation on building and uploading Docker images (Pull request #2662) @bouweandela
Remove support for Mistral in config-user-example.yml (Pull request #2667) @remi-kazeroni
Add note to clarify that CORDEX support is work in progress (Pull request #2682) @bouweandela
Restore accidentally deleted text from input data docs (Pull request #2683) @bouweandela
Add running settings note in recipe_wenzel16nat.yml documentation (Pull request #2692) @sloosvel
Add a note on transferring permissions to the release manager (Pull request #2688) @bouweandela
Update documentation on ESMValTool module at DKRZ (Pull request #2696) @remi-kazeroni
Add note on how to run recipe_wenzel14jgr.yml (Pull request #2717) @sloosvel
Added conda forge feedstock repo link in README (Pull request #2555) @valeriupredoi
Diagnostics#
Compute bias instead of correlation in compare_salinity.py (Pull request #2642) @sloosvel
Update monitor diagnostics (Pull request #2608) @schlunma
Add new Psyplot diagnostic (Pull request #2653) @schlunma
Reduce memory usage of lisflood recipe (Pull request #2634) @sverhoeven
Provenance in ocean diagnostics (Pull request #2651) @tomaslovato
Extend monitor diagnostics with multi-dataset plots (Pull request #2657) @schlunma
Recipe and diagnostics to plot climate change hotspots: Cos et al., ESD 2022 (Pull request #2614) @pepcos
Update plots of consecutive dry days recipe (Pull request #2671) @bouweandela
Fix the format of ids in Hype forcing files (Pull request #2679) @SarahAlidoost
WFlow diagnostic script: remove manual rechunking (Pull request #2680) @Peter9192
Observational and re-analysis dataset support#
Extending the HadCRUT5 cmorizer (Pull request #2509) @LisaBock
Cmorize Kadow2020 dataset (Pull request #2513) @LisaBock
Cmorize NOAAGlobalTemp dataset (Pull request #2515) @LisaBock
Add option to CMORize ts as tos in ESACCI data (Pull request #2731) @sloosvel
Automatic testing#
Add a tool for comparing recipe runs to previous runs (Pull request #2613) @bouweandela
Ignore NCL interface files when comparing recipe runs (Pull request #2673) @bouweandela
Add a short version of recipe deangelis15nat for testing (Pull request #2685) @katjaweigel
Expanded recipe output comparison tool to better handle absolute paths in output (Pull request #2709) @schlunma
Update development infrastructure (Pull request #2663) @bouweandela
Installation#
Removed package/meta.yaml and all references to it (Pull request #2612) @schlunma
Improvements#
Improved handling of weights in MLR diagnostics (Pull request #2625) @schlunma
Fixed order of variables in perfemetrics plot of Anav13jclim recipe (Pull request #2706) @schlunma
Added input file sorting to many diagnostic to make output exactly reproducible (Pull request #2710) @schlunma
Removed ‘ancestors’ attributes before saving netcdf files in emergent constraints diagnostics (Pull request #2713) @schlunma
v2.5.0#
Highlights#
A new recipe to plot generic preprocessor output is now available. For details, see Monitor.
The CMORization of observational and other datasets has been overhauled. For many datasets, an automatic download script is now available. For details, see Observations and Writing a CMORizer script for an additional dataset.
Please also note the highlights from the corresponding ESMValCore release here. Thanks to that ESMValTool has gained the following features:
The new preprocessor
extract_location
can extract arbitrary locations on the Earth.Time ranges can now be extracted using the ISO 8601 format.
The new preprocessor
ensemble_statistics
can calculate arbitrary statistics over all ensemble members of a simulation.
This release includes
Backwards incompatible changes#
Streamline observations download (Pull request #1657) Javier Vegas-Regidor. This change removes the
cmorize_obs
command which has previously been used to CMORize observations and other datasets. The new commandesmvaltool data
provides many new features apart from the CMORization (esmvaltool data format
), for example, automatic downloading of observational datasets (esmvaltool data download
). More details on this can be found here and here.Dropped Python 3.7 (Pull request #2585) @schlunma. ESMValTool v2.5.0 dropped support for Python 3.7. From now on Python >=3.8 is required to install ESMValTool. The main reason for this is that conda-forge dropped support for Python 3.7 for OSX and arm64 (more details are given here).
Bug fixes#
Remove the use of esmvalgroup channel from the conda install Github Action workflow (Pull request #2420) @valeriupredoi
Ignore .pymon-journal file in test discovery (Pull request #2491) @zklaus
Relocate pytest-monitor outputted database .pymon so .pymon-journal file should not be looked for by pytest (Pull request #2501) @valeriupredoi
Re-establish Python 3.7 compatibility (Pull request #2506) @zklaus
Update intersphinx mapping (Pull request #2531) @zklaus
Fixed KeyError in recipe_ocean_bgc.yml (Pull request #2540) @schlunma
Corrected ESACCI-SEA-SURFACE-SALINITY from OBS to OBS6 (Pull request #2542) @axel-lauer
Fixed recipe_kcs.yml (Pull request #2541) @schlunma
Fix MDER diagnostic regression_stepwise (Pull request #2545) @axel-lauer
Fix for recipe_wenzel16nat (Pull request #2547) @axel-lauer
Fixed recipe_carvalhais14nat and removed deprecated use of np.float (Pull request #2558) @schlunma
Fix recipe_wenzel14jgr (Pull request #2577) @remi-kazeroni
Fixed various recipes by removing faulty or non-available datasets (Pull request #2563) @schlunma
Remove missing CMIP5 data from 2 recipes (Pull request #2579) @remi-kazeroni
Fix recipe_seaice (Pull request #2578) @remi-kazeroni
Fix recipe_climwip_brunner20esd (Pull request #2581) @remi-kazeroni
Deprecations#
Remove –use-feature=2020-resolver command line option for obsolete pip 2020 solver (Pull request #2493) @valeriupredoi
Renamed vertical regridding schemes in affected recipes (Pull request #2487) @schlunma
Documentation#
Update release manager for v2.5 (Pull request #2429) @axel-lauer
Mention ENES Climate Analytics service (Pull request #2438) @bouweandela
Add recipe overview page (Pull request #2439) @bouweandela
Fix pointer to Tutorial lesson on preprocessor from 05 to 06 (Pull request #2473) @valeriupredoi
Removed obsolete option synda-download from documentation (Pull request #2485) @schlunma
Update CMUG XCH4 docu figure (Pull request #2502) @axel-lauer
Add Python=3.10 to package info, update Circle CI auto install and documentation for Python=3.10 (Pull request #2503) @schlunma
Unify user configuration file (Pull request #2507) @schlunma
Synchronized config-user.yml with version from ESMValCore (Pull request #2516) @schlunma
CITATION.cff fix and automatic validation of your citation metadata (Pull request #2517) @abelsiqueira
Add backwards incompatible changes at the top of the release notes draft (Pull request #2431) @bouweandela
Fixed intersphinx mapping of scipy (Pull request #2523) @schlunma
Add authors to citation cff (Pull request #2525) @SarahAlidoost
Update documentation on running a recipe (Pull request #2432) @bouweandela
Fix recipe hydrology/recipe_wflow.yml (Pull request #2549) @remi-kazeroni
Update draft_release_notes.py for new release (Pull request #2553) @schlunma
Added stand with Ukraine badge (Pull request #2565) @valeriupredoi
Updated CREM docu (recipe_williams09climdyn.yml) (Pull request #2567) @axel-lauer
First draft for v2.5.0 changelog (Pull request #2554) @schlunma
Replace nonfunctional Github Actions badge with cool one in README (Pull request #2582) @valeriupredoi
Updated changelog (Pull request #2589) @schlunma
Updated release strategy with current release and upcoming release (Pull request #2597) @schlunma
Increased ESMValTool version to 2.5.0 (Pull request #2600) @schlunma
Diagnostics#
AutoAssess: Add new diagnostic for radiation budget (Pull request #2282) @Jon-Lillis
CMUG Sea Surface Salinity dataset and diagnostic (Pull request #1832) Javier Vegas-Regidor
Recipe with new diagnostics for ESA-CMUG H2O (Pull request #1834) @katjaweigel
Cleaned Schlund et al. (2020) recipe and fixed small bugs in corresponding diagnostic (Pull request #2484) @schlunma
Add ESA CCI LST cmorizer and diagnostic (Pull request #1897) @morobking
XCH4 ESA CMUG diagnostics (subset of the MPQB diagnostics) (Pull request #1960) @hb326
Add support for ESACCI Ocean Color (Chlorophyll) observations (Pull request #2055) ulrikaw-cloud
Updated recipe_zmnam.yml with hemisphere selection (Pull request #2230) @fserva
Add recipe and diagnostic scripts to compute figures of D9.4 of ISENES3 (Pull request #2441) @sloosvel
Save resampled climates from KCS diagnostic local_resampling.py (Pull request #2221) @Emmadd
Use years from KCS recipe (Pull request #2223) @Emmadd
Recipe to plot generic output from the preprocessor (Pull request #2184) Javier Vegas-Regidor
Fixed provenance tracking for emergent constraint diagnostics (Pull request #2573) @schlunma
Observational and re-analysis dataset support#
Ensure dummy data for cmorize_obs_woa test are written to the correct directory (Pull request #2451) @ehogan
Add ESA CCI LST cmorizer and diagnostic (see previous section Diagnostics)
Automatic testing#
Run a nightly Github Actions workflow to monitor tests memory per test (configurable for other metrics too) and lists the slowest 100 tests (Pull request #2449) @valeriupredoi
Fix individual pytest runs broken due to missing explicit imports from iris and adding a couple missing package markers (Pull request #2455) @valeriupredoi
Add Python=3.10 to Github Actions and switch to Python=3.10 for the Github Action that builds the PyPi package (Pull request #2488) @valeriupredoi
Switch all github actions from miniconda to mambaforge (Pull request #2498) @zklaus
Pin flake8<4 to have actual FLAKE8 error printed if tests fail and not garbage (Pull request #2492) @valeriupredoi
Implementing conda lock (Pull request #2193) @valeriupredoi
[Docker] Update Docker container builds with correct installations of Julia (Pull request #2530) @valeriupredoi
Update Linux condalock file (various pull requests) github-actions[bot]
Installation#
Comment out release candidate channel in environment.yml (Pull request #2417) @zklaus
Comment out rc channel in osx environment file (Pull request #2421) @valeriupredoi
Add python-cdo as conda-forge dependency in environment files to ensure cdo gets used from conda-forge and not pip (Pull request #2469) @valeriupredoi
Install rasterio from conda-forge and avoid issues from python=3.10 (Pull request #2479) @valeriupredoi
Updated dependencies with new ESMValCore version (Pull request #2599) @schlunma
Improvements#
Remove use of OBS and use CMIP instead in examples/recipe_ncl.yml (Pull request #2494) @valeriupredoi
Expanded recipe_preprocessor_test.yml to account for new multi_model_statistics features (Pull request #2519) @schlunma
Updated piControl periods for recipes that use KACE-1-0-G (Pull request #2537) @schlunma
Reduced time range in recipe_globwat.yml (Pull request #2548) @schlunma
Removed models with missing data from recipe_williams09climdyn.yml (Pull request #2566) @axel-lauer
Restored original versions of recipe_schlund20esd.yml and recipe_meehl20sciadv.yml (Pull request #2583) @schlunma
v2.4.0#
Highlights#
ESMValTool is moving from Conda to Mamba as the preferred installation method. This will speed up the installation and comes with some improvements behind the scenes. Read more about it at Move to Mamba and in the installation guide.
Please also note the highlights from the corresponding ESMValCore release here. Thanks to that ESMValTool has gained the following features:
Download any missing data that is available on the ESGF automatically.
Resume previous runs, reusing expensive pre-processing results.
This release includes
Bug fixes#
Fixed recipe_meehl20sciadv.yml for ESMValCore 2.3 (Pull request #2253) @schlunma
Fix provenance of NCL figures created using the log_provenance function (Pull request #2279) @bouweandela
Fix bug in ClimWIP brunner19 recipe when plotting (Pull request #2226) @lukasbrunner
Pin docutils <0.17 to fix sphinx build with rtd theme (Pull request #2312) @zklaus
Fix example recipes (Pull request #2338) @valeriupredoi
Do not add bounds to plev (plev19) in era interim cmorizer (Pull request #2328) @valeriupredoi
Fix problem with pip 21.3 that prevents installation from source (Pull request #2344) @zklaus
Add title to recipe embedded in test_diagnostic_run.py (Pull request #2353) @zklaus
Fix capitalization of obs4MIPs (Pull request #2368) @bouweandela
Specify that areacella is needed for area statistics in the Python example recipe (Pull request #2371) @bouweandela
Enabling variable obs550lt1aer in recipes (Pull request #2388) @remi-kazeroni
Update a diagnostic to new Iris version (Pull request #2390) @katjaweigel
Fixed bug in provenance tracking of ecs_scatter.ncl (Pull request #2391) @schlunma
Fix provenance issue in pv_capacity_factor.R (Pull request #2392) @katjaweigel
Remove obsolete write_plots option from R diagnostics (Pull request #2395) @zklaus
Fix arctic ocean diagnostic (Pull request #2397) @zklaus
Fix sea ice drift recipe and script (Pull request #2404) @sloosvel
Adapt diagnostic script to new version of iris (Pull request #2403) @zklaus
Fix ocean multimap (Pull request #2406) @zklaus
Fix diagnostic that uses xarray: dtype correctly set and harmonize xarray and matplotlib (Pull request #2409) @zklaus
Deactivate provenance logging for plots in thermodyn toolbox (Pull request #2414) @zklaus
Deprecations#
Removed write_plots and write_netcdf from some NCL diagnostics (Pull request #2293) @schlunma
Fixed provenance logging of all python diagnostics by removing ‘plot_file’ entry (Pull request #2296) @schlunma
Do not deprecate classes Variable, Variables and Datasets on a specific version (Pull request #2286) @schlunma
Remove obsolete write_netcdf option from ncl diagnostic scripts (Pull request #2387) @zklaus
Remove write plots from ocean diagnostics (Pull request #2393) @valeriupredoi
More removals of instances of write_plots from Python diagnostics (appears to be the final removal from Py diags) (Pull request #2394) @valeriupredoi
Documentation#
List Manuel Schlund as release manager for v2.5 (Pull request #2268) @bouweandela
GlobWat fix download links and gdal command (Pull request #2334) @babdollahi
Add titles to recipes authored by predoi_valeriu (Pull request #2333) @valeriupredoi
Added titles to recipes maintained by lauer_axel (Pull request #2332) @axel-lauer
Update the documentation of the GRACE CMORizer (Pull request #2349) @remi-kazeroni
Add titles in BSC recipes (Pull request #2351) @sloosvel
Update esmvalcore dependency to 2.4.0rc1 (Pull request #2348) @zklaus
Add titles to recipes maintained by Peter Kalverla (Pull request #2356) @Peter9192
Adding titles to the recipes with maintainer hb326 (Pull request #2358) @hb326
Add title for zmnam as for #2354 (Pull request #2363) @fserva
Added recipe titles the the ocean recipes. (Pull request #2364) @ledm
Update recipe_thermodyn_diagtool.yml - add title (Pull request #2365) @ValerioLembo
Fix provenance of figures of several R diagnostics (Pull request #2300) @bouweandela
Adding titles to Mattia’s recipes (Pull request #2367) @remi-kazeroni
Adding titles to wenzel recipes (Pull request #2366) @hb326
Fix formatting of some recipe titles merged from PR 2364 (Pull request #2372) @zklaus
Adding titles to Bjoern’s recipes (Pull request #2369) @remi-kazeroni
Add titles to ocean recipes (maintainer Lovato) (Pull request #2375) @tomaslovato
Add titles for three c3s-magic recipes (Pull request #2378) @zklaus
Add title for recipe maintained by Ruth Lorenz (Pull request #2379) @zklaus
Fix toymodel recipe (Pull request #2381) Javier Vegas-Regidor
Added titles for recipes of maintainer schlund_manuel (Pull request #2377) @schlunma
Write_plots and titles for deangelis15nat, li17natcc, martin18grl, pv_capacity_factor (Pull request #2382) @katjaweigel
Add titles for some recipes (Pull request #2383) @zklaus
Adding titles for recipes by von Hardenberg and Arnone (Pull request #2384) @zklaus
Last two missing titles (Pull request #2386) @valeriupredoi
Update documentation on downloading data (Pull request #2370) @bouweandela
Fix installation instructions for Julia (Pull request #2335) @zklaus
Fix provenance of Julia example diagnostic (Pull request #2289) @bouweandela
Added notes on use of mamba in the installation documentation chapter (Pull request #2236) @valeriupredoi
Update version number for 2.4.0 release (Pull request #2410) @zklaus
Update release schedule for 2.4.0 (Pull request #2412) @zklaus
Update changelog for 2.4.0 release (Pull request #2411) @zklaus
Diagnostics#
Add all available CMIP5 and CMIP6 models to recipe_impact.yml (Pull request #2251) @bouweandela
Add Fig. 6, 7 and 9 of Bock20jgr (Pull request #2252) @LisaBock
Generalize recipe_validation* diagnostic to work with identical control and experiment dataset names (Pull request #2284) @valeriupredoi
Add missing preprocessor to recipe_gier2020bg and adapt to available data (Pull request #2399) @bettina-gier
Removed custom version of AtmosphereSigmaFactory in diagnostics (Pull request #2405) @schlunma
Observational and re-analysis dataset support#
Replace recipe_era5.yml with recipe_daily_era5.yml (Pull request #2182) @SarahAlidoost
Update WOA cmorizer for WOA18 and WOA13v2 (Pull request #1812) @LisaBock
GLODAP v2.2016 ocean data cmorizer (Pull request #2185) @tomaslovato
Updated GCP CMORizer (Pull request #2295) @schlunma
Automatic testing#
Add a cylc suite to run all recipes (Pull request #2219) @bouweandela
Retire test with Python 3.6 from full development Github Actions test (Pull request #2229) @valeriupredoi
Remove Python 3.6 tests from GitHub Actions (Pull request #2264) @valeriupredoi
Unpin upper bound for iris (previously was at <3.0.4) (Pull request #2266) @valeriupredoi
Pin latest esmvalcore to allow use of the bugfix release 2.3.1 always (Pull request #2269) @valeriupredoi
Add apt update so Julia gets found and installed by Docker (Pull request #2290) @valeriupredoi
Use mamba for environment update and creation in the Docker container build on DockerHub (Pull request #2297) @valeriupredoi
Docker container experimental - run a full env solve with mamba instead of a conda update (Pull request #2306) @valeriupredoi
Full use of mamba in Github Actions source install test and use generic Python 3.7 (removing the very specific 3.7.10) (Pull request #2287) @valeriupredoi
Replace use of conda with mamba for conda_install test on Circle CI (Pull request #2237) @valeriupredoi
Update circleci configuration (Pull request #2357) @zklaus
Installation#
Remove mpich from conda dependencies list (Pull request #2343) @valeriupredoi
Improvements#
Add script for extracting a list of input files from the provenance (Pull request #2278) @bouweandela
Update github actions (Pull request #2360) @zklaus
Removed ‘write_plots’ from all NCL diagnostics (Pull request #2331) @axel-lauer
Update and modernize config-user-example.yml (Pull request #2374) @valeriupredoi
v2.3.0#
This release includes
Bug fixes#
Indent block to pick up and raise exception if cmorizer data not found (TierX dir is not there) (Pull request #1877) @valeriupredoi
Skip recipe filler tests until we have a new release since GA tests are failing (Pull request #2089) @valeriupredoi
Fixed broken link to contributions in README (Pull request #2102) @schlunma
Fix recipe filler for the case the variable doesn’t contain short_name (Pull request #2104) @valeriupredoi
Add fix for iris longitude bug to ClimWIP (Pull request #2107) @lukasbrunner
Update for outdated link to reference Déandreis et al. (2014). (Pull request #2076) @katjaweigel
Fixed recipes for ESMValCore 2.3.0 (Pull request #2203) @schlunma
Fix the WFDE5 cmorizer (Pull request #2211) @remi-kazeroni
Fix broken CMORizer log message if no Tier directory exists (Pull request #2207) @jmrgonza
Fix bug in ClimWIP basic test recipe when plotting (Pull request #2225) @lukasbrunner
Fix bug in ClimWIP advanced test recipe when plotting (Pull request #2227) @lukasbrunner
Adjust time range for the WDFE5 dataset in the recipe_check_obs.yml (Pull request #2232) @remi-kazeroni
Fix plot and provenance of recipe_consecdrydays (Pull request #2244) @bouweandela
Documentation#
Improving the README.md file with a more appealing look and bit more info (Pull request #2065) @valeriupredoi
Update plot title martin18grl (Pull request #2080) @katjaweigel
Update contribution guidelines (Pull request #2031) @bouweandela
Update links in pull request template to point to latest documentation (Pull request #2083) @bouweandela
Update release schedule (Pull request #2081) @bouweandela
Updates to contribution guidelines (Pull request #2092) @bouweandela
Update documentation for ERA5 with new variables (Pull request #2111) @lukasbrunner
Add OSX installation instructions to docs (Pull request #2115) @bvreede
Instructions to use pre-installed versions on HPC clusters (Pull request #2197) @remi-kazeroni
Add functional Autoassess diagnostics: land surface metrics: permafrost, soil moisture, surface radiation (Pull request #2170) @valeriupredoi
Add citation info in recipe_eady_growth_rate.yml (Pull request #2188) @sloosvel
Update version number to 2.3.0 (Pull request #2213) @zklaus
Update release schedule for 2.3.0 (Pull request #2247) @zklaus
Changelog update to v2.3.0 (Pull request #2214) @zklaus
Diagnostics#
Added figures 8 and 10 to recipe_bock20jgr.yml (Pull request #2074) @schlunma
Add hydrological forcing comparison recipe (Pull request #2013) @stefsmeets
Added recipe for Meehl et al., Sci. Adv. (2020) (Pull request #2094) @schlunma
Add GlobWat recipe and diagnostic (Pull request #1808) @babdollahi
Add ClimWIP recipe to reproduce Brunner et al. 2019 (Pull request #2109) @lukasbrunner
Update Climwip recipe to reproduce brunner2020esd (Pull request #1859) @ruthlorenz
Update recipe_thermodyn_diagtool.yml: code improvements and more user options (Pull request #1391) @ValerioLembo
Remove model AWI-CM-1-1-MR from recipe_impact.yml (Pull request #2238) @bouweandela
PV capacity factor for ESMValTool GMD paper (Pull request #2153) @katjaweigel
Observational and re-analysis dataset support#
Cmorize wfde5 (Pull request #1991) @mwjury
Make cmorizer utils funcs public in utilities.py and add some numpy style docstrings (Pull request #2206) @valeriupredoi
CMORizer for CLARA-AVHRR cloud data (Pull request #2101) @axel-lauer
Update of ESACCI-CLOUD CMORizer (Pull request #2144) @axel-lauer
Automatic testing#
Force latest Python in empty environment in conda install CI test (Pull request #2069) @valeriupredoi
Removed imports from private sklearn modules and improved test coverage of custom_sklearn.py (Pull request #2078) @schlunma
Move private _(global)_stock_cube from esmvacore.preprocessor._regrid to cmorizer (Pull request #2087) @valeriupredoi
Try mamba install esmvaltool (Pull request #2125) @valeriupredoi
Reinstate OSX Github Action tests (Pull request #2110) @valeriupredoi
Pin mpich to avoid default install of 3.4.1 and 3.4.2 with external_0 builds (Pull request #2220) @valeriupredoi
Include test sources in distribution (Pull request #2234) @zklaus
Pin iris<3.0.4 to ensure we still (sort of) support Python 3.6 (Pull request #2246) @valeriupredoi
Installation#
Fix conda build by skipping documentation test (Pull request #2058) Javier Vegas-Regidor
Update pin on esmvalcore pick up esmvalcore=2.3.0 (Pull request #2200) @valeriupredoi
Pin Python to 3.9 for development installation (Pull request #2208) @bouweandela
Improvements#
Add EUCP and IS-ENES3 projects to config-references (Pull request #2066) @Peter9192
Fix flake8 tests on CircleCI (Pull request #2070) @bouweandela
Added recipe filler. (Pull request #1707) @ledm
Update use of fx vars to new syntax (Pull request #2145) @sloosvel
Add recipe for climate impact research (Pull request #2072) @Peter9192
Update references “master” to “main” (Pull request #2172) @axel-lauer
Force git to ignore VSCode workspace files (Pull request #2186) Javier Vegas-Regidor
Update to new ESMValTool logo (Pull request #2168) @axel-lauer
Python cmorizers for CDR1 and CDR2 ESACCI H2O (TCWV=prw) data. (Pull request #2152) @katjaweigel
Remove obsolete conda package (closes #2100) (Pull request #2103) @zklaus
v2.2.0#
Highlights#
ESMValTool is now using the recently released Iris 3. We acknowledge that this change may impact your work, as Iris 3 introduces several changes that are not backward-compatible, but we think that moving forward is the best decision for the tool in the long term.
This release includes
Bug fixes#
Bugfix: time weights in time_operations (Pull request #1956) @axel-lauer
Fix issues with bibtex references (Pull request #1955) @stefsmeets
Fix ImportError for configure_logging (Pull request #1976) @stefsmeets
Add required functional parameters for extract time in recipe_er5.yml (Pull request #1978) @valeriupredoi
Revert “Fix ImportError for configure_logging” (Pull request #1992) @bouweandela
Fix import of esmvalcore _logging module in cmorize_obs.py (Pull request #2020) @valeriupredoi
Fix logging import in cmorize_obs again since last merge was nulled by pre-commit hooks (Pull request #2022) @valeriupredoi
Refactor the functions in derive_evspsblpot due to new iris (Pull request #2023) @SarahAlidoost
Avoid importing private ESMValCore functions in CMORizer (Pull request #2027) @bouweandela
Fix extract_seasons in validation recipe (Pull request #2054) Javier Vegas-Regidor
Deprecations#
Deprecate classes Variable, Variables and Datasets (Pull request #1944) @schlunma
Python 3.9: remove pynio as dependency and replace with rasterio and pin Matplotlib>3.3.1 and pin cartopy>=0.18 (Pull request #1997) @valeriupredoi
Removed write_plots and write_netcdf in some python diagnostics (Pull request #2036) @schlunma
Documentation#
Update instructions on making a release (Pull request #1867) @bouweandela
Update review.rst (Pull request #1917) @axel-lauer
Add guidance on how to review a pull request (Pull request #1872) @bouweandela
Adding tutorial links to documentation (Pull request #1927) @hb326
Added bibtex file for schlund20jgr (Pull request #1928) @schlunma
Documentation contact added the actual email for the mailing list (Pull request #1938) @valeriupredoi
Make CircleCI badge specific to main branch (Pull request #1831) @bouweandela
Documentation on how to move code from a private repository to a public repository (Pull request #1920) @hb326
Refine pull request review guidelines (Pull request #1924) @stefsmeets
Update release schedule (Pull request #1948) @zklaus
Improve contact info and move to more prominent location (Pull request #1950) @bouweandela
Add some maintainers to some recipes that are missing them (Pull request #1970) @valeriupredoi
Update core team info (Pull request #1973) @axel-lauer
Combine installation from source instructions and add common issues (Pull request #1971) @bouweandela
Update iris documentation URL for sphinx (Pull request #2003) @bouweandela
Fix iris documentation link(s) with new iris3 location on readthedocs (Pull request #2012) @valeriupredoi
Document how to run tests for installation verification (Pull request #1847) @valeriupredoi
List Remi Kazeroni as a code owner and sole merger of CMORizers (Pull request #2017) @bouweandela
Install documentation: mention that we build conda package with python>=3.7 (Pull request #2030) @valeriupredoi
Recipe and documentation update for ERA5-Land. (Pull request #1906) @katjaweigel
Update changelog and changelog tool for v2.2.0 (Pull request #2043) Javier Vegas-Regidor
Final update to the changelog for v2.2.0 (Pull request #2056) Javier Vegas-Regidor
Diagnostics#
Add mapplot diagnostic to ClimWIP (Pull request #1864) @lukasbrunner
Add the option to weight variable groups in ClimWIP (Pull request #1856) @lukasbrunner
Implementation of ensemble member recognition to the ClimWIP diagnostic (Pull request #1852) @lukasbrunner
Restructure ClimWIP (Pull request #1919) @lukasbrunner
Diagnostic for recipe_eyring13jgr.yml Fig. 12 (Pull request #1922) @LisaBock
Added changes in shared functions necessary for schlund20esd (Pull request #1967) @schlunma
Adding recipe and diagnostics for Gier et al 2020 (Pull request #1914) @bettina-gier
Added recipe, diagnostics and documentation for Schlund et al., ESD (2020) (Pull request #2015) @schlunma
Add PRIMAVERA Eady Growth Rate diagnostic (Pull request #1285) @sloosvel
Implement shape parameter calibration for ClimWIP (Pull request #1905) @lukasbrunner
Observational and re-analysis dataset support#
Extended ESRL cmorizer (Pull request #1937) @bettina-gier
Cmorizer for GRACE data (Pull request #1694) @bascrezee
Cmorizer for latest ESACCI-SST data (Pull request #1895) @valeriupredoi
Fix longitude in ESRL cmorizer (Pull request #1988) @bettina-gier
Selectively turn off fixing bounds for coordinates during cmorization with utilities.py (Pull request #2014) @valeriupredoi
Cmorize hadcrut5 (Pull request #1977) @mwjury
Cmorize gpcc masking (Pull request #1995) @mwjury
Cmorize_utils_save_1mon_Amon (Pull request #1990) @mwjury
Cmorize gpcc fix (Pull request #1982) @mwjury
Fix flake8 raised by develop test in cmorize_obs_gpcc.py (Pull request #2038) @valeriupredoi
Automatic testing#
Switched miniconda conda setup hooks for Github Actions workflows (Pull request #1913) @valeriupredoi
Fix style issue (Pull request #1929) @bouweandela
Fix mlr test with solution that works for CentOS too (Pull request #1936) @valeriupredoi
Temporary deactivation Github Actions on OSX (Pull request #1939) @valeriupredoi
Fix conda installation test on CircleCI (Pull request #1952) @bouweandela
Github Actions: change time for cron job that installs from conda (Pull request #1969) @valeriupredoi
CI upload relevant artifacts for test job (Pull request #1999) @valeriupredoi
Github Actions test that runs with the latest ESMValCore main (Pull request #1989) @valeriupredoi
Introduce python 39 in Github Actions tests (Pull request #2029) @valeriupredoi
Remove test for conda package installation on Python 3.6 (Pull request #2033) @valeriupredoi
Update codacy coverage reporter to fix coverage (Pull request #2039) @bouweandela
Installation#
Simplify installation of R development dependencies (Pull request #1930) @bouweandela
Fix docker build (Pull request #1934) @bouweandela
Use new conda environment for installing ESMValTool in Docker containers (Pull request #1993) @bouweandela
Fix conda build (Pull request #2026) @bouweandela
Improvements#
Allow multiple references for a cmorizer script (Pull request #1953) @SarahAlidoost
Add GRACE to the recipe check_obs (Pull request #1963) @remi-kazeroni
Align ESMValTool to ESMValCore=2.2.0 (adopt iris3, fix environment for new Core release) (Pull request #1874) @stefsmeets
Make it possible to use write_plots and write_netcdf from recipe instead of config-user.yml (Pull request #2018) @bouweandela
Revise lisflood and hype recipes (Pull request #2035) @SarahAlidoost
Set version to 2.2.0 (Pull request #2042) Javier Vegas-Regidor
v2.1.1#
This release includes
Improvements#
Fix the conda build on CircleCI (Pull request #1883) @bouweandela
Pin matplotlib to <3.3 and add compilers (Pull request #1898) @bouweandela
Pin esmvaltool subpackages to the same version and build as the esmvaltool conda package (Pull request #1899) @bouweandela
Documentation#
Release notes v2.1.1 (Pull request #1932) @valeriupredoi
v2.1.0#
This release includes
Diagnostics#
Add extra steps to diagnostic to make output of hydrology/recipe_lisflood.yml usable by the LISFLOOD model (Pull request #1737) @JaroCamphuijsen
Recipe to reproduce the 2014 KNMI Climate Scenarios (kcs). (Pull request #1667) @Peter9192
Implement the climwip weighting scheme in a recipe and diagnostic (Pull request #1648) @JaroCamphuijsen
Remove unreviewed autoassess recipes (Pull request #1840) @valeriupredoi
Changes in shared scripts for Schlund et al., JGR: Biogeosciences, 2020 (Pull request #1845) @schlunma
Updated derivation test recipe (Pull request #1790) @schlunma
Support for multiple model occurrence in perf main (Pull request #1649) @bettina-gier
Add recipe and diagnostics for Schlund et al., JGR: Biogeosciences, 2020 (Pull request #1860) @schlunma
Adjust recipe_extract_shape.yml to recent changes in the example diagnostic.py (Pull request #1880) @bouweandela
Documentation#
Add pip installation instructions (Pull request #1783) @bouweandela
Add installation instruction for R and Julia dependencies tot pip install (Pull request #1787) @bouweandela
Avoid autodocsumm 0.2.0 and update documentation build dependencies (Pull request #1794) @bouweandela
Add more information on working on cluster attached to ESGF node (Pull request #1821) @bouweandela
Add release strategy to community documentation (Pull request #1809) @zklaus
Update esmvaltool run command everywhere in documentation (Pull request #1820) @bouweandela
Add more info on documenting a recipe (Pull request #1795) @bouweandela
Improve the Python example diagnostic and documentation (Pull request #1827) @bouweandela
Improve description of how to use draft_release_notes.py (Pull request #1848) @bouweandela
Update changelog for release 2.1 (Pull request #1886) @valeriupredoi
Improvements#
Fix R installation in WSL (Pull request #1789) Javier Vegas-Regidor
Add pre-commit for linting/formatting (Pull request #1796) @stefsmeets
Speed up tests on CircleCI and use pytest to run them (Pull request #1804) @bouweandela
Move pre-commit excludes to top-level and correct order of lintr and styler (Pull request #1805) @stefsmeets
Remove isort setup to fix formatting conflict with yapf (Pull request #1815) @stefsmeets
GitHub Actions (Pull request #1806) @valeriupredoi
Fix yapf-isort import formatting conflict (Pull request #1822) @stefsmeets
Replace vmprof with vprof as the default profiler (Pull request #1829) @bouweandela
Update ESMValCore v2.1.0 requirement (Pull request #1839) Javier Vegas-Regidor
Pin iris to version 2 (Pull request #1881) @bouweandela
Pin eccodes to not use eccodes=2.19.0 for cdo to work fine (Pull request #1869) @valeriupredoi
Increase version to 2.1.0 and add release notes (Pull request #1868) @valeriupredoi
Github Actions Build Packages and Deploy tests (conda and PyPi) (Pull request #1858) @valeriupredoi
Observational and re-analysis dataset support#
Added CMORizer for Scripps-CO2-KUM (Pull request #1857) @schlunma
v2.0.0#
This release includes
Bug fixes#
Fix pep8-naming errors and fix zmnam diagnostic (Pull request #1702) @bouweandela
Fix keyword argument in cmorize_obs (Pull request #1721) @mattiarighi
Fixed JMA-TRANSCOM CMORizer (Pull request #1735) @schlunma
Fix bug in extract_doi_value (Pull request #1734) @bascrezee
Fix small errors in the arctic_ocean diagnostic (Pull request #1722) @koldunovn
Flatten ancestor lists for diag_spei.R and diag_spi.R. (Pull request #1745) @katjaweigel
Fix for recipe_ocean_ice_extent.yml (Pull request #1744) @mattiarighi
Fix recipe_combined_indices.yml provenance (Pull request #1746) Javier Vegas-Regidor
Fix provenance in recipe_multimodel_products (Pull request #1747) Javier Vegas-Regidor
Exclude FGOALS-g2 due to ESMValCore issue #728 (Pull request #1749) @mattiarighi
Fix recipe_modes_of_variability (Pull request #1753) Javier Vegas-Regidor
Flatten lists for ancestors for hyint to prevent nested lists. (Pull request #1752) @katjaweigel
Fix bug in cmorize_obs_eppley_vgpm_modis.py (#1729) (Pull request #1759) @tomaslovato
Correct mip for clltkisccp in example derive preprocessor recipe (Pull request #1768) @bouweandela
Update date conversion in recipe_hype.yml (Pull request #1769) @bouweandela
Fix recipe_correlation.yml (Pull request #1767) @bouweandela
Add attribute positive: down to plev coordinate in ERA-Interim CMORizer (Pull request #1771) @bouweandela
Fix sispeed in recipe_preprocessor_derive_test (Pull request #1772) Javier Vegas-Regidor
Fix extreme events and extreme index ancestors (Pull request #1774) @katjaweigel
Correct date in output filenames of ERA5 CMORizer recipe (Pull request #1773) @bouweandela
Exclude WOA from multi-model stats in recipe_ocean_bgc (Pull request #1778) @mattiarighi
Diagnostics#
Enhancement of the hyint recipe to include etccdi indices (Pull request #1133) @earnone
Add lazy regridding for wflow diagnostic (Pull request #1630) @bouweandela
Miles default domains to include lat=0 (Pull request #1626) @jhardenberg
Miles: selection of reference dataset based on experiment (Pull request #1632) @jhardenberg
New recipe/diagnostic: recipe_li17natcc.yml for Axels GMD Paper (Pull request #1567) @katjaweigel
New recipe/diagnostics: recipe_deangelis_for_gmdpart4.yml for Axels GMD Paper (Pull request #1576) @katjaweigel
EWaterCycle: Add recipe to prepare input for LISFLOOD (Pull request #1298) @sverhoeven
Use area weighted regridding in wflow diagnostic (Pull request #1643) @bouweandela
Workaround for permetrics recipe until Iris3 (Pull request #1674) @mattiarighi
C3S_511_MPQB_bas-features (Pull request #1465) @bascrezee
Additional Land perfmetrics (Pull request #1641) @bettina-gier
Necessary diagnostic from eyring06jgr for the release of version2 (Pull request #1686) @hb326
Drought characteristics based on Martin2018 and SPI for gmd paper (Pull request #1689) @katjaweigel
Additional features and bugfixes for recipe anav13clim (Pull request #1723) @bettina-gier
Gmd laueretal2020 revisions (Pull request #1725) @axel-lauer
Wenzel16nature (Pull request #1692) @zechlau
Add mask albedolandcover (Pull request #1673) @bascrezee
IPCC AR5 fig. 9.3 (seasonality) (Pull request #1726) @axel-lauer
Added additional emergent constraints on ECS (Pull request #1585) @schlunma
A diagnostic to evaluate the turnover times of land ecosystem carbon (Pull request #1395) koir-su
Removed multi_model_statistics step in recipe_oceans_example.yml as a workaround (Pull request #1779) @valeriupredoi
Documentation#
Extend getting started instructions to obtain config-user.yml (Pull request #1642) @Peter9192
Extend information about native6 support on RTD (Pull request #1652) @Peter9192
Update citation of ESMValTool paper in the doc (Pull request #1664) @mattiarighi
Updated references to documentation (now docs.esmvaltool.org) (Pull request #1679) @axel-lauer
Replace dead link with ESGF link. (Pull request #1681) @mattiarighi
Add all European grants to Zenodo (Pull request #1682) @bouweandela
Update Sphinx to v3 or later (Pull request #1685) @bouweandela
Small fix to number of models in ensclus documentation (Pull request #1691) @jhardenberg
Move draft_release_notes.py from ESMValCore to here and update (Pull request #1701) @bouweandela
Improve the installation instructions (Pull request #1634) @valeriupredoi
Improve description of how to implement provenance in diagnostic (Pull request #1750) @SarahAlidoost
Update command line interface documentation and add links to ESMValCore configuration documentation (Pull request #1776) @bouweandela
Documentation on how to find shapefiles for hydrology recipes (Pull request #1777) @JaroCamphuijsen
Improvements#
Pin flake8<3.8.0 (Pull request #1635) @valeriupredoi
Update conda package path in more places (Pull request #1636) @bouweandela
Remove curly brackets around issue number in pull request template (Pull request #1637) @bouweandela
Fix style issue in test (Pull request #1639) @bouweandela
Update Codacy badges (Pull request #1662) @bouweandela
Support extra installation methods in R (Pull request #1360) Javier Vegas-Regidor
Add ncdf4.helpers package as a dependency again (Pull request #1678) @bouweandela
Speed up conda installation (Pull request #1677) @bouweandela
Update CMORizers and recipes for ESMValCore v2.0.0 (Pull request #1699) @SarahAlidoost
Update setup.py for PyPI package (Pull request #1700) @bouweandela
Cleanup recipe headers before the release (Pull request #1740) @mattiarighi
Add colortables as esmvaltool subcommand (Pull request #1666) Javier Vegas-Regidor
Increase version to v2.0.0 (Pull request #1756) @bouweandela
Update job script (Pull request #1757) @mattiarighi
Read authors and description from .zenodo.json (Pull request #1758) @bouweandela
Update docker recipe to install from source (Pull request #1651) Javier Vegas-Regidor
Observational and re-analysis dataset support#
Cmorize aphro ma (Pull request #1555) @mwjury
Respectable testing for cmorizers/obs/utilities.py and cmorizers/obs/cmorize_obs.py (Pull request #1517) @valeriupredoi
Fix start year in recipe_check_obs (Pull request #1638) @mattiarighi
Cmorizer for the PERSIANN-CDR precipitation data (Pull request #1633) @hb326
Cmorize eobs (Pull request #1554) @mwjury
Update download cds satellite lai fapar (Pull request #1654) @bascrezee
Added monthly mean vars (ta, va, zg) to era5 cmorizer via recipe (Pull request #1644) @egalytska
Make format time check more flexible (Pull request #1661) @mattiarighi
Exclude od550lt1aer from recipe_check_obs.yml (Pull request #1720) @mattiarighi
PERSIANN-CDR cmorizer update: adding the capability to save monthly mean files (Pull request #1728) @hb326
Add standard_name attribute to lon and lat in cmorize_obs_esacci_oc.py (Pull request #1760) @tomaslovato
Allow for incomplete months on daily frequency in cmorizer ncl utilities (Pull request #1754) @mattiarighi
Fix AURA-TES cmorizer (Pull request #1766) @mattiarighi
v2.0.0b4#
This release includes
Bug fixes#
Fix HALOE plev coordinate (Pull request #1590) @mattiarighi
Fix tro3 units in HALOE (Pull request #1591) @mattiarighi
Diagnostics#
Applicate sea ice negative feedback (Pull request #1299) Javier Vegas-Regidor
Add Russell18jgr ocean diagnostics (Pull request #1592) @bouweandela
Refactor marrmot recipe and diagnostic to use ERA5 daily data made by new cmorizer (Pull request #1600) @SarahAlidoost
In recipe_wflow, use daily ERA5 data from the new cmorizer. (Pull request #1599) @Peter9192
In wflow diagnostic, calculate PET after(!) interpolation and lapse rate correction (Pull request #1618) @jeromaerts
Fixed wenz14jgr (Pull request #1562) @zechlau
Update portrait_plot.ncl (Pull request #1625) @bettina-gier
Documentation#
Restructure documentation (Pull request #1587) @bouweandela
Add more links to documentation (Pull request #1595) @bouweandela
Update links in readme (Pull request #1598) @bouweandela
Minor improvements to installation documentation (Pull request #1608) @bouweandela
Add info for new mailing list to documentation. (Pull request #1607) @bjoernbroetz
Update making a release documentation (Pull request #1627) @bouweandela
Improvements#
Avoid broken pytest-html plugin (Pull request #1583) @bouweandela
Remove reference section in config-references.yml (Pull request #1545) @SarahAlidoost
Various improvements to development infrastructure (Pull request #1570) @bouweandela
Install scikit-learn from conda, remove libunwind as a direct dependency (Pull request #1611) @valeriupredoi
Create conda subpackages and enable tests (Pull request #1624) @bouweandela
Observational and re-analysis dataset support#
Cmorizer for HALOE (Pull request #1581) @mattiarighi
Add CMORizer for CT2019 (Pull request #1604) @schlunma
For older releases, see the release notes on ESMValGroup/ESMValTool.