From 7b712ccd5ec5060bb7d6b6bf8cd958a7a7498a28 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 6 Jun 2024 17:12:55 +0100 Subject: [PATCH 01/49] add autoapi gubbins to sonf.py --- doc/sphinx/source/conf.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 600eaa8253..54a33f234c 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -61,7 +61,7 @@ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ - 'sphinx.ext.autodoc', + # 'sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.extlinks', 'sphinx.ext.intersphinx', @@ -72,8 +72,11 @@ 'sphinx.ext.viewcode', 'sphinx.ext.napoleon', 'autodocsumm', + 'autoapi.extension', ] +autoapi_dirs = ['../esmvaltool'] + autodoc_default_options = { 'members': True, 'undoc-members': True, From 2623191bd0dc09f1f64946e0df5f42dc6ffd695f Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 6 Jun 2024 17:13:15 +0100 Subject: [PATCH 02/49] first draft of readthedocs config file for autoapi --- .readthedocs.yaml | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 071686d373..06f811c8a6 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -9,24 +9,7 @@ version: 2 build: os: ubuntu-22.04 tools: - # updated and deployed from Aug 1, 2023 - python: "mambaforge-22.9" - jobs: - pre_create_environment: - # update mamba just in case - - mamba update --yes --quiet --name=base mamba 'zstd=1.5.2' - - mamba --version - - mamba list --name=base - post_create_environment: - - conda run -n ${CONDA_DEFAULT_ENV} mamba list - # use conda run executable wrapper to have all env variables - - conda run -n ${CONDA_DEFAULT_ENV} mamba --version - - conda run -n ${CONDA_DEFAULT_ENV} pip install . --no-deps - -# Declare the requirements required to build your docs -conda: - environment: - environment.yml + python: "3.12" # Build documentation in the doc directory with Sphinx sphinx: @@ -36,3 +19,10 @@ sphinx: # If using Sphinx, optionally build your docs in additional formats such as PDF formats: - pdf + +python: + install: + - method: pip + path: . + extra_requirements: + - sphinx-autoapi From 53e81a34143e940298f47bd3f1af2258f7a1f8a5 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 6 Jun 2024 17:22:20 +0100 Subject: [PATCH 03/49] actually remove the pip bit --- .readthedocs.yaml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 06f811c8a6..89a22ceec5 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -19,10 +19,3 @@ sphinx: # If using Sphinx, optionally build your docs in additional formats such as PDF formats: - pdf - -python: - install: - - method: pip - path: . - extra_requirements: - - sphinx-autoapi From fe20722569482d60a8f4e7c68a7a3965140aaf2f Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 13:25:59 +0100 Subject: [PATCH 04/49] correct path to source code --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 54a33f234c..dd142d1721 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -75,7 +75,7 @@ 'autoapi.extension', ] -autoapi_dirs = ['../esmvaltool'] +autoapi_dirs = ['../../../esmvaltool'] autodoc_default_options = { 'members': True, From 55ae5a706b556adccd17a15f284da94d61727ebd Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 14:03:59 +0100 Subject: [PATCH 05/49] try with a temporary version placeholder --- doc/sphinx/source/conf.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index dd142d1721..9d6e71464b 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -23,7 +23,8 @@ root = Path(__file__).absolute().parent.parent.parent.parent sys.path.insert(0, str(root)) -from esmvaltool import __version__ +# from esmvaltool import __version__ +__version__ = "2.10.0" # -- RTD configuration ------------------------------------------------ From 1cf623c5d6a74c5115a406099fee9a36fd3704bf Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 14:05:55 +0100 Subject: [PATCH 06/49] rm autodocsumm --- doc/sphinx/source/conf.py | 1 - 1 file changed, 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 9d6e71464b..ac2e3c7432 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -72,7 +72,6 @@ 'sphinx.ext.ifconfig', 'sphinx.ext.viewcode', 'sphinx.ext.napoleon', - 'autodocsumm', 'autoapi.extension', ] From 4001b3fbe4dbd063ef91f877d0a82364d4f37df1 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 14:08:28 +0100 Subject: [PATCH 07/49] duh correct RTD syntax for extension --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index ac2e3c7432..6b32be97b0 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -72,7 +72,7 @@ 'sphinx.ext.ifconfig', 'sphinx.ext.viewcode', 'sphinx.ext.napoleon', - 'autoapi.extension', + 'sphinx.ext.autoapi', ] autoapi_dirs = ['../../../esmvaltool'] From bf35f944c079081013e8a1f7fa3b3a02fc3dcb18 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 14:22:09 +0100 Subject: [PATCH 08/49] add independent requirements file --- doc/sphinx/source/requirements.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 doc/sphinx/source/requirements.txt diff --git a/doc/sphinx/source/requirements.txt b/doc/sphinx/source/requirements.txt new file mode 100644 index 0000000000..44a988dcd9 --- /dev/null +++ b/doc/sphinx/source/requirements.txt @@ -0,0 +1 @@ +sphinx-autoapi From 9384eb9bb58207d3663ecc2d66921b31297b39cc Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 14:22:24 +0100 Subject: [PATCH 09/49] revert extension name --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 6b32be97b0..ac2e3c7432 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -72,7 +72,7 @@ 'sphinx.ext.ifconfig', 'sphinx.ext.viewcode', 'sphinx.ext.napoleon', - 'sphinx.ext.autoapi', + 'autoapi.extension', ] autoapi_dirs = ['../../../esmvaltool'] From 26e6edb68780115244bf11a8fb6f7f7f3942c2cd Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 14:23:51 +0100 Subject: [PATCH 10/49] call the autoapi module installation from a separate requirements file --- .readthedocs.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 89a22ceec5..6d5be7f948 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -19,3 +19,8 @@ sphinx: # If using Sphinx, optionally build your docs in additional formats such as PDF formats: - pdf + +# Install auotoapi requirement +python: + install: + - requirements: doc/sphinx/source/requirements.txt From 1b1744882194582f499726c0015f3e740bc72ae6 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 14:26:36 +0100 Subject: [PATCH 11/49] add theme dep to requirements --- doc/sphinx/source/requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/sphinx/source/requirements.txt b/doc/sphinx/source/requirements.txt index 44a988dcd9..69b055fdf2 100644 --- a/doc/sphinx/source/requirements.txt +++ b/doc/sphinx/source/requirements.txt @@ -1 +1,2 @@ +pydata-sphinx-theme sphinx-autoapi From 9e41e1b1d743004876e981a0eae8a546868b0b81 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 14:47:39 +0100 Subject: [PATCH 12/49] throw some configuration at autoapi --- doc/sphinx/source/conf.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index ac2e3c7432..c980445770 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -75,8 +75,14 @@ 'autoapi.extension', ] +# Autoapi configuration autoapi_dirs = ['../../../esmvaltool'] +autoapi_type = 'python' +autoapi_file_pattern = "*.py" +autoapi_options = ['members', 'private-members', 'show-inheritance', + 'show-module-summary', 'special-members', 'imported-members', ] +# Autodoc configuration (obsolete) autodoc_default_options = { 'members': True, 'undoc-members': True, From 3cb33efc06f89419828f032b5c1e8515b7c79009 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 15:00:18 +0100 Subject: [PATCH 13/49] exclude diag_scripts --- doc/sphinx/source/conf.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index c980445770..cbe3d102e4 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -81,6 +81,7 @@ autoapi_file_pattern = "*.py" autoapi_options = ['members', 'private-members', 'show-inheritance', 'show-module-summary', 'special-members', 'imported-members', ] +exclude_patterns = ['diag_scripts'] # Autodoc configuration (obsolete) autodoc_default_options = { @@ -128,7 +129,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = [] +# exclude_patterns = [] # The reST default role (used for this markup: `text`) to use for all # documents. From 9324b2591acd3627ae2da8ae6529e96ceaea47b1 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 15:17:29 +0100 Subject: [PATCH 14/49] add only select api elements to be documented --- doc/sphinx/source/conf.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index cbe3d102e4..08f82c66e7 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -76,12 +76,20 @@ ] # Autoapi configuration -autoapi_dirs = ['../../../esmvaltool'] +autoapi_dirs = [ + '../../../esmvaltool/diag_scripts/emergent_constraints', + '../../../esmvaltool/diag_scripts/mlr', + '../../../esmvaltool/diag_scripts/monitor', + '../../../esmvaltool/diag_scripts/ocean', + '../../../esmvaltool/diag_scripts/shared', + '../../../esmvaltool/diag_scripts/psyplot_diag.py', + '../../../esmvaltool/diag_scripts/seaborn_diag.py', +] autoapi_type = 'python' autoapi_file_pattern = "*.py" autoapi_options = ['members', 'private-members', 'show-inheritance', 'show-module-summary', 'special-members', 'imported-members', ] -exclude_patterns = ['diag_scripts'] +exclude_patterns = [] # Autodoc configuration (obsolete) autodoc_default_options = { From bd12331b8585dd7f1e7f623b1f6f2fd9bf92e4e7 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 15:34:59 +0100 Subject: [PATCH 15/49] comment out all autodoc settings --- doc/sphinx/source/conf.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 08f82c66e7..51dd77a268 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -92,13 +92,13 @@ exclude_patterns = [] # Autodoc configuration (obsolete) -autodoc_default_options = { - 'members': True, - 'undoc-members': True, - 'inherited-members': True, - 'show-inheritance': True, - 'autosummary': True, -} +# autodoc_default_options = { +# 'members': True, +# 'undoc-members': True, +# 'inherited-members': True, +# 'show-inheritance': True, +# 'autosummary': True, +# } # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] From 09b81addbdca121226abedec30c00d71606b1c60 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 16:04:51 +0100 Subject: [PATCH 16/49] turn off generation of index.rst and set the autoapi root dir --- doc/sphinx/source/conf.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 51dd77a268..35dbd1eb49 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -89,6 +89,8 @@ autoapi_file_pattern = "*.py" autoapi_options = ['members', 'private-members', 'show-inheritance', 'show-module-summary', 'special-members', 'imported-members', ] +autoapi_add_toctree_entry = False # remove the index.rst +autoapi_root = 'api' # where the API docs live; rel to source exclude_patterns = [] # Autodoc configuration (obsolete) From 5b7d23d1eb105c39583198b4a2f0aa2ff39035e2 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 16:13:52 +0100 Subject: [PATCH 17/49] remove that silly index.rst already! --- doc/sphinx/source/conf.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 35dbd1eb49..fe530e7a6d 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -85,12 +85,12 @@ '../../../esmvaltool/diag_scripts/psyplot_diag.py', '../../../esmvaltool/diag_scripts/seaborn_diag.py', ] +autoapi_add_toctree_entry = False # remove the index.rst +autoapi_root = 'api' # where the API docs live; rel to source autoapi_type = 'python' autoapi_file_pattern = "*.py" autoapi_options = ['members', 'private-members', 'show-inheritance', 'show-module-summary', 'special-members', 'imported-members', ] -autoapi_add_toctree_entry = False # remove the index.rst -autoapi_root = 'api' # where the API docs live; rel to source exclude_patterns = [] # Autodoc configuration (obsolete) From 5eb218665ef71fe779b3121dd0b15843786619d5 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 16:22:59 +0100 Subject: [PATCH 18/49] maybe we want that index.rst after all --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index fe530e7a6d..3187d5035d 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -85,7 +85,7 @@ '../../../esmvaltool/diag_scripts/psyplot_diag.py', '../../../esmvaltool/diag_scripts/seaborn_diag.py', ] -autoapi_add_toctree_entry = False # remove the index.rst + autoapi_root = 'api' # where the API docs live; rel to source autoapi_type = 'python' autoapi_file_pattern = "*.py" From 8a2dfa2504cdccfceb30ed5f94a46546f5b74489 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 16:31:07 +0100 Subject: [PATCH 19/49] try shove a sys appended path for autodoc --- doc/sphinx/source/conf.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 3187d5035d..5a94c52a81 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -22,6 +22,7 @@ # documentation root, use os.path.abspath to make it absolute, like shown here. root = Path(__file__).absolute().parent.parent.parent.parent sys.path.insert(0, str(root)) +sys.path.append(root) # from esmvaltool import __version__ __version__ = "2.10.0" @@ -62,7 +63,7 @@ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ - # 'sphinx.ext.autodoc', + 'sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.extlinks', 'sphinx.ext.intersphinx', @@ -93,14 +94,14 @@ 'show-module-summary', 'special-members', 'imported-members', ] exclude_patterns = [] -# Autodoc configuration (obsolete) -# autodoc_default_options = { -# 'members': True, -# 'undoc-members': True, -# 'inherited-members': True, -# 'show-inheritance': True, -# 'autosummary': True, -# } +# Autodoc configuration +autodoc_default_options = { + 'members': True, + 'undoc-members': True, + 'inherited-members': True, + 'show-inheritance': True, + 'autosummary': True, +} # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] From e75d0c310b950bb7f23566d43987cfe0f15a0974 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 16:37:35 +0100 Subject: [PATCH 20/49] try shove a sys appended path for autodoc --- doc/sphinx/source/conf.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 5a94c52a81..de6eaf6396 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -21,8 +21,11 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. root = Path(__file__).absolute().parent.parent.parent.parent +esmvaltool_root = Path(__file__).absolute().parent.parent.parent sys.path.insert(0, str(root)) -sys.path.append(root) +sys.path.insert(0, str(esmvaltool_root)) +sys.path.append(str(root)) +sys.path.append(str(esmvaltool_root)) # from esmvaltool import __version__ __version__ = "2.10.0" From b22ca2729c904bc9286b43fbd377a09b423f57a5 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 11 Jun 2024 16:41:20 +0100 Subject: [PATCH 21/49] fix that terrible previous commit --- doc/sphinx/source/conf.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index de6eaf6396..c6a7448bd5 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -21,11 +21,10 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. root = Path(__file__).absolute().parent.parent.parent.parent -esmvaltool_root = Path(__file__).absolute().parent.parent.parent sys.path.insert(0, str(root)) -sys.path.insert(0, str(esmvaltool_root)) +sys.path.insert(0, os.path.join(str(root), "esmvaltool")) sys.path.append(str(root)) -sys.path.append(str(esmvaltool_root)) +sys.path.append(os.path.join(str(root), "esmvaltool")) # from esmvaltool import __version__ __version__ = "2.10.0" From f07c760f156ac82e3a262d638c3b465087b06000 Mon Sep 17 00:00:00 2001 From: Bouwe Andela Date: Wed, 12 Jun 2024 10:41:01 +0200 Subject: [PATCH 22/49] Disable autodoc and select only wanted submodules with autoapi --- ...tool.diag_scripts.emergent_constraints.rst | 34 ---------- .../cox18nature.rst | 9 --- .../ecs_scatter.rst | 9 --- .../init.rst | 6 -- .../multiple_constraints.rst | 9 --- .../single_constraint.rst | 9 --- .../api/esmvaltool.diag_scripts.mlr.rst | 63 ----------------- .../custom_sklearn.rst | 10 --- .../evaluate_residuals.rst | 9 --- .../api/esmvaltool.diag_scripts.mlr/init.rst | 6 -- .../api/esmvaltool.diag_scripts.mlr/main.rst | 9 --- .../api/esmvaltool.diag_scripts.mlr/mmm.rst | 9 --- .../models.gbr_base.rst | 6 -- .../models.gbr_sklearn.rst | 6 -- .../models.gbr_xgboost.rst | 7 -- .../models.gpr_sklearn.rst | 6 -- .../models.huber.rst | 6 -- .../models.krr.rst | 6 -- .../models.lasso.rst | 6 -- .../models.lasso_cv.rst | 6 -- .../models.lasso_lars_cv.rst | 6 -- .../models.linear.rst | 6 -- .../models.linear_base.rst | 6 -- .../models.rfr.rst | 6 -- .../models.ridge.rst | 6 -- .../models.ridge_cv.rst | 6 -- .../esmvaltool.diag_scripts.mlr/models.rst | 6 -- .../models.svr.rst | 6 -- .../api/esmvaltool.diag_scripts.mlr/plot.rst | 9 --- .../postprocess.rst | 9 --- .../preprocess.rst | 9 --- .../rescale_with_emergent_constraint.rst | 9 --- .../api/esmvaltool.diag_scripts.monitor.rst | 32 --------- .../compute_eofs.rst | 9 --- .../monitor.rst | 9 --- .../monitor_base.rst | 6 -- .../multi_datasets.rst | 9 --- .../api/esmvaltool.diag_scripts.ocean.rst | 21 ------ .../esmvaltool.diag_scripts.psyplot_diag.rst | 9 --- .../esmvaltool.diag_scripts.seaborn_diag.rst | 9 --- .../api/esmvaltool.diag_scripts.shared.rst | 18 ----- doc/sphinx/source/api/esmvaltool.rst | 31 --------- doc/sphinx/source/conf.py | 68 ++++++++++--------- doc/sphinx/source/gensidebar.py | 2 +- 44 files changed, 37 insertions(+), 501 deletions(-) delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/cox18nature.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/ecs_scatter.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/init.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/multiple_constraints.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/single_constraint.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/custom_sklearn.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/evaluate_residuals.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/init.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/main.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/mmm.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_base.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_sklearn.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_xgboost.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gpr_sklearn.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.huber.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.krr.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso_cv.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso_lars_cv.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.linear.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.linear_base.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.rfr.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.ridge.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.ridge_cv.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.svr.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/plot.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/postprocess.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/preprocess.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/rescale_with_emergent_constraint.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.monitor.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/compute_eofs.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/monitor.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/monitor_base.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/multi_datasets.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.ocean.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.psyplot_diag.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.seaborn_diag.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.diag_scripts.shared.rst delete mode 100644 doc/sphinx/source/api/esmvaltool.rst diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints.rst deleted file mode 100644 index 24c5031788..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints.rst +++ /dev/null @@ -1,34 +0,0 @@ -.. _api.esmvaltool.diag_scripts.emergent_constraints: - -Emergent constraints diagnostics -================================ - -This module provides various tools to evaluate emergent constraints for -arbitrary input variables. - - -Examples --------- - -* :ref:`recipe_ecs_scatter` -* :ref:`recipes_cox18nature` -* :ref:`recipes_schlund20esd` - - -Diagnostic scripts ------------------- -.. toctree:: - :maxdepth: 1 - - esmvaltool.diag_scripts.emergent_constraints/cox18nature - esmvaltool.diag_scripts.emergent_constraints/ecs_scatter - esmvaltool.diag_scripts.emergent_constraints/multiple_constraints - esmvaltool.diag_scripts.emergent_constraints/single_constraint - - -Auxiliary scripts ------------------ -.. toctree:: - :maxdepth: 1 - - esmvaltool.diag_scripts.emergent_constraints/init diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/cox18nature.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/cox18nature.rst deleted file mode 100644 index d513f8d310..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/cox18nature.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.emergent_constraints.cox18nature: - -Emergent constraint on ECS from global temperature variability -============================================================== - -.. automodule:: esmvaltool.diag_scripts.emergent_constraints.cox18nature - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/ecs_scatter.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/ecs_scatter.rst deleted file mode 100644 index da7e5dcf9c..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/ecs_scatter.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.emergent_constraints.ecs_scatter: - -Calculation of emergent constraints on ECS -========================================== - -.. automodule:: esmvaltool.diag_scripts.emergent_constraints.ecs_scatter - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/init.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/init.rst deleted file mode 100644 index 7e5b86e816..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/init.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.emergent_constraints.init: - -Auxiliary functions for emergent constraints scripts -==================================================== - -.. automodule:: esmvaltool.diag_scripts.emergent_constraints diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/multiple_constraints.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/multiple_constraints.rst deleted file mode 100644 index e007d4b0df..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/multiple_constraints.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.emergent_constraints.multiple_constraints: - -Evaluate multiple emergent constraints simultaneously -===================================================== - -.. automodule:: esmvaltool.diag_scripts.emergent_constraints.multiple_constraints - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/single_constraint.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/single_constraint.rst deleted file mode 100644 index 9fd4741181..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.emergent_constraints/single_constraint.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.emergent_constraints.single_constraint: - -Evaluate single emergent constraint -=================================== - -.. automodule:: esmvaltool.diag_scripts.emergent_constraints.single_constraint - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr.rst deleted file mode 100644 index 65959a659f..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr.rst +++ /dev/null @@ -1,63 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr: - -Machine Learning Regression (MLR) diagnostics -============================================= - -This module provides various tools to create and evaluate MLR models for -arbitrary input variables. - - -Examples --------- - -* :ref:`recipes_schlund20jgr`: Use Gradient Boosted Regression Tree (GBRT) - algorithm to constrain projected Gross Primary Production (GPP) in RCP 8.5 - scenario using observations of process-based predictors. - - -Diagnostic scripts ------------------- -.. toctree:: - :maxdepth: 1 - - esmvaltool.diag_scripts.mlr/evaluate_residuals - esmvaltool.diag_scripts.mlr/main - esmvaltool.diag_scripts.mlr/mmm - esmvaltool.diag_scripts.mlr/plot - esmvaltool.diag_scripts.mlr/postprocess - esmvaltool.diag_scripts.mlr/preprocess - esmvaltool.diag_scripts.mlr/rescale_with_emergent_constraint - - -Auxiliary scripts ------------------ -.. toctree:: - :maxdepth: 1 - - esmvaltool.diag_scripts.mlr/init - esmvaltool.diag_scripts.mlr/custom_sklearn - esmvaltool.diag_scripts.mlr/models - esmvaltool.diag_scripts.mlr/models.gbr_base - esmvaltool.diag_scripts.mlr/models.linear_base - - -.. _availableMLRModels: - -Available MLR models --------------------- -.. toctree:: - :maxdepth: 1 - - esmvaltool.diag_scripts.mlr/models.gbr_sklearn - esmvaltool.diag_scripts.mlr/models.gbr_xgboost - esmvaltool.diag_scripts.mlr/models.gpr_sklearn - esmvaltool.diag_scripts.mlr/models.huber - esmvaltool.diag_scripts.mlr/models.krr - esmvaltool.diag_scripts.mlr/models.lasso - esmvaltool.diag_scripts.mlr/models.lasso_cv - esmvaltool.diag_scripts.mlr/models.lasso_lars_cv - esmvaltool.diag_scripts.mlr/models.linear - esmvaltool.diag_scripts.mlr/models.rfr - esmvaltool.diag_scripts.mlr/models.ridge - esmvaltool.diag_scripts.mlr/models.ridge_cv - esmvaltool.diag_scripts.mlr/models.svr diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/custom_sklearn.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/custom_sklearn.rst deleted file mode 100644 index 48078b9a39..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/custom_sklearn.rst +++ /dev/null @@ -1,10 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.custom_sklearn: - -Custom extensions of sklearn functionalities -============================================ - -.. automodule:: esmvaltool.diag_scripts.mlr.custom_sklearn - :no-autosummary: -.. - enabling autosummary with autodocsumm 0.2.8 gives a warning message: - WARNING: autosummary: failed to import AdvancedPipeline.steps. diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/evaluate_residuals.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/evaluate_residuals.rst deleted file mode 100644 index 72327819ff..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/evaluate_residuals.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.evaluate_residuals: - -Evaluate residuals -================== - -.. automodule:: esmvaltool.diag_scripts.mlr.evaluate_residuals - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/init.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/init.rst deleted file mode 100644 index 681fb512e2..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/init.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.init: - -Auxiliary functions for MLR scripts -=================================== - -.. automodule:: esmvaltool.diag_scripts.mlr diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/main.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/main.rst deleted file mode 100644 index 5dc174794d..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/main.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.main: - -MLR main diagnostic -=================== - -.. automodule:: esmvaltool.diag_scripts.mlr.main - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/mmm.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/mmm.rst deleted file mode 100644 index 466171a70e..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/mmm.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.mmm: - -Multi-model means (MMM) -======================= - -.. automodule:: esmvaltool.diag_scripts.mlr.mmm - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_base.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_base.rst deleted file mode 100644 index 62d5cd038f..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_base.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.gbr_base: - -Base class for Gradient Boosted Regression models -================================================= - -.. automodule:: esmvaltool.diag_scripts.mlr.models.gbr_base diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_sklearn.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_sklearn.rst deleted file mode 100644 index 6a2be70b12..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_sklearn.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.gbr_sklearn: - -Gradient Boosted Regression Trees (sklearn implementation) -========================================================== - -.. automodule:: esmvaltool.diag_scripts.mlr.models.gbr_sklearn diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_xgboost.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_xgboost.rst deleted file mode 100644 index 0e1abef836..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gbr_xgboost.rst +++ /dev/null @@ -1,7 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.gbr_xgboost: - - -Gradient Boosted Regression Trees (xgboost implementation) -========================================================== - -.. automodule:: esmvaltool.diag_scripts.mlr.models.gbr_xgboost diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gpr_sklearn.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gpr_sklearn.rst deleted file mode 100644 index 6d5253f031..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.gpr_sklearn.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.gpr_sklearn: - -Gaussian Process Regression (sklearn implementation) -==================================================== - -.. automodule:: esmvaltool.diag_scripts.mlr.models.gpr_sklearn diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.huber.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.huber.rst deleted file mode 100644 index 6617dc31fa..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.huber.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.huber: - -Huber Regression -================ - -.. automodule:: esmvaltool.diag_scripts.mlr.models.huber diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.krr.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.krr.rst deleted file mode 100644 index 2ef3437e05..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.krr.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.krr: - -Kernel Ridge Regression -======================= - -.. automodule:: esmvaltool.diag_scripts.mlr.models.krr diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso.rst deleted file mode 100644 index 594e1fb6f8..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.lasso: - -LASSO Regression -================ - -.. automodule:: esmvaltool.diag_scripts.mlr.models.lasso diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso_cv.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso_cv.rst deleted file mode 100644 index 5613bcae9b..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso_cv.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.lasso_cv: - -LASSO Regression with built-in CV -================================= - -.. automodule:: esmvaltool.diag_scripts.mlr.models.lasso_cv diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso_lars_cv.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso_lars_cv.rst deleted file mode 100644 index 495c130c6c..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.lasso_lars_cv.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.lasso_lars_cv: - -LASSO Regression (using Least-angle Regression algorithm) with built-in CV -========================================================================== - -.. automodule:: esmvaltool.diag_scripts.mlr.models.lasso_lars_cv diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.linear.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.linear.rst deleted file mode 100644 index 16afeeb7ae..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.linear.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.linear: - -Linear Regression -================= - -.. automodule:: esmvaltool.diag_scripts.mlr.models.linear diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.linear_base.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.linear_base.rst deleted file mode 100644 index a1b3513b9a..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.linear_base.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.linear_base: - -Base class for Linear models -============================ - -.. automodule:: esmvaltool.diag_scripts.mlr.models.linear_base diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.rfr.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.rfr.rst deleted file mode 100644 index 4723ec4ffd..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.rfr.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.rfr: - -Random Forest Regression -======================== - -.. automodule:: esmvaltool.diag_scripts.mlr.models.rfr diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.ridge.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.ridge.rst deleted file mode 100644 index c9f2ca4baf..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.ridge.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.ridge: - -Ridge Regression -================ - -.. automodule:: esmvaltool.diag_scripts.mlr.models.ridge diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.ridge_cv.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.ridge_cv.rst deleted file mode 100644 index 9a5ea0f378..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.ridge_cv.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.ridge_cv: - -Ridge Regression with built-in CV -================================= - -.. automodule:: esmvaltool.diag_scripts.mlr.models.ridge_cv diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.rst deleted file mode 100644 index f3c0ca6969..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models: - -MLRModel base class -=================== - -.. automodule:: esmvaltool.diag_scripts.mlr.models diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.svr.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.svr.rst deleted file mode 100644 index 5486707e59..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/models.svr.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.models.svr: - -Support Vector Regression -========================= - -.. automodule:: esmvaltool.diag_scripts.mlr.models.svr diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/plot.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/plot.rst deleted file mode 100644 index c7f4b52338..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/plot.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.plot: - -Plotting functionalities -======================== - -.. automodule:: esmvaltool.diag_scripts.mlr.plot - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/postprocess.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/postprocess.rst deleted file mode 100644 index af23643706..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/postprocess.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.postprocess: - -Postprocessing functionalities -============================== - -.. automodule:: esmvaltool.diag_scripts.mlr.postprocess - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/preprocess.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/preprocess.rst deleted file mode 100644 index 5990d2cd6c..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/preprocess.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.preprocess: - -Preprocessing functionalities -============================= - -.. automodule:: esmvaltool.diag_scripts.mlr.preprocess - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/rescale_with_emergent_constraint.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/rescale_with_emergent_constraint.rst deleted file mode 100644 index f8e933825e..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.mlr/rescale_with_emergent_constraint.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.mlr.rescale_with_emergent_constraint: - -Rescale data with emergent constraints -======================================= - -.. automodule:: esmvaltool.diag_scripts.mlr.rescale_with_emergent_constraint - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor.rst deleted file mode 100644 index 3b1e3e6548..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor.rst +++ /dev/null @@ -1,32 +0,0 @@ -.. _api.esmvaltool.diag_scripts.monitor: - -Monitor Diagnostic -================== - -This module provides various tools to monitor climate model simulations. -It can be used to plot arbitrary variables from arbitrary datasets. - - -Examples --------- - -* :ref:`recipe_monitor` -* :ref:`recipe_model_evaluation` - - -Diagnostic scripts ------------------- -.. toctree:: - :maxdepth: 1 - - esmvaltool.diag_scripts.monitor/monitor - esmvaltool.diag_scripts.monitor/compute_eofs - esmvaltool.diag_scripts.monitor/multi_datasets - - -Base class for monitoring diagnostics -------------------------------------- -.. toctree:: - :maxdepth: 1 - - esmvaltool.diag_scripts.monitor/monitor_base diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/compute_eofs.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/compute_eofs.rst deleted file mode 100644 index 0997ac1e7a..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/compute_eofs.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.monitor.compute_eofs: - -Monitoring diagnostic to plot EOF maps and associated PC timeseries -=================================================================== - -.. automodule:: esmvaltool.diag_scripts.monitor.compute_eofs - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/monitor.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/monitor.rst deleted file mode 100644 index 25d4a7da9b..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/monitor.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.monitor.monitor: - -Monitoring diagnostic to plot arbitrary preprocessor output -=========================================================== - -.. automodule:: esmvaltool.diag_scripts.monitor.monitor - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/monitor_base.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/monitor_base.rst deleted file mode 100644 index 0127a94963..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/monitor_base.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _api.esmvaltool.diag_scripts.monitor.monitor_base: - -Base class for monitoring diagnostics -===================================== - -.. automodule:: esmvaltool.diag_scripts.monitor.monitor_base diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/multi_datasets.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/multi_datasets.rst deleted file mode 100644 index dab4f07989..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.monitor/multi_datasets.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.monitor.multi_datasets: - -Monitoring diagnostic to show multiple datasets in one plot (incl. biases) -========================================================================== - -.. automodule:: esmvaltool.diag_scripts.monitor.multi_datasets - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.ocean.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.ocean.rst deleted file mode 100644 index 2c7d562239..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.ocean.rst +++ /dev/null @@ -1,21 +0,0 @@ -Ocean diagnostics toolkit -============================= - -Welcome to the API documentation for the ocean diagnostics tool kit. -This toolkit is built to assist in the evaluation of models of the ocean. - -This toolkit is part of ESMValTool v2. - -Author: Lee de Mora (PML) - ledm@pml.ac.uk - -.. toctree:: - -.. automodule:: esmvaltool.diag_scripts.ocean.diagnostic_maps -.. automodule:: esmvaltool.diag_scripts.ocean.diagnostic_maps_quad -.. automodule:: esmvaltool.diag_scripts.ocean.diagnostic_model_vs_obs -.. automodule:: esmvaltool.diag_scripts.ocean.diagnostic_profiles -.. automodule:: esmvaltool.diag_scripts.ocean.diagnostic_timeseries -.. automodule:: esmvaltool.diag_scripts.ocean.diagnostic_transects -.. automodule:: esmvaltool.diag_scripts.ocean.diagnostic_seaice -.. automodule:: esmvaltool.diag_scripts.ocean.diagnostic_tools diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.psyplot_diag.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.psyplot_diag.rst deleted file mode 100644 index 2dc463cc9f..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.psyplot_diag.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.psyplot_diag: - -Psyplot Diagnostic -================== - -.. automodule:: esmvaltool.diag_scripts.psyplot_diag - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.seaborn_diag.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.seaborn_diag.rst deleted file mode 100644 index d250d0aaaf..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.seaborn_diag.rst +++ /dev/null @@ -1,9 +0,0 @@ -.. _api.esmvaltool.diag_scripts.seaborn_diag: - -Seaborn Diagnostic -================== - -.. automodule:: esmvaltool.diag_scripts.seaborn_diag - :no-members: - :no-inherited-members: - :no-show-inheritance: diff --git a/doc/sphinx/source/api/esmvaltool.diag_scripts.shared.rst b/doc/sphinx/source/api/esmvaltool.diag_scripts.shared.rst deleted file mode 100644 index fcf50cf17c..0000000000 --- a/doc/sphinx/source/api/esmvaltool.diag_scripts.shared.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. _api_shared: - -Shared diagnostic script code -============================= - -.. automodule:: esmvaltool.diag_scripts.shared - - -Iris helper functions ---------------------- - -.. automodule:: esmvaltool.diag_scripts.shared.iris_helpers - - -Plotting --------- - -.. automodule:: esmvaltool.diag_scripts.shared.plot diff --git a/doc/sphinx/source/api/esmvaltool.rst b/doc/sphinx/source/api/esmvaltool.rst deleted file mode 100644 index b080b81ac8..0000000000 --- a/doc/sphinx/source/api/esmvaltool.rst +++ /dev/null @@ -1,31 +0,0 @@ -.. _api: - -ESMValTool Code API Documentation -================================= - -ESMValTool is mostly used as a command line tool. However, it is also possible -to use (parts of) ESMValTool as a library. This section documents the public -API of ESMValTool. - - -Shared Diagnostic Code ----------------------- - -.. toctree:: - :maxdepth: 1 - - esmvaltool.diag_scripts.shared - - -Diagnostic Scripts ------------------- - -.. toctree:: - :maxdepth: 1 - - esmvaltool.diag_scripts.emergent_constraints - esmvaltool.diag_scripts.mlr - esmvaltool.diag_scripts.monitor - esmvaltool.diag_scripts.ocean - esmvaltool.diag_scripts.psyplot_diag - esmvaltool.diag_scripts.seaborn_diag diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index c6a7448bd5..2097aee8d1 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -15,16 +15,7 @@ import os import sys from datetime import datetime -from pathlib import Path -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -root = Path(__file__).absolute().parent.parent.parent.parent -sys.path.insert(0, str(root)) -sys.path.insert(0, os.path.join(str(root), "esmvaltool")) -sys.path.append(str(root)) -sys.path.append(os.path.join(str(root), "esmvaltool")) # from esmvaltool import __version__ __version__ = "2.10.0" @@ -65,7 +56,7 @@ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ - 'sphinx.ext.autodoc', + 'autoapi.extension', 'sphinx.ext.doctest', 'sphinx.ext.extlinks', 'sphinx.ext.intersphinx', @@ -75,35 +66,48 @@ 'sphinx.ext.ifconfig', 'sphinx.ext.viewcode', 'sphinx.ext.napoleon', - 'autoapi.extension', ] # Autoapi configuration autoapi_dirs = [ - '../../../esmvaltool/diag_scripts/emergent_constraints', - '../../../esmvaltool/diag_scripts/mlr', - '../../../esmvaltool/diag_scripts/monitor', - '../../../esmvaltool/diag_scripts/ocean', - '../../../esmvaltool/diag_scripts/shared', - '../../../esmvaltool/diag_scripts/psyplot_diag.py', - '../../../esmvaltool/diag_scripts/seaborn_diag.py', + '../../..', ] autoapi_root = 'api' # where the API docs live; rel to source -autoapi_type = 'python' -autoapi_file_pattern = "*.py" -autoapi_options = ['members', 'private-members', 'show-inheritance', - 'show-module-summary', 'special-members', 'imported-members', ] -exclude_patterns = [] - -# Autodoc configuration -autodoc_default_options = { - 'members': True, - 'undoc-members': True, - 'inherited-members': True, - 'show-inheritance': True, - 'autosummary': True, -} +autoapi_options = [ + 'members', + 'undoc-members', + 'inherited-members', + 'special-members', + 'show-inheritance', + 'show-module-summary', +] + +def skip_submodules(app, what, name, obj, skip, options): + modules_to_document = [ + 'esmvaltool', + 'esmvaltool.diag_scripts', + ] + submodules_to_document = [ + f"esmvaltool.diag_scripts.{module}" for module in [ + 'emergent_constraints', + 'mlr', + 'monitor', + 'ocean', + 'shared', + 'psyplot_diag', + 'seaborn_diag', + ] + ] + + if not (name in modules_to_document or any(name.startswith(m) for m in submodules_to_document)): + skip = True + return skip + + +def setup(sphinx): + sphinx.connect("autoapi-skip-member", skip_submodules) + # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] diff --git a/doc/sphinx/source/gensidebar.py b/doc/sphinx/source/gensidebar.py index 970722ff0a..a48338dd58 100644 --- a/doc/sphinx/source/gensidebar.py +++ b/doc/sphinx/source/gensidebar.py @@ -66,7 +66,7 @@ def _header(project, text): _write("esmvaltool", "Making a recipe or diagnostic", "develop/index") _write("esmvaltool", "Contributing to the community", "community/index") _write("esmvaltool", "Utilities", "utils") - _write("esmvaltool", "Diagnostics API Reference", "api/esmvaltool") + _write("esmvaltool", "Diagnostics API Reference", "api/index") _write("esmvaltool", "Frequently Asked Questions", "faq") _write("esmvaltool", "Changelog", "changelog") _endl() From c546796e3bc2dd806811504c66c39a39a81f1851 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 15:24:53 +0100 Subject: [PATCH 23/49] remove autodocsumm and pydata sphinx theme dependencies --- environment.yml | 2 -- environment_osx.yml | 2 -- 2 files changed, 4 deletions(-) diff --git a/environment.yml b/environment.yml index c3d746f34f..425a4c953c 100644 --- a/environment.yml +++ b/environment.yml @@ -79,10 +79,8 @@ dependencies: - pytest-mock - pytest-xdist # Python packages needed for building docs - - autodocsumm >=0.2.2 - nbsphinx - sphinx >=6.1.3 - - pydata-sphinx-theme # Python packages needed for development - codespell - docformatter diff --git a/environment_osx.yml b/environment_osx.yml index 92eb9fed93..0b41775748 100644 --- a/environment_osx.yml +++ b/environment_osx.yml @@ -79,10 +79,8 @@ dependencies: - pytest-mock - pytest-xdist # Python packages needed for building docs - - autodocsumm >=0.2.2 - nbsphinx - sphinx >=6.1.3 - - pydata-sphinx-theme # Python packages needed for development - codespell - docformatter From 99018825a55bc0f5cdd4225614b7fbd78ab552c9 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 15:25:00 +0100 Subject: [PATCH 24/49] remove autodocsumm and pydata sphinx theme dependencies --- setup.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/setup.py b/setup.py index 5cb030b8a4..27a9a57733 100755 --- a/setup.py +++ b/setup.py @@ -90,10 +90,8 @@ ], # Documentation dependencies 'doc': [ - 'autodocsumm>=0.2.2', 'nbsphinx', 'sphinx>=6.1.3', - 'pydata-sphinx-theme', ], # Development dependencies # Use pip install -e .[develop] to install in development mode From 0c0059f98bcff0ee736a1c344bb9747edb070916 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 16:01:17 +0100 Subject: [PATCH 25/49] add ignore to autoapi congig --- doc/sphinx/source/conf.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 2097aee8d1..2b8f301c59 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -82,6 +82,8 @@ 'show-inheritance', 'show-module-summary', ] +autoapi_ignore = ['tests'] # brute ignore; to skip see below + def skip_submodules(app, what, name, obj, skip, options): modules_to_document = [ From c3d14fe9cdb43c58eb1ae0cc749bca0f8180de3f Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 16:14:03 +0100 Subject: [PATCH 26/49] correct wildcard --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 2b8f301c59..e533a92c5d 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -82,7 +82,7 @@ 'show-inheritance', 'show-module-summary', ] -autoapi_ignore = ['tests'] # brute ignore; to skip see below +autoapi_ignore = ['*tests*'] # brute ignore; to skip see below def skip_submodules(app, what, name, obj, skip, options): From 3ea9878a93afd9049ccb6f61644d227c1007142c Mon Sep 17 00:00:00 2001 From: Bouwe Andela Date: Wed, 12 Jun 2024 17:14:08 +0200 Subject: [PATCH 27/49] Add __init__.py files and add __all__ --- esmvaltool/__init__.py | 4 ++++ esmvaltool/cmorizers/__init__.py | 0 esmvaltool/cmorizers/data/download_scripts/__init__.py | 0 esmvaltool/cmorizers/mip_convert/__init__.py | 0 esmvaltool/diag_scripts/__init__.py | 10 ++++++++++ esmvaltool/diag_scripts/aerosols/__init__.py | 0 esmvaltool/diag_scripts/arctic_ocean/__init__.py | 0 esmvaltool/diag_scripts/climate_metrics/__init__.py | 0 esmvaltool/diag_scripts/cmorizers/__init__.py | 0 esmvaltool/diag_scripts/cmug_h2o/__init__.py | 0 esmvaltool/diag_scripts/cos22esd/__init__.py | 0 esmvaltool/diag_scripts/crem/__init__.py | 0 esmvaltool/diag_scripts/deangelis15nat/__init__.py | 0 esmvaltool/diag_scripts/droughtindex/__init__.py | 0 esmvaltool/diag_scripts/ensclus/__init__.py | 0 esmvaltool/diag_scripts/examples/__init__.py | 0 esmvaltool/diag_scripts/galytska23/__init__.py | 0 esmvaltool/diag_scripts/iht_toa/__init__.py | 0 esmvaltool/diag_scripts/impact/__init__.py | 0 esmvaltool/diag_scripts/ipcc_ar5/__init__.py | 0 esmvaltool/diag_scripts/kcs/__init__.py | 0 esmvaltool/diag_scripts/land_carbon_cycle/__init__.py | 0 esmvaltool/diag_scripts/landcover/__init__.py | 0 esmvaltool/diag_scripts/lst/__init__.py | 0 esmvaltool/diag_scripts/mpqb/__init__.py | 0 .../primavera/eady_growth_rate/__init__.py | 0 esmvaltool/diag_scripts/radiation_budget/__init__.py | 0 esmvaltool/diag_scripts/runoff_et/__init__.py | 0 .../diag_scripts/sea_surface_salinity/__init__.py | 0 esmvaltool/diag_scripts/seaice_drift/__init__.py | 0 esmvaltool/diag_scripts/seaice_feedback/__init__.py | 0 esmvaltool/diag_scripts/shapeselect/__init__.py | 0 .../diag_scripts/shared/plot/styles_python/__init__.py | 0 esmvaltool/diag_scripts/weighting/__init__.py | 0 esmvaltool/diag_scripts/weighting/climwip/__init__.py | 0 esmvaltool/diag_scripts/zmnam/__init__.py | 0 esmvaltool/utils/batch-jobs/__init__.py | 0 esmvaltool/utils/rose-cylc/__init__.py | 0 esmvaltool/utils/testing/recipe_settings/__init__.py | 0 esmvaltool/utils/testing/regression/__init__.py | 0 tests/unit/utils/__init__.py | 0 41 files changed, 14 insertions(+) create mode 100644 esmvaltool/cmorizers/__init__.py create mode 100644 esmvaltool/cmorizers/data/download_scripts/__init__.py create mode 100644 esmvaltool/cmorizers/mip_convert/__init__.py create mode 100644 esmvaltool/diag_scripts/aerosols/__init__.py create mode 100644 esmvaltool/diag_scripts/arctic_ocean/__init__.py create mode 100644 esmvaltool/diag_scripts/climate_metrics/__init__.py create mode 100644 esmvaltool/diag_scripts/cmorizers/__init__.py create mode 100644 esmvaltool/diag_scripts/cmug_h2o/__init__.py create mode 100644 esmvaltool/diag_scripts/cos22esd/__init__.py create mode 100644 esmvaltool/diag_scripts/crem/__init__.py create mode 100644 esmvaltool/diag_scripts/deangelis15nat/__init__.py create mode 100644 esmvaltool/diag_scripts/droughtindex/__init__.py create mode 100644 esmvaltool/diag_scripts/ensclus/__init__.py create mode 100644 esmvaltool/diag_scripts/examples/__init__.py create mode 100644 esmvaltool/diag_scripts/galytska23/__init__.py create mode 100644 esmvaltool/diag_scripts/iht_toa/__init__.py create mode 100644 esmvaltool/diag_scripts/impact/__init__.py create mode 100644 esmvaltool/diag_scripts/ipcc_ar5/__init__.py create mode 100644 esmvaltool/diag_scripts/kcs/__init__.py create mode 100644 esmvaltool/diag_scripts/land_carbon_cycle/__init__.py create mode 100644 esmvaltool/diag_scripts/landcover/__init__.py create mode 100644 esmvaltool/diag_scripts/lst/__init__.py create mode 100644 esmvaltool/diag_scripts/mpqb/__init__.py create mode 100644 esmvaltool/diag_scripts/primavera/eady_growth_rate/__init__.py create mode 100644 esmvaltool/diag_scripts/radiation_budget/__init__.py create mode 100644 esmvaltool/diag_scripts/runoff_et/__init__.py create mode 100644 esmvaltool/diag_scripts/sea_surface_salinity/__init__.py create mode 100644 esmvaltool/diag_scripts/seaice_drift/__init__.py create mode 100644 esmvaltool/diag_scripts/seaice_feedback/__init__.py create mode 100644 esmvaltool/diag_scripts/shapeselect/__init__.py create mode 100644 esmvaltool/diag_scripts/shared/plot/styles_python/__init__.py create mode 100644 esmvaltool/diag_scripts/weighting/__init__.py create mode 100644 esmvaltool/diag_scripts/weighting/climwip/__init__.py create mode 100644 esmvaltool/diag_scripts/zmnam/__init__.py create mode 100644 esmvaltool/utils/batch-jobs/__init__.py create mode 100644 esmvaltool/utils/rose-cylc/__init__.py create mode 100644 esmvaltool/utils/testing/recipe_settings/__init__.py create mode 100644 esmvaltool/utils/testing/regression/__init__.py create mode 100644 tests/unit/utils/__init__.py diff --git a/esmvaltool/__init__.py b/esmvaltool/__init__.py index 6f3375ec51..38bde82c11 100644 --- a/esmvaltool/__init__.py +++ b/esmvaltool/__init__.py @@ -1,6 +1,10 @@ """ESMValTool diagnostics package.""" from importlib.metadata import PackageNotFoundError, version +__all__ = [ + 'diag_scripts', +] + try: __version__ = version("ESMValTool") except PackageNotFoundError as exc: diff --git a/esmvaltool/cmorizers/__init__.py b/esmvaltool/cmorizers/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/cmorizers/data/download_scripts/__init__.py b/esmvaltool/cmorizers/data/download_scripts/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/cmorizers/mip_convert/__init__.py b/esmvaltool/cmorizers/mip_convert/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/__init__.py b/esmvaltool/diag_scripts/__init__.py index 10d576e599..376dcc5d57 100644 --- a/esmvaltool/diag_scripts/__init__.py +++ b/esmvaltool/diag_scripts/__init__.py @@ -1 +1,11 @@ """ESMValTool diagnostic scripts.""" + +__all__ = [ + 'emergent_constraints', + 'mlr', + 'monitor', + 'ocean', + 'shared', + 'psyplot_diag', + 'seaborn_diag', +] \ No newline at end of file diff --git a/esmvaltool/diag_scripts/aerosols/__init__.py b/esmvaltool/diag_scripts/aerosols/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/arctic_ocean/__init__.py b/esmvaltool/diag_scripts/arctic_ocean/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/climate_metrics/__init__.py b/esmvaltool/diag_scripts/climate_metrics/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/cmorizers/__init__.py b/esmvaltool/diag_scripts/cmorizers/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/cmug_h2o/__init__.py b/esmvaltool/diag_scripts/cmug_h2o/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/cos22esd/__init__.py b/esmvaltool/diag_scripts/cos22esd/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/crem/__init__.py b/esmvaltool/diag_scripts/crem/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/deangelis15nat/__init__.py b/esmvaltool/diag_scripts/deangelis15nat/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/droughtindex/__init__.py b/esmvaltool/diag_scripts/droughtindex/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/ensclus/__init__.py b/esmvaltool/diag_scripts/ensclus/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/examples/__init__.py b/esmvaltool/diag_scripts/examples/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/galytska23/__init__.py b/esmvaltool/diag_scripts/galytska23/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/iht_toa/__init__.py b/esmvaltool/diag_scripts/iht_toa/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/impact/__init__.py b/esmvaltool/diag_scripts/impact/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/ipcc_ar5/__init__.py b/esmvaltool/diag_scripts/ipcc_ar5/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/kcs/__init__.py b/esmvaltool/diag_scripts/kcs/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/land_carbon_cycle/__init__.py b/esmvaltool/diag_scripts/land_carbon_cycle/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/landcover/__init__.py b/esmvaltool/diag_scripts/landcover/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/lst/__init__.py b/esmvaltool/diag_scripts/lst/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/mpqb/__init__.py b/esmvaltool/diag_scripts/mpqb/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/primavera/eady_growth_rate/__init__.py b/esmvaltool/diag_scripts/primavera/eady_growth_rate/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/radiation_budget/__init__.py b/esmvaltool/diag_scripts/radiation_budget/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/runoff_et/__init__.py b/esmvaltool/diag_scripts/runoff_et/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/sea_surface_salinity/__init__.py b/esmvaltool/diag_scripts/sea_surface_salinity/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/seaice_drift/__init__.py b/esmvaltool/diag_scripts/seaice_drift/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/seaice_feedback/__init__.py b/esmvaltool/diag_scripts/seaice_feedback/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/shapeselect/__init__.py b/esmvaltool/diag_scripts/shapeselect/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/shared/plot/styles_python/__init__.py b/esmvaltool/diag_scripts/shared/plot/styles_python/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/weighting/__init__.py b/esmvaltool/diag_scripts/weighting/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/weighting/climwip/__init__.py b/esmvaltool/diag_scripts/weighting/climwip/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/zmnam/__init__.py b/esmvaltool/diag_scripts/zmnam/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/utils/batch-jobs/__init__.py b/esmvaltool/utils/batch-jobs/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/utils/rose-cylc/__init__.py b/esmvaltool/utils/rose-cylc/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/utils/testing/recipe_settings/__init__.py b/esmvaltool/utils/testing/recipe_settings/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/utils/testing/regression/__init__.py b/esmvaltool/utils/testing/regression/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/tests/unit/utils/__init__.py b/tests/unit/utils/__init__.py new file mode 100644 index 0000000000..e69de29bb2 From 01fd8fcfb09768af71347ac073494e13d60ad342 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 16:22:07 +0100 Subject: [PATCH 28/49] add testkw to the ignored list --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index e533a92c5d..8155727632 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -82,7 +82,7 @@ 'show-inheritance', 'show-module-summary', ] -autoapi_ignore = ['*tests*'] # brute ignore; to skip see below +autoapi_ignore = ['*tests*', '*testkw*'] # brute ignore; to skip see below def skip_submodules(app, what, name, obj, skip, options): From 1d2ed6b461b2c0776ae13befdc895d39ed891cf4 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 16:29:32 +0100 Subject: [PATCH 29/49] nevermind, am stoopid --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 8155727632..e533a92c5d 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -82,7 +82,7 @@ 'show-inheritance', 'show-module-summary', ] -autoapi_ignore = ['*tests*', '*testkw*'] # brute ignore; to skip see below +autoapi_ignore = ['*tests*'] # brute ignore; to skip see below def skip_submodules(app, what, name, obj, skip, options): From 9f18b662f9e99211f9bea353a77b18e9527dd76d Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 16:33:50 +0100 Subject: [PATCH 30/49] add names.py to ignores --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index e533a92c5d..fc57428db2 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -82,7 +82,7 @@ 'show-inheritance', 'show-module-summary', ] -autoapi_ignore = ['*tests*'] # brute ignore; to skip see below +autoapi_ignore = ['*tests*', '*names.py*'] # brute ignore; to skip see below def skip_submodules(app, what, name, obj, skip, options): From 9f85e782cdf0c3974a2f2306c8b627b5d48e51bf Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 16:49:19 +0100 Subject: [PATCH 31/49] reinstate names.py --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index fc57428db2..e533a92c5d 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -82,7 +82,7 @@ 'show-inheritance', 'show-module-summary', ] -autoapi_ignore = ['*tests*', '*names.py*'] # brute ignore; to skip see below +autoapi_ignore = ['*tests*'] # brute ignore; to skip see below def skip_submodules(app, what, name, obj, skip, options): From b49b34c151554e351ada50c71791f6a1c6876a7b Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 16:52:08 +0100 Subject: [PATCH 32/49] comment out import in sraed init --- esmvaltool/diag_scripts/shared/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esmvaltool/diag_scripts/shared/__init__.py b/esmvaltool/diag_scripts/shared/__init__.py index a422acc0e3..b3307d0f4c 100644 --- a/esmvaltool/diag_scripts/shared/__init__.py +++ b/esmvaltool/diag_scripts/shared/__init__.py @@ -1,5 +1,5 @@ """Code that is shared between multiple diagnostic scripts.""" -from . import io, iris_helpers, names, plot +# from . import io, iris_helpers, names, plot from ._base import ( ProvenanceLogger, extract_variables, From a0584e83978f7e10990601ad523ab4db0df5ea5b Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 16:59:24 +0100 Subject: [PATCH 33/49] comment out all imports from shared init --- esmvaltool/diag_scripts/shared/__init__.py | 34 +++++++++++----------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/esmvaltool/diag_scripts/shared/__init__.py b/esmvaltool/diag_scripts/shared/__init__.py index b3307d0f4c..f58774e547 100644 --- a/esmvaltool/diag_scripts/shared/__init__.py +++ b/esmvaltool/diag_scripts/shared/__init__.py @@ -1,22 +1,22 @@ """Code that is shared between multiple diagnostic scripts.""" # from . import io, iris_helpers, names, plot -from ._base import ( - ProvenanceLogger, - extract_variables, - get_cfg, - get_diagnostic_filename, - get_plot_filename, - group_metadata, - run_diagnostic, - save_data, - save_figure, - select_metadata, - sorted_group_metadata, - sorted_metadata, - variables_available, -) -from ._diag import Datasets, Variable, Variables -from ._validation import apply_supermeans, get_control_exper_obs +# from ._base import ( +# ProvenanceLogger, +# extract_variables, +# get_cfg, +# get_diagnostic_filename, +# get_plot_filename, +# group_metadata, +# run_diagnostic, +# save_data, +# save_figure, +# select_metadata, +# sorted_group_metadata, +# sorted_metadata, +# variables_available, +#) +# from ._diag import Datasets, Variable, Variables +# from ._validation import apply_supermeans, get_control_exper_obs __all__ = [ # Main entry point for diagnostics From e791641b5c20d32f2ec9cbdf28e5037661ac91ef Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Wed, 12 Jun 2024 17:04:44 +0100 Subject: [PATCH 34/49] reinstate some imports --- esmvaltool/diag_scripts/shared/__init__.py | 30 +++++++++++----------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/esmvaltool/diag_scripts/shared/__init__.py b/esmvaltool/diag_scripts/shared/__init__.py index f58774e547..4dce2a7ce6 100644 --- a/esmvaltool/diag_scripts/shared/__init__.py +++ b/esmvaltool/diag_scripts/shared/__init__.py @@ -1,20 +1,20 @@ """Code that is shared between multiple diagnostic scripts.""" # from . import io, iris_helpers, names, plot -# from ._base import ( -# ProvenanceLogger, -# extract_variables, -# get_cfg, -# get_diagnostic_filename, -# get_plot_filename, -# group_metadata, -# run_diagnostic, -# save_data, -# save_figure, -# select_metadata, -# sorted_group_metadata, -# sorted_metadata, -# variables_available, -#) +from ._base import ( + ProvenanceLogger, + extract_variables, + get_cfg, + get_diagnostic_filename, + get_plot_filename, + group_metadata, + run_diagnostic, + save_data, + save_figure, + select_metadata, + sorted_group_metadata, + sorted_metadata, + variables_available, +) # from ._diag import Datasets, Variable, Variables # from ._validation import apply_supermeans, get_control_exper_obs From d6fce5bae3129f0611b1de972dfae0dc39e494b4 Mon Sep 17 00:00:00 2001 From: Bouwe Andela Date: Wed, 19 Jun 2024 15:54:51 +0200 Subject: [PATCH 35/49] Comment out ignores --- doc/sphinx/source/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index e533a92c5d..8d5ad6767c 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -82,7 +82,7 @@ 'show-inheritance', 'show-module-summary', ] -autoapi_ignore = ['*tests*'] # brute ignore; to skip see below +# autoapi_ignore = ['*tests*'] # brute ignore; to skip see below def skip_submodules(app, what, name, obj, skip, options): From 6392e279e638f679a8d588f71b5610c021bf77de Mon Sep 17 00:00:00 2001 From: Bouwe Andela Date: Wed, 19 Jun 2024 16:01:14 +0200 Subject: [PATCH 36/49] Fix formatting --- .../emergent_constraints/lif1f2.py | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/esmvaltool/diag_scripts/emergent_constraints/lif1f2.py b/esmvaltool/diag_scripts/emergent_constraints/lif1f2.py index edd7d67663..08055c9324 100644 --- a/esmvaltool/diag_scripts/emergent_constraints/lif1f2.py +++ b/esmvaltool/diag_scripts/emergent_constraints/lif1f2.py @@ -3,11 +3,8 @@ """Calculates emergent constraint on Indian summer monsoon. -############################################################################### -testkw/lif1.py Author: Katja Weigel (IUP, Uni Bremen, Germany) EVal4CMIP project -############################################################################### Description ----------- @@ -17,9 +14,6 @@ Configuration options --------------------- output_name : Name of the output files. - -############################################################################### - """ import logging @@ -35,10 +29,13 @@ import esmvaltool.diag_scripts.shared as e import esmvaltool.diag_scripts.shared.names as n -from esmvaltool.diag_scripts.shared import (ProvenanceLogger, - get_diagnostic_filename, - get_plot_filename, group_metadata, - select_metadata) +from esmvaltool.diag_scripts.shared import ( + ProvenanceLogger, + get_diagnostic_filename, + get_plot_filename, + group_metadata, + select_metadata, +) logger = logging.getLogger(os.path.basename(__file__)) @@ -58,7 +55,7 @@ def _get_sel_files(cfg, dataname, dim=2): def _get_sel_files_var(cfg, varnames): - """Get filenames from cfg for all model mean and differen variables.""" + """Get filenames from cfg for all model mean and different variables.""" selection = [] for var in varnames: @@ -649,7 +646,7 @@ def substract_li(cfg, data, lats, lons, future_exp): datasets = [] for iii, dataset_path in enumerate(pathlist): - # Substract historical experiment from rcp85 experiment + # Subtract historical experiment from rcp85 experiment datasets.append(data.get_info(n.DATASET, dataset_path)) ar_diff_rain[:, :, iii] = (data.get_data(short_name='pr', exp=future_exp, From 024896abc29e0f398092d575a37070b3c2189826 Mon Sep 17 00:00:00 2001 From: Bouwe Andela Date: Wed, 19 Jun 2024 16:26:04 +0200 Subject: [PATCH 37/49] Fix some warnings --- esmvaltool/diag_scripts/shared/__init__.py | 6 +- esmvaltool/diag_scripts/shared/io.py | 2 +- tests/integration/test_recipes_loading.py | 108 ++++++--------------- 3 files changed, 31 insertions(+), 85 deletions(-) diff --git a/esmvaltool/diag_scripts/shared/__init__.py b/esmvaltool/diag_scripts/shared/__init__.py index 4dce2a7ce6..a422acc0e3 100644 --- a/esmvaltool/diag_scripts/shared/__init__.py +++ b/esmvaltool/diag_scripts/shared/__init__.py @@ -1,5 +1,5 @@ """Code that is shared between multiple diagnostic scripts.""" -# from . import io, iris_helpers, names, plot +from . import io, iris_helpers, names, plot from ._base import ( ProvenanceLogger, extract_variables, @@ -15,8 +15,8 @@ sorted_metadata, variables_available, ) -# from ._diag import Datasets, Variable, Variables -# from ._validation import apply_supermeans, get_control_exper_obs +from ._diag import Datasets, Variable, Variables +from ._validation import apply_supermeans, get_control_exper_obs __all__ = [ # Main entry point for diagnostics diff --git a/esmvaltool/diag_scripts/shared/io.py b/esmvaltool/diag_scripts/shared/io.py index 4889f5b1c1..aebb75770d 100644 --- a/esmvaltool/diag_scripts/shared/io.py +++ b/esmvaltool/diag_scripts/shared/io.py @@ -227,7 +227,7 @@ def save_1d_data(cubes, path, coord_name, var_attrs, attributes=None): Parameters ---------- cubes : dict of iris.cube.Cube - 1D :class.:`iris.cube.Cube`s (values) and corresponding dataset names + 1D :class:`iris.cube.Cube`s (values) and corresponding dataset names (keys). path : str Path to the new file. diff --git a/tests/integration/test_recipes_loading.py b/tests/integration/test_recipes_loading.py index 38a0217d6e..9fc45fed90 100644 --- a/tests/integration/test_recipes_loading.py +++ b/tests/integration/test_recipes_loading.py @@ -2,27 +2,17 @@ from pathlib import Path import esmvalcore +import esmvalcore._recipe.check +import esmvalcore._recipe.recipe import esmvalcore.cmor.check +import esmvalcore.dataset +import esmvalcore.local import pytest import yaml -from esmvalcore import __version__ as core_ver -from packaging import version +from esmvalcore.config import CFG, _config import esmvaltool -if version.parse(core_ver) < version.parse('2.8.0'): - from esmvalcore._config import _config - from esmvalcore.experimental.config import CFG - - # Work around - # https://github.com/ESMValGroup/ESMValCore/issues/1579 - def clear(self): - self._mapping.clear() - - esmvalcore.experimental.config.Config.clear = clear -else: - from esmvalcore.config import CFG, _config - @pytest.fixture def session(mocker, tmp_path): @@ -58,20 +48,9 @@ def _get_recipes(): def test_recipe_valid(recipe_file, session, mocker): """Check that recipe files are valid ESMValTool recipes.""" # Mock input files - try: - # Since ESValCore v2.8.0 - import esmvalcore.local - module = esmvalcore.local - method = 'glob' - except ImportError: - # Prior to ESMValCore v2.8.0 - import esmvalcore._data_finder - module = esmvalcore._data_finder - method = 'find_files' - mocker.patch.object( - module, - method, + esmvalcore.local, + 'glob', autospec=True, side_effect=lambda *_, **__: [ 'test_0001-1849.nc', @@ -81,57 +60,29 @@ def test_recipe_valid(recipe_file, session, mocker): # Do not remove unexpanded supplementaries. These cannot be expanded # because the mocked file finding above does not produce facets. - try: - import esmvalcore.dataset - except ImportError: - pass - else: - mocker.patch.object( - esmvalcore.dataset.Dataset, - '_remove_unexpanded_supplementaries', - autospec=True, - spec_set=True, - ) + mocker.patch.object( + esmvalcore.dataset.Dataset, + '_remove_unexpanded_supplementaries', + autospec=True, + spec_set=True, + ) # Mock vertical levels - # Account for module change after esmvalcore=2.7 - if version.parse(core_ver) <= version.parse('2.7.1'): - import esmvalcore._recipe - mocker.patch.object( - esmvalcore._recipe, - 'get_reference_levels', - autospec=True, - spec_set=True, - side_effect=lambda *_, **__: [1, 2], - ) - else: - import esmvalcore._recipe.recipe - mocker.patch.object( - esmvalcore._recipe.recipe, - 'get_reference_levels', - autospec=True, - spec_set=True, - side_effect=lambda *_, **__: [1, 2], - ) + mocker.patch.object( + esmvalcore._recipe.recipe, + 'get_reference_levels', + autospec=True, + spec_set=True, + side_effect=lambda *_, **__: [1, 2], + ) # Mock valid NCL version - # Account for module change after esmvalcore=2.7 - if version.parse(core_ver) <= version.parse('2.7.1'): - import esmvalcore._recipe_checks - mocker.patch.object( - esmvalcore._recipe_checks, - 'ncl_version', - autospec=True, - spec_set=True, - ) - else: - import esmvalcore._recipe.check - mocker.patch.object( - esmvalcore._recipe.check, - 'ncl_version', - autospec=True, - spec_set=True, - ) + mocker.patch.object( + esmvalcore._recipe.check, + 'ncl_version', + autospec=True, + spec_set=True, + ) # Mock interpreters installed def which(executable): @@ -158,9 +109,4 @@ def which(executable): filename.parent.mkdir(parents=True, exist_ok=True) filename.touch() - # Account for module change after esmvalcore=2.7 - if version.parse(core_ver) <= version.parse('2.7.1'): - config_user = session.to_config_user() - esmvalcore._recipe.read_recipe_file(recipe_file, config_user) - else: - esmvalcore._recipe.recipe.read_recipe_file(recipe_file, session) + esmvalcore._recipe.recipe.read_recipe_file(recipe_file, session) From 9719bcab70b5ce0c113496ee15d07df82fea2ec3 Mon Sep 17 00:00:00 2001 From: Bouwe Andela Date: Wed, 19 Jun 2024 22:49:28 +0200 Subject: [PATCH 38/49] Fix docs build --- doc/sphinx/source/conf.py | 21 ++++++++++++++----- esmvaltool/diag_scripts/__init__.py | 2 +- .../climate_metrics/feedback_parameters.py | 2 +- esmvaltool/diag_scripts/primavera/__init__.py | 0 esmvaltool/diag_scripts/shared/_validation.py | 2 +- esmvaltool/diag_scripts/shared/io.py | 2 +- esmvaltool/diag_scripts/shared/names.py | 8 ------- 7 files changed, 20 insertions(+), 17 deletions(-) create mode 100644 esmvaltool/diag_scripts/primavera/__init__.py diff --git a/doc/sphinx/source/conf.py b/doc/sphinx/source/conf.py index 8d5ad6767c..4a1c08c905 100644 --- a/doc/sphinx/source/conf.py +++ b/doc/sphinx/source/conf.py @@ -69,20 +69,31 @@ ] # Autoapi configuration +# https://sphinx-autoapi.readthedocs.io/en/latest/reference/config.html autoapi_dirs = [ - '../../..', + '../../../esmvaltool', ] - -autoapi_root = 'api' # where the API docs live; rel to source +autoapi_ignore = [ + '**/esmvaltool/cmorizers/**', + '**/esmvaltool/install/**', + '**/esmvaltool/utils/**', +] +autoapi_root = 'api' autoapi_options = [ 'members', 'undoc-members', + 'imported-members', 'inherited-members', 'special-members', 'show-inheritance', 'show-module-summary', ] -# autoapi_ignore = ['*tests*'] # brute ignore; to skip see below +autoapi_member_order = "groupwise" +# Keep the AutoAPI generated files on the filesystem after the run. Useful for +# debugging. Keeping files will also allow AutoAPI to use incremental builds. +# Providing none of the source files have changed, AutoAPI will skip parsing +# the source code and regenerating the API documentation. +autoapi_keep_files = False def skip_submodules(app, what, name, obj, skip, options): @@ -457,7 +468,7 @@ def setup(sphinx): 'cartopy': ('https://scitools.org.uk/cartopy/docs/latest/', None), 'cf_units': ('https://cf-units.readthedocs.io/en/latest/', None), 'esmvalcore': - (f'https://docs.esmvaltool.org/projects/esmvalcore/en/{rtd_version}/', + (f'https://docs.esmvaltool.org/projects/ESMValCore/en/{rtd_version}/', None), 'esmvaltool': (f'https://docs.esmvaltool.org/en/{rtd_version}/', None), 'iris': ('https://scitools-iris.readthedocs.io/en/latest/', None), diff --git a/esmvaltool/diag_scripts/__init__.py b/esmvaltool/diag_scripts/__init__.py index 376dcc5d57..a2264755f8 100644 --- a/esmvaltool/diag_scripts/__init__.py +++ b/esmvaltool/diag_scripts/__init__.py @@ -8,4 +8,4 @@ 'shared', 'psyplot_diag', 'seaborn_diag', -] \ No newline at end of file +] diff --git a/esmvaltool/diag_scripts/climate_metrics/feedback_parameters.py b/esmvaltool/diag_scripts/climate_metrics/feedback_parameters.py index db350982a2..d6bd28b0fb 100644 --- a/esmvaltool/diag_scripts/climate_metrics/feedback_parameters.py +++ b/esmvaltool/diag_scripts/climate_metrics/feedback_parameters.py @@ -365,7 +365,7 @@ def _create_regression_plot(tas_cube, y_reg = reg.slope * x_reg + reg.intercept # Plot data - title = (f'{FEEDBACK_PARAMETERS.get(var,var)} TOA radiance for ' + title = (f'{FEEDBACK_PARAMETERS.get(var, var)} TOA radiance for ' f'{dataset_name}') filename = f'{var}_regression_{dataset_name}' if description is not None: diff --git a/esmvaltool/diag_scripts/primavera/__init__.py b/esmvaltool/diag_scripts/primavera/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/esmvaltool/diag_scripts/shared/_validation.py b/esmvaltool/diag_scripts/shared/_validation.py index c922f91e65..a7cf1dfb08 100644 --- a/esmvaltool/diag_scripts/shared/_validation.py +++ b/esmvaltool/diag_scripts/shared/_validation.py @@ -5,7 +5,7 @@ import iris from esmvalcore.preprocessor import climate_statistics -from esmvaltool.diag_scripts.shared import select_metadata +from esmvaltool.diag_scripts.shared._base import select_metadata logger = logging.getLogger(os.path.basename(__file__)) diff --git a/esmvaltool/diag_scripts/shared/io.py b/esmvaltool/diag_scripts/shared/io.py index aebb75770d..14fb0e873a 100644 --- a/esmvaltool/diag_scripts/shared/io.py +++ b/esmvaltool/diag_scripts/shared/io.py @@ -227,7 +227,7 @@ def save_1d_data(cubes, path, coord_name, var_attrs, attributes=None): Parameters ---------- cubes : dict of iris.cube.Cube - 1D :class:`iris.cube.Cube`s (values) and corresponding dataset names + 1D :class:`iris.cube.Cube` s (values) and corresponding dataset names (keys). path : str Path to the new file. diff --git a/esmvaltool/diag_scripts/shared/names.py b/esmvaltool/diag_scripts/shared/names.py index 49da19ebbe..609cf5ee7c 100644 --- a/esmvaltool/diag_scripts/shared/names.py +++ b/esmvaltool/diag_scripts/shared/names.py @@ -1,10 +1,5 @@ """Convenience names for python diagnostics.""" -import logging - -logger = logging.getLogger(__name__) - - DAY_M = 'day_of_month' DAY_Y = 'day_of_year' HEIGHT = 'height' @@ -28,13 +23,10 @@ STANDARD_NAME = 'standard_name' UNITS = 'units' VAR_NAME = 'var_name' -START_YEAR = 'start_year' -END_YEAR = 'end_year' INPUT_DATA = 'input_data' INPUT_FILES = 'input_files' FILENAME = 'filename' -FX_FILES = 'fx_files' METADATA_YAML_FILE = 'metadata.yml' OUTPUT_FILE_TYPE = 'output_file_type' PLOT_DIR = 'plot_dir' From f9a568f2ec5790e661ef3be1f77f533dd44bb18a Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 20 Jun 2024 14:03:30 +0100 Subject: [PATCH 39/49] make package level imports --- esmvaltool/diag_scripts/aerosols/aod_aeronet_assess.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esmvaltool/diag_scripts/aerosols/aod_aeronet_assess.py b/esmvaltool/diag_scripts/aerosols/aod_aeronet_assess.py index 27ab6b2714..3866e3c51a 100644 --- a/esmvaltool/diag_scripts/aerosols/aod_aeronet_assess.py +++ b/esmvaltool/diag_scripts/aerosols/aod_aeronet_assess.py @@ -11,10 +11,10 @@ import matplotlib.pyplot as plt import numpy as np import scipy -from aero_utils import add_bounds, extract_pt from matplotlib import colors, gridspec from numpy import ma +from esmvaltool.diag_scripts.aerosols.aero_utils import add_bounds, extract_pt from esmvaltool.diag_scripts.shared import group_metadata, run_diagnostic from esmvaltool.diag_scripts.shared._base import get_plot_filename From 53e7f917a34f64e1b9bc49cc0d6e889b9d561ce5 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 20 Jun 2024 14:04:13 +0100 Subject: [PATCH 40/49] make package level imports --- esmvaltool/diag_scripts/ensclus/ens_anom.py | 6 ++++-- esmvaltool/diag_scripts/ensclus/ens_eof_kmeans.py | 4 ++-- esmvaltool/diag_scripts/ensclus/ens_plots.py | 2 +- esmvaltool/diag_scripts/ensclus/ensclus.py | 6 +++--- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/esmvaltool/diag_scripts/ensclus/ens_anom.py b/esmvaltool/diag_scripts/ensclus/ens_anom.py index a3b664d11a..6d5f6ad815 100644 --- a/esmvaltool/diag_scripts/ensclus/ens_anom.py +++ b/esmvaltool/diag_scripts/ensclus/ens_anom.py @@ -5,8 +5,10 @@ from scipy import stats # User-defined packages -from read_netcdf import read_iris, save_n_2d_fields -from sel_season_area import sel_area, sel_season +from esmvaltool.diag_scripts.ensclus.read_netcdf \ + import read_iris, save_n_2d_fields +from esmvaltool.diag_scripts.ensclus.sel_season_area \ + import sel_area, sel_season def ens_anom(filenames, dir_output, name_outputs, varname, numens, season, diff --git a/esmvaltool/diag_scripts/ensclus/ens_eof_kmeans.py b/esmvaltool/diag_scripts/ensclus/ens_eof_kmeans.py index 2be17195b0..940af71278 100644 --- a/esmvaltool/diag_scripts/ensclus/ens_eof_kmeans.py +++ b/esmvaltool/diag_scripts/ensclus/ens_eof_kmeans.py @@ -10,8 +10,8 @@ from sklearn.cluster import KMeans # User-defined libraries -from eof_tool import eof_computation -from read_netcdf import read_n_2d_fields +from esmvaltool.diag_scripts.ensclus.eof_tool import eof_computation +from esmvaltool.diag_scripts.ensclus.read_netcdf import read_n_2d_fields def ens_eof_kmeans(dir_output, name_outputs, numens, numpcs, perc, numclus): diff --git a/esmvaltool/diag_scripts/ensclus/ens_plots.py b/esmvaltool/diag_scripts/ensclus/ens_plots.py index 55ad420b08..83ecebc394 100644 --- a/esmvaltool/diag_scripts/ensclus/ens_plots.py +++ b/esmvaltool/diag_scripts/ensclus/ens_plots.py @@ -8,7 +8,7 @@ import cartopy.crs as ccrs # User-defined libraries -from read_netcdf import read_n_2d_fields +from esmvaltool.diag_scripts.ensclus.read_netcdf import read_n_2d_fields def ens_plots(dir_output, dir_plot, name_outputs, numclus, diff --git a/esmvaltool/diag_scripts/ensclus/ensclus.py b/esmvaltool/diag_scripts/ensclus/ensclus.py index a669a9a02d..cedb2dfd6f 100644 --- a/esmvaltool/diag_scripts/ensclus/ensclus.py +++ b/esmvaltool/diag_scripts/ensclus/ensclus.py @@ -20,9 +20,9 @@ from esmvaltool.diag_scripts.shared import ProvenanceLogger, sorted_metadata # Import user diagnostic routines -from ens_anom import ens_anom -from ens_eof_kmeans import ens_eof_kmeans -from ens_plots import ens_plots +from esmvaltool.diag_scripts.ensclus.ens_anom import ens_anom +from esmvaltool.diag_scripts.ensclus.ens_eof_kmeans import ens_eof_kmeans +from esmvaltool.diag_scripts.ensclus.ens_plots import ens_plots logger = logging.getLogger(os.path.basename(__file__)) From 9c57a60a20b67cbbf094e0f042aed343d4d842b4 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 20 Jun 2024 14:06:09 +0100 Subject: [PATCH 41/49] make package level imports --- esmvaltool/diag_scripts/examples/correlate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esmvaltool/diag_scripts/examples/correlate.py b/esmvaltool/diag_scripts/examples/correlate.py index 171a24a51f..052f3d2bdc 100644 --- a/esmvaltool/diag_scripts/examples/correlate.py +++ b/esmvaltool/diag_scripts/examples/correlate.py @@ -6,7 +6,7 @@ from iris.analysis import MEAN from iris.analysis.stats import pearsonr -from diagnostic import plot_diagnostic +from esmvaltool.diag_scripts.examples.diagnostic import plot_diagnostic from esmvaltool.diag_scripts.shared import group_metadata, run_diagnostic logger = logging.getLogger(os.path.basename(__file__)) From c6c3a3ab09f935bcee0cea8de09e97909b0ee809 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 20 Jun 2024 14:07:48 +0100 Subject: [PATCH 42/49] make package level imports --- esmvaltool/diag_scripts/iht_toa/single_model_diagnostics.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esmvaltool/diag_scripts/iht_toa/single_model_diagnostics.py b/esmvaltool/diag_scripts/iht_toa/single_model_diagnostics.py index fc917a8aa5..e56240c67a 100644 --- a/esmvaltool/diag_scripts/iht_toa/single_model_diagnostics.py +++ b/esmvaltool/diag_scripts/iht_toa/single_model_diagnostics.py @@ -16,8 +16,8 @@ import numpy as np from iris import NameConstraint from matplotlib import gridspec, rcParams -from poisson_solver import SphericalPoisson +from esmvaltool.diag_scripts.iht_toa.poisson_solver import SphericalPoisson from esmvaltool.diag_scripts.shared import ( group_metadata, run_diagnostic, From 0d4f06975bc7dd070408bec5236247be203cbded Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 20 Jun 2024 14:10:31 +0100 Subject: [PATCH 43/49] make package level imports --- esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py | 2 +- esmvaltool/diag_scripts/mpqb/mpqb_lineplot_anncyc.py | 2 +- esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py index fe4cf2deb0..756f22090b 100644 --- a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py +++ b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py @@ -7,8 +7,8 @@ import iris import matplotlib.dates as mdates import matplotlib.pyplot as plt -from mpqb_utils import get_mpqb_cfg +from esmvaltool.diag_scripts.mpqb.mpqb_utils import get_mpqb_cfg import esmvaltool.diag_scripts.shared.iris_helpers as ih from esmvaltool.diag_scripts.shared import group_metadata, run_diagnostic from esmvaltool.diag_scripts.shared._base import ( diff --git a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_anncyc.py b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_anncyc.py index e2a5a662b2..d087499d60 100644 --- a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_anncyc.py +++ b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_anncyc.py @@ -6,8 +6,8 @@ import iris import matplotlib.pyplot as plt -from mpqb_utils import get_mpqb_cfg +from esmvaltool.diag_scripts.mpqb.mpqb_utils import get_mpqb_cfg from esmvaltool.diag_scripts.shared import group_metadata, run_diagnostic from esmvaltool.diag_scripts.shared._base import ( ProvenanceLogger, diff --git a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py index a6ec136966..1763df20b5 100644 --- a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py +++ b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py @@ -8,8 +8,8 @@ import matplotlib.dates as mdates import matplotlib.pyplot as plt import numpy as np -from mpqb_utils import get_mpqb_cfg +from esmvaltool.diag_scripts.mpqb.mpqb_utils import get_mpqb_cfg import esmvaltool.diag_scripts.shared.iris_helpers as ih from esmvaltool.diag_scripts.shared import group_metadata, run_diagnostic from esmvaltool.diag_scripts.shared._base import ( From eea6b009afc89fb1e716673430b1d638ef6470c8 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 20 Jun 2024 14:14:30 +0100 Subject: [PATCH 44/49] make package level imports --- .../diag_scripts/weighting/climwip/calibrate_sigmas.py | 8 ++++---- esmvaltool/diag_scripts/weighting/climwip/main.py | 8 +++++--- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/esmvaltool/diag_scripts/weighting/climwip/calibrate_sigmas.py b/esmvaltool/diag_scripts/weighting/climwip/calibrate_sigmas.py index 0998346b22..1e4e89cd8b 100644 --- a/esmvaltool/diag_scripts/weighting/climwip/calibrate_sigmas.py +++ b/esmvaltool/diag_scripts/weighting/climwip/calibrate_sigmas.py @@ -6,7 +6,9 @@ import matplotlib.pyplot as plt import numpy as np import xarray as xr -from core_functions import ( + +from scipy.optimize import brute +from esmvaltool.diag_scripts.weighting.climwip.core_functions import ( area_weighted_mean, calculate_model_distances, calculate_weights, @@ -14,13 +16,11 @@ compute_overall_mean, weighted_quantile, ) -from io_functions import ( +from esmvaltool.diag_scripts.weighting.climwip.io_functions import ( read_metadata, read_model_data, read_model_data_ancestor, ) -from scipy.optimize import brute - from esmvaltool.diag_scripts.shared import ( get_diagnostic_filename, get_plot_filename, diff --git a/esmvaltool/diag_scripts/weighting/climwip/main.py b/esmvaltool/diag_scripts/weighting/climwip/main.py index 6b22399547..000eada3d1 100644 --- a/esmvaltool/diag_scripts/weighting/climwip/main.py +++ b/esmvaltool/diag_scripts/weighting/climwip/main.py @@ -10,15 +10,17 @@ import numpy as np import seaborn as sns import xarray as xr -from calibrate_sigmas import calibrate_performance_sigma -from core_functions import ( + +from esmvaltool.diag_scripts.weighting.climwip.calibrate_sigmas \ + import calibrate_performance_sigma +from esmvaltool.diag_scripts.weighting.climwip.core_functions import ( area_weighted_mean, calculate_model_distances, calculate_weights, combine_ensemble_members, compute_overall_mean, ) -from io_functions import ( +from esmvaltool.diag_scripts.weighting.climwip.io_functions import ( log_provenance, read_metadata, read_model_data, From a9edecb677ef44db3a5ae3821ac28e2066dc68d3 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 20 Jun 2024 14:18:51 +0100 Subject: [PATCH 45/49] make package level imports --- esmvaltool/diag_scripts/weighting/plot_utilities.py | 3 ++- .../diag_scripts/weighting/weighted_temperature_graph.py | 3 ++- esmvaltool/diag_scripts/weighting/weighted_temperature_map.py | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/esmvaltool/diag_scripts/weighting/plot_utilities.py b/esmvaltool/diag_scripts/weighting/plot_utilities.py index 706dfd64c9..0c73c17058 100644 --- a/esmvaltool/diag_scripts/weighting/plot_utilities.py +++ b/esmvaltool/diag_scripts/weighting/plot_utilities.py @@ -3,7 +3,8 @@ import xarray as xr -from climwip.core_functions import weighted_quantile +from esmvaltool.diag_scripts.weighting.climwip.core_functions \ + import weighted_quantile def read_weights(filename: str) -> dict: diff --git a/esmvaltool/diag_scripts/weighting/weighted_temperature_graph.py b/esmvaltool/diag_scripts/weighting/weighted_temperature_graph.py index 5b871283d7..809e6761ee 100644 --- a/esmvaltool/diag_scripts/weighting/weighted_temperature_graph.py +++ b/esmvaltool/diag_scripts/weighting/weighted_temperature_graph.py @@ -10,8 +10,9 @@ import matplotlib.pyplot as plt import numpy as np import xarray as xr -from climwip.io_functions import log_provenance, read_model_data +from esmvaltool.diag_scripts.weighting.climwip.io_functions \ + import log_provenance, read_model_data from esmvaltool.diag_scripts.shared import ( get_diagnostic_filename, get_plot_filename, diff --git a/esmvaltool/diag_scripts/weighting/weighted_temperature_map.py b/esmvaltool/diag_scripts/weighting/weighted_temperature_map.py index 7a161d2535..74cc1564d5 100644 --- a/esmvaltool/diag_scripts/weighting/weighted_temperature_map.py +++ b/esmvaltool/diag_scripts/weighting/weighted_temperature_map.py @@ -11,8 +11,9 @@ import matplotlib.pyplot as plt import numpy as np from cartopy.mpl.ticker import LatitudeFormatter, LongitudeFormatter -from climwip.io_functions import log_provenance, read_model_data +from esmvaltool.diag_scripts.weighting.climwip.io_functions \ + import log_provenance, read_model_data from esmvaltool.diag_scripts.shared import ( get_diagnostic_filename, get_plot_filename, From 5493f4181e8fe5a80cf5e0c2e16470eb6eecf99d Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Thu, 20 Jun 2024 14:19:02 +0100 Subject: [PATCH 46/49] make package level imports --- esmvaltool/diag_scripts/zmnam/zmnam.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/esmvaltool/diag_scripts/zmnam/zmnam.py b/esmvaltool/diag_scripts/zmnam/zmnam.py index d86ee48458..fe02db2b93 100644 --- a/esmvaltool/diag_scripts/zmnam/zmnam.py +++ b/esmvaltool/diag_scripts/zmnam/zmnam.py @@ -20,9 +20,10 @@ from esmvaltool.diag_scripts.shared import ProvenanceLogger, run_diagnostic # Import zmnam diagnostic routines -from zmnam_calc import zmnam_calc -from zmnam_plot import zmnam_plot -from zmnam_preproc import (zmnam_preproc, zmnam_preproc_clean) +from esmvaltool.diag_scripts.zmnam.zmnam_calc import zmnam_calc +from esmvaltool.diag_scripts.zmnam.zmnam_plot import zmnam_plot +from esmvaltool.diag_scripts.zmnam.zmnam_preproc \ + import (zmnam_preproc, zmnam_preproc_clean) logger = logging.getLogger(__name__) From 08a5eba9ab73c14093bae357738c133776b9ccf5 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 25 Jun 2024 12:32:06 +0100 Subject: [PATCH 47/49] correct for souble import --- esmvaltool/diag_scripts/weighting/weighted_temperature_graph.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/esmvaltool/diag_scripts/weighting/weighted_temperature_graph.py b/esmvaltool/diag_scripts/weighting/weighted_temperature_graph.py index dbaf80b99c..f5f1086e1e 100644 --- a/esmvaltool/diag_scripts/weighting/weighted_temperature_graph.py +++ b/esmvaltool/diag_scripts/weighting/weighted_temperature_graph.py @@ -11,8 +11,6 @@ import numpy as np import xarray as xr -from esmvaltool.diag_scripts.weighting.climwip.io_functions \ - import log_provenance, read_model_data from esmvaltool.diag_scripts.shared import ( get_diagnostic_filename, get_plot_filename, From 5dc083ee74174045714e30f9698ab62972060392 Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 25 Jun 2024 12:32:53 +0100 Subject: [PATCH 48/49] correct for souble import --- esmvaltool/diag_scripts/weighting/weighted_temperature_map.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/esmvaltool/diag_scripts/weighting/weighted_temperature_map.py b/esmvaltool/diag_scripts/weighting/weighted_temperature_map.py index 9304e8c645..667a382d94 100644 --- a/esmvaltool/diag_scripts/weighting/weighted_temperature_map.py +++ b/esmvaltool/diag_scripts/weighting/weighted_temperature_map.py @@ -12,8 +12,6 @@ import numpy as np from cartopy.mpl.ticker import LatitudeFormatter, LongitudeFormatter -from esmvaltool.diag_scripts.weighting.climwip.io_functions \ - import log_provenance, read_model_data from esmvaltool.diag_scripts.shared import ( get_diagnostic_filename, get_plot_filename, From 7408d9997301d8122c1d926cbb86dc7621147a5d Mon Sep 17 00:00:00 2001 From: Valeriu Predoi Date: Tue, 25 Jun 2024 12:40:54 +0100 Subject: [PATCH 49/49] couple more conflict fixing bloopers --- esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py | 1 - esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py | 1 - 2 files changed, 2 deletions(-) diff --git a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py index 8be685bce2..b08a2cd012 100644 --- a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py +++ b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot.py @@ -8,7 +8,6 @@ import matplotlib.dates as mdates import matplotlib.pyplot as plt -from esmvaltool.diag_scripts.mpqb.mpqb_utils import get_mpqb_cfg import esmvaltool.diag_scripts.shared.iris_helpers as ih from esmvaltool.diag_scripts.mpqb.mpqb_utils import get_mpqb_cfg from esmvaltool.diag_scripts.shared import group_metadata, run_diagnostic diff --git a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py index 7386911b22..90662be72b 100644 --- a/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py +++ b/esmvaltool/diag_scripts/mpqb/mpqb_lineplot_growthrate.py @@ -9,7 +9,6 @@ import matplotlib.pyplot as plt import numpy as np -from esmvaltool.diag_scripts.mpqb.mpqb_utils import get_mpqb_cfg import esmvaltool.diag_scripts.shared.iris_helpers as ih from esmvaltool.diag_scripts.mpqb.mpqb_utils import get_mpqb_cfg from esmvaltool.diag_scripts.shared import group_metadata, run_diagnostic