From bbd4ebbac9376f8943c0122c63fbfda5b87c69cf Mon Sep 17 00:00:00 2001 From: Lisa Bock Date: Mon, 8 Sep 2025 08:59:51 +0200 Subject: [PATCH 1/2] fix JRA-55 downloader --- .../data/downloaders/datasets/jra_55.py | 30 +------------------ 1 file changed, 1 insertion(+), 29 deletions(-) diff --git a/esmvaltool/cmorizers/data/downloaders/datasets/jra_55.py b/esmvaltool/cmorizers/data/downloaders/datasets/jra_55.py index 861576c3e3..e61d6624ac 100644 --- a/esmvaltool/cmorizers/data/downloaders/datasets/jra_55.py +++ b/esmvaltool/cmorizers/data/downloaders/datasets/jra_55.py @@ -40,43 +40,15 @@ def download_dataset( os.makedirs(downloader.local_folder, exist_ok=True) - user = os.environ.get("rda-user") - if user is None: - user = str(input("RDA user name? ")) - if user == "": - errmsg = ( - "A RDA account is required to download JRA-55 data." - " Please visit https://rda.ucar.edu/login/register/" - " to create an account at the Research Data Archive" - " (RDA) if needed." - ) - logger.error(errmsg) - raise ValueError - - passwd = os.environ.get("rda-passwd") - if passwd is None: - passwd = str(input("RDA password? ")) - if start_date is None: start_date = datetime(1958, 1, 1) if end_date is None: end_date = datetime(2022, 12, 31) loop_date = start_date - options = [ - "-O", - "Authentication.log", - "--save-cookies=auth.rda_ucar_edu", - f'--post-data="email={user}&passwd={passwd}&action=login"', - ] - - # login to Research Data Archive (RDA) - - downloader.login("https://rda.ucar.edu/cgi-bin/login", options) - # download files - url = "https://data.rda.ucar.edu/ds628.1" + url = "https://tds.gdex.ucar.edu/thredds/catalog/files/g/d628001" download_options = ["--load-cookies=auth.rda_ucar_edu"] # define variables to download From bcb0be5659c08a1bc965dc17da397b008cd9d8c5 Mon Sep 17 00:00:00 2001 From: Lisa Bock Date: Wed, 17 Sep 2025 10:29:12 +0200 Subject: [PATCH 2/2] update branch --- .github/workflows/create-condalock-file.yml | 2 +- .../workflows/install-from-condalock-file.yml | 2 +- .github/workflows/install-from-source.yml | 4 +- .github/workflows/pypi-build-and-deploy.yml | 6 +- .github/workflows/run-tests-monitor.yml | 8 +- .github/workflows/stale.yml | 2 +- .github/workflows/test-development.yml | 4 +- .github/workflows/test.yml | 4 +- CITATION.cff | 4 +- conda-linux-64.lock | 366 +++++++++--------- doc/sphinx/source/changelog.rst | 179 +++++++++ environment.yml | 4 +- environment_osx.yml | 4 +- .../cmorizers/data/cmor_config/JRA-25.yml | 74 ++-- .../data/downloaders/datasets/jra_25.py | 65 ++-- .../data/downloaders/datasets/jra_55.py | 2 +- .../data/formatters/datasets/jra_25.py | 140 ++++++- pyproject.toml | 4 +- 18 files changed, 597 insertions(+), 277 deletions(-) diff --git a/.github/workflows/create-condalock-file.yml b/.github/workflows/create-condalock-file.yml index 97bbef07d4..39d6fc3cd2 100644 --- a/.github/workflows/create-condalock-file.yml +++ b/.github/workflows/create-condalock-file.yml @@ -61,7 +61,7 @@ jobs: which python pip --version - name: Install ESMValTool - run: pip install -e .[develop] + run: pip install --no-deps -e .[develop] - name: Check ESMValTool version run: esmvaltool --help - name: Check ESMValTool help diff --git a/.github/workflows/install-from-condalock-file.yml b/.github/workflows/install-from-condalock-file.yml index a3d9e4b4e9..b60c296fea 100644 --- a/.github/workflows/install-from-condalock-file.yml +++ b/.github/workflows/install-from-condalock-file.yml @@ -51,7 +51,7 @@ jobs: - run: conda create --name esmvaltool-fromlock --file conda-linux-64.lock - run: which python - run: pip --version - - run: pip install -e .[develop] + - run: pip install --no-deps -e .[develop] - run: esmvaltool --help - run: esmvaltool version 2>&1 | tee source_install_linux_artifacts_python_${{ matrix.python-version }}/version.txt - run: pre-commit run -a diff --git a/.github/workflows/install-from-source.yml b/.github/workflows/install-from-source.yml index 954099a12c..118e5f4a59 100644 --- a/.github/workflows/install-from-source.yml +++ b/.github/workflows/install-from-source.yml @@ -41,7 +41,7 @@ jobs: mamba --version 2>&1 | tee source_install_linux_artifacts_python_${{ matrix.python-version }}/conda_version.txt python -V 2>&1 | tee source_install_linux_artifacts_python_${{ matrix.python-version }}/python_version.txt - name: Install - run: pip install -e .[develop] 2>&1 | tee source_install_linux_artifacts_python_${{ matrix.python-version }}/install.txt + run: pip install --no-deps -e .[develop] 2>&1 | tee source_install_linux_artifacts_python_${{ matrix.python-version }}/install.txt - name: Verify installation run: | esmvaltool --help @@ -76,7 +76,7 @@ jobs: # - run: mkdir -p source_install_osx_artifacts_python_${{ matrix.python-version }} # - run: conda --version 2>&1 | tee source_install_osx_artifacts_python_${{ matrix.python-version }}/conda_version.txt # - run: python -V 2>&1 | tee source_install_osx_artifacts_python_${{ matrix.python-version }}/python_version.txt -# - run: pip install -e .[develop] 2>&1 | tee source_install_osx_artifacts_python_${{ matrix.python-version }}/install.txt +# - run: pip install --no-deps -e .[develop] 2>&1 | tee source_install_osx_artifacts_python_${{ matrix.python-version }}/install.txt # - run: esmvaltool --help # - run: esmvaltool version 2>&1 | tee source_install_osx_artifacts_python_${{ matrix.python-version }}/version.txt # - name: Upload artifacts diff --git a/.github/workflows/pypi-build-and-deploy.yml b/.github/workflows/pypi-build-and-deploy.yml index c31d7e0c0c..3a3ba9fb2a 100644 --- a/.github/workflows/pypi-build-and-deploy.yml +++ b/.github/workflows/pypi-build-and-deploy.yml @@ -24,7 +24,7 @@ jobs: with: fetch-depth: 0 - name: Set up Python 3.13 - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: "3.13" - name: Install pep517 @@ -42,9 +42,9 @@ jobs: --out-dir dist/ . # - name: Publish distribution to Test PyPI - # uses: pypa/gh-action-pypi-publish@v1.12.4 + # uses: pypa/gh-action-pypi-publish@v1.13.0 # with: # repository-url: https://test.pypi.org/legacy/ - name: Publish distribution 📦 to PyPI if: startsWith(github.ref, 'refs/tags') - uses: pypa/gh-action-pypi-publish@v1.12.4 + uses: pypa/gh-action-pypi-publish@v1.13.0 diff --git a/.github/workflows/run-tests-monitor.yml b/.github/workflows/run-tests-monitor.yml index 1c7b266694..1d725fc442 100644 --- a/.github/workflows/run-tests-monitor.yml +++ b/.github/workflows/run-tests-monitor.yml @@ -46,9 +46,9 @@ jobs: - name: Inspect environment run: conda list - name: Install pytest-monitor - run: pip install pytest-monitor + run: pip install --no-deps pytest-monitor - name: Install ESMValTool - run: pip install -e .[develop] 2>&1 | tee test_linux_artifacts_python_${{ matrix.python-version }}/install.txt + run: pip install --no-deps -e .[develop] 2>&1 | tee test_linux_artifacts_python_${{ matrix.python-version }}/install.txt - name: Run tests run: > pytest -n 2 -m "not installation" --db ../.pymon 2>&1 @@ -95,10 +95,10 @@ jobs: - name: Install git run: mamba install -c conda-forge git - name: Install pytest-monitor - run: pip install pytest-monitor + run: pip install --no-deps pytest-monitor - name: Install ESMValTool run: > - pip install -e .[develop] 2>&1 + pip install --no-deps -e .[develop] 2>&1 | tee test_osx_artifacts_python_${{ matrix.python-version }}/install.txt - name: Run tests run: > diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 4fcfb2fdbc..53b2b5bcc5 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -10,7 +10,7 @@ jobs: if: "github.repository == 'ESMValGroup/ESMValTool'" runs-on: ubuntu-latest steps: - - uses: actions/stale@v9 + - uses: actions/stale@v10 with: days-before-issue-stale: 1080 days-before-pr-stale: 360 diff --git a/.github/workflows/test-development.yml b/.github/workflows/test-development.yml index c27b504192..68eaf22f36 100644 --- a/.github/workflows/test-development.yml +++ b/.github/workflows/test-development.yml @@ -47,13 +47,13 @@ jobs: mamba --version 2>&1 | tee develop_test_linux_artifacts_python_${{ matrix.python-version }}/conda_version.txt python -V 2>&1 | tee develop_test_linux_artifacts_python_${{ matrix.python-version }}/python_version.txt - name: Install ESMValTool - run: pip install -e .[develop] 2>&1 | tee develop_test_linux_artifacts_python_${{ matrix.python-version }}/install.txt + run: pip install --no-deps -e .[develop] 2>&1 | tee develop_test_linux_artifacts_python_${{ matrix.python-version }}/install.txt - name: Install development version of ESMValCore run: | cd .. git clone https://github.com/ESMValGroup/ESMValCore.git cd ESMValCore - pip install -e .[develop] + pip install --no-deps -e .[develop] - name: Check code quality run: pre-commit run -a - name: Run tests diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 90ff680799..ffd2ae35bd 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -45,7 +45,7 @@ jobs: - name: Inspect environment run: conda list - name: Install ESMValTool - run: pip install -e .[develop] 2>&1 | tee test_linux_artifacts_python_${{ matrix.python-version }}/install.txt + run: pip install --no-deps -e .[develop] 2>&1 | tee test_linux_artifacts_python_${{ matrix.python-version }}/install.txt - name: Inspect environment run: conda list - name: Inspect environment @@ -101,7 +101,7 @@ jobs: - name: Install git run: mamba install -c conda-forge git - name: Install ESMValTool - run: pip install -e .[develop] 2>&1 | tee test_osx_artifacts_python_${{ matrix.python-version }}/install.txt + run: pip install --no-deps -e .[develop] 2>&1 | tee test_osx_artifacts_python_${{ matrix.python-version }}/install.txt - name: Inspect environment run: conda list - name: Check code quality diff --git a/CITATION.cff b/CITATION.cff index 7858465f5e..e3dc9bcd7d 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -450,11 +450,11 @@ authors: orcid: "https://orcid.org/0009-0007-0845-0953" cff-version: 1.2.0 -date-released: 2025-03-05 +date-released: 2025-09-04 doi: "10.5281/zenodo.3401363" license: "Apache-2.0" message: "If you use this software, please cite it using these metadata." repository-code: "https://github.com/ESMValGroup/ESMValTool/" title: ESMValTool -version: "v2.12.0" +version: "v2.13.0" ... diff --git a/conda-linux-64.lock b/conda-linux-64.lock index 0fa9dd0c25..356309f68f 100644 --- a/conda-linux-64.lock +++ b/conda-linux-64.lock @@ -1,6 +1,6 @@ # Generated by conda-lock. # platform: linux-64 -# input_hash: c694685ed22e42d88863c7aad95b3af63d0ed67202eef1f8058d8194ad82265c +# input_hash: 2220d1987625d17ebf2bf6c583d03033bd8179de023b88c10d4d171698aea745 @EXPLICIT https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2#d7c89558ba9fa0495403155b64376d81 https://conda.anaconda.org/conda-forge/noarch/_r-mutex-1.0.1-anacondar_1.tar.bz2#19f9db5f4f1b7f5ef5f6d67207f25f38 @@ -13,33 +13,36 @@ https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-4.18.0-he0 https://conda.anaconda.org/conda-forge/linux-64/libopentelemetry-cpp-headers-1.20.0-ha770c72_0.conda#96806e6c31dc89253daff2134aeb58f3 https://conda.anaconda.org/conda-forge/noarch/mpi-1.0.1-mpich.conda#1052de900d672ec8b3713b8e300a8f06 https://conda.anaconda.org/conda-forge/linux-64/nlohmann_json-3.12.0-h3f2d84a_0.conda#d76872d096d063e226482c99337209dc -https://conda.anaconda.org/conda-forge/linux-64/pandoc-3.7.0.2-ha770c72_0.conda#db0c1632047d38997559ce2c4741dd91 +https://conda.anaconda.org/conda-forge/linux-64/pandoc-3.8-ha770c72_0.conda#54043da44c7f3ede07619d68618ac28e https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda#d8d7293c5b37f39b2ac32940621c6592 https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda#94305520c52a4aa3f6c2b1ff6008d9f8 https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.8.3-hbd8a1cb_0.conda#74784ee3d225fc3dca89edb635b4e5cc https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2#f766549260d6815b0c52253f1fb1bb29 https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.44-h1423503_1.conda#0be7c6e070c19105f966d3758448d018 -https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-15.1.0-h4c094af_104.conda#05eec361e8eca1ad47bad0f8b97a9d67 +https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-15.1.0-h4c094af_105.conda#a38922dbdf037d78b3d00d6d0a0399da https://conda.anaconda.org/conda-forge/linux-64/libglvnd-1.7.0-ha4b6fd6_2.conda#434ca7e50e40f4918ab701e3facd59a0 -https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.1.0-h767d61c_4.conda#3baf8976c96134738bba224e9ef6b1e5 -https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-15.1.0-h4c094af_104.conda#608049d7d920f3c559197d4c5445d243 +https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.1.0-h767d61c_5.conda#dcd5ff1940cd38f6df777cac86819d60 +https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-15.1.0-h4c094af_105.conda#3bc809fa9c4b2cd49ed38fe555af5f99 https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.28-h4ee821c_8.conda#1bad93f0aa428d618875ef3a588a889e https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2#73aaf86a425cc6e73fcf236a5a46396d https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.44-h4bf12b8_1.conda#e45cfedc8ca5630e02c106ea36d2c5c6 https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2#fee5683a3f04bd15cbd8318b096a27ab https://conda.anaconda.org/conda-forge/linux-64/libopengl-1.7.0-ha4b6fd6_2.conda#7df50d44d4a14d6c31a2c54f2cd92157 -https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.1.0-h767d61c_4.conda#f406dcbb2e7bef90d793e50e79a2882b +https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.1.0-h767d61c_5.conda#264fbfba7fb20acf3b29cde153e345ce +https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.2-h39aace5_0.conda#791365c5f65975051e4e017b5da3abf5 https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.12.3-hb9d3cd8_0.conda#8448031a22c697fac3ed98d69e8a9160 +https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda#51a19bba1b8ebfb60df25cde030b7ebc https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.5-hb9d3cd8_0.conda#f7f0d6cc2dc986d42ac2689ec88192be +https://conda.anaconda.org/conda-forge/linux-64/fribidi-1.0.16-hb03c661_0.conda#f9f81ea472684d75b9dd8d0b328cf655 https://conda.anaconda.org/conda-forge/linux-64/json-c-0.18-h6688a6e_0.conda#38f5dbc9ac808e31c00650f7be1db93f https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda#b38117a3c920364aff79f870c984b4a3 https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hb03c661_4.conda#1d29d2e33fe59954af82ef54a8af3fe1 https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.23-h86f0d12_0.conda#27fe770decaf469a53f3e3a6d593067f https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.1-hecca717_0.conda#4211416ecba1866fab0c6470986c22d6 https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda#ede4673863426c0883c0063d853bbd85 -https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.1.0-h69a702a_4.conda#28771437ffcd9f3417c66012dc49a3be -https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.1.0-hcea5267_4.conda#8a4ab7ff06e4db0be22485332666da0f +https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.1.0-h69a702a_5.conda#069afdf8ea72504e48d23ae1171d951c +https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.1.0-hcea5267_5.conda#fbd4008644add05032b6764807ee2cba https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda#915f5995e94f60e9a4826e0b0920ee88 https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.0-hb9d3cd8_0.conda#9fa334557db9f63da6c9285fd2a48638 https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc @@ -47,8 +50,9 @@ https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda# https://conda.anaconda.org/conda-forge/linux-64/libnl-3.11.0-hb9d3cd8_0.conda#db63358239cbe1ff86242406d440e44a https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda#d864d34357c3b65a4b731f78c0801dc4 https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda#7c7927b404672409d9917d49bff5f2d6 -https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.1.0-h8f9b012_4.conda#3c376af8888c386b9d3d1c2701e2f3ab +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.1.0-h8f9b012_5.conda#4e02a49aaa9d5190cb630fa43528fbe6 https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.10.0-h202a827_0.conda#0f98f3e95272d118f7931b6bef69bfe5 +https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.1-he9a06e4_0.conda#af930c65e9a79a3423d6d36e265cef65 https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda#aea31d2e5b1091feca96fcfe945c3cf9 https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda#edb0dca6bc32e4f4789199455a1dbeb8 https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h280c20c_1002.conda#45161d96307e3a447cc3eb5896cf6f8c @@ -64,18 +68,15 @@ https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.12-hb9d3cd8_0.co https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.5-hb9d3cd8_0.conda#8035c64cb77ed555e3f150b7b3972480 https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.3-hb47aa4a_0.conda#607e13a8caac17f9a664bcab5302ce06 https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda#a77f85f77be52ff59391544bfe73390a -https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2#d9c69a24ad678ffce24c6543a0176b00 https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.9.0-h5e3027f_1.conda#220588a5c6c9341a39d9e399848e5554 https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.3.1-hafb2847_5.conda#e96cc668c0f9478f5771b37d57f90386 https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.2.3-hafb2847_5.conda#51ffa5a303e8256dcb176f14d78887b4 https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.2.7-hafb2847_1.conda#6d28d50637fac4f081a0903b4b33d56d -https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda#62ee74e96c5ebb0af99386de58cf9553 https://conda.anaconda.org/conda-forge/linux-64/capnproto-1.0.2-h766bdaa_3.conda#7ea5f8afe8041beee8bad281dee62414 https://conda.anaconda.org/conda-forge/linux-64/dav1d-1.2.1-hd590300_0.conda#418c6ca5929a611cbd69204907a83995 https://conda.anaconda.org/conda-forge/linux-64/epoxy-1.5.10-h166bdaf_1.tar.bz2#a089d06164afd2d511347d3f87214e0b https://conda.anaconda.org/conda-forge/linux-64/expat-2.7.1-hecca717_0.conda#6033d8c2bb9b460929d00ba54154614c https://conda.anaconda.org/conda-forge/linux-64/fmt-11.1.4-h07f6e7f_1.conda#288a90e722fd7377448b00b2cddcb90d -https://conda.anaconda.org/conda-forge/linux-64/fribidi-1.0.10-h36c2ea0_0.tar.bz2#ac7bc6a654f8f41b352b38f4051135f8 https://conda.anaconda.org/conda-forge/linux-64/geos-3.13.0-h5888daf_0.conda#40b4ab956c90390e407bb177f8a58bab https://conda.anaconda.org/conda-forge/linux-64/gettext-tools-0.25.1-h3f43e3d_1.conda#a59c05d22bdcbb4e984bf0c021a2a02f https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-h5888daf_1005.conda#d411fc29e338efb48c5fd4576d71d881 @@ -90,28 +91,30 @@ https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.4-h3f801dc_0.conda#01 https://conda.anaconda.org/conda-forge/linux-64/libasprintf-0.25.1-h3f43e3d_1.conda#3b0d184bc9404516d418d4509e418bdc https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hb03c661_4.conda#5cb5a1c9a94a78f5b23684bcb845338d https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hb03c661_4.conda#2e55011fa483edb8bfe3fd92e860cd79 +https://conda.anaconda.org/conda-forge/linux-64/libcap-2.76-h0b2e76d_0.conda#0f7f0c878c8dceb3b9ec67f5c06d6057 https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda#c277e0a4d549b03ac1e9d6cbbe3d017b https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda#172bf1cd1ff8629f2b1179945ed45055 https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda#a1cfcc585f0c42bf8d5546bb1dfb668d https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-0.25.1-h3f43e3d_1.conda#2f4de899028319b27eb7a4023be5dfd2 -https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.1.0-h69a702a_4.conda#53e876bc2d2648319e94c33c57b9ec74 +https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.1.0-h69a702a_5.conda#0c91408b3dec0b97e8a3c694845bd63b https://conda.anaconda.org/conda-forge/linux-64/libglu-9.0.3-h5888daf_1.conda#8422fcc9e5e172c91e99aef703b3ce65 https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.55-h3f2d84a_0.conda#2bd47db5807daade8500ed7ca4c512a4 https://conda.anaconda.org/conda-forge/linux-64/libhwy-1.3.0-h4c17acf_0.conda#c563a24389a37a802c72e0c1a11bdd56 https://conda.anaconda.org/conda-forge/linux-64/liblzma-devel-5.8.1-hb9d3cd8_2.conda#f61edadbb301530bd65a32646bd81552 https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.50-h421ea60_1.conda#7af8e91b0deb5f8e25d1a595dea79614 -https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-15.1.0-h97b714f_4.conda#9577e03ec70b7986ab78a3f057af0df8 +https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-15.1.0-h97b714f_5.conda#7c9027f66aaca7dcfb9688da0e6f7845 https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.20-h4ab18f5_0.conda#a587892d3c13b6621a6091be690dbca2 https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda#0b367fad34931cb79e0d6b7e5c06bb1c https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda#eecce068c7e4eddeb169591baac20ac4 -https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.1.0-h4852527_4.conda#2d34729cbc1da0ec988e57b13b712067 +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.1.0-h4852527_5.conda#8bba50c7f4679f08c861b597ad2bda6b https://conda.anaconda.org/conda-forge/linux-64/libudunits2-2.2.28-h40f5838_3.conda#4bdace082e911a3e1f1f0b721bed5b56 -https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda#40b61aab5c7ba9ff276c41cfffe6b80b https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.17.0-h8a09558_0.conda#92ed62436b625154323d40d5f2f11dd7 https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda#5aa797f8787fe7a17d1b0821485b5adc -https://conda.anaconda.org/conda-forge/linux-64/libxgboost-3.0.4-cpu_h2ebb00f_0.conda#111a58c45b9b9b3441f54c75f33c5a8e +https://conda.anaconda.org/conda-forge/linux-64/libxgboost-3.0.5-cpu_h2ebb00f_0.conda#56387561be0b718c64187e838734367a +https://conda.anaconda.org/conda-forge/linux-64/libzip-1.11.2-h6991a6a_0.conda#a7b27c075c9b7f459f1c022090697cba https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.10.0-h5888daf_1.conda#9de5350a85c4a20c685259b889aa6393 https://conda.anaconda.org/conda-forge/linux-64/nspr-4.37-h29cc59b_0.conda#d73ccc379297a67ed921bd55b38a6c6a +https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.44-hc749103_2.conda#31614c73d7b103ef76faa4d83d261d34 https://conda.anaconda.org/conda-forge/linux-64/pixman-0.46.4-h54a6638_1.conda#c01af13bdc553d1a8fbfff6e8db075f0 https://conda.anaconda.org/conda-forge/linux-64/pkg-config-0.29.2-h4bc722e_1009.conda#1bee70681f504ea424fb07cdb090c001 https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda#283b96675859b20a825f8fa30f311446 @@ -121,6 +124,7 @@ https://conda.anaconda.org/conda-forge/linux-64/svt-av1-3.1.2-hecca717_0.conda#9 https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda#a0116df4f4ed05c303811a837d5b39d8 https://conda.anaconda.org/conda-forge/linux-64/wayland-1.24.0-h3e06ad9_0.conda#0f2ca7906bf166247d1d760c3422cb8a https://conda.anaconda.org/conda-forge/linux-64/xorg-imake-1.0.10-h5888daf_0.conda#040f0ca9f518151897759ad09ea98b2d +https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.6-he73a12e_0.conda#1c74ff8c35dcadf952a16f752ca5aa49 https://conda.anaconda.org/conda-forge/linux-64/xorg-makedepend-1.0.9-hecca717_0.conda#8999feef4c34b20498fd33b6684676b3 https://conda.anaconda.org/conda-forge/linux-64/zfp-1.0.1-h909a3a2_3.conda#03b04e4effefa41aee638f8ba30a6e78 https://conda.anaconda.org/conda-forge/linux-64/zlib-1.3.1-hb9d3cd8_2.conda#c9f075ab2f33b3bbee9e62d4ad0a6cd8 @@ -130,36 +134,37 @@ https://conda.anaconda.org/conda-forge/linux-64/aom-3.9.1-hac33072_0.conda#34672 https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.19.0-h7962f60_2.conda#7a4be9867bab106d87febec673094a9e https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.6-he440d0b_1.conda#2c2fae981fd2afd00812c92ac47d023d https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hb03c661_4.conda#ca4ed8015764937c81b830f7f5b68543 +https://conda.anaconda.org/conda-forge/linux-64/brunsli-0.1-he3183e4_1.conda#799ebfe432cb3949e246b69278ef851c https://conda.anaconda.org/conda-forge/linux-64/bwidget-1.10.1-ha770c72_1.conda#983b92277d78c0d0ec498e460caa0e6d https://conda.anaconda.org/conda-forge/linux-64/c-blosc2-2.15.2-h3122c55_1.conda#2bc8d76acd818d7e79229f5157d5c156 https://conda.anaconda.org/conda-forge/linux-64/charls-2.4.2-h59595ed_0.conda#4336bd67920dd504cd8c6761d6a99645 -https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-15.1.0-h4393ad2_4.conda#bd50f28da1e011caf83ebfe967dbcc94 +https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-15.1.0-h4393ad2_5.conda#4c1dbd9316a6916e63439f79d7a81c4b https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.1-hbabe93e_0.conda#ff862eebdfeb2fd048ae9dc92510baca https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda#bd77f8da987968ec3927990495dc22e4 https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda#8b189310083baabfb622af68fd9d3ae3 https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda#3f43953b7d3fb3aaa1d0d0723d91e368 https://conda.anaconda.org/conda-forge/linux-64/libasprintf-devel-0.25.1-h3f43e3d_1.conda#fd9cf4a11d07f0ef3e44fc061611b1ed -https://conda.anaconda.org/conda-forge/linux-64/libcap-2.75-h39aace5_0.conda#c44c16d6976d2aebbd65894d7741e67e https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2#c965a5aa0d5c1c37ffc62dff36e28400 https://conda.anaconda.org/conda-forge/linux-64/libde265-1.0.15-h00ab1b0_0.conda#407fee7a5d7ab2dca12c9ca7f62310ad -https://conda.anaconda.org/conda-forge/linux-64/libfreetype6-2.13.3-h48d6fc4_1.conda#3c255be50a506c50765a93a6644f32fe +https://conda.anaconda.org/conda-forge/linux-64/libfreetype6-2.14.0-h73754d4_1.conda#df6bf113081fdea5b363eb5a7a5ceb69 https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-lib-1.11.1-hb9d3cd8_0.conda#8504a291085c9fb809b66cabd5834307 https://conda.anaconda.org/conda-forge/linux-64/libgettextpo-devel-0.25.1-h3f43e3d_1.conda#3f7a43b3160ec0345c9535a9f0d7908e -https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.1.0-h69a702a_4.conda#b1a97c0f2c4f1bb2b8872a21fc7e17a7 +https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.1.0-h69a702a_5.conda#41a5893c957ffed7f82b4005bc24866c +https://conda.anaconda.org/conda-forge/linux-64/libgit2-1.9.0-h502187d_1.conda#343d04dcd9d177c41e542256dd5e44d9 +https://conda.anaconda.org/conda-forge/linux-64/libglib-2.84.1-h2ff4ddf_0.conda#0305434da649d4fb48a425e588b79ea6 https://conda.anaconda.org/conda-forge/linux-64/libjxl-0.11.1-h0a47e8d_3.conda#509f4010a8345b36c81fa795dffcd25a -https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda#19e57602824042dfd0446292ef90488b +https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda#b499ce4b026493a13774bcf0f4c33849 https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_2.conda#dfc5aae7b043d9f56ba99514d5e60625 https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-5.29.3-h7460b1f_2.conda#25b96b519eb2ed19faeef1c12954e82b https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2025.06.26-hba17884_0.conda#f6881c04e6617ebba22d237c36f1b88e https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h97f6797_17.conda#e16e9b1333385c502bf915195f421934 https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.21.0-h0e7cc3e_0.conda#dcb95c0a98ba9ff737f7ae482aef7833 https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.0-hd9ff511_4.conda#6c1028898cf3a2032d9af46689e1b81a -https://conda.anaconda.org/conda-forge/linux-64/libzip-1.11.2-h6991a6a_0.conda#a7b27c075c9b7f459f1c022090697cba +https://conda.anaconda.org/conda-forge/linux-64/libudev1-257.9-h085a93f_0.conda#973f365f19c1d702bda523658a77de26 https://conda.anaconda.org/conda-forge/linux-64/libzopfli-1.0.3-h9c3ff4c_0.tar.bz2#c66fe2d123249af7651ebde8984c51c2 https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.10-h05a5f5f_0.conda#da01bb40572e689bd1535a5cee6b1d68 https://conda.anaconda.org/conda-forge/linux-64/nss-3.115-hc3c8bcf_0.conda#c8873d2f90ad15aaec7be6926f11b53d -https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.44-hc749103_2.conda#31614c73d7b103ef76faa4d83d261d34 -https://conda.anaconda.org/conda-forge/linux-64/python-3.13.5-hec9711d_102_cp313.conda#89e07d92cf50743886f41638d58c4328 +https://conda.anaconda.org/conda-forge/linux-64/python-3.13.7-h2b335a9_100_cp313.conda#724dcf9960e933838247971da07fe5cf https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h434a139_5.conda#353823361b1d27eb3960efb076dfcaf6 https://conda.anaconda.org/conda-forge/linux-64/s2geometry-0.11.1-h95c8b0b_4.conda#d2d4f669c120f84eb3870396adaf28c3 https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.15.3-h10b92b3_0.conda#227ea525af0489d8fcb030c7467e2957 @@ -168,19 +173,20 @@ https://conda.anaconda.org/conda-forge/linux-64/tktable-2.10-h8d826fa_7.conda#3a https://conda.anaconda.org/conda-forge/linux-64/udunits2-2.2.28-h40f5838_3.conda#6bb8deb138f87c9d48320ac21b87e7a1 https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.8-hac33072_0.conda#d71d3a66528853c0a1ac2c02d79a0284 https://conda.anaconda.org/conda-forge/linux-64/x265-3.5-h924138e_3.tar.bz2#e7f6ed84d4623d52ee581325c1587a6b -https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.6-he73a12e_0.conda#1c74ff8c35dcadf952a16f752ca5aa49 https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.12-h4f16b4b_0.conda#db038ce880f100acc74dba10302b5630 https://conda.anaconda.org/conda-forge/noarch/affine-2.4.0-pyhd8ed1ab_1.conda#8c4061f499edec6b8ac7000f6d586829 https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda#18fd895e0e775622906cdabfc3cf0fb4 https://conda.anaconda.org/conda-forge/noarch/alabaster-1.0.0-pyhd8ed1ab_1.conda#1fd9696649f65fd6611fcdb4ffec738a -https://conda.anaconda.org/conda-forge/linux-64/astroid-3.3.11-py313h78bf25f_0.conda#f349ba41a7da4f3fc90d63cbd82693c0 +https://conda.anaconda.org/conda-forge/linux-64/astroid-3.3.11-py313h78bf25f_1.conda#1351e4454619472afeed9475e451de3c https://conda.anaconda.org/conda-forge/noarch/asttokens-3.0.0-pyhd8ed1ab_1.conda#8f587de4bcf981e26228f268df374a9b +https://conda.anaconda.org/conda-forge/linux-64/atk-1.0-2.38.0-h04ea711_2.conda#f730d54ba9cd543666d7220c9f7ed563 https://conda.anaconda.org/conda-forge/noarch/attrs-25.3.0-pyh71513ae_0.conda#a10d11958cadc13fdb43df75f8b1903f https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.5.4-h2dcaabb_9.conda#2f2ffcdfeabac698297fce1259e51a2a https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.10.1-hb50fa74_1.conda#2bb746bfe603e4949d99404b25c639ea https://conda.anaconda.org/conda-forge/linux-64/backports.zoneinfo-0.2.1-py313h78bf25f_10.conda#8f3840df34d764e4ad928822acf671b3 https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hb03c661_4.conda#eaf3fbd2aa97c212336de38a51fe404e https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py313h7033f15_4.conda#bc8624c405856b1d047dd0a81829b08c +https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2#576d629e47797577ab0f1b351297ef4a https://conda.anaconda.org/conda-forge/noarch/certifi-2025.8.3-pyhd8ed1ab_0.conda#11f59985f49df4620890f3e746ed7102 https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda#57df494053e17dce2ac3a0b33e1b2a2e https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda#7e7d5ef1b9ed630e4a1c358d6bc62284 @@ -190,11 +196,12 @@ https://conda.anaconda.org/conda-forge/noarch/codespell-2.3.0-pyhd8ed1ab_1.conda https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7 https://conda.anaconda.org/conda-forge/noarch/config-0.5.1-pyhd8ed1ab_1.conda#f9822a82a4e83ae6fc5845916f95a21a https://conda.anaconda.org/conda-forge/noarch/configargparse-1.7.1-pyhe01879c_0.conda#18dfeef40f049992f4b46b06e6f3b497 -https://conda.anaconda.org/conda-forge/noarch/cpython-3.13.5-py313hd8ed1ab_102.conda#0401f31e3c9e48cebf215472aa3e7104 +https://conda.anaconda.org/conda-forge/noarch/cpython-3.13.7-py313hd8ed1ab_100.conda#c5623ddbd37c5dafa7754a83f97de01e https://conda.anaconda.org/conda-forge/linux-64/crc32c-2.7.1-py313h54dd161_2.conda#1b52ef3cbbb8a4108c78c7a73fe31450 https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833 https://conda.anaconda.org/conda-forge/linux-64/cyrus-sasl-2.1.28-hd9c7081_0.conda#cae723309a49399d2949362f4ab5c9e4 https://conda.anaconda.org/conda-forge/linux-64/cython-3.1.3-py313h3484ee8_2.conda#3d7029008e2d91d41249fafbbbb87e00 +https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2#ecfff944ba3960ecb334b9a2663d708d https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda#9ce473d1d1be1cc3810856a48b3fab32 https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2#961b3a227b437d82ad7054484cfa71b2 https://conda.anaconda.org/conda-forge/noarch/dill-0.4.0-pyhd8ed1ab_0.conda#885745570573eb6a08e021841928297a @@ -204,17 +211,20 @@ https://conda.anaconda.org/conda-forge/noarch/dodgy-0.2.1-py_0.tar.bz2#62a69d073 https://conda.anaconda.org/conda-forge/noarch/ecmwf-api-client-1.6.5-pyhd8ed1ab_0.conda#228328f32f6bbc015f17ecfba1376c59 https://conda.anaconda.org/conda-forge/noarch/et_xmlfile-2.0.0-pyhd8ed1ab_1.conda#71bf9646cbfabf3022c8da4b6b4da737 https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.1-pyhd8ed1ab_1.conda#a71efeae2c160f6789900ba2631a2c90 -https://conda.anaconda.org/conda-forge/noarch/executing-2.2.0-pyhd8ed1ab_0.conda#81d30c08f9a3e556e8ca9e124b044d14 +https://conda.anaconda.org/conda-forge/noarch/executing-2.2.1-pyhd8ed1ab_0.conda#ff9efb7f7469aed3c4a8106ffa29593c https://conda.anaconda.org/conda-forge/linux-64/fftw-3.3.10-nompi_hf1063bd_110.conda#ee3e687b78b778db7b304e5b00a4dca6 https://conda.anaconda.org/conda-forge/noarch/filelock-3.19.1-pyhd8ed1ab_0.conda#9c418d067409452b2e87e0016257da68 https://conda.anaconda.org/conda-forge/noarch/findlibs-0.1.2-pyhd8ed1ab_0.conda#fa9e9ec7bf26619a8edd3e11155f15d6 https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h9dce30a_2.conda#ecb5d11305b8ba1801543002e69d2f2f https://conda.anaconda.org/conda-forge/linux-64/frozenlist-1.7.0-py313h6b9daa2_0.conda#3a0be7abedcbc2aee92ea228efea8eba -https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda#a31ce802cd0ebfce298f342c02757019 +https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.9.0-pyhd8ed1ab_0.conda#76f492bd8ba8a0fb80ffe16fc1a75b3b +https://conda.anaconda.org/conda-forge/linux-64/gdk-pixbuf-2.42.12-hb9ae30d_0.conda#201db6c2d9a3c5e46573ac4cb2e92f4f https://conda.anaconda.org/conda-forge/noarch/geographiclib-2.1-pyhd8ed1ab_0.conda#43dd16b113cc7b244d923b630026ff4f https://conda.anaconda.org/conda-forge/linux-64/gettext-0.25.1-h3f43e3d_1.conda#c42356557d7f2e37676e121515417e3b -https://conda.anaconda.org/conda-forge/linux-64/gfortran_impl_linux-64-15.1.0-h3b9cdf2_4.conda#82f37031ba4df0e97a222646ddcfd673 -https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-15.1.0-h6a1bac1_4.conda#f880f89a51a8f93ecdc3b82c4627dc99 +https://conda.anaconda.org/conda-forge/linux-64/gfortran_impl_linux-64-15.1.0-h3b9cdf2_5.conda#2a43dca23cae4befeac6e5e8a92f9d06 +https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.84.1-h4833e2c_0.conda#ddc06964296eee2b4070e65415b332fd +https://conda.anaconda.org/conda-forge/linux-64/gts-0.7.6-h977cf35_4.conda#4d8df0b0db060d33c9a702ada998a8fe +https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-15.1.0-h6a1bac1_5.conda#a8e2ebf76bfd4d0e67b1047c340cf915 https://conda.anaconda.org/conda-forge/linux-64/hdfeos2-2.20-h3e53b52_1004.conda#c21dc684e0e8efa507aba61a030f65e7 https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda#0a802cb9888dd14eeefc611f05c40b6e https://conda.anaconda.org/conda-forge/noarch/humanfriendly-10.0-pyh707e725_8.conda#7fe569c10905402ed47024fc481bb371 @@ -229,20 +239,17 @@ https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py313hc8edb43_1 https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.17-h717163a_0.conda#000e85703f0fd9594c81710dd5066471 https://conda.anaconda.org/conda-forge/noarch/legacy-cgi-2.6.3-pyh41aed27_0.conda#810ba135fa1cdbf8b6bddc59e8d114ae https://conda.anaconda.org/conda-forge/linux-64/libavif16-1.3.0-h6395336_2.conda#c09c4ac973f7992ba0c6bb1aafd77bd4 -https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-34_h59b9bed_openblas.conda#064c22bac20fecf2a99838f9b979374c +https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-35_h4a7cf45_openblas.conda#6da7e852c812a84096b68158574398d0 https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-hb8b1518_5.conda#d4a250da4737ee127fb1fa6452a9002e https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.14.1-h332b0f4_0.conda#45f6713cb00f124af300342512219182 -https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.13.3-ha770c72_1.conda#51f5be229d83ecd401fb369ab96ae669 -https://conda.anaconda.org/conda-forge/linux-64/libgit2-1.9.0-h502187d_1.conda#343d04dcd9d177c41e542256dd5e44d9 -https://conda.anaconda.org/conda-forge/linux-64/libglib-2.84.1-h2ff4ddf_0.conda#0305434da649d4fb48a425e588b79ea6 +https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.0-ha770c72_1.conda#9a8133acc0913a6f5d83cb8a1bad4f2d https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-hf539b9f_1021.conda#e8c7620cc49de0c6a2349b6dd6e39beb -https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-257.7-h4e0b6ca_0.conda#1e12c8aa74fa4c3166a9bdc135bc4abf -https://conda.anaconda.org/conda-forge/linux-64/libudev1-257.7-hbe16f8c_0.conda#5a23e52bd654a5297bd3e247eebab5a3 +https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-257.9-h996ca69_0.conda#b6d222422c17dc11123e63fae4ad4178 https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.6.0-h9635ea4_0.conda#2a4575ed55e0a4346722aac07ccd2b23 https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.13.8-h04c0eec_1.conda#10bcbd05e1c1c9d652fccb42b776a9fa https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.44.0-py313hfdae721_2.conda#dd0d7947635c0c524608eab7db55dcc9 https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2#91e27ef3d05cc772ce627e51cff111c4 -https://conda.anaconda.org/conda-forge/linux-64/lz4-4.4.4-py313h8756d67_0.conda#c56653951f28dcd2c5be9338208b23df +https://conda.anaconda.org/conda-forge/linux-64/lz4-4.4.4-py313hdd09ace_1.conda#a74a807c0c69bc6326fbcaa143f6fcd0 https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.2-py313h8060acc_1.conda#21b62c55924f01b6eef6827167b46acb https://conda.anaconda.org/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_1.conda#827064ddfe0de2917fb29f1da4f8f533 https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_1.conda#592132998493b3ff25fd7479396e8351 @@ -250,7 +257,7 @@ https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.1.1-py313h7037e https://conda.anaconda.org/conda-forge/linux-64/multidict-6.6.3-py313h8060acc_0.conda#0cabb3f2ba71300370fcebe973d9ae38 https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609 https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.1.0-pyha770c72_0.conda#e9c622e0d00fa24a6292279af3ab6d06 -https://conda.anaconda.org/conda-forge/noarch/narwhals-2.2.0-pyhcf101f3_0.conda#7b058c5f94d7fdfde0f91e3f498b81fc +https://conda.anaconda.org/conda-forge/noarch/narwhals-2.4.0-pyhcf101f3_0.conda#bc703ec04a2f051e89522821489fac26 https://conda.anaconda.org/conda-forge/noarch/natsort-8.4.0-pyh29332c3_1.conda#0aa03903d33997f3886be58abc890aef https://conda.anaconda.org/conda-forge/noarch/networkx-3.5-pyhe01879c_0.conda#16bff3d37a4f99e3aa089c36c2b8d650 https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.3-h55fea9a_1.conda#01243c4aaf71bde0297966125aea4706 @@ -282,12 +289,12 @@ https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.2-py313h8060acc_2.con https://conda.anaconda.org/conda-forge/linux-64/re2-2025.06.26-h9925aae_0.conda#2b4249747a9091608dbff2bd22afde44 https://conda.anaconda.org/conda-forge/noarch/retrying-1.4.2-pyhe01879c_0.conda#128b46a47ea164f9a8659cb6da2f3555 https://conda.anaconda.org/conda-forge/noarch/roman-numerals-py-3.1.0-pyhd8ed1ab_0.conda#5f0f24f8032c2c1bb33f59b75974f5fc -https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.27.1-py313h843e2db_0.conda#f713aec06900657c138e60dc61889557 -https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml.clib-0.2.8-py313h536fd9c_1.conda#d3400df9c9d0b58368bc0c0fc2591c39 +https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.27.1-py313h843e2db_1.conda#06c117e49934b564ef9ff6e61f279301 +https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml.clib-0.2.12-py313h07c4f96_1.conda#4b32c72300aff010ef2174a337a6fe44 https://conda.anaconda.org/conda-forge/noarch/semver-3.0.4-pyhd8ed1ab_0.conda#982aa48accc06494cbd2b51af69e17c7 https://conda.anaconda.org/conda-forge/noarch/setoptconf-tmp-0.3.1-pyhd8ed1ab_0.tar.bz2#af3e36d4effb85b9b9f93cd1db0963df https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e -https://conda.anaconda.org/conda-forge/linux-64/simplejson-3.20.1-py313h536fd9c_0.conda#437534319ed04460285b22de478b9cec +https://conda.anaconda.org/conda-forge/linux-64/simplejson-3.20.1-py313h07c4f96_1.conda#80ed7dab3a6ea5561f0628cc6eb32b76 https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3 https://conda.anaconda.org/conda-forge/noarch/smmap-5.0.2-pyhd8ed1ab_0.conda#87f47a78808baf2fa1ea9c315a1e48f1 https://conda.anaconda.org/conda-forge/noarch/snowballstemmer-3.0.1-pyhd8ed1ab_0.conda#755cf22df8693aa0d1aec1c123fa5863 @@ -301,15 +308,15 @@ https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda#b0d https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda#30a0a26c8abccf4b7991d590fe17c699 https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.13.3-pyha770c72_0.conda#146402bf0f11cbeb8f781fa4309a95d3 https://conda.anaconda.org/conda-forge/noarch/toolz-1.0.0-pyhd8ed1ab_1.conda#40d0ed782a8aaa16ef248e68c06c168d -https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py313h07c4f96_0.conda#01082edc358a2285f6480b918e35e1af +https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py313h07c4f96_1.conda#45821154b9cb2fb63c2b354c76086954 https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_1.conda#019a7385be9af33791c989871317e1ed -https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2025.8.26.11-pyhd8ed1ab_0.conda#7e40fb5d7eceaaf74900b3929dddfb06 +https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2025.9.9.12-pyhd8ed1ab_0.conda#bce978c850a0dafcda9d7bdb308b85a2 https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d https://conda.anaconda.org/conda-forge/linux-64/ujson-5.11.0-py313h5d5ffb9_1.conda#3d6453bc28f78bfa0841b18dec45353e https://conda.anaconda.org/conda-forge/noarch/untokenize-0.1.1-pyhd8ed1ab_2.conda#a7bafc627d25a939bb68206bd7abd483 https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_1.conda#b68980f2495d096e71c7fd9d7ccf63e6 https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_3.conda#2841eb5bfc75ce15e9a0054b98dcd64d -https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.17.3-py313h07c4f96_0.conda#f8dfa5642dad7a5beb632557396058cf +https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.17.3-py313h07c4f96_1.conda#c2662497e9a9ff2153753682f53989c9 https://conda.anaconda.org/conda-forge/linux-64/xerces-c-3.2.5-h988505b_2.conda#9dda9667feba914e0e80b95b82f7402b https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.45-hb9d3cd8_0.conda#397a013c2dc5145a70737871aaa87e98 https://conda.anaconda.org/conda-forge/noarch/xlsxwriter-3.2.5-pyhd8ed1ab_0.conda#e1a4f5c954b3e157fe9575b512c54193 @@ -318,26 +325,24 @@ https://conda.anaconda.org/conda-forge/linux-64/xorg-libxfixes-6.0.1-hb9d3cd8_0. https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.12-hb9d3cd8_0.conda#96d57aba173e878a2089d5638016dc5e https://conda.anaconda.org/conda-forge/linux-64/xorg-libxt-1.3.1-hb9d3cd8_0.conda#279b0de5f6ba95457190a1c459a64e31 https://conda.anaconda.org/conda-forge/noarch/xyzservices-2025.4.0-pyhd8ed1ab_0.conda#5663fa346821cd06dc1ece2c2600be2c -https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h3b0a872_7.conda#3947a35e916fcc6b9825449affbf4214 +https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h387f397_9.conda#8035e5b54c08429354d5d64027041cad https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_1.conda#e52c2ef711ccf31bb7f70ca87d144b9e https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhd8ed1ab_0.conda#df5e78d904988eb55042c0c97446079f https://conda.anaconda.org/conda-forge/noarch/accessible-pygments-0.0.5-pyhd8ed1ab_1.conda#74ac5069774cdbc53910ec4d631a3999 https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda#421a865222cd0c9d83ff08bc78bf3a61 -https://conda.anaconda.org/conda-forge/linux-64/atk-1.0-2.38.0-h04ea711_2.conda#f730d54ba9cd543666d7220c9f7ed563 https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.9.0-h59ae206_7.conda#ca157ee18f02c33646d975995631b39e https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.13.0-h35de22e_3.conda#df3ea458761b3fdf9e6eb7d8a38c121a https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.14.0-h5cfcd09_0.conda#0a8838771cc2e985cd295e01ae83baf1 https://conda.anaconda.org/conda-forge/noarch/babel-2.17.0-pyhd8ed1ab_0.conda#0a01c169f0ab0f91b26e77a3301fbfe4 https://conda.anaconda.org/conda-forge/noarch/bleach-6.2.0-pyh29332c3_4.conda#f0b4c8e370446ef89797608d60a564b3 -https://conda.anaconda.org/conda-forge/linux-64/brunsli-0.1-h9c3ff4c_0.tar.bz2#c1ac6229d0bfd14f8354ff9ad2a26cad -https://conda.anaconda.org/conda-forge/linux-64/cffi-1.17.1-py313hfab6e84_0.conda#ce6386a5892ef686d6d680c345c40ad1 +https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2#9b347a7ec10940d3f7941ff6c460b551 +https://conda.anaconda.org/conda-forge/linux-64/cffi-1.17.1-py313hf01b4d8_1.conda#c4a0f01c46bc155d205694bec57bd709 https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.5.0-h44b4e7a_0.conda#e022d77b8b02682e2f723f132f305965 https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1.2-pyhd8ed1ab_0.conda#e9b05deb91c013e5224672a4ba9cf8d1 https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_2.conda#55c7804f428719241a90b152016085a1 -https://conda.anaconda.org/conda-forge/linux-64/coverage-7.10.6-py313h3dea7bd_0.conda#75fc30961c06fb9b0543aef067efe2fd +https://conda.anaconda.org/conda-forge/linux-64/coverage-7.10.6-py313h3dea7bd_1.conda#7d28b9543d76f78ccb110a1fdf5a0762 https://conda.anaconda.org/conda-forge/linux-64/curl-8.14.1-h332b0f4_0.conda#60279087a10b4ab59a70daa838894e4b https://conda.anaconda.org/conda-forge/linux-64/cytoolz-1.0.1-py313h536fd9c_0.conda#e886bb6a3c24f8b9dd4fcd1d617a1f64 -https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2#ecfff944ba3960ecb334b9a2663d708d https://conda.anaconda.org/conda-forge/noarch/deprecated-1.2.18-pyhd8ed1ab_0.conda#0cef44b1754ae4d6924ac0eef6b9fdbe https://conda.anaconda.org/conda-forge/noarch/docformatter-1.7.5-pyhd8ed1ab_1.conda#af53e838cab8872e7e014a8336aaaffb https://conda.anaconda.org/conda-forge/noarch/donfig-0.8.1.post1-pyhd8ed1ab_1.conda#c56a7fa5597ad78b62e1f5d21f7f8b8f @@ -345,12 +350,9 @@ https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0. https://conda.anaconda.org/conda-forge/noarch/fire-0.7.0-pyhd8ed1ab_0.conda#c8eefdf1e822c56a6034602e67bc92a5 https://conda.anaconda.org/conda-forge/noarch/flake8-7.3.0-pyhd8ed1ab_0.conda#04a55140685296b25b79ad942264c0ef https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.59.2-py313h3dea7bd_0.conda#f3968013ee183bd2bce0e0433abd4384 -https://conda.anaconda.org/conda-forge/linux-64/freetype-2.13.3-ha770c72_1.conda#9ccd736d31e0c6e41f54e704e5312811 -https://conda.anaconda.org/conda-forge/linux-64/gdk-pixbuf-2.42.12-hb9ae30d_0.conda#201db6c2d9a3c5e46573ac4cb2e92f4f +https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.0-ha770c72_1.conda#01d8409cffb4cb37b5007f5c46ffa55b https://conda.anaconda.org/conda-forge/noarch/geopy-2.4.1-pyhd8ed1ab_2.conda#40182a8d62a61d147ec7d3e4c5c36ac2 https://conda.anaconda.org/conda-forge/noarch/gitdb-4.0.12-pyhd8ed1ab_0.conda#7c14f3706e099f8fcd47af2d494616cc -https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.84.1-h4833e2c_0.conda#ddc06964296eee2b4070e65415b332fd -https://conda.anaconda.org/conda-forge/linux-64/gts-0.7.6-h977cf35_4.conda#4d8df0b0db060d33c9a702ada998a8fe https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda#164fc43f0b53b6e3a7bc7dce5e4f1dc9 https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.7.0-pyhe01879c_1.conda#63ccfdc3a3ce25b027b8767eb722fca8 https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.2-pyhd8ed1ab_1.conda#a4f4c5dc9b80bc50e0d3dc4e6e8f1bd9 @@ -360,11 +362,11 @@ https://conda.anaconda.org/conda-forge/noarch/jupyter_core-5.8.1-pyh31011fe_0.co https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_2.conda#fd312693df06da3578383232528c468d https://conda.anaconda.org/conda-forge/noarch/latexcodec-2.0.1-pyh9f0ad1d_0.tar.bz2#8d67904973263afd2985ba56aa2d6bb4 https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.7-h75ea233_4.conda#b80309616f188ac77c4740acba40f796 -https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-34_he106b2a_openblas.conda#148b531b5457ad666ed76ceb4c766505 +https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-35_h0358290_openblas.conda#8aa3389d36791ecd31602a247b1f3641 https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.71.0-h8e591d7_1.conda#c3cfd72cbb14113abee7bbd86f44ad69 https://conda.anaconda.org/conda-forge/linux-64/libheif-1.19.7-gpl_hc18d805_100.conda#1db2693fa6a50bef58da2df97c5204cb https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.12.1-default_h3d81e11_1000.conda#d821210ab60be56dd27b5525ed18366d -https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-34_h7ac8fdf_openblas.conda#f05a31377b4d9a8d8740f47d1e70b70e +https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-35_h47877c9_openblas.conda#aa0b36b71d44f74686f13b9bfabec891 https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.11.0-he8b52b9_0.conda#74e91c36d0eef3557915c68b6c2bef96 https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.43-h7a3aeb2_0.conda#31059dc620fa57d787e3899ed0421e6d https://conda.anaconda.org/conda-forge/noarch/logilab-common-1.7.3-py_0.tar.bz2#6eafcdf39a7eb90b6d951cfff59e8d3b @@ -374,10 +376,10 @@ https://conda.anaconda.org/conda-forge/noarch/mistune-3.1.4-pyhcf101f3_0.conda#f https://conda.anaconda.org/conda-forge/noarch/nested-lookup-0.2.25-pyhd8ed1ab_2.conda#cc2da171723d50bc1a7f8a53a8d0319f https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda#7ba3f09fceae6a120d664217e58fe686 https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878 -https://conda.anaconda.org/conda-forge/linux-64/openpyxl-3.1.5-py313h9c9eb82_1.conda#fa6ac78dbc7b71ca9f599f8a3f4b5b32 +https://conda.anaconda.org/conda-forge/linux-64/openpyxl-3.1.5-py313ha4be090_2.conda#b60c0b0eb91e1a7d6761f0a21219f468 https://conda.anaconda.org/conda-forge/noarch/partd-1.4.2-pyhd8ed1ab_0.conda#0badf9c54e24cecfb0ad2f99d680c163 https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_1.conda#d0d408b1f18883a944376da5cf8101ea -https://conda.anaconda.org/conda-forge/linux-64/pillow-11.3.0-py313h8db990d_0.conda#114a74a6e184101112fdffd3a1cb5b8f +https://conda.anaconda.org/conda-forge/linux-64/pillow-11.3.0-py313hf46931b_1.conda#8c2259ea124159da6660cbc3e68e30a2 https://conda.anaconda.org/conda-forge/noarch/plotly-6.3.0-pyhd8ed1ab_0.conda#5366b5b366cd3a2efa7e638792972ea1 https://conda.anaconda.org/conda-forge/linux-64/proj-9.5.1-h0054346_0.conda#398cabfd9bd75e90d0901db95224f25f https://conda.anaconda.org/conda-forge/linux-64/prometheus-cpp-1.3.0-ha5d0236_0.conda#a83f6a2fdc079e643237887a37460668 @@ -386,13 +388,13 @@ https://conda.anaconda.org/conda-forge/noarch/pydocstyle-6.3.0-pyhd8ed1ab_1.cond https://conda.anaconda.org/conda-forge/noarch/pylint-3.3.8-pyhe01879c_0.conda#f5ba3b2c52e855b67fc0abedcebc9675 https://conda.anaconda.org/conda-forge/noarch/pyproject_hooks-1.2.0-pyhd8ed1ab_1.conda#d4582021af437c931d7d77ec39007845 https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda#5b8d21249ff20967101ffa321cab24e8 -https://conda.anaconda.org/conda-forge/noarch/python-gil-3.13.5-h4df99d1_102.conda#2eabcede0db21acee23c181db58b4128 +https://conda.anaconda.org/conda-forge/noarch/python-gil-3.13.7-h4df99d1_100.conda#47a123ca8e727d886a2c6d0c71658f8c https://conda.anaconda.org/conda-forge/noarch/python-utils-3.9.1-pyhff2d567_1.conda#24ed1dc544b101075fa7462be5c3a5c5 https://conda.anaconda.org/conda-forge/noarch/rdflib-7.1.4-pyh29332c3_0.conda#71da3f0c8d0e2900ef9b6502224084ae https://conda.anaconda.org/conda-forge/linux-64/rdma-core-59.0-hecca717_0.conda#d95e4c5679876a9d3f2211263f75dc9c https://conda.anaconda.org/conda-forge/noarch/referencing-0.36.2-pyh29332c3_0.conda#9140f1c09dd5489549c6a33931b943c7 https://conda.anaconda.org/conda-forge/noarch/requirements-detector-1.4.0-pyhd8ed1ab_0.conda#0ea0fc9f236ef861b56e707b77d56a63 -https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.18.15-py313h07c4f96_0.conda#0c55cd89145a45f9abe320452c4a806d +https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.18.15-py313h07c4f96_1.conda#ac75ef5019230e7f953a752241c5af1f https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.3-pyhd8ed1ab_1.conda#b1b505328da7a6b246787df4b5a49fbc https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.4.0-pyhd8ed1ab_0.conda#f1acf5fdefa8300de697982bcb1761c9 https://conda.anaconda.org/conda-forge/noarch/tqdm-4.67.1-pyhd8ed1ab_1.conda#9efbfdc37242619130ea42b1cc4ed861 @@ -418,8 +420,8 @@ https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.10.0-h113e6 https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.8.0-h736e048_1.conda#13de36be8de3ae3f05ba127631599213 https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.13.5-pyha770c72_0.conda#de0fd9702fd4c1186e930b8c35af6b6b https://conda.anaconda.org/conda-forge/noarch/bleach-with-css-6.2.0-h82add2a_4.conda#a30e9406c873940383555af4c873220d -https://conda.anaconda.org/conda-forge/noarch/cattrs-25.1.1-pyhd8ed1ab_0.conda#d08b845123e17fb0e69fa17709635378 -https://conda.anaconda.org/conda-forge/linux-64/cryptography-45.0.6-py313hafb0bba_0.conda#48c1b1c5e42c8df2e8fa0343b41fbb40 +https://conda.anaconda.org/conda-forge/noarch/cattrs-25.2.0-pyhd8ed1ab_0.conda#51c25626ee83dd48d1bf2f27669e1249 +https://conda.anaconda.org/conda-forge/linux-64/cryptography-45.0.7-py313hafb0bba_1.conda#5550fcb08b89b0c7d565d39a5f666225 https://conda.anaconda.org/conda-forge/noarch/dask-core-2025.7.0-pyhe01879c_1.conda#3293644021329a96c606c3d95e180991 https://conda.anaconda.org/conda-forge/noarch/flake8-polyfill-1.0.2-pyhd8ed1ab_1.conda#4f282d2b2904441afca6367764fa718e https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee @@ -428,27 +430,27 @@ https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.4-h3551947_0.conda#5 https://conda.anaconda.org/conda-forge/noarch/gitpython-3.1.45-pyhff2d567_0.conda#b91d463ea8be13bcbe644ae8bc99c39f https://conda.anaconda.org/conda-forge/linux-64/gsl-2.7-he838d99_0.tar.bz2#fec079ba39c9cca093bf4c00001825de https://conda.anaconda.org/conda-forge/noarch/ipython-8.37.0-pyh8f84b5b_0.conda#177cfa19fe3d74c87a8889286dc64090 -https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2025.4.1-pyh29332c3_0.conda#41ff526b1083fde51fbdc93f29282e0e +https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2025.9.1-pyhcf101f3_0.conda#439cd0f567d697b20a8f45cb70a1005a https://conda.anaconda.org/conda-forge/noarch/lazy-loader-0.4-pyhd8ed1ab_2.conda#d10d9393680734a8febc4b362a4c94f2 https://conda.anaconda.org/conda-forge/linux-64/libfabric1-2.2.0-h3ff6011_2.conda#3b164268e973edc91d7e18d0964cc104 https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.36.0-hc4361e1_1.conda#ae36e6296a8dd8e8a9a8375965bf6398 https://conda.anaconda.org/conda-forge/linux-64/libopentelemetry-cpp-1.20.0-hd1b1c89_0.conda#e1185384cc23e3bbf85486987835df94 https://conda.anaconda.org/conda-forge/linux-64/libpq-17.6-h3675c94_1.conda#bcee8587faf5dce5050a01817835eaed https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h1b4f908_12.conda#641f91ac6f984a91a78ba2411fe4f106 -https://conda.anaconda.org/conda-forge/linux-64/lxml-6.0.1-py313h6b0e12e_0.conda#6a8f925116fb9dccafee0076e7742a84 +https://conda.anaconda.org/conda-forge/linux-64/lxml-6.0.1-py313h6b0e12e_1.conda#8be2c161f44871983e1389fc77f4e357 https://conda.anaconda.org/conda-forge/linux-64/numpy-2.2.6-py313h17eae1a_0.conda#7a2d2f9adecd86ed5c29c2115354f615 https://conda.anaconda.org/conda-forge/noarch/progressbar2-4.5.0-pyhd8ed1ab_1.conda#e557abf678a0bf100fe7cf9d2b4f4a72 https://conda.anaconda.org/conda-forge/noarch/pybtex-0.25.1-pyhd8ed1ab_0.conda#9c25a850410220d31085173fbfdfa191 https://conda.anaconda.org/conda-forge/noarch/pylint-plugin-utils-0.9.0-pyhd8ed1ab_0.conda#5464312e4638260cd1bd81dc05a56697 https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.7.1-py313hdb96ca5_0.conda#82955f9ccbfc0ecfd9c34dbf8a0767be -https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.1-pyhd8ed1ab_0.conda#a49c2283f24696a7b30367b7346a0144 +https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda#1f987505580cb972cf28dc5f74a0f81b https://conda.anaconda.org/conda-forge/noarch/python-build-1.3.0-pyhff2d567_0.conda#ed5d43e9ef92cc2a9872f9bdfe94b984 https://conda.anaconda.org/conda-forge/noarch/rich-14.1.0-pyhe01879c_0.conda#c41e49bd1f1479bed6c6300038c5466e -https://conda.anaconda.org/conda-forge/linux-64/ucx-1.19.0-h604c2e6_2.conda#5f21ebddea5e9a4921e59e9ff63e0c95 +https://conda.anaconda.org/conda-forge/linux-64/ucx-1.19.0-hc93acc0_3.conda#ce612014e626c1dc5a91601ddd9366ca https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py313h33d0bda_5.conda#5bcffe10a500755da4a71cc0fb62a420 https://conda.anaconda.org/conda-forge/linux-64/xorg-libxaw-1.0.16-hb9d3cd8_0.conda#7c0a9bf62d573409d12ad14b362a96e5 https://conda.anaconda.org/conda-forge/linux-64/xorg-libxtst-1.2.5-hb9d3cd8_3.conda#7bbe9a0cc0df0ac5f5a8ad6d6a11af2f -https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.23.0-py313h07c4f96_3.conda#0720da5e63f3c93647350cc217fdf2bc +https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.24.0-py313h736c1ce_1.conda#2ca7715c89929da3d648144f8b34cf99 https://conda.anaconda.org/conda-forge/linux-64/at-spi2-core-2.40.3-h0630a04_0.tar.bz2#8cb2fc4cd6cc63f1369cfa318f581cc3 https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.32.5-h2811929_3.conda#c38733af13b256b8893a6af0d2a1d346 https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.13.0-h3cf044e_1.conda#7eb66060455c7a47d9dcdbfa9f46579b @@ -457,7 +459,7 @@ https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.4-py313h29aa505_2.con https://conda.anaconda.org/conda-forge/noarch/colorspacious-1.1.2-pyhecae5ae_1.conda#04151bb8e351c6209caad045e4b1f4bd https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.3-py313h7037e92_2.conda#6c8b4c12099023fcd85e520af74fd755 https://conda.anaconda.org/conda-forge/noarch/eofs-2.0.0-pyhff2d567_0.conda#a3cce45423d73c3d4420b71351e71fef -https://conda.anaconda.org/conda-forge/noarch/identify-2.6.13-pyhd8ed1ab_0.conda#52083ce9103ec11c8130ce18517d3e83 +https://conda.anaconda.org/conda-forge/noarch/identify-2.6.14-pyhd8ed1ab_0.conda#34a8172d191193030438d7b30bcdeaf5 https://conda.anaconda.org/conda-forge/linux-64/imagecodecs-2024.12.30-py313h50071f9_0.conda#297b1ff97e784ec7b5f4d17772cfc186 https://conda.anaconda.org/conda-forge/noarch/imageio-2.37.0-pyhfb79c49_0.conda#b5577bc2212219566578fd5af9993af6 https://conda.anaconda.org/conda-forge/linux-64/jasper-4.2.8-he3c4edf_0.conda#a04073db11c2c86c555fb088acc8f8c1 @@ -478,14 +480,14 @@ https://conda.anaconda.org/conda-forge/noarch/pylint-django-2.6.1-pyhd8ed1ab_1.c https://conda.anaconda.org/conda-forge/noarch/pylint-flask-0.6-py_0.tar.bz2#5a9afd3d0a61b08d59eed70fab859c1b https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda#63d6393b45f33dc0782d73f6d8ae36a0 https://conda.anaconda.org/conda-forge/linux-64/pys2index-0.1.5-py313h421e82b_5.conda#17c3a19447b0a6b6b84df9fc1240173a -https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.2.1-pyhd8ed1ab_0.conda#ce978e1b9ed8b8d49164e90a5cdc94cd +https://conda.anaconda.org/conda-forge/noarch/pytest-cov-7.0.0-pyhd8ed1ab_0.conda#c4100b2ecb47d2d72fd835253e596d2f https://conda.anaconda.org/conda-forge/noarch/pytest-env-1.1.5-pyhd8ed1ab_1.conda#b92ee0cf3b26087455244248b1a04e0a https://conda.anaconda.org/conda-forge/noarch/pytest-metadata-3.1.1-pyhd8ed1ab_1.conda#c4b7295798eff80144dc4ca4551efa80 -https://conda.anaconda.org/conda-forge/noarch/pytest-mock-3.14.1-pyhd8ed1ab_0.conda#11b313328806f1dfbab0eb1d219388c4 +https://conda.anaconda.org/conda-forge/noarch/pytest-mock-3.15.0-pyhd8ed1ab_0.conda#e0298baaeb970b93da8f01e7c275092a https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda#8375cfbda7c57fbceeda18229be10417 https://conda.anaconda.org/conda-forge/linux-64/python-stratify-0.4.0-py313h07c4f96_1.conda#5ccb0566ef58b0d9b3973ff1da006593 https://conda.anaconda.org/conda-forge/linux-64/pywavelets-1.9.0-py313h29aa505_1.conda#952d8629c239c33a1a3087aa373f965f -https://conda.anaconda.org/conda-forge/linux-64/pyzmq-27.0.2-py312hfb55c3c_2.conda#ba7305f9723cc16cf79288e0bb7b34b2 +https://conda.anaconda.org/conda-forge/linux-64/pyzmq-27.1.0-py312hfb55c3c_0.conda#3399d43f564c905250c1aea268ebb935 https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.1-py313h11c21cd_1.conda#270039a4640693aab11ee3c05385f149 https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.7-py313h3f71f02_0.conda#23fcbc2e378354ce32a78872d3d3c934 https://conda.anaconda.org/conda-forge/noarch/snuggs-1.4.7-pyhd8ed1ab_2.conda#9aa358575bbd4be126eaa5e0039f835c @@ -508,7 +510,7 @@ https://conda.anaconda.org/conda-forge/linux-64/libgdal-jp2openjpeg-3.10.2-ha1d2 https://conda.anaconda.org/conda-forge/linux-64/libgdal-pg-3.10.2-ha83508c_0.conda#a6fc13714f9652693ed4840b312fd4d2 https://conda.anaconda.org/conda-forge/linux-64/libgdal-postgisraster-3.10.2-ha83508c_0.conda#f5c3c642cb48f8a2abf18b6d06f2d7cc https://conda.anaconda.org/conda-forge/linux-64/libgdal-xls-3.10.2-h5b36e33_0.conda#010cc2702a2c8257ad3a13709c702ef0 -https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.10.5-py313h683a580_0.conda#9edc5badd11b451eb00eb8c492545fe2 +https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.10.6-py313h683a580_1.conda#0483ab1c5b6956442195742a5df64196 https://conda.anaconda.org/conda-forge/linux-64/mpich-4.3.1-h79b1c89_103.conda#33785b16c6b7235677cf877e95e8f520 https://conda.anaconda.org/conda-forge/noarch/myproxyclient-2.1.1-pyhd8ed1ab_1.conda#1efb1227abaf20324ceb7ac9c06bb86d https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_1.conda#bbe1963f1e47f594070ffe87cdf612ea @@ -518,15 +520,15 @@ https://conda.anaconda.org/conda-forge/noarch/prospector-1.17.3-pyhd8ed1ab_0.con https://conda.anaconda.org/conda-forge/noarch/pytest-html-4.1.1-pyhd8ed1ab_1.conda#010e50e74c467db278f1398a74106a04 https://conda.anaconda.org/conda-forge/linux-64/rasterio-1.4.3-py313ha085935_0.conda#fef1102f65353030d071283f631dca2a https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda#db0c6b99149880c8ba515cf4abe93ee4 -https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.7.1-py313h06d4379_0.conda#19b0fff5b5cb13e7d238cb7fae1b4e0b +https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.7.2-py313h06d4379_0.conda#f9b838aa75bd584fb85f46686f4f1453 https://conda.anaconda.org/conda-forge/noarch/seawater-3.3.5-pyhd8ed1ab_1.conda#3917cd49c30278aad07536ee77084eb0 https://conda.anaconda.org/conda-forge/noarch/sparse-0.17.0-pyhcf101f3_0.conda#1b59de14a7e5888f939611e1fe329e00 https://conda.anaconda.org/conda-forge/linux-64/statsmodels-0.14.5-py313ha014f3b_0.conda#dbce3900292d354644e8e146d140d852 -https://conda.anaconda.org/conda-forge/noarch/tifffile-2025.8.28-pyhd8ed1ab_0.conda#e0f7cde8a414346e6b92100d6e9253ce -https://conda.anaconda.org/conda-forge/noarch/xarray-2025.8.0-pyhd8ed1ab_0.conda#a7b1b2ffdbf18922945874ccbe1420aa +https://conda.anaconda.org/conda-forge/noarch/tifffile-2025.9.9-pyhd8ed1ab_0.conda#5a981012f5ca4fa6d6bdc49828b90e79 +https://conda.anaconda.org/conda-forge/noarch/xarray-2025.9.0-pyhd8ed1ab_0.conda#ebd60e8b77a2fc77a8d86892705ea245 https://conda.anaconda.org/conda-forge/noarch/zarr-3.1.2-pyhcf101f3_0.conda#2bdb3950ea64a365bfe9e6414e748a9b -https://conda.anaconda.org/conda-forge/linux-64/cartopy-0.25.0-py313h08cd8bf_0.conda#a2e864cbfb56ab6d36bc726a82426f2c -https://conda.anaconda.org/conda-forge/noarch/cf_xarray-0.10.7-pyhd8ed1ab_0.conda#8b42d5d0805c11575d78a6543863f869 +https://conda.anaconda.org/conda-forge/linux-64/cartopy-0.25.0-py313h08cd8bf_1.conda#a0d8dc5c90850d9f1a79f69c98aef0ff +https://conda.anaconda.org/conda-forge/noarch/cf_xarray-0.10.9-pyhd8ed1ab_0.conda#3dee614a07b35745c92cb789bf0a04cd https://conda.anaconda.org/conda-forge/noarch/chart-studio-1.1.0-pyhd8ed1ab_1.conda#a8dc13f40343dd9706cab9b9cbc49099 https://conda.anaconda.org/conda-forge/noarch/cmocean-4.0.3-pyhd8ed1ab_1.conda#dd71e4ec2fbffe38c0359976505f816e https://conda.anaconda.org/conda-forge/noarch/dask-jobqueue-0.9.0-pyhd8ed1ab_0.conda#a201de7d36907f2355426e019168d337 @@ -539,15 +541,17 @@ https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.2-pyhd8ed1ab_0.conda https://conda.anaconda.org/conda-forge/noarch/nc-time-axis-1.4.1-pyhd8ed1ab_1.conda#9a2be7d0089f5934b550933ca0d9fe85 https://conda.anaconda.org/conda-forge/linux-64/pango-1.56.3-h9ac818e_1.conda#21899b96828014270bd24fd266096612 https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.2-pyhd8ed1ab_3.conda#d2bbbd293097e664ffb01fc4cdaf5729 -https://conda.anaconda.org/conda-forge/noarch/py-xgboost-3.0.4-cpu_pyhe781eb1_0.conda#e567ca7bed4f534453420fbe94bd61fe +https://conda.anaconda.org/conda-forge/noarch/py-xgboost-3.0.5-cpu_pyh718b53a_0.conda#09f562777885bfb33ba031e2e788b28b https://conda.anaconda.org/conda-forge/noarch/pyroma-5.0-pyhd8ed1ab_0.conda#1eca59d994a61cb825c5d5e54484cc42 https://conda.anaconda.org/conda-forge/noarch/requests-cache-1.2.1-pyhd8ed1ab_1.conda#584e6aab3a5cffde537c575ad6a673ff -https://conda.anaconda.org/conda-forge/linux-64/scikit-image-0.25.2-py313ha87cce1_1.conda#751e6b4fdd6bb610824d1eba10887eb3 +https://conda.anaconda.org/conda-forge/linux-64/scikit-image-0.25.2-py313h08cd8bf_2.conda#9cb7a505504db754aaba7d434b04a742 https://conda.anaconda.org/conda-forge/noarch/seaborn-base-0.13.2-pyhd8ed1ab_3.conda#fd96da444e81f9e6fcaac38590f3dd42 https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.27.2-h04be07c_7.conda#c6a4a2af50aaf00a7345bb7c9f5bf61c +https://conda.anaconda.org/conda-forge/noarch/xarray-einstats-0.9.1-pyhd8ed1ab_0.conda#18860b32ac96f7e9d8be1c91eb601462 https://conda.anaconda.org/conda-forge/noarch/ecmwf-datastores-client-0.4.0-pyhd8ed1ab_0.conda#defa999963b250a20062a9f55642af3a https://conda.anaconda.org/conda-forge/noarch/esgf-pyclient-0.3.1-pyhd8ed1ab_5.conda#6779887899e0b0b6fb316253eb0f5c64 https://conda.anaconda.org/conda-forge/linux-64/gtk3-3.24.43-h0c6a113_5.conda#67d00e9cfe751cfe581726c5eff7c184 +https://conda.anaconda.org/conda-forge/linux-64/h5py-3.13.0-nompi_py313hff19e9a_100.conda#598bf0144204e6d5251616d6ef94be7e https://conda.anaconda.org/conda-forge/linux-64/hdfeos5-5.1.16-h51d0b48_17.conda#21ce981dc10b2d7ec8da29872b6fa96c https://conda.anaconda.org/conda-forge/linux-64/kealib-1.6.1-he902fbf_0.conda#13d2315578d22bf210094580a3cb1e6f https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-20.0.0-hcb10f89_3_cpu.conda#679cd6bb558cd6565d98ad66af6ff6ed @@ -562,10 +566,11 @@ https://conda.anaconda.org/conda-forge/noarch/py-cordex-0.10.1-pyhd8ed1ab_0.cond https://conda.anaconda.org/conda-forge/linux-64/pyarrow-core-20.0.0-py313he5f92c8_0_cpu.conda#2afdef63d9fbc2cd0e52f8e8f3472404 https://conda.anaconda.org/conda-forge/linux-64/r-base-4.4.3-h9c32bc2_0.conda#31dd67d1bf75b5c7aee264e921f812a8 https://conda.anaconda.org/conda-forge/noarch/seaborn-0.13.2-hd8ed1ab_3.conda#62afb877ca2c2b4b6f9ecb37320085b6 -https://conda.anaconda.org/conda-forge/noarch/xgboost-3.0.4-cpu_pyhb39878e_0.conda#00d0b030570269458c06b358abc3f984 +https://conda.anaconda.org/conda-forge/noarch/xgboost-3.0.5-cpu_pyhb39878e_0.conda#6dd810fef67a3753bdf6e639cbd0d5b0 https://conda.anaconda.org/conda-forge/noarch/adwaita-icon-theme-48.1-unix_1.conda#388097ca1f27fc28e0ef1986dd311891 https://conda.anaconda.org/conda-forge/noarch/cdsapi-0.7.6-pyhd8ed1ab_0.conda#94d7cbb0faa99b76e755696642353b18 https://conda.anaconda.org/conda-forge/linux-64/eccodes-2.41.0-h8bb6dbc_0.conda#1130a9254394ac1a32031fd6f03a714c +https://conda.anaconda.org/conda-forge/noarch/h5netcdf-1.6.4-pyhd8ed1ab_0.conda#69bee100efb4f22b0072e5c806223609 https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-20.0.0-hcb10f89_3_cpu.conda#0e84685fdecbd83666dd73292cc7d05a https://conda.anaconda.org/conda-forge/linux-64/libgdal-kea-3.10.2-h41c5bbd_0.conda#087ce3645442e920b32093285ef6a238 https://conda.anaconda.org/conda-forge/linux-64/libgdal-netcdf-3.10.2-ha1d9371_0.conda#a7ccdad7c4d28fb844cadb11bff811ed @@ -573,66 +578,67 @@ https://conda.anaconda.org/conda-forge/noarch/nbconvert-pandoc-7.16.6-hed9df3c_0 https://conda.anaconda.org/conda-forge/linux-64/netcdf-fortran-4.6.1-mpi_mpich_h2e543cf_8.conda#71d0475997fb331a1c3bb322125bd866 https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.7.2-nompi_py313h2a70696_101.conda#fe03a55f80aef5f47b65320cd10025b4 https://conda.anaconda.org/conda-forge/linux-64/parallelio-2.6.3-mpi_mpich_h43d51f9_100.conda#87e123c145f34c38201df08cc7046deb -https://conda.anaconda.org/conda-forge/noarch/r-abind-1.4_5-r44hc72bb7e_1006.conda#bb3b3bb6a65a4c572ed072ca52c98a2b -https://conda.anaconda.org/conda-forge/linux-64/r-backports-1.5.0-r44hb1dbf0f_1.conda#c954fc2298b50a8e12d4b0e088a0ee59 -https://conda.anaconda.org/conda-forge/noarch/r-bigmemory.sri-0.1.8-r44hc72bb7e_1.conda#f4d4b72288e957488cb97c7aee13cbaf -https://conda.anaconda.org/conda-forge/linux-64/r-cli-3.6.5-r44h93ab643_0.conda#f1c2722622bb979e389c132212de9220 -https://conda.anaconda.org/conda-forge/noarch/r-codetools-0.2_20-r44hc72bb7e_1.conda#2cde7285a140cc0fa3ea365da8013710 -https://conda.anaconda.org/conda-forge/linux-64/r-colorspace-2.1_1-r44hdb488b9_0.conda#fcc0b0959eb8b3ea4ce2bb8818cea10e -https://conda.anaconda.org/conda-forge/linux-64/r-contfrac-1.1_12-r44h2b5f3a1_1006.conda#30b239425e3027849a19ae2c16a2f325 -https://conda.anaconda.org/conda-forge/noarch/r-cpp11-0.5.2-r44h785f33e_1.conda#c8f41b1d8dbbc1b057d282e59cbc46ca -https://conda.anaconda.org/conda-forge/noarch/r-crayon-1.5.3-r44hc72bb7e_1.conda#89626d77a94256b8304bb8fc33d3364c -https://conda.anaconda.org/conda-forge/noarch/r-dbi-1.2.3-r44hc72bb7e_1.conda#15f0ce8bf5c00f734af73165feb59e13 -https://conda.anaconda.org/conda-forge/linux-64/r-desolve-1.40-r44hc29710b_1.conda#7a37be690472e7c14d036afc88febb6a -https://conda.anaconda.org/conda-forge/linux-64/r-digest-0.6.37-r44h0d4f4ea_0.conda#a02d79cfe9ed0e17ca2984fad70121ff +https://conda.anaconda.org/conda-forge/noarch/r-abind-1.4_8-r44hc72bb7e_1.conda#bc7c760b0b0ad2a6eb8970f56ef82971 +https://conda.anaconda.org/conda-forge/linux-64/r-backports-1.5.0-r44h54b55ab_2.conda#be42ed7e546105353f6acb427d739f02 +https://conda.anaconda.org/conda-forge/noarch/r-bigmemory.sri-0.1.8-r44hc72bb7e_2.conda#21bf7f23f805e49d33d9d3838df61000 +https://conda.anaconda.org/conda-forge/linux-64/r-cli-3.6.5-r44h3697838_1.conda#ae71dbdd32ef9384c43cfb4e3991305a +https://conda.anaconda.org/conda-forge/noarch/r-codetools-0.2_20-r44hc72bb7e_2.conda#d81c629f78e571b14f9a617253c44552 +https://conda.anaconda.org/conda-forge/linux-64/r-colorspace-2.1_1-r44h54b55ab_1.conda#7a817f754415e801ed4e783585705ddb +https://conda.anaconda.org/conda-forge/linux-64/r-contfrac-1.1_12-r44h54b55ab_1007.conda#28aadfa84ef9fc7a8c86ac7b9805d820 +https://conda.anaconda.org/conda-forge/noarch/r-cpp11-0.5.2-r44h785f33e_2.conda#31026a9cca367464a845387c0b5f0d55 +https://conda.anaconda.org/conda-forge/noarch/r-crayon-1.5.3-r44hc72bb7e_2.conda#2b72da5cca65460ba6ac1f81b4ff72cc +https://conda.anaconda.org/conda-forge/noarch/r-dbi-1.2.3-r44hc72bb7e_2.conda#d69f993e8203a768e65ca0d81fa102ee +https://conda.anaconda.org/conda-forge/linux-64/r-desolve-1.40-r44h11cdb10_2.conda#570def26e0135885dfdf78e1257828da +https://conda.anaconda.org/conda-forge/linux-64/r-digest-0.6.37-r44h3697838_1.conda#1661d63fe48b84a4257a744199d79716 https://conda.anaconda.org/conda-forge/noarch/r-docopt-0.7.2-r44hc72bb7e_0.conda#8d8d310d674962dfe1821ee99df6a874 -https://conda.anaconda.org/conda-forge/linux-64/r-dotcall64-1.2-r44hb67ce94_0.conda#bfa1875744fb6809a9ac0fceb8da0d6d -https://conda.anaconda.org/conda-forge/noarch/r-evaluate-1.0.5-r44hc72bb7e_0.conda#1d071b5eda08b7bd303535658e71bf0b -https://conda.anaconda.org/conda-forge/linux-64/r-fansi-1.0.6-r44hb1dbf0f_1.conda#c4c0d4b82b54899c61c6f3e09b1bcc5c -https://conda.anaconda.org/conda-forge/linux-64/r-farver-2.1.2-r44ha18555a_1.conda#c2cf909117c44802caf096dd8ba8038e +https://conda.anaconda.org/conda-forge/linux-64/r-dotcall64-1.2-r44heaba542_1.conda#4579e0e0b568409e08dbb53160c2881b +https://conda.anaconda.org/conda-forge/noarch/r-evaluate-1.0.5-r44hc72bb7e_1.conda#7b03982e4e8e348f02a51e61e6bb9cc2 +https://conda.anaconda.org/conda-forge/linux-64/r-fansi-1.0.6-r44h54b55ab_2.conda#e5928aaf6b9d1d1f6f41cd30d00df5d3 +https://conda.anaconda.org/conda-forge/linux-64/r-farver-2.1.2-r44h3697838_2.conda#830031b95e37195f00524cabc98adba4 https://conda.anaconda.org/conda-forge/noarch/r-functional-0.6-r44ha770c72_1005.conda#3bd6aeb0e98ac1442e2d8e6825d03cea -https://conda.anaconda.org/conda-forge/noarch/r-generics-0.1.4-r44hc72bb7e_0.conda#c02ed249dc33336dfa20ca3eeaf3d1ee +https://conda.anaconda.org/conda-forge/noarch/r-generics-0.1.4-r44hc72bb7e_1.conda#a593d8a24e2d841863085e8c5b50b9fa https://conda.anaconda.org/conda-forge/noarch/r-geomapdata-2.0_2-r44hc72bb7e_1.conda#855c878c4afe6ecf6a82664fcc672c01 https://conda.anaconda.org/conda-forge/linux-64/r-git2r-0.35.0-r44h4505f3e_0.conda#286500b4252c5db85d956d90bc0f9535 -https://conda.anaconda.org/conda-forge/linux-64/r-glue-1.8.0-r44h2b5f3a1_0.conda#990ecdd6246dfcce8cea4eb5a97ca735 -https://conda.anaconda.org/conda-forge/linux-64/r-goftest-1.2_3-r44hb1dbf0f_3.conda#4e53bb65a4d88e127cc3fe23c3a66dad -https://conda.anaconda.org/conda-forge/linux-64/r-isoband-0.2.7-r44ha18555a_3.conda#4745fadbe3c521e46d9c9b39148ac3c7 -https://conda.anaconda.org/conda-forge/noarch/r-iterators-1.0.14-r44hc72bb7e_3.conda#1af69b19387ad2f7403088562571d58b -https://conda.anaconda.org/conda-forge/linux-64/r-jsonlite-2.0.0-r44h2b5f3a1_0.conda#741243137a52f978739eff83126dc2bb -https://conda.anaconda.org/conda-forge/linux-64/r-kernsmooth-2.23_26-r44h8461fee_0.conda#4d0ba9ce60aa00368fce885db437f0e3 -https://conda.anaconda.org/conda-forge/noarch/r-labeling-0.4.3-r44hc72bb7e_1.conda#49f2c043dfb8f5003dea36ae39ca1103 -https://conda.anaconda.org/conda-forge/linux-64/r-lattice-0.22_7-r44h2b5f3a1_0.conda#3d5d499e979c3e2e8314e5af04653ece -https://conda.anaconda.org/conda-forge/linux-64/r-lazyeval-0.2.2-r44hb1dbf0f_5.conda#03ffd04bca89215be2d1e5b40b849360 +https://conda.anaconda.org/conda-forge/linux-64/r-glue-1.8.0-r44h54b55ab_1.conda#8c0119ef7862a900727cd6845ee1511c +https://conda.anaconda.org/conda-forge/linux-64/r-goftest-1.2_3-r44h54b55ab_4.conda#8d434285948a40c3e9edd72316711b3b +https://conda.anaconda.org/conda-forge/linux-64/r-isoband-0.2.7-r44h3697838_4.conda#e10cbac3946128930d5da63b32e4baa4 +https://conda.anaconda.org/conda-forge/noarch/r-iterators-1.0.14-r44hc72bb7e_4.conda#28b5c21aae2a093ffbf601f40e7cfc0e +https://conda.anaconda.org/conda-forge/linux-64/r-jsonlite-2.0.0-r44h54b55ab_1.conda#26de9e385370e6bf7d0ca13a3e630d7f +https://conda.anaconda.org/conda-forge/linux-64/r-kernsmooth-2.23_26-r44ha0a88a1_1.conda#9737719ec08adb623be7358f45221be2 +https://conda.anaconda.org/conda-forge/noarch/r-labeling-0.4.3-r44hc72bb7e_2.conda#891625b27729556fcac5cb5a3040b10f +https://conda.anaconda.org/conda-forge/linux-64/r-lattice-0.22_7-r44h54b55ab_1.conda#a4778b8f282dfa692f0bc55afbc5e31b +https://conda.anaconda.org/conda-forge/linux-64/r-lazyeval-0.2.2-r44h54b55ab_6.conda#b4a13a6b0e20b94566b42884a4b423db https://conda.anaconda.org/conda-forge/linux-64/r-lmom-3.2-r44hb67ce94_0.conda#d23d1e41e0c3c4d140aa921534c27696 https://conda.anaconda.org/conda-forge/noarch/r-logging-0.10_108-r44ha770c72_5.conda#78511266d53338cc092d52273a5c1fcc -https://conda.anaconda.org/conda-forge/linux-64/r-magrittr-2.0.3-r44hb1dbf0f_3.conda#a53562b6400cbbf0323fb97881ba61b3 -https://conda.anaconda.org/conda-forge/linux-64/r-maps-3.4.3-r44h2b5f3a1_0.conda#cf1c00dcb57d381e163361e2d37605d7 -https://conda.anaconda.org/conda-forge/linux-64/r-mass-7.3_64-r44h2b5f3a1_0.conda#7b844ec6dca405db40051f19a0e24c2f +https://conda.anaconda.org/conda-forge/linux-64/r-magrittr-2.0.3-r44h54b55ab_4.conda#ffcb21de34925d09d383dc36b958f6e6 +https://conda.anaconda.org/conda-forge/linux-64/r-maps-3.4.3-r44h54b55ab_1.conda#b55ea7d2dc0cf355e2ca830bcd6f14df +https://conda.anaconda.org/conda-forge/linux-64/r-mass-7.3_65-r44h54b55ab_0.conda#d93000477c93c6beffcd5fe181f3e921 https://conda.anaconda.org/conda-forge/linux-64/r-mba-0.1_2-r44h93ab643_0.conda#ab7debaeeef6b2a2dc7910ed4337df90 https://conda.anaconda.org/conda-forge/noarch/r-nbclust-3.0.1-r44hc72bb7e_3.conda#f9aa66cfcf69a5d4d592b0ae6173bf89 https://conda.anaconda.org/conda-forge/linux-64/r-ncdf4-1.24-r44h241fd4c_0.conda#44e5155f620427ac6814de10589e9970 https://conda.anaconda.org/conda-forge/linux-64/r-pcict-0.5_4.4-r44hdb488b9_2.conda#f1bd19d74ec2a6fdc86ec417b6905c1c -https://conda.anaconda.org/conda-forge/noarch/r-pkgconfig-2.0.3-r44hc72bb7e_4.conda#17d36e686fb918637ca43fc4c036549e -https://conda.anaconda.org/conda-forge/linux-64/r-proxy-0.4_27-r44hb1dbf0f_3.conda#09899c5492505f5fec9b36ee87602bb3 -https://conda.anaconda.org/conda-forge/linux-64/r-ps-1.9.1-r44h2b5f3a1_0.conda#ad2d8404d6ef6f268677445270965103 -https://conda.anaconda.org/conda-forge/noarch/r-r.methodss3-1.8.2-r44hc72bb7e_3.conda#77a8638e6efd89803446295bf52b81b8 -https://conda.anaconda.org/conda-forge/noarch/r-r6-2.6.1-r44hc72bb7e_0.conda#08d1985cbe6bd96a818e127de51f9905 -https://conda.anaconda.org/conda-forge/noarch/r-rcolorbrewer-1.1_3-r44h785f33e_3.conda#1f23714459a514fb7597fa15671d3cc6 -https://conda.anaconda.org/conda-forge/linux-64/r-rcpp-1.1.0-r44h93ab643_0.conda#fb25ec2b9432aafb7f6fcfdb23063e0a -https://conda.anaconda.org/conda-forge/noarch/r-remotes-2.5.0-r44hc72bb7e_1.conda#b0c3a13190b5621cfb9a07d0aca322f4 -https://conda.anaconda.org/conda-forge/linux-64/r-rlang-1.1.6-r44h93ab643_0.conda#b154e08c49d92f0f59b9236f189a8264 +https://conda.anaconda.org/conda-forge/noarch/r-pkgconfig-2.0.3-r44hc72bb7e_5.conda#bdc0f46c7111e1d4f7eb7133374b47b7 +https://conda.anaconda.org/conda-forge/linux-64/r-proxy-0.4_27-r44h54b55ab_4.conda#1b00212fba53db49fb8af42457bc72fd +https://conda.anaconda.org/conda-forge/linux-64/r-ps-1.9.1-r44h54b55ab_1.conda#5560766b6a9358409fcd958a3e74bc88 +https://conda.anaconda.org/conda-forge/noarch/r-r.methodss3-1.8.2-r44hc72bb7e_4.conda#146b1ea9d642719c5abb6403844c98eb +https://conda.anaconda.org/conda-forge/noarch/r-r6-2.6.1-r44hc72bb7e_1.conda#a6809636e421b99a22d374a752c1a2d6 +https://conda.anaconda.org/conda-forge/noarch/r-rcolorbrewer-1.1_3-r44h785f33e_4.conda#bbaae25579d5cea71278441c0b61fde3 +https://conda.anaconda.org/conda-forge/linux-64/r-rcpp-1.1.0-r44h3697838_1.conda#d463481439ac0563a053a1fafd8ce28b +https://conda.anaconda.org/conda-forge/noarch/r-remotes-2.5.0-r44hc72bb7e_2.conda#af39b8f71e6979bd00e9ef71e40bed1e +https://conda.anaconda.org/conda-forge/linux-64/r-rlang-1.1.6-r44h3697838_1.conda#dc3e0d136136d2bd2e7f7e1ad53cc408 https://conda.anaconda.org/conda-forge/noarch/r-rpmg-2.2_7-r44hc72bb7e_1.conda#f7abed1f12027e4243003c90780f053d -https://conda.anaconda.org/conda-forge/noarch/r-rprojroot-2.1.1-r44hc72bb7e_0.conda#887133c298ecbc07951865e450ed95c5 +https://conda.anaconda.org/conda-forge/noarch/r-rprojroot-2.1.1-r44hc72bb7e_1.conda#51b5479ff88c1260e80ec9195189be13 https://conda.anaconda.org/conda-forge/noarch/r-snow-0.4_4-r44hc72bb7e_3.conda#a69cfe3004eaba0c41d3c51535ee77b2 https://conda.anaconda.org/conda-forge/linux-64/r-udunits2-0.13.2.2-r44h54b55ab_0.conda#9b27bac4c8f91edff8fd55b13c43c46e -https://conda.anaconda.org/conda-forge/linux-64/r-utf8-1.2.6-r44h2b5f3a1_0.conda#e463d3779b87ad5615816f1c3cde1135 -https://conda.anaconda.org/conda-forge/linux-64/r-uuid-1.2_1-r44hdb488b9_0.conda#13700c06aaf05a83a0a342368806d84f -https://conda.anaconda.org/conda-forge/noarch/r-viridislite-0.4.2-r44hc72bb7e_2.conda#7cf7a6974364e6853f1a06554dfaa3e5 -https://conda.anaconda.org/conda-forge/noarch/r-withr-3.0.2-r44hc72bb7e_0.conda#7c7e6e8f6fc8d0fd3baf24e8a5ed8ff5 -https://conda.anaconda.org/conda-forge/linux-64/r-xfun-0.53-r44h3697838_0.conda#cfb247e205cfc53034d0d5d3ee22c893 -https://conda.anaconda.org/conda-forge/noarch/r-xmlparsedata-1.0.5-r44hc72bb7e_3.conda#f4cdc7114d74c37ad7b4a192fa78eb84 -https://conda.anaconda.org/conda-forge/linux-64/r-yaml-2.3.10-r44hdb488b9_0.conda#c97f78686bc0b72457d386c2375b89ce +https://conda.anaconda.org/conda-forge/linux-64/r-utf8-1.2.6-r44h54b55ab_1.conda#c7bce6987e0f5aaf9bdf5296dd3693c4 +https://conda.anaconda.org/conda-forge/linux-64/r-uuid-1.2_1-r44h54b55ab_1.conda#7cd30b76e660299de48282b6041431c2 +https://conda.anaconda.org/conda-forge/noarch/r-viridislite-0.4.2-r44hc72bb7e_3.conda#f7988a8606e974bba5a4d933236a6f2f +https://conda.anaconda.org/conda-forge/noarch/r-withr-3.0.2-r44hc72bb7e_1.conda#0fdd8ccde2641093c651e2b6a25d85e1 +https://conda.anaconda.org/conda-forge/linux-64/r-xfun-0.53-r44h3697838_1.conda#6fa11569dddc84bf7fc8519af4809db0 +https://conda.anaconda.org/conda-forge/noarch/r-xmlparsedata-1.0.5-r44hc72bb7e_4.conda#4a0ed3cdc553f7e97003d7b5abfd45b4 +https://conda.anaconda.org/conda-forge/linux-64/r-yaml-2.3.10-r44h54b55ab_1.conda#cee55143ddb0399c9beb063f0a0b7de1 https://conda.anaconda.org/conda-forge/linux-64/tempest-remap-2.2.0-heeae502_5.conda#2977d5268a6050196c42f03fd2a70020 +https://conda.anaconda.org/conda-forge/noarch/arviz-0.22.0-pyhd8ed1ab_0.conda#edeb8dea41e8cd6ef8127de4a8dece13 https://conda.anaconda.org/conda-forge/linux-64/esmf-8.8.1-mpi_mpich_h7cf99a1_100.conda#900d5da9a6145ed6d79914d018a4e42e https://conda.anaconda.org/conda-forge/linux-64/graphviz-12.2.1-h5ae0cbf_1.conda#df7835d2c73cd1889d377cfd6694ada4 https://conda.anaconda.org/conda-forge/noarch/iris-3.13.1-pyha770c72_0.conda#33d150f58eb36070d2b8ad6dd1bd50d7 @@ -641,34 +647,34 @@ https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.10.2-hea5fcb0_5.conda# https://conda.anaconda.org/conda-forge/linux-64/magics-4.15.5-hc87abea_0.conda#baa6d3a7b45bc0dcc9332725c879ffd4 https://conda.anaconda.org/conda-forge/noarch/mapgenerator-1.0.7-pyhd8ed1ab_0.conda#d18db96ef2a920b0ecefe30282b0aecf https://conda.anaconda.org/conda-forge/noarch/nbconvert-7.16.6-hb482800_0.conda#aa90ea40c80d4bd3da35cb17ed668f22 -https://conda.anaconda.org/conda-forge/linux-64/python-eccodes-2.37.0-py313ha014f3b_0.conda#b28717a6d595cdc42737d6669d422b1d +https://conda.anaconda.org/conda-forge/linux-64/python-eccodes-2.37.0-py313h29aa505_1.conda#dc54ebc90bcba85d89f67a409c95aaf6 https://conda.anaconda.org/conda-forge/linux-64/r-bigmemory-4.6.4-r44h3697838_3.conda#09ece7dc893b4bbad6d9dc75e13c3f11 -https://conda.anaconda.org/conda-forge/linux-64/r-checkmate-2.3.3-r44h54b55ab_0.conda#e40b47d5ab7eea7970342e1574a9a938 -https://conda.anaconda.org/conda-forge/linux-64/r-class-7.3_23-r44h2b5f3a1_0.conda#e215df1706512d75e5f0b30aff67a8fc +https://conda.anaconda.org/conda-forge/linux-64/r-checkmate-2.3.3-r44h54b55ab_1.conda#257a9a3c414ce1ff6cf908b0b5f44098 +https://conda.anaconda.org/conda-forge/linux-64/r-class-7.3_23-r44h54b55ab_1.conda#a3f0e7e41dc4916ca7c7af9e15ea02d2 https://conda.anaconda.org/conda-forge/linux-64/r-climdex.pcic-1.1_11-r44h0d4f4ea_3.conda#b5aceff098eeef48216ef6afcda99a1d -https://conda.anaconda.org/conda-forge/noarch/r-desc-1.4.3-r44hc72bb7e_1.conda#dbbffaa90be91b868a954690f987a5ea -https://conda.anaconda.org/conda-forge/linux-64/r-ellipsis-0.3.2-r44hb1dbf0f_3.conda#a96cb6b4b61efd45ffe47019af5eb879 -https://conda.anaconda.org/conda-forge/noarch/r-elliptic-1.4_0-r44hc72bb7e_5.conda#4e1a726290914542336c34c583f66733 -https://conda.anaconda.org/conda-forge/noarch/r-foreach-1.5.2-r44hc72bb7e_3.conda#f68561503a1e74b28602f53b6a78ded1 -https://conda.anaconda.org/conda-forge/noarch/r-highr-0.11-r44hc72bb7e_1.conda#6513f8e9954403cf1f0a2414ea308801 -https://conda.anaconda.org/conda-forge/noarch/r-lifecycle-1.0.4-r44hc72bb7e_1.conda#66d0ba7c05d0abfa11d126ba8e2907aa +https://conda.anaconda.org/conda-forge/noarch/r-desc-1.4.3-r44hc72bb7e_2.conda#24fe88af88fc79dd249b6ffdbd32af06 +https://conda.anaconda.org/conda-forge/linux-64/r-ellipsis-0.3.2-r44h54b55ab_4.conda#3c5f8d5a0e449576ad703da573d77c76 +https://conda.anaconda.org/conda-forge/noarch/r-elliptic-1.4_0-r44hc72bb7e_6.conda#c0d6a296ddf04a864354bf20678a52f7 +https://conda.anaconda.org/conda-forge/noarch/r-foreach-1.5.2-r44hc72bb7e_4.conda#0740e45e44a5a36ef5c453249820bd94 +https://conda.anaconda.org/conda-forge/noarch/r-highr-0.11-r44hc72bb7e_2.conda#1d27ac83e555dcd74a3f51961bccd5e8 +https://conda.anaconda.org/conda-forge/noarch/r-lifecycle-1.0.4-r44hc72bb7e_2.conda#e41e892cef6cad8fb15c6e7af9a19fa0 https://conda.anaconda.org/conda-forge/linux-64/r-mapproj-1.2.12-r44h2b5f3a1_0.conda#887ef860d8c7ca81e7b7945e36936713 -https://conda.anaconda.org/conda-forge/linux-64/r-matrix-1.7_4-r44h0e4624f_0.conda#b47f779332393213ebb99909739a65b8 -https://conda.anaconda.org/conda-forge/noarch/r-munsell-0.5.1-r44hc72bb7e_1.conda#871dfde2639a8fdfe210eea7c59fd1e8 +https://conda.anaconda.org/conda-forge/linux-64/r-matrix-1.7_4-r44h0e4624f_1.conda#bdb8960fd8da7fe82ea3c729ffe29937 +https://conda.anaconda.org/conda-forge/noarch/r-munsell-0.5.1-r44hc72bb7e_2.conda#79407650271d42d8aadfe756f89521c7 https://conda.anaconda.org/conda-forge/noarch/r-ncdf4.helpers-0.3_7-r44hc72bb7e_0.conda#3e207872f14a6474043c93528db5b45d -https://conda.anaconda.org/conda-forge/linux-64/r-nlme-3.1_168-r44hb67ce94_0.conda#dceb5f267e78323c494128e43922e01a -https://conda.anaconda.org/conda-forge/linux-64/r-plyr-1.8.9-r44h3697838_2.conda#fe9f6ceebbe7906311dbbc84601b6c10 -https://conda.anaconda.org/conda-forge/linux-64/r-processx-3.8.6-r44h2b5f3a1_0.conda#d4a1b3cc691157d232235c1b33e7b1e9 -https://conda.anaconda.org/conda-forge/noarch/r-r.oo-1.27.1-r44hc72bb7e_0.conda#4b4237f0386dbb8761882cf54c43864f -https://conda.anaconda.org/conda-forge/linux-64/r-rcpparmadillo-14.6.3_1-r44h3704496_0.conda#595a932b5e233a057f40c0e026303bda -https://conda.anaconda.org/conda-forge/noarch/r-rex-1.2.1-r44hc72bb7e_3.conda#85ec77e884a3371a7e4642627c5b08de -https://conda.anaconda.org/conda-forge/linux-64/r-sp-2.2_0-r44h2b5f3a1_0.conda#0542e1a81f80fb0e4b6a189a98034a09 -https://conda.anaconda.org/conda-forge/linux-64/r-spam-2.11_1-r44h2ddecb4_1.conda#5e6b10c59ab6fdecc7698a286187016c -https://conda.anaconda.org/conda-forge/linux-64/r-timechange-0.3.0-r44ha18555a_1.conda#22d2565041538e7d70dd1dff3b9ab133 -https://conda.anaconda.org/conda-forge/linux-64/r-units-0.8_7-r44h3697838_0.conda#e1bbe45abbcb9035677de96c33ebca04 -https://conda.anaconda.org/conda-forge/linux-64/r-wk-0.9.4-r44h3697838_1.conda#240d8fe305eca74d8c52f3bb367d476b -https://conda.anaconda.org/conda-forge/linux-64/r-xml2-1.4.0-r44hc6fd541_0.conda#a1a0f84c9ffbe227236069ff24a562c0 -https://conda.anaconda.org/conda-forge/linux-64/r-zoo-1.8_14-r44h2b5f3a1_0.conda#f747fd91b5daeb51099e57661edafb56 +https://conda.anaconda.org/conda-forge/linux-64/r-nlme-3.1_168-r44heaba542_1.conda#1d695b83f5865a7398a808739afc6725 +https://conda.anaconda.org/conda-forge/linux-64/r-plyr-1.8.9-r44h3697838_3.conda#d2d7f7c69444244c1c32e577061fd07b +https://conda.anaconda.org/conda-forge/linux-64/r-processx-3.8.6-r44h54b55ab_1.conda#1d5b82b45034841580deb4e0faabc585 +https://conda.anaconda.org/conda-forge/noarch/r-r.oo-1.27.1-r44hc72bb7e_1.conda#c1b2572ba74dd738c5dd6e363ec84392 +https://conda.anaconda.org/conda-forge/linux-64/r-rcpparmadillo-15.0.2_1-r44h3704496_1.conda#5e2cf0aa595f344b6e6ab15cedffe540 +https://conda.anaconda.org/conda-forge/noarch/r-rex-1.2.1-r44hc72bb7e_4.conda#a16b5e3814b9705071938a149d710b74 +https://conda.anaconda.org/conda-forge/linux-64/r-sp-2.2_0-r44h54b55ab_1.conda#cff50eb88ede529913df1c2d7b36c5a0 +https://conda.anaconda.org/conda-forge/linux-64/r-spam-2.11_1-r44h2ddecb4_2.conda#40173b533728ac6975d73eb40cff4f0a +https://conda.anaconda.org/conda-forge/linux-64/r-timechange-0.3.0-r44h3697838_2.conda#c4ebce9e9efd230e39590177e4707ffd +https://conda.anaconda.org/conda-forge/linux-64/r-units-0.8_7-r44h3697838_1.conda#5bcded7a77bf8742a1617390133f9b60 +https://conda.anaconda.org/conda-forge/linux-64/r-wk-0.9.4-r44h3697838_2.conda#650a050330b96c05436602d5e4c9ce3f +https://conda.anaconda.org/conda-forge/linux-64/r-xml2-1.4.0-r44hc6fd541_1.conda#0e2dac513c802712a6d01dc52e54df07 +https://conda.anaconda.org/conda-forge/linux-64/r-zoo-1.8_14-r44h54b55ab_1.conda#e7a91f0b5a26b7d61ed86423ca9d3d49 https://conda.anaconda.org/conda-forge/linux-64/cdo-2.5.0-hc8165f4_0.conda#296fa1f3d56dae3f2d7a4e0322ab24df https://conda.anaconda.org/conda-forge/noarch/cfgrib-0.9.15.0-pyhd8ed1ab_0.conda#211303621409d703235598be8c378b3c https://conda.anaconda.org/conda-forge/noarch/esmpy-8.8.1-pyhecae5ae_0.conda#fe06d00073c01b5a741122e64df7ad9f @@ -678,48 +684,48 @@ https://conda.anaconda.org/conda-forge/noarch/iris-grib-0.21.0-pyhd8ed1ab_0.cond https://conda.anaconda.org/conda-forge/linux-64/ncl-6.6.2-ha9e1b40_55.conda#4e7447bea87261d51426caf0c308a2d9 https://conda.anaconda.org/conda-forge/linux-64/nco-5.3.3-h657489c_0.conda#a19e21abfb9215ccab3526d6ca9aff3b https://conda.anaconda.org/conda-forge/linux-64/pyarrow-20.0.0-py313h78bf25f_0.conda#6b8d388845ce750fe2ad8436669182f3 -https://conda.anaconda.org/conda-forge/linux-64/pydot-4.0.1-py313h78bf25f_0.conda#d2a5c2fcbc56dd1dfc6b58d5b4a26a18 -https://conda.anaconda.org/conda-forge/linux-64/r-akima-0.6_3.6-r44hb67ce94_0.conda#a82c474a0758441a75baf995655746a4 -https://conda.anaconda.org/conda-forge/noarch/r-callr-3.7.6-r44hc72bb7e_1.conda#f0f382bade070ac331795b7af7f103ce -https://conda.anaconda.org/conda-forge/noarch/r-doparallel-1.0.17-r44hc72bb7e_3.conda#71246372284e906e383100911e386876 -https://conda.anaconda.org/conda-forge/linux-64/r-e1071-1.7_16-r44h93ab643_0.conda#00f4f2b3ea19acfdef927e2000311ba8 -https://conda.anaconda.org/conda-forge/noarch/r-gtable-0.3.6-r44hc72bb7e_0.conda#63996b2c1cc1cfdb4b9324e512a45a07 -https://conda.anaconda.org/conda-forge/noarch/r-hypergeo-1.2_14-r44hc72bb7e_0.conda#016e59684e33526b87c583eddf307412 -https://conda.anaconda.org/conda-forge/noarch/r-knitr-1.50-r44hc72bb7e_0.conda#8283917ebf80191ab515f28dc79af1cd +https://conda.anaconda.org/conda-forge/linux-64/pydot-4.0.1-py313h78bf25f_1.conda#767a1d613f969cbd35ed55c148b4727e +https://conda.anaconda.org/conda-forge/linux-64/r-akima-0.6_3.6-r44heaba542_1.conda#cc371739291dfd8b46e53273a9b618ef +https://conda.anaconda.org/conda-forge/noarch/r-callr-3.7.6-r44hc72bb7e_2.conda#020dde50545870904c62062ffab4b621 +https://conda.anaconda.org/conda-forge/noarch/r-doparallel-1.0.17-r44hc72bb7e_4.conda#baa944ff36b7b65c4999419ee7928e79 +https://conda.anaconda.org/conda-forge/linux-64/r-e1071-1.7_16-r44h3697838_1.conda#a6153b66517561245dc6d358955a6460 +https://conda.anaconda.org/conda-forge/noarch/r-gtable-0.3.6-r44hc72bb7e_1.conda#1f5b8f9f0cdb53b843c4e2481e22c8c0 +https://conda.anaconda.org/conda-forge/noarch/r-hypergeo-1.2_14-r44hc72bb7e_1.conda#f5ffb991ff676e0d1c9c70e352c47448 +https://conda.anaconda.org/conda-forge/noarch/r-knitr-1.50-r44hc72bb7e_1.conda#3841100c8b6f9beb6291b3498ff3b835 https://conda.anaconda.org/conda-forge/linux-64/r-lmoments-1.3_1-r44h4387864_6.conda#627b8fc4c41967f2cf68082f6b017ade -https://conda.anaconda.org/conda-forge/linux-64/r-lubridate-1.9.4-r44h2b5f3a1_0.conda#d170868ed874a6e9a200cc1c4e6b3835 -https://conda.anaconda.org/conda-forge/linux-64/r-mgcv-1.9_3-r44h2ae2be5_0.conda#5c56c0c6f365ec541fa968a8bc27aee4 -https://conda.anaconda.org/conda-forge/noarch/r-r.utils-2.13.0-r44hc72bb7e_0.conda#0b97b7fb7400db6e236ed80f4e454154 -https://conda.anaconda.org/conda-forge/linux-64/r-reshape-0.8.10-r44hc72bb7e_0.conda#a7f78389c3a72a1c21e96bf601e816bc +https://conda.anaconda.org/conda-forge/linux-64/r-lubridate-1.9.4-r44h54b55ab_1.conda#51f61a093a8a2f55715740ca3df3e64b +https://conda.anaconda.org/conda-forge/linux-64/r-mgcv-1.9_3-r44h0e4624f_1.conda#6fd2be63e6df957b76ec525629179b87 +https://conda.anaconda.org/conda-forge/noarch/r-r.utils-2.13.0-r44hc72bb7e_1.conda#9f0e2df8970696fe83a51560e903a013 +https://conda.anaconda.org/conda-forge/linux-64/r-reshape-0.8.10-r44hc72bb7e_1.conda#f9d19ae38c39b47d94c68971f4804e34 https://conda.anaconda.org/conda-forge/linux-64/r-s2-1.1.9-r44hec2a4ce_0.conda#a73b39fc8d804672b9fba00fced08313 -https://conda.anaconda.org/conda-forge/noarch/r-scales-1.4.0-r44hc72bb7e_0.conda#c2dae614fb7aa769a9addcc83a05bb51 +https://conda.anaconda.org/conda-forge/noarch/r-scales-1.4.0-r44hc72bb7e_1.conda#d5a3c79508fd7f6be657f69119265398 https://conda.anaconda.org/conda-forge/linux-64/r-specsverification-0.5_3-r44h93ab643_4.conda#cbfbee9ec3ab3241aa174cadd41f6d53 -https://conda.anaconda.org/conda-forge/linux-64/r-vctrs-0.6.5-r44h0d4f4ea_1.conda#399bc7872bdb40b5531d887858253e76 +https://conda.anaconda.org/conda-forge/linux-64/r-vctrs-0.6.5-r44h3697838_2.conda#e93d96165f866807b682452f3c31b1ea https://conda.anaconda.org/conda-forge/noarch/dask-2025.7.0-pyhe01879c_0.conda#e764bbc4315343e806bc55d73d102335 https://conda.anaconda.org/conda-forge/noarch/prov-2.0.0-pyhd3deb0d_0.tar.bz2#aa9b3ad140f6c0668c646f32e20ccf82 https://conda.anaconda.org/conda-forge/noarch/python-cdo-1.6.0-pyhff2d567_1.conda#61f71e3d4df9dbe55340c129f96cb8ee -https://conda.anaconda.org/conda-forge/linux-64/r-classint-0.4_11-r44hb67ce94_0.conda#a1b1f47d0e93838ef925fb3e4c679319 -https://conda.anaconda.org/conda-forge/noarch/r-cyclocomp-1.1.1-r44hc72bb7e_1.conda#f1a2af6f56cf5e6d9356e9fa1384d38a -https://conda.anaconda.org/conda-forge/noarch/r-gridextra-2.3-r44hc72bb7e_1006.conda#106ebb010cea46a550f6e1edbfedfddb +https://conda.anaconda.org/conda-forge/linux-64/r-classint-0.4_11-r44heaba542_1.conda#72299ec0276b01f37f9641fe874efedd +https://conda.anaconda.org/conda-forge/noarch/r-cyclocomp-1.1.1-r44hc72bb7e_2.conda#78ac490dafc5a9dd078702802a511665 +https://conda.anaconda.org/conda-forge/noarch/r-gridextra-2.3-r44hc72bb7e_1007.conda#6203b49d9dc8ea0619a391314759c91b https://conda.anaconda.org/conda-forge/noarch/r-lmomco-2.5.1-r44hc72bb7e_1.conda#c4622b5d23c2475fc4050d76f09a05d0 -https://conda.anaconda.org/conda-forge/noarch/r-multiapply-2.1.4-r44hc72bb7e_2.conda#416c060038149ac64d53c1997d3ef8b7 -https://conda.anaconda.org/conda-forge/noarch/r-pillar-1.11.0-r44hc72bb7e_0.conda#6fc3eef9e2b83886004b85758b33d61c -https://conda.anaconda.org/conda-forge/linux-64/r-purrr-1.1.0-r44h54b55ab_0.conda#c092fa236b23d0b345dbae05cb5cee5f -https://conda.anaconda.org/conda-forge/noarch/r-r.cache-0.17.0-r44hc72bb7e_0.conda#da3616b42e0d039fc89bda02e199452e +https://conda.anaconda.org/conda-forge/noarch/r-multiapply-2.1.5-r44hc72bb7e_0.conda#788ce81600e6745e46bdd02e48463a5c +https://conda.anaconda.org/conda-forge/noarch/r-pillar-1.11.0-r44hc72bb7e_1.conda#80ad0d59973b29372558609b225e5347 +https://conda.anaconda.org/conda-forge/linux-64/r-purrr-1.1.0-r44h54b55ab_1.conda#ef3dd5853c3dd5a142c9372d15a52eb7 +https://conda.anaconda.org/conda-forge/noarch/r-r.cache-0.17.0-r44hc72bb7e_1.conda#7929ed036c43b12ef5ad41d7ffb0709e https://conda.anaconda.org/conda-forge/noarch/xesmf-0.8.10-pyhd8ed1ab_0.conda#633873a69cdd56334c394f2299943d54 https://conda.anaconda.org/conda-forge/noarch/iris-esmf-regrid-0.12.1-pyhd8ed1ab_0.conda#d2559adb7d967418c23ecd49e55d7301 https://conda.anaconda.org/conda-forge/noarch/ncdata-0.2.0-pyhd8ed1ab_0.conda#fe1f9b43ee7eb8cb24b3f9821a98f9b7 -https://conda.anaconda.org/conda-forge/noarch/r-climprojdiags-0.3.3-r44hc72bb7e_1.conda#8f341d2424f4bf70dca67f161e9c9a7d +https://conda.anaconda.org/conda-forge/noarch/r-climprojdiags-0.3.4-r44hc72bb7e_0.conda#367d6206838d177d63c38207881ca5ab https://conda.anaconda.org/conda-forge/noarch/r-lintr-3.1.2-r44hc72bb7e_1.conda#c8ce6265c7fc8409b5c0249e35560f2a https://conda.anaconda.org/conda-forge/linux-64/r-sf-1.0_20-r44h4d3cc04_0.conda#b6b8b4f955d485789b15cdbf0fb98bab -https://conda.anaconda.org/conda-forge/linux-64/r-tibble-3.3.0-r44h2b5f3a1_0.conda#e61406c01509e1a942d9b01de165b454 +https://conda.anaconda.org/conda-forge/linux-64/r-tibble-3.3.0-r44h54b55ab_1.conda#0066c02fd1b53ab8020a3899d469f62f https://conda.anaconda.org/conda-forge/label/esmvalcore_rc/noarch/esmvalcore-2.13.0rc1-pyh39db41b_0.conda#e2d6655b052bdd4a8b9a9de0f2f174d3 -https://conda.anaconda.org/conda-forge/noarch/r-ggplot2-3.5.2-r44hc72bb7e_0.conda#e78f9c8112cccf0b19c2ab2554c61270 -https://conda.anaconda.org/conda-forge/noarch/r-rematch2-2.1.2-r44hc72bb7e_4.conda#d45c62f578edc546383f48b1e353fcf9 -https://conda.anaconda.org/conda-forge/noarch/r-styler-1.10.3-r44hc72bb7e_1.conda#07bf7bf374df8351785082c2705eaaa7 +https://conda.anaconda.org/conda-forge/noarch/r-ggplot2-3.5.2-r44hc72bb7e_1.conda#ddf052031557a35114abe0d825351fe2 +https://conda.anaconda.org/conda-forge/noarch/r-rematch2-2.1.2-r44hc72bb7e_5.conda#9c13ea9c0d41379ad6deee9e0c3932e9 +https://conda.anaconda.org/conda-forge/noarch/r-styler-1.10.3-r44hc72bb7e_2.conda#c303506fd0f7462c460c1077e851df14 https://conda.anaconda.org/conda-forge/linux-64/r-tlmoments-0.7.5.3-r44h0d4f4ea_2.conda#bf0113bcdf1f34c4d581db8095cde49a -https://conda.anaconda.org/conda-forge/noarch/r-viridis-0.6.5-r44hc72bb7e_1.conda#d4968f8fc02973cb463825e4f8f30a68 -https://conda.anaconda.org/conda-forge/linux-64/r-fields-16.3.1-r44hb67ce94_0.conda#76d48bac5dd174950d044a7b9c910a75 +https://conda.anaconda.org/conda-forge/noarch/r-viridis-0.6.5-r44hc72bb7e_2.conda#1d517508416fe6152d7587ae6fb0ff64 +https://conda.anaconda.org/conda-forge/linux-64/r-fields-17.1-r44heaba542_1.conda#cb1c8767dc1607ec081d3fd636c8785b https://conda.anaconda.org/conda-forge/noarch/r-spei-1.8.1-r44hc72bb7e_2.conda#ad18f1057e2207ce7b8e4d82dff6c38e https://conda.anaconda.org/conda-forge/linux-64/r-geomap-2.5_11-r44h2b5f3a1_1.conda#8edbf8d4946a8acc22828afe13264132 https://conda.anaconda.org/conda-forge/noarch/r-s2dverification-2.10.3-r44hc72bb7e_3.conda#102a36eae44cdb684f36ac1148a6aee8 diff --git a/doc/sphinx/source/changelog.rst b/doc/sphinx/source/changelog.rst index 5c141473dd..78efe110ee 100644 --- a/doc/sphinx/source/changelog.rst +++ b/doc/sphinx/source/changelog.rst @@ -3,6 +3,185 @@ Changelog ========= +.. _changelog-v2-13-0: + +v2.13.0 +------- + +Highlights +~~~~~~~~~~ + +- TODO: add highlights + +This release includes + +Backwards incompatible changes +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- Refactor diagnostic `monitor/multi_datasets.py` (:pull:`4002`) by :user:`schlunma` + Plot option `annual_mean_kwargs`: This will be ignored now. Previously, + this could lead to errors in rare cases. Instead, explicitly specify a + dataset that uses the annual_statistics preprocessor in the recipe, + for example `esmvaltool/recipes/monitor/recipe_monitor_with_refs.yml#L132-L139`. +- Retire recipe schlund20jgr (:pull:`4022`) by :user:`axel-lauer` +- Retire julia recipes (:pull:`4045`) by :user:`bettina-gier` +- Retire psyplot recipe and diagnostic (:pull:`4063`) by :user:`valeriupredoi` + +Community +~~~~~~~~~ + +- Added stale action (:pull:`4100`) by :user:`schlunma` + +Documentation +~~~~~~~~~~~~~ + +- Update citation and changelog for version 2.12 (:pull:`3945`) by :user:`sloosvel` +- Use Python-only environment for ReadTheDocs builds (:pull:`3955`) by :user:`valeriupredoi` +- Add explanatory note in documentation advice on Codacy (:pull:`4020`) by :user:`alistairsellar` +- Extend broken recipe policy (:pull:`3913`) by :user:`axel-lauer` +- Remove some more Julia references from documentation (but keep some) (:pull:`4073`) by :user:`valeriupredoi` +- Add footer with legal info (:pull:`4072`) by :user:`axel-lauer` +- Add mention of NSC HPC servers (:pull:`4084`) by :user:`jlenh` +- Update figure selection and layout of the gallery (:pull:`4060`) by :user:`bettina-gier` +- Update timeline for release 2.13.0 (:pull:`4096`) by :user:`jlenh` +- Refer to esmvaltool.org webpage for development team information (:pull:`3892`) by :user:`bouweandela` +- Remove mention of Julia in documentation ahead of discontinued support in v2.13 (:pull:`4156`) by :user:`jlenh` +- Update `cartopy` documentation link to fix documentation build fail (:pull:`4179`) by :user:`jlenh` +- Add debugging help (:pull:`2638`) by :user:`zklaus` + +Diagnostics +~~~~~~~~~~~ + +- Add recipe for seasonal cycle and time series of Arctic/Antarctic sea ice area (REF) (:pull:`3891`) by :user:`axel-lauer` +- Add recipe and diagnostic for ZEC (Zero Emissions Commitment) (:pull:`3897`) by :user:`bettina-gier` +- Create scatterplots for the REF (:pull:`3923`) by :user:`LisaBock` +- Evaluate key climate variables at Global warming levels (:pull:`3927`) by :user:`rswamina` +- Add SST bias diagnostic for IPCC AR6 Ch3 Fig. 3.24. Can be used for REF. (:pull:`3944`) by :user:`malininae` +- Update recipe_combined_indices.yml for R versions larger than 4.2 (:pull:`3967`) by :user:`bouweandela` +- Added option to plot horizontal lines in monitoring line plots (:pull:`3977`) by :user:`schlunma` +- Fix R recipes for R > 4.2 (:pull:`3985`) by :user:`sloosvel` +- REF ozone recipe (:pull:`3988`) by :user:`hb326` +- Faster and lower memory version of recipe_ref_scatterplot.yml (:pull:`3992`) by :user:`bouweandela` +- Update GPCP and ERA5 obs4MIPs datasets in recipe_ref_scatterplot.yml (:pull:`4011`) by :user:`bouweandela` +- Add option to specify caption in recipe for `monitor/multi_datasets.py` (:pull:`4028`) by :user:`schlunma` +- Optimize caption produced by `tcr.py` (:pull:`4042`) by :user:`schlunma` +- Optimize caption produced by `ecs.py` (:pull:`4040`) by :user:`schlunma` +- Fix tcre metric diagnostic (:pull:`4044`) by :user:`valeriupredoi` +- Optimize `tcre.py` diagnostic (caption and usability via Python API) (:pull:`4056`) by :user:`schlunma` +- Add additional diagnostics to recipe_ocean_quadmap.yml (:pull:`3953`) by :user:`SophieHall2024` +- New CH4 lifetime diagnostic (:pull:`3507`) by :user:`FranziskaWinterstein` +- New recipe: rate of sea ice area loss per degree warming (:pull:`3983`) by :user:`alistairsellar` +- Remove unused option `annual_mean_kwargs` from all recipes (:pull:`4133`) by :user:`schlunma` +- Aeronet format updates and diagnostic changes (:pull:`4131`) by :user:`nchawang` +- Use obs4MIPs consistently in all recipes (:pull:`4142`) by :user:`bouweandela` +- Add missing method in `seaice_drift.py` (:pull:`4161`) by :user:`sloosvel` +- Update the name of the `remapscon2` operator in R recipes (:pull:`4164`) by :user:`jlenh` +- Trace gases (CO2, CH4, N2O) surface concentration diagnostic (:pull:`4014`) by :user:`jlenh` +- Climate drivers for fire for REF (:pull:`3975`) by :user:`jlenh` +- Exchange toz reference data in ozone REF recipe (:pull:`4008`) by :user:`axel-lauer` +- Add captions to REF recipe for basic sea ice area diags (:pull:`4033`) by :user:`axel-lauer` +- CLIVAR ENSO metrics for REF (:pull:`3972`) by :user:`flicj191` +- Update and combine drought diagnostics (:pull:`3907`) by :user:`lukruh` +- Regional historical changes for REF (:pull:`3926`) by :user:`katjaweigel` +- Add more datasets to recipe_easy_ipcc.yml (:pull:`3920`) by :user:`bouweandela` +- ACCESS-NRI ENSO diagnostics CLIVAR porting (:pull:`3905`) by :user:`flicj191` +- Correct typo in "pearsonr" (:pull:`4140`) by :user:`katjaweigel` +- Update time ranges in REF 'cloud radiative effect' recipe (:pull:`4057`) by :user:`LisaBock` +- Fix caption and time range for REF diagnostic "Cloud scatterplots" (:pull:`4066`) by :user:`LisaBock` +- Portrait plot example: remove sea surface temperature (:pull:`4099`) by :user:`lukruh` +- Recipes ipccwg1ar5ch9: Update CERES and GPCP versions to match ESGF (:pull:`3440`) by :user:`rbeucher` +- Recipe_schlund20esd Remove CERES-EBAF version to fix ESGF search (:pull:`3441`) by :user:`rbeucher` +- Adding basic sanity checks (:pull:`4120`) by :user:`LisaBock` +- Adding optional data output for seaborn_diag.py (:pull:`4144`) by :user:`katjaweigel` +- Fix `recipe_williams09climdyn_CREM.yml` by replacing `np.NAN` with `np.nan` (:pull:`4160`) by :user:`jlenh` +- Fix `recipe_carvalhais14nat.yml` to avoid the usage of `vars()` inside a function (:pull:`4170`) by :user:`jlenh` +- Fix small matplotlib errors in `recipe_zmnam.yml` (:pull:`4177`) by :user:`jlenh` +- Fix `_fix_lons` function in `recipe_flato13ipcc_figure_914.yml` due to `numpy` error [#4034] (:pull:`4178`) by :user:`jlenh` +- Improve the handling of options in recipe_ref_fire.yml (:pull:`4184`) by :user:`bouweandela` +- Fix small matplotlib errors in `recipe_zmnam.yml` (:pull:`4177`) by :user:`jlenh` +- Fix minor NCL errors for `recipe_russel18jgr.yml` (:pull:`4183`) by :user:`jlenh` +- Fix specification for WOA dataset in recipe_ocean_quadmap (:pull:`4176`) by :user:`TomasTorsvik` +- Fix autoassess normalise error (:pull:`4187`) by :user:`alistairsellar` + +Observational and re-analysis dataset support +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- Update ESACCI-OZONE CMORizer(formatter and downloader) for REF (:pull:`3899`) by :user:`diegokam` +- Update CMORizer for OSI-450 aka OSISAF/CCI (sea ice concentration) (:pull:`3963`) by :user:`axel-lauer` +- Adding HadEX3 CMORizer (:pull:`3636`) by :user:`malininae` +- Downloader & cmorizer for NOAA GML surface flask trace gases (:pull:`3847`) by :user:`jlenh` +- Use nested update to parse configuration options given to CMORizer interface (:pull:`4113`) by :user:`schlunma` +- Aeronet-header-fix to handle V3 data (:pull:`4101`) by :user:`nchawang` +- Cmorizer for the Wetland Area and Dynamics for Methane Modeling (WAD2M) dataset (:pull:`4110`) by :user:`jlenh` +- Cmorizer for the Global Lakes and Wetlands Database (GLWD) version 2.0 dataset (:pull:`4112`) by :user:`jlenh` +- Update ESACCI Cloud CMORizer (daily and monthly data) (:pull:`3756`) by :user:`diegokam` +- Fix coords in ESACCI-CLOUD cmorizer (:pull:`4129`) by :user:`LisaBock` +- Added CMORizer for Yang2020 data (:pull:`4090`) by :user:`schlunma` +- Add CMORized NOAA GML surface flask concentration measurement of N2O (:pull:`4059`) by :user:`jlenh` +- CMORizer for ESACCI-BIOMASS (:pull:`4121`) by :user:`axel-lauer` +- Faster OSI-450-nh and OSI-450-sh CMORizer and respect Dask settings (:pull:`3990`) by :user:`bouweandela` +- CMORiser for the IAPv4.2 global ocean temperature dataset (:pull:`3887`) by :user:`rbeucher` +- Update recipe_check_obs.yml to match the latest AERONET data (:pull:`4171`) by :user:`hb326` +- Update version facet for ESACCI-CLOUD in recipe_check_obs.yml (:pull:`4166`) by :user:`jlenh` +- Remove `end_year` facet for NOAA-GML datasets in `recipe_check_obs.yml` (:pull:`4167`) by :user:`jlenh` +- New version of JRA-25 CMORizer (:pull:`3470`) by :user:`axel-lauer` +- Add CAMS cmorizer (:pull:`3749`) by :user:`bettina-gier` + +Automatic testing +~~~~~~~~~~~~~~~~~ + +- Use mamba>=2 for Circle CI upstream development test (:pull:`3949`) by :user:`valeriupredoi` +- Use python-only environment file for Circle build documentation (:pull:`3981`) by :user:`valeriupredoi` +- Use conda exec instead of mamba for circleCI `build_documentation` test (:pull:`4003`) by :user:`valeriupredoi` +- Run pre-commit on main (:pull:`4026`) by :user:`schlunma` +- Try set a longer no output time limit for Circle tests (:pull:`4035`) by :user:`valeriupredoi` +- Only run imagehash tests on Linux machines (:pull:`4039`) by :user:`schlunma` +- Do not run conda install package Github Action with Python 3.13 (yet) (:pull:`4071`) by :user:`valeriupredoi` +- Fix Cicle CI tests (prepend Julia to PATH for the containerized run tests) (:pull:`4086`) by :user:`valeriupredoi` +- Automatically open pull requests to update GitHub Actions (:pull:`4143`) by :user:`valeriupredoi` +- Run esmvalbot test PR twice a month (:pull:`3976`) by :user:`bouweandela` +- Add DKRZ resources for RTW to `dkrz-recipes.jinja` (:pull:`3986`) by :user:`ehogan` +- Add JASMIN resources for RTW to `jasmin-recipes.jinja` (:pull:`3987`) by :user:`ehogan` +- Use site directories in the RTW (:pull:`3984`) by :user:`ehogan` +- Update MO paths in the RTW (:pull:`4006`) by :user:`ehogan` +- Select directories for comparison carefully in the RTW (:pull:`4007`) by :user:`ehogan` +- Implement additional user configuration options in RTW (:pull:`4009`) by :user:`ehogan` +- Generate "recipe status" HTML after each Recipe Test Workflow cycle (:pull:`4013`) by :user:`chrisbillowsMO` +- Update RTW to use the `git` scheme (:pull:`4030`) by :user:`ehogan` +- Add housekeeping to RTW (:pull:`4019`) by :user:`ehogan` +- Revert "Update RTW to use the `git` scheme" (:pull:`4041`) by :user:`ehogan` +- Update location of `recipe_consecdrydays.yml` in the RTW (:pull:`4052`) by :user:`ehogan` +- Monitor Tests workflow fails (:pull:`4065`) by :user:`chrisbillowsMO` +- RTW status report shows missing compare tasks as succeeded (:pull:`4064`) by :user:`chrisbillowsMO` +- Use compare command in recipe test workflow (:pull:`4087`) by :user:`alistairsellar` +- Separate `BRANCH` variable for recipe_test_workflow cloning Core and Tool (:pull:`4070`) by :user:`alistairsellar` +- Update RTW to use new user configuration (:pull:`4017`) by :user:`ehogan` + +Installation +~~~~~~~~~~~~ + +- Remove Julia from conda dependency environment (but keep tests for `esmvaltool install Julia`) + and add docs how to install from source (:pull:`3921`) by :user:`valeriupredoi` +- Unpin upper limit `r-base` (:pull:`3971`) by :user:`valeriupredoi` +- Drop support for Python 3.10 (:pull:`4027`) by :user:`schlunma` +- Support Python 3.13 (:pull:`3805`) by :user:`valeriupredoi` +- Tackle Julia in DockerHub container builds: remove nstallation of packages + (and remove dependencies in Project.jl bar :beer: YAML) (:pull:`4083`) by :user:`valeriupredoi` +- Use `pyproject.toml` and retire `setup.py` with NO Ruff configuration changes (:pull:`4088`) by :user:`valeriupredoi` +- Update environment to use ESMValCore v2.13.0rc1 (:pull:`4169`) by :user:`bouweandela` +- Update ESMValCore version also for OSX (:pull:`4174`) by :user:`bouweandela` + +Improvements +~~~~~~~~~~~~ + +- Replace flake8, yapf, and isort with ruff (:pull:`3893`) by :user:`bouweandela` +- Remove `test_recipe` command (:pull:`4031`) by :user:`alistairsellar` +- Replace deprecated horizontal regridding scheme `linear_extrapolate` with generic scheme (:pull:`4081`) by :user:`schlunma` +- Add compare command, via new develop command group (:pull:`4054`) by :user:`alistairsellar` +- Add extra Ruff rules and switch to `requires-python = ">=3.11"` in pyproject.toml (:pull:`4085`) by :user:`valeriupredoi` +- Move dependabot configuration to correct path (:pull:`4145`) by :user:`bouweandela` +- Use trusted publisher routine for PyPI and retire token-based type (:pull:`4150`) by :user:`valeriupredoi` +- Fix pypa Github Action version (:pull:`4151`) by :user:`valeriupredoi` .. _changelog-v2-12-0: diff --git a/environment.yml b/environment.yml index f5e50a4d9a..ed82714755 100644 --- a/environment.yml +++ b/environment.yml @@ -29,7 +29,7 @@ dependencies: - fire - fsspec - gdal >=3.9.0 - - ipython <9.0 # github.com/ESMValGroup/ESMValCore/issues/2680 ; remove ipython when solved + - ipython - iris >=3.11 - iris-esmf-regrid >=0.10.0 # github.com/SciTools-incubator/iris-esmf-regrid/pull/342 - jinja2 @@ -79,7 +79,7 @@ dependencies: - pytest-xdist # Python packages needed for building docs - autodocsumm >=0.2.2 - - nbsphinx + - myst-nb - sphinx >=6.1.3 - pydata-sphinx-theme # Python packages needed for development diff --git a/environment_osx.yml b/environment_osx.yml index 0f8050e92f..271ab5a345 100644 --- a/environment_osx.yml +++ b/environment_osx.yml @@ -29,7 +29,7 @@ dependencies: - fire - fsspec - gdal >=3.9.0 - - ipython <9.0 # github.com/ESMValGroup/ESMValCore/issues/2680 ; remove ipython when solved + - ipython - iris >=3.11 - iris-esmf-regrid >=0.10.0 # github.com/SciTools-incubator/iris-esmf-regrid/pull/342 - jinja2 @@ -79,7 +79,7 @@ dependencies: - pytest-xdist # Python packages needed for building docs - autodocsumm >=0.2.2 - - nbsphinx + - myst-nb - sphinx >=6.1.3 - pydata-sphinx-theme # Python packages needed for development diff --git a/esmvaltool/cmorizers/data/cmor_config/JRA-25.yml b/esmvaltool/cmorizers/data/cmor_config/JRA-25.yml index de35084841..d0582f796d 100644 --- a/esmvaltool/cmorizers/data/cmor_config/JRA-25.yml +++ b/esmvaltool/cmorizers/data/cmor_config/JRA-25.yml @@ -6,45 +6,75 @@ attributes: tier: 2 modeling_realm: reanaly project_id: OBS6 - source: 'https://esgf.nccs.nasa.gov/thredds/fileServer/CREATE-IP/reanalysis/JMA/JRA-25/JRA-25/' + source: 'https://data.rda.ucar.edu/ds625.1' reference: 'jra_25' comment: | '' # Variables to cmorize variables: - clt_month: + cl: + short_name: cl + mip: Amon + raw: TCDC_HBL + file: 'fcst_phy3m.{year}*.nc' + clt: short_name: clt mip: Amon - raw: clt - file: clt_Amon_reanalysis_JRA-25_197901-201312.nc - hus_month: + raw: TCDC_COL + file: 'fcst_phy2m.{year}*.nc' + clwvi: + short_name: clwvi + mip: Amon + raw: CWAT_COL + file: 'fcst_phy2m.{year}*.nc' + hus: short_name: hus mip: Amon - raw: hus - file: hus_Amon_reanalysis_JRA-25_197901-201312.nc - prw_month: + raw: SPFH_PRS + file: 'anl_p.{year}*.nc' + prw: short_name: prw mip: Amon - raw: prw - file: prw_Amon_reanalysis_JRA-25_197901-201312.nc - rlut_month: + raw: PWAT_COL + file: 'fcst_phy2m.{year}*.nc' + rlut: short_name: rlut mip: Amon - raw: rlut - file: rlut_Amon_reanalysis_JRA-25_197901-201312.nc - rlutcs_month: + raw: ULWRF_TOA + file: 'fcst_phy2m.{year}*.nc' + rlutcs: short_name: rlutcs mip: Amon - raw: rlutcs - file: rlutcs_Amon_reanalysis_JRA-25_197901-201312.nc - rsut_month: + raw: CSULF_TOA + file: 'fcst_phy2m.{year}*.nc' + rsut: short_name: rsut mip: Amon - raw: rsut - file: rsut_Amon_reanalysis_JRA-25_197901-201312.nc - rsutcs_month: + raw: USWRF_TOA + file: 'fcst_phy2m.{year}*.nc' + rsutcs: short_name: rsutcs mip: Amon - raw: rsutcs - file: rsutcs_Amon_reanalysis_JRA-25_197901-201312.nc + raw: CSUSF_TOA + file: 'fcst_phy2m.{year}*.nc' + ta: + short_name: ta + mip: Amon + raw: TMP_PRS + file: 'anl_p.{year}*.nc' + tas: + short_name: tas + mip: Amon + raw: TMP_SFC + file: 'anl_p.{year}*.nc' + tcw: + short_name: tcw + mip: Amon + raw: CWAT_PRS + file: 'anl_p.{year}*.nc' + wap: + short_name: wap + mip: Amon + raw: VVEL_PRS + file: 'anl_chipsi.{year}*.nc' diff --git a/esmvaltool/cmorizers/data/downloaders/datasets/jra_25.py b/esmvaltool/cmorizers/data/downloaders/datasets/jra_25.py index 705d8552b2..c159198107 100644 --- a/esmvaltool/cmorizers/data/downloaders/datasets/jra_25.py +++ b/esmvaltool/cmorizers/data/downloaders/datasets/jra_25.py @@ -1,7 +1,10 @@ -"""Script to download JRA-25 from ESGF.""" +"""Script to download JRA-25 from RDA.""" import logging import os +from datetime import datetime + +from dateutil import relativedelta from esmvaltool.cmorizers.data.downloaders.wget import WGetDownloader @@ -37,36 +40,32 @@ def download_dataset( os.makedirs(downloader.local_folder, exist_ok=True) - url = ( - "https://esgf.nccs.nasa.gov/thredds/fileServer/CREATE-IP/" - "reanalysis/JMA/JRA-25/JRA-25/mon/atmos/" - ) + if start_date is None: + start_date = datetime(1979, 1, 1) + if end_date is None: + end_date = datetime(2007, 12, 31) + loop_date = start_date - downloader.download_file( - url + "clt/clt_Amon_reanalysis_JRA-25_197901-201312.nc", - wget_options=[], - ) - downloader.download_file( - url + "hus/hus_Amon_reanalysis_JRA-25_197901-201312.nc", - wget_options=[], - ) - downloader.download_file( - url + "prw/prw_Amon_reanalysis_JRA-25_197901-201312.nc", - wget_options=[], - ) - downloader.download_file( - url + "rlut/rlut_Amon_reanalysis_JRA-25_197901-201312.nc", - wget_options=[], - ) - downloader.download_file( - url + "rlutcs/rlutcs_Amon_reanalysis_JRA-25_197901-201312.nc", - wget_options=[], - ) - downloader.download_file( - url + "rsut/rsut_Amon_reanalysis_JRA-25_197901-201312.nc", - wget_options=[], - ) - downloader.download_file( - url + "rsutcs/rsutcs_Amon_reanalysis_JRA-25_197901-201312.nc", - wget_options=[], - ) + # download files + + url = "https://data.rda.ucar.edu/ds625.1" + download_options = ["--no-check-certificate"] + + # define files to download + + files = ["fcst_phy2m", "fcst_phy3m", "anl_chipsi", "anl_p"] + + # download data + + while loop_date <= end_date: + year = loop_date.year + month = f"{loop_date.month:0>2}" + + for basename in files: + fname = f"{basename}.{year}{month}.nc" + # download file + downloader.download_file( + url + "/" + basename + "/" + fname, download_options + ) + + loop_date += relativedelta.relativedelta(months=1) diff --git a/esmvaltool/cmorizers/data/downloaders/datasets/jra_55.py b/esmvaltool/cmorizers/data/downloaders/datasets/jra_55.py index e61d6624ac..8843e06dda 100644 --- a/esmvaltool/cmorizers/data/downloaders/datasets/jra_55.py +++ b/esmvaltool/cmorizers/data/downloaders/datasets/jra_55.py @@ -49,7 +49,7 @@ def download_dataset( # download files url = "https://tds.gdex.ucar.edu/thredds/catalog/files/g/d628001" - download_options = ["--load-cookies=auth.rda_ucar_edu"] + download_options = [] # define variables to download diff --git a/esmvaltool/cmorizers/data/formatters/datasets/jra_25.py b/esmvaltool/cmorizers/data/formatters/datasets/jra_25.py index 0ea80a6198..8ff245372c 100644 --- a/esmvaltool/cmorizers/data/formatters/datasets/jra_25.py +++ b/esmvaltool/cmorizers/data/formatters/datasets/jra_25.py @@ -5,43 +5,132 @@ Tier 2: other freely-available dataset. Source - ESGF: - https://esgf.nccs.nasa.gov/thredds/fileServer/CREATE-IP/ - reanalysis/JMA/JRA-25/JRA-25/mon/atmos/ - + https://data.rda.ucar.edu/ds625.1 Last access - 20221122 + 2023-06-14 Download and processing instructions see download script cmorizers/data/downloaders/datasets/jra_25.py """ import copy +import glob import logging import os +from datetime import datetime import iris +from dateutil import relativedelta +from esmvalcore.preprocessor import extract_levels from iris import NameConstraint +from iris.util import equalise_attributes from esmvaltool.cmorizers.data import utilities as utils logger = logging.getLogger(__name__) -def _extract_variable(short_name, var, filename, cfg, in_dir, out_dir): +def _extract_variable(short_name, var, in_files, cfg, out_dir): """Extract variable.""" # load data - filepath = os.path.join(in_dir, filename) raw_var = var.get("raw", short_name) - cube = iris.load_cube(filepath, NameConstraint(var_name=raw_var)) + rawcubes = iris.load(in_files, NameConstraint(var_name=raw_var)) + + equalise_attributes(rawcubes) + + # check if data are on hybrid levels + + hybrid_levels = False + + for coord in rawcubes[0].coords(): + if ( + coord.standard_name + == "atmosphere_hybrid_sigma_pressure_coordinate" + ): + hybrid_levels = True + break + + # If (3-dim) data are on hybrid levels then regrid data to pressure levels. + # The pressure levels are taken from the JRA-25 files that provide JRA-25 + # data on pressure levels (e.g. anl_p.yyyymm.nc). + + if hybrid_levels: + pcubes = iris.cube.CubeList([]) + + for cube in rawcubes: + pcube = extract_levels( + cube, + [ + 100000, + 92500, + 85000, + 70000, + 60000, + 50000, + 40000, + 30000, + 25000, + 20000, + 15000, + 10000, + 7000, + 5000, + 3000, + 2000, + 1000, + 700, + 500, + 300, + 200, + 100, + 40, + ], + "linear", + coordinate="air_pressure", + ) + # remove auxiliary coordinate 'Surface_pressure' + pcube.remove_coord("Surface_pressure") + # rename dimension air_pressure to plev + coord = pcube.coord("air_pressure") + coord.rename("plev") + coord.var_name = "plev" + + pcubes.append(pcube) + + cube = pcubes.concatenate_cube() + else: + cube = rawcubes.concatenate_cube() - # Fix metadata cmor_info = cfg["cmor_table"].get_variable(var["mip"], short_name) + + try: + cube.convert_units(cmor_info.units) + except Exception as ex: # pylint: disable=broad-except + logger.warning( + "Warning: could not convert units from %s to %s (%r)", + cube.units, + cmor_info.units, + ex, + ) + + # Fix coordinates + utils.fix_coords(cube) + for coord in cube.coords(): + if coord.var_name == "plev": + coord.standard_name = "air_pressure" + coord.long_name = "pressure" + coord.attributes["positive"] = "up" + + # Fix metadata attrs = copy.deepcopy(cfg["attributes"]) attrs["mip"] = var["mip"] utils.fix_var_metadata(cube, cmor_info) utils.set_global_atts(cube, attrs) + # Add height2m if needed + if "height2m" in cmor_info.dimensions: + utils.add_height2m(cube) + # Save variable utils.save_variable( cube, short_name, out_dir, attrs, unlimited_dimensions=["time"] @@ -50,11 +139,28 @@ def _extract_variable(short_name, var, filename, cfg, in_dir, out_dir): def cmorization(in_dir, out_dir, cfg, cfg_user, start_date, end_date): """Cmorization func call.""" - # Run the cmorization - for short_name, var in cfg["variables"].items(): - short_name = var["short_name"] - filename = var["file"] - logger.info( - "CMORizing variable '%s' from file '%s'", short_name, filename - ) - _extract_variable(short_name, var, filename, cfg, in_dir, out_dir) + if start_date is None: + start_date = datetime(1979, 1, 1) + if end_date is None: + end_date = datetime(2007, 12, 31) + loop_date = start_date + + while loop_date <= end_date: + year = loop_date.year + + for short_name, var in cfg["variables"].items(): + if "short_name" not in var: + var["short_name"] = short_name + + # Now get list of files + filepattern = os.path.join( + in_dir + "/" + var["file"].format(year=year) + ) + print("*** " + filepattern) + in_files = glob.glob(filepattern) + if not in_files: + logger.warning("Warning: no data found for %d", year) + continue + _extract_variable(short_name, var, in_files, cfg, out_dir) + + loop_date += relativedelta.relativedelta(years=1) diff --git a/pyproject.toml b/pyproject.toml index 98b160128e..16c37531b0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -52,7 +52,7 @@ dependencies = [ "fire", "fsspec", "GDAL", - "ipython<9.0", # github.com/ESMValGroup/ESMValCore/issues/2680 + "ipython", "jinja2", "joblib", "lime", @@ -106,7 +106,7 @@ test = [ ] doc = [ "autodocsumm>=0.2.2", - "nbsphinx", + "myst-nb", "sphinx>=6.1.3", "pydata_sphinx_theme", ]