diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index dda65568b4a29..86dce2e796499 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -25,33 +25,28 @@ is merged. See https://github.com/blog/1506-closing-issues-via-pull-requests
#### What does this implement/fix? Explain your changes.
+#### AI usage disclosure
+
+I used AI assistance for:
+- [ ] Code generation (e.g., when writing an implementation or fixing a bug)
+- [ ] Test/benchmark generation
+- [ ] Documentation (including examples)
+- [ ] Research and understanding
+
+
#### Any other comments?
-
-
diff --git a/.github/workflows/bot-lint-comment.yml b/.github/workflows/bot-lint-comment.yml
index 36c29ad3e0b84..8832d583ca7d2 100644
--- a/.github/workflows/bot-lint-comment.yml
+++ b/.github/workflows/bot-lint-comment.yml
@@ -58,7 +58,7 @@ jobs:
python-version: 3.11
- name: Install dependencies
- run: python -m pip install requests
+ run: python -m pip install PyGithub
- name: Create/update GitHub comment
env:
diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml
index 2a2ce57eaefb7..008e32b1acb48 100644
--- a/.github/workflows/unit-tests.yml
+++ b/.github/workflows/unit-tests.yml
@@ -5,6 +5,11 @@ permissions:
on:
push:
pull_request:
+ schedule:
+ # Nightly build at 02:30 UTC
+ - cron: "30 2 * * *"
+ # Manual run
+ workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
@@ -120,6 +125,23 @@ jobs:
os: ubuntu-24.04-arm
DISTRIB: conda
LOCK_FILE: build_tools/github/pymin_conda_forge_arm_linux-aarch64_conda.lock
+
+ # Linux environment to test the latest available dependencies.
+ # It runs tests requiring lightgbm, pandas and PyAMG.
+ - name: Linux pylatest_pip_openblas_pandas
+ os: ubuntu-24.04
+ DISTRIB: conda
+ LOCK_FILE: build_tools/azure/pylatest_pip_openblas_pandas_linux-64_conda.lock
+ SKLEARN_TESTS_GLOBAL_RANDOM_SEED: 3 # non-default seed
+ SCIPY_ARRAY_API: 1
+ CHECK_PYTEST_SOFT_DEPENDENCY: true
+ SKLEARN_WARNINGS_AS_ERRORS: 1
+ # disable pytest-xdist to have 1 job where OpenMP and BLAS are not single
+ # threaded because by default the tests configuration (sklearn/conftest.py)
+ # makes sure that they are single threaded in each xdist subprocess.
+ PYTEST_XDIST_VERSION: none
+ PIP_BUILD_ISOLATION: true
+
- name: macOS pylatest_conda_forge_arm
os: macOS-15
DISTRIB: conda
@@ -127,7 +149,7 @@ jobs:
SKLEARN_TESTS_GLOBAL_RANDOM_SEED: 5 # non-default seed
SCIPY_ARRAY_API: 1
PYTORCH_ENABLE_MPS_FALLBACK: 1
- CHECK_PYTEST_SOFT_DEPENDENCY: 'true'
+ CHECK_PYTEST_SOFT_DEPENDENCY: true
env: ${{ matrix }}
@@ -152,6 +174,10 @@ jobs:
- name: Build scikit-learn
run: bash -l build_tools/azure/install.sh
+ - name: Set random seed for nightly/manual runs
+ if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
+ run: echo "SKLEARN_TESTS_GLOBAL_RANDOM_SEED=$((RANDOM % 100))" >> $GITHUB_ENV
+
- name: Run tests
env:
COMMIT_MESSAGE: ${{ needs.retrieve-commit-message.outputs.message }}
@@ -178,3 +204,12 @@ jobs:
files: ./coverage.xml
token: ${{ secrets.CODECOV_TOKEN }}
disable_search: true
+
+ update-tracker:
+ uses: ./.github/workflows/update_tracking_issue.yml
+ if: ${{ always() }}
+ needs: [unit-tests]
+ with:
+ job_status: ${{ needs.unit-tests.result }}
+ secrets:
+ BOT_GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }}
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index eca3683253ff7..95d0d104036af 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -89,7 +89,6 @@ jobs:
COVERAGE: 'false'
# Disable pytest-xdist to use multiple cores for stress-testing with pytest-run-parallel
PYTEST_XDIST_VERSION: 'none'
- SKLEARN_FAULTHANDLER_TIMEOUT: '1800' # 30 * 60 seconds
# Will run all the time regardless of linting outcome.
- template: build_tools/azure/posix.yml
@@ -183,20 +182,6 @@ jobs:
SKLEARN_ENABLE_DEBUG_CYTHON_DIRECTIVES: '1'
SKLEARN_RUN_FLOAT32_TESTS: '1'
SKLEARN_TESTS_GLOBAL_RANDOM_SEED: '2' # non-default seed
- # Linux environment to test the latest available dependencies.
- # It runs tests requiring lightgbm, pandas and PyAMG.
- pylatest_pip_openblas_pandas:
- DISTRIB: 'conda-pip-latest'
- LOCK_FILE: './build_tools/azure/pylatest_pip_openblas_pandas_linux-64_conda.lock'
- CHECK_PYTEST_SOFT_DEPENDENCY: 'true'
- SKLEARN_WARNINGS_AS_ERRORS: '1'
- SKLEARN_TESTS_GLOBAL_RANDOM_SEED: '3' # non-default seed
- # disable pytest-xdist to have 1 job where OpenMP and BLAS are not single
- # threaded because by default the tests configuration (sklearn/conftest.py)
- # makes sure that they are single threaded in each xdist subprocess.
- PYTEST_XDIST_VERSION: 'none'
- PIP_BUILD_ISOLATION: 'true'
- SCIPY_ARRAY_API: '1'
- template: build_tools/azure/posix-docker.yml
parameters:
diff --git a/build_tools/azure/debian_32bit_lock.txt b/build_tools/azure/debian_32bit_lock.txt
index d78b1d3cde84f..69fff8cc96d64 100644
--- a/build_tools/azure/debian_32bit_lock.txt
+++ b/build_tools/azure/debian_32bit_lock.txt
@@ -6,7 +6,7 @@
#
coverage[toml]==7.12.0
# via pytest-cov
-cython==3.2.1
+cython==3.2.2
# via -r build_tools/azure/debian_32bit_requirements.txt
execnet==2.1.2
# via pytest-xdist
@@ -14,7 +14,7 @@ iniconfig==2.3.0
# via pytest
joblib==1.5.2
# via -r build_tools/azure/debian_32bit_requirements.txt
-meson==1.9.1
+meson==1.9.2
# via meson-python
meson-python==0.18.0
# via -r build_tools/azure/debian_32bit_requirements.txt
@@ -33,7 +33,7 @@ pygments==2.19.2
# via pytest
pyproject-metadata==0.10.0
# via meson-python
-pytest==9.0.1
+pytest==9.0.2
# via
# -r build_tools/azure/debian_32bit_requirements.txt
# pytest-cov
diff --git a/build_tools/azure/pylatest_conda_forge_mkl_linux-64_conda.lock b/build_tools/azure/pylatest_conda_forge_mkl_linux-64_conda.lock
index 9f3b309640118..2fe48c0e7538e 100644
--- a/build_tools/azure/pylatest_conda_forge_mkl_linux-64_conda.lock
+++ b/build_tools/azure/pylatest_conda_forge_mkl_linux-64_conda.lock
@@ -9,39 +9,38 @@ https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.co
https://conda.anaconda.org/conda-forge/linux-64/libopentelemetry-cpp-headers-1.21.0-ha770c72_1.conda#9e298d76f543deb06eb0f3413675e13a
https://conda.anaconda.org/conda-forge/linux-64/mkl-include-2025.3.0-hf2ce2f3_462.conda#0ec3505e9b16acc124d1ec6e5ae8207c
https://conda.anaconda.org/conda-forge/linux-64/nlohmann_json-3.12.0-h54a6638_1.conda#16c2a0e9c4a166e53632cfca4f68d020
-https://conda.anaconda.org/conda-forge/noarch/pybind11-abi-4-hd8ed1ab_3.tar.bz2#878f923dd6acc8aeb47a75da6c4098be
+https://conda.anaconda.org/conda-forge/noarch/pybind11-abi-11-hc364b38_1.conda#f0599959a2447c1e544e216bddf393fa
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.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda#a7970cd949a077b7cb9696379d338681
-https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-bootstrap_ha15bf96_3.conda#3036ca5b895b7f5146c5a25486234a68
https://conda.anaconda.org/conda-forge/linux-64/libglvnd-1.7.0-ha4b6fd6_2.conda#434ca7e50e40f4918ab701e3facd59a0
-https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-21.1.6-h4922eb0_0.conda#7a0b9ce502e0ed62195e02891dfcd704
-https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-6_kmp_llvm.conda#197811678264cb9da0d2ea0726a70661
+https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-21.1.7-h4922eb0_0.conda#ec29f865968a81e1961b3c2f2765eebb
+https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-7_kmp_llvm.conda#887b70e1d607fba7957aa02f9ee0d939
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2#fee5683a3f04bd15cbd8318b096a27ab
https://conda.anaconda.org/conda-forge/linux-64/libegl-1.7.0-ha4b6fd6_2.conda#c151d5eb730e9b7480e6d48c0fc44048
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.2.0-h767d61c_7.conda#c0374badb3a5d4b1372db28d19462c53
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_15.conda#a5d86b0496174a412d531eac03af9174
https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.14-hb9d3cd8_0.conda#76df83c2a9035c54df5d04ff81bcc02d
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.12.5-hb03c661_1.conda#f1d45413e1c41a7eff162bf702c02cea
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.12.6-hb03c661_0.conda#e36ad70a7e0b48f091ed6902f04c23b8
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/keyutils-1.6.3-hb9d3cd8_0.conda#b38117a3c920364aff79f870c984b4a3
-https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-h09219d5_0.conda#9b3117ec960b823815b02190b41c0484
+https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda#72c8fd1af66bd67bf580645b426513ed
https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda#6c77a605a7a689d17d4819c0f8ac9a00
https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda#8b09ae86839581147ef2e5c5e229d164
https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda#35f29eec58405aaf55e01cb470d8c26a
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda#280ea6eee9e2ddefde25ff799c4f0363
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_7.conda#f116940d825ffc9104400f0d7f1a4551
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_15.conda#7b742943660c5173bb6a5c823021c9a0
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_15.conda#356b7358fcd6df32ad50d07cdfadd27d
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.2-hb03c661_0.conda#8397539e3a0bbd1695584fb4f927485a
https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc
https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda#c7e925f37e3b40d893459e625f6a53f1
https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda#7c7927b404672409d9917d49bff5f2d6
https://conda.anaconda.org/conda-forge/linux-64/libpciaccess-0.18-hb9d3cd8_0.conda#70e3400cbbfa03e96dcde7fc13e38c7b
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda#5b767048b1b3ee9a954b06f4084f93dc
-https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.11.1-hfe17d71_0.conda#765c7e0005659d5154cdd33dc529e0a5
-https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda#80c07c68d2f6870250959dcc95b209d1
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_15.conda#fccfb26375ec5e4a2192dee6604b6d02
+https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.11.2-hfe17d71_0.conda#5641725dfad698909ec71dac80d16736
+https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-h5347b49_1.conda#41f5c09a211985c3ce642d60721e7c3e
https://conda.anaconda.org/conda-forge/linux-64/libuv-1.51.0-hb03c661_1.conda#0f03292cc56bf91a077a134ea8747118
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
@@ -51,25 +50,27 @@ https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.
https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.2-hb9d3cd8_0.conda#fb901ff28063514abb6046c9ec2c4a45
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.12-hb03c661_1.conda#b2895afaf55bf96a8c8282a2e47a5de0
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.5-hb03c661_1.conda#1dafce8548e38671bea82e3f5c6ce22f
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.9.10-h346e085_1.conda#7e6b378cfb6ad918a5fa52bd7741ab20
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.3.1-h7e655bb_8.conda#1baf55dfcc138d98d437309e9aba2635
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.2.4-h7e655bb_3.conda#70e83d2429b7edb595355316927dfbea
-https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.2.7-h7e655bb_4.conda#83a6e0fc73a7f18a8024fc89455da81c
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.9.13-h2c9d079_1.conda#3c3d02681058c3d206b562b2e3bc337f
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.3.1-h8b1a151_9.conda#f7ec84186dfe7a9e3a9f9e5a4d023e75
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.2.4-h8b1a151_4.conda#c7e3e08b7b1b285524ab9d74162ce40b
+https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.2.7-h8b1a151_5.conda#68da5b56dde41e172b7b24f071c4b392
https://conda.anaconda.org/conda-forge/linux-64/double-conversion-3.3.1-h5888daf_0.conda#bfd56492d8346d669010eccafe0ba058
+https://conda.anaconda.org/conda-forge/linux-64/fmt-12.0.0-h2b0788b_0.conda#d90bf58b03d9a958cb4f9d3de539af17
https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-h5888daf_1005.conda#d411fc29e338efb48c5fd4576d71d881
https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.14-hecca717_2.conda#2cd94587f3a401ae05e03a6caf09539d
https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda#9344155d33912347b37f0ae6c410a835
https://conda.anaconda.org/conda-forge/linux-64/libabseil-20250512.1-cxx17_hba17884_0.conda#83b160d4da3e1e847bf044997621ed63
-https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hd53d788_0.conda#c183787d2b228775dece45842abbbe53
-https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.2.0-h02bd7ab_0.conda#b7a924e3e9ebc7938ffc7d94fe603ed3
+https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hb03c661_1.conda#366b40a69f0ad6072561c1d09301c886
+https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.2.0-hb03c661_1.conda#4ffbb341c8b616aa2494b6afb26a0c5f
https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.125-hb03c661_1.conda#9314bc5a1fe7d1044dc9dfd3ef400535
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/libgfortran-15.2.0-h69a702a_7.conda#8621a450add4e231f676646880703f49
-https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.51-h421ea60_0.conda#d8b81203d08435eb999baa249427884e
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_15.conda#7deffdc77cda3d2bbc9c558efa33d3ed
+https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.53-h421ea60_0.conda#00d4e66b1f746cb14944cad23fffb405
+https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda#2e1b84d273b01835256e53fd938de355
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.2.0-h4852527_7.conda#f627678cf829bd70bccf141a19c3ad3e
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_15.conda#20a8584ff8677ac9d724345b9d4eb757
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/lz4-c-1.10.0-h5888daf_1.conda#9de5350a85c4a20c685259b889aa6393
@@ -77,24 +78,25 @@ https://conda.anaconda.org/conda-forge/linux-64/ninja-1.13.2-h171cf75_0.conda#b5
https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.46-h1321c63_0.conda#7fa07cb0fb1b625a089ccc01218ee5b1
https://conda.anaconda.org/conda-forge/linux-64/pixman-0.46.4-h54a6638_1.conda#c01af13bdc553d1a8fbfff6e8db075f0
https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda#283b96675859b20a825f8fa30f311446
-https://conda.anaconda.org/conda-forge/linux-64/s2n-1.6.0-h8399546_1.conda#8dbc626b1b11e7feb40a14498567b954
+https://conda.anaconda.org/conda-forge/linux-64/s2n-1.6.2-he8a4886_1.conda#bade189a194e66b93c03021bd36c337b
https://conda.anaconda.org/conda-forge/linux-64/sleef-3.9.0-ha0421bc_0.conda#e8a0b4f5e82ecacffaa5e805020473cb
https://conda.anaconda.org/conda-forge/linux-64/snappy-1.2.2-h03e3b7b_1.conda#98b6c9dc80eb87b2519b97bcf7e578dd
https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda#86bc20552bf46075e3d92b67f089172d
https://conda.anaconda.org/conda-forge/linux-64/wayland-1.24.0-hd6090a7_1.conda#035da2e4f5770f036ff704fa17aace24
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/zlib-1.3.1-hb9d3cd8_2.conda#c9f075ab2f33b3bbee9e62d4ad0a6cd8
-https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.2.5-hde8ca8f_0.conda#1920c3502e7f6688d650ab81cd3775fd
-https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda#6432cb5d4ac0046c3ac0a8a0f95842f9
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.23.3-ha76f1cc_3.conda#14d9fc6b1c7a823fca6cf65f595ff70d
-https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.2.0-hf2c8021_0.conda#5304333319a6124a2737d9f128cbc4ed
+https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.3.2-h54a6638_0.conda#0faadd01896315ceea58bcc3479b1d21
+https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda#4a13eeac0b5c8e5b8ab496e6c4ddd829
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.23.3-hdaf4b65_5.conda#132e8f8f40f0ffc0bbde12bb4e8dd1a1
+https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.2.0-hb03c661_1.conda#af39b9a8711d4a8d437b52c1d78eb6a1
https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.1-hbabe93e_0.conda#ff862eebdfeb2fd048ae9dc92510baca
https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-hac33072_2.conda#c94a5994ef49749880a8139cf9afcbe1
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/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda#a6abd2796fc332536735f68ba23f7901
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/libfreetype6-2.14.1-h73754d4_0.conda#8e7251989bca326a28f4a5ffbd74557a
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_7.conda#beeb74a6fe5ff118451cf0581bfe2642
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_15.conda#83c3e3937b2715e9919bc1ca27a7f684
https://conda.anaconda.org/conda-forge/linux-64/libglib-2.86.2-h32235b2_0.conda#0cb0612bc9cb30c62baf41f9d600611b
https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda#b499ce4b026493a13774bcf0f4c33849
https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-6.31.1-h49aed37_2.conda#94cb88daa0892171457d9fdc69f43eca
@@ -107,89 +109,68 @@ https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.1-hb711507_
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.10-hb711507_0.conda#0e0cbe0564d03a99afd5fd7b362feecd
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.2-hb711507_0.conda#608e0ef8256b81d04456e8d211eee3e8
https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.12-h4f16b4b_0.conda#db038ce880f100acc74dba10302b5630
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.5.6-h3cb25bf_6.conda#874d910adf3debe908b1e8e5847e0014
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.10.7-hc5c8343_4.conda#b6fdadda34f2a60870980607ef469e39
-https://conda.anaconda.org/conda-forge/linux-64/brotli-1.2.0-h41a2e66_0.conda#4ddfd44e473c676cb8e80548ba4aa704
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.5.7-h28f887f_1.conda#7b8e3f846353b75db163ad93248e5f9d
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.10.7-ha8fc4e3_5.conda#3028f20dacafc00b22b88b324c8956cc
+https://conda.anaconda.org/conda-forge/linux-64/brotli-1.2.0-hed03a55_1.conda#8ccf913aaba749a5496c17629d859ed1
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/dbus-1.16.2-h3c4dab8_0.conda#679616eb5ad4e521c83da4650860aba7
+https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h24cb091_1.conda#ce96f2f470d39bd96ce03945af92e280
https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.17-h717163a_0.conda#000e85703f0fd9594c81710dd5066471
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.17.0-h4e3cde8_0.conda#01e149d4a53185622dc2e788281961f2
https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.1-ha770c72_0.conda#f4084e4e6577797150f9b04a4560ceb0
https://conda.anaconda.org/conda-forge/linux-64/libglx-1.7.0-ha4b6fd6_2.conda#c8013e438185f33b13814c5c488acd5c
https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.0.2-h2cc385e_0.tar.bz2#b34907d3a81a3cd8095ee83d174c074a
-https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.0-hee844dc_0.conda#729a572a3ebb8c43933b30edcc628ceb
https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.1-ha9997c6_0.conda#e7733bc6785ec009e47a224a71917e84
https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h90cbb55_3.conda#2eeb50cab6652538eee8fc0bc3340c81
https://conda.anaconda.org/conda-forge/linux-64/nodejs-24.9.0-heeeca48_0.conda#8a2a73951c1ea275e76fb1b92d97ff3e
https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.4-h55fea9a_0.conda#11b3379b191f63139e29c0d19dee24cd
https://conda.anaconda.org/conda-forge/linux-64/orc-2.2.1-hd747db4_0.conda#ddab8b2af55b88d63469c040377bd37e
+https://conda.anaconda.org/conda-forge/linux-64/python-3.13.11-hc97d973_100_cp313.conda#0cbb0010f1d8ecb64a428a8d4214609e
https://conda.anaconda.org/conda-forge/linux-64/re2-2025.11.05-h5301d42_0.conda#0227d04521bc3d28c7995c7e1f99a721
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-hb711507_2.conda#a0901183f08b6c7107aab109733a3c91
https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.46-hb03c661_0.conda#71ae752a748962161b4740eaff510258
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.6-hb9d3cd8_0.conda#febbab7d15033c913d53c7a2c102309d
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxfixes-6.0.2-hb03c661_0.conda#ba231da7fccf9ea1e768caf5c7099b84
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/aws-c-auth-0.9.1-h7ca4310_7.conda#6e91a9182506f6715c25c3ab80990653
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.13.3-h3a25ec9_10.conda#f329cc15f3b4559cab20646245c3fc9b
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.9.1-hef928c7_8.conda#bf749bed7435c6ed446de490d48e0444
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.13.3-hc63082f_11.conda#6a653aefdc5d83a4f959869d1759e6e3
https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.16.1-h3a458e0_0.conda#1d4e0d37da5f3c22ecd44033f673feba
+https://conda.anaconda.org/conda-forge/linux-64/backports.zstd-1.2.0-py313h18e8e13_0.conda#ab79cf30dea6ef4d1ab2623c5ac5601b
+https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py313hf159716_1.conda#6c4d3597cf43f3439a51b2b13e29a4ba
https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
-https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.1-ha770c72_0.conda#4afc585cd97ba8a23809406cd8a9eda8
-https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda#928b8be80851f5d8ffb016f9c81dae7a
-https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.73.1-h3288cfb_1.conda#ff63bb12ac31c176ff257e3289f20770
-https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.1-h26afc86_0.conda#e512be7dc1f84966d50959e900ca121f
-https://conda.anaconda.org/conda-forge/linux-64/mpc-1.3.1-h24ddda3_1.conda#aa14b9a5196a6d8dd364164b7ce56acf
-https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878
-https://conda.anaconda.org/conda-forge/linux-64/playwright-1.56.1-h5585027_0.conda#5e6fc54576b97242f1eb5a5deb411eca
-https://conda.anaconda.org/conda-forge/linux-64/prometheus-cpp-1.3.0-ha5d0236_0.conda#a83f6a2fdc079e643237887a37460668
-https://conda.anaconda.org/conda-forge/linux-64/python-3.13.9-hc97d973_101_cp313.conda#4780fe896e961722d0623fa91d0d3378
-https://conda.anaconda.org/conda-forge/linux-64/xcb-util-cursor-0.1.6-hb03c661_0.conda#4d1fc190b99912ed557a8236e958c559
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.6-hb9d3cd8_2.conda#d3c295b50f092ab525ffe3c2aa4b7413
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcursor-1.2.3-hb9d3cd8_0.conda#2ccd714aa2242315acaf0a67faea780b
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda#b5fcc7172d22516e1f965490e65e33a4
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxi-1.8.2-hb9d3cd8_0.conda#17dcc85db3c7886650b8908b183d6876
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrandr-1.5.4-hb9d3cd8_0.conda#2de7f99d6581a4a7adbff607b5c278ca
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.6-hb9d3cd8_0.conda#5efa5fa6243a622445fdfd72aee15efa
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.10.1-hcb69869_2.conda#3bcec65152e70e02e8d17d296c056a82
-https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.13.2-h3a5f585_1.conda#4e921d9c85e6559c60215497978b3cdb
-https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.11.0-h3d7a050_1.conda#89985ba2a3742f34be6aafd6a8f3af8c
-https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py313h09d1b84_0.conda#dfd94363b679c74937b3926731ee861a
https://conda.anaconda.org/conda-forge/noarch/certifi-2025.11.12-pyhd8ed1ab_0.conda#96a02a5c1a65470a7e4eedb644c872fd
https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda#a22d1fd9bf98827e280a02875d9a007a
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/noarch/cpython-3.13.9-py313hd8ed1ab_101.conda#367133808e89325690562099851529c8
-https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833
-https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.1-py313hc80a56d_0.conda#1617960e1d8164f837ed5d0996603b88
+https://conda.anaconda.org/conda-forge/noarch/cpython-3.13.11-py313hd8ed1ab_100.conda#5bf347916a543bcb290c780fa449bf73
+https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhcf101f3_2.conda#4c2a8fef270f6c69591889b93f9f55c1
+https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.2-py313hc80a56d_0.conda#a14fa0e1f58e2fce8d6fddf8f54ed500
https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda#66b8b26023b8efdf8fcb23bac4b6325d
-https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee
-https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.10.0-pyhd8ed1ab_0.conda#d18004c37182f83b9818b714825a7627
-https://conda.anaconda.org/conda-forge/linux-64/gmpy2-2.2.1-py313h86d8783_2.conda#d904f240d2d2500d4906361c67569217
-https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.2.4-py313h7033f15_1.conda#54e4dec31235bbc794d091af9afcd845
+https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.1-ha770c72_0.conda#4afc585cd97ba8a23809406cd8a9eda8
+https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.12.0-pyhd8ed1ab_0.conda#a3b9510e2491c20c7fc0f5e730227fbb
+https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.3.0-py313h7033f15_0.conda#2b1cf80423628afd34b4c66b767d7f6b
https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda#0a802cb9888dd14eeefc611f05c40b6e
https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda#8e6923fc12f1fe8f8c4e5c9f343256ac
https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda#53abe63df7e10a6ba605dc5f9f961d36
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py313hc8edb43_2.conda#3e0e65595330e26515e31b7fc6d933c7
-https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.39.0-hdb79228_0.conda#a2e30ccd49f753fd30de0d30b1569789
-https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.12.1-default_h7f8ec31_1002.conda#c01021ae525a76fe62720c7346212d74
-https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.6-hf7376ad_0.conda#8aa154f30e0bc616cbde9794710e0be2
-https://conda.anaconda.org/conda-forge/linux-64/libopentelemetry-cpp-1.21.0-hb9b0907_1.conda#1c0320794855f457dea27d35c4c71e23
-https://conda.anaconda.org/conda-forge/linux-64/libpq-18.1-h5c52fec_1.conda#638350cf5da41f3651958876a2104992
-https://conda.anaconda.org/conda-forge/linux-64/libvulkan-loader-1.4.328.1-h5279c79_0.conda#372a62464d47d9e966b630ffae3abe73
-https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.0-hca5e8e5_0.conda#aa65b4add9574bb1d23c76560c5efd4c
-https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.43-h711ed8c_1.conda#87e6096ec6d542d1c1f8b33245fe8300
+https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda#928b8be80851f5d8ffb016f9c81dae7a
+https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.73.1-h3288cfb_1.conda#ff63bb12ac31c176ff257e3289f20770
+https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.1-h26afc86_0.conda#e512be7dc1f84966d50959e900ca121f
https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py313h3dea7bd_0.conda#c14389156310b8ed3520d84f854be1ee
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
+https://conda.anaconda.org/conda-forge/linux-64/mpc-1.3.1-h24ddda3_1.conda#aa14b9a5196a6d8dd364164b7ce56acf
https://conda.anaconda.org/conda-forge/noarch/mpmath-1.3.0-pyhd8ed1ab_1.conda#3585aa87c43ab15b167b574cd73b057b
https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
-https://conda.anaconda.org/conda-forge/noarch/networkx-3.5-pyhe01879c_0.conda#16bff3d37a4f99e3aa089c36c2b8d650
+https://conda.anaconda.org/conda-forge/noarch/networkx-3.6-pyhcf101f3_0.conda#6725bfdf8ea7a8bf6415f096f3f1ffa5
+https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
-https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py313h50355cd_0.conda#8a96eab78687362de3e102a15c4747a8
+https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py313h80991f8_2.conda#37ca27d2f726f29a068230d8f6917ce4
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf47878473e5ab9fdb4115735230e191
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
-https://conda.anaconda.org/conda-forge/noarch/pybind11-global-2.13.6-pyh217bc35_3.conda#730a5284e26d6bdb73332dafb26aec82
-https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda#12c566707c80111f9799308d9e265aef
+https://conda.anaconda.org/conda-forge/linux-64/playwright-1.57.0-h5585027_0.conda#0a2e773b5c3f67325d1733d2b7ca0ffb
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
+https://conda.anaconda.org/conda-forge/linux-64/prometheus-cpp-1.3.0-ha5d0236_0.conda#a83f6a2fdc079e643237887a37460668
+https://conda.anaconda.org/conda-forge/noarch/pybind11-global-3.0.1-pyhc7ab6ef_0.conda#fe10b422ce8b5af5dab3740e4084c3f9
https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda#6c8979be6d7a17692793114fa26916e8
https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda#461219d1a5bd61342293efa2c0c90eac
@@ -199,77 +180,95 @@ https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.con
https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
https://conda.anaconda.org/conda-forge/noarch/text-unidecode-1.3-pyhd8ed1ab_2.conda#23b4ba5619c4752976eb7ba1f5acb7e8
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
-https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda#00d80af3a7bf27729484e786a68aafff
+https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda#d0fc809fa4c4d85e959ce4ab6e1de800
https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py313h07c4f96_2.conda#7824f18e343d1f846dcde7b23c9bf31a
https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
-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/aws-crt-cpp-0.35.2-h2ceb62e_4.conda#363b3e12e49cecf931338d10114945e9
-https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.15.0-h2a74896_1.conda#ffd553ff98ce5d74d3d89ac269153149
-https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-h3394656_0.conda#09262e66b19567aff4f592fb53b28760
-https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf46b229_1.conda#d0616e7935acab407d1543b28c446f6f
+https://conda.anaconda.org/conda-forge/linux-64/xcb-util-cursor-0.1.6-hb03c661_0.conda#4d1fc190b99912ed557a8236e958c559
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.6-hb9d3cd8_2.conda#d3c295b50f092ab525ffe3c2aa4b7413
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcursor-1.2.3-hb9d3cd8_0.conda#2ccd714aa2242315acaf0a67faea780b
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda#b5fcc7172d22516e1f965490e65e33a4
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxi-1.8.2-hb9d3cd8_0.conda#17dcc85db3c7886650b8908b183d6876
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrandr-1.5.4-hb9d3cd8_0.conda#2de7f99d6581a4a7adbff607b5c278ca
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.6-hb9d3cd8_0.conda#5efa5fa6243a622445fdfd72aee15efa
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.11.2-h0019752_1.conda#d99c84b6cd98789b8d5b0ad1aed5de0a
+https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.13.2-h3a5f585_1.conda#4e921d9c85e6559c60215497978b3cdb
+https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.11.0-h3d7a050_1.conda#89985ba2a3742f34be6aafd6a8f3af8c
https://conda.anaconda.org/conda-forge/linux-64/coverage-7.12.0-py313h3dea7bd_0.conda#8ef99d298907bfd688a95cc714662ae7
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
-https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.60.1-py313h3dea7bd_0.conda#904860fc0d57532d28e9c6c4501f19a9
+https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee
+https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.61.0-py313h3dea7bd_0.conda#92f09729a821c52943d4b0b3749a2380
+https://conda.anaconda.org/conda-forge/linux-64/gmpy2-2.2.1-py313h86d8783_2.conda#d904f240d2d2500d4906361c67569217
https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda#164fc43f0b53b6e3a7bc7dce5e4f1dc9
-https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhd8ed1ab_0.conda#446bd6c8cb26050d528881df495ce646
+https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda#04558c96691bed63104678757beb4f8d
https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
-https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.6-default_h99862b1_0.conda#0fcc9b4d3fc5e5010a7098318d9b7971
-https://conda.anaconda.org/conda-forge/linux-64/libclang13-21.1.6-default_h746c552_0.conda#f5b64315835b284c7eb5332202b1e14b
-https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.39.0-hdbdcf42_0.conda#bd21962ff8a9d1ce4720d42a35a4af40
-https://conda.anaconda.org/conda-forge/noarch/pybind11-2.13.6-pyhc790b64_3.conda#1594696beebf1ecb6d29a1136f859a74
+https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.39.0-hdb79228_0.conda#a2e30ccd49f753fd30de0d30b1569789
+https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.12.1-default_hafda6a7_1003.conda#4fe840c6d6b3719b4231ed89d389bb17
+https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.7-hf7376ad_0.conda#27dc1a582b442f24979f2a28641fe478
+https://conda.anaconda.org/conda-forge/linux-64/libopentelemetry-cpp-1.21.0-hb9b0907_1.conda#1c0320794855f457dea27d35c4c71e23
+https://conda.anaconda.org/conda-forge/linux-64/libpq-18.1-h5c52fec_2.conda#a8ac9a6342569d1714ae1b53ae2fcadb
+https://conda.anaconda.org/conda-forge/linux-64/libvulkan-loader-1.4.328.1-h5279c79_0.conda#372a62464d47d9e966b630ffae3abe73
+https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.1-hca5e8e5_0.conda#2bca1fbb221d9c3c8e3a155784bbc2e9
+https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.43-h711ed8c_1.conda#87e6096ec6d542d1c1f8b33245fe8300
+https://conda.anaconda.org/conda-forge/noarch/pybind11-3.0.1-pyh7a1b43c_0.conda#70ece62498c769280f791e836ac53fff
https://conda.anaconda.org/conda-forge/noarch/pyee-13.0.0-pyhd8ed1ab_0.conda#ec33a030c3bc90f0131305a8eba5f8a3
https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
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.9-h4df99d1_101.conda#f41e3c1125e292e6bfcea8392a3de3d8
+https://conda.anaconda.org/conda-forge/noarch/python-gil-3.13.11-h4df99d1_100.conda#d1461b2e63b1909f4f5b41c823bd90ae
https://conda.anaconda.org/conda-forge/noarch/python-slugify-8.0.4-pyhd8ed1ab_1.conda#a4059bc12930bddeb41aef71537ffaed
-https://conda.anaconda.org/conda-forge/noarch/sympy-1.14.0-pyh2585a3b_105.conda#8c09fac3785696e1c477156192d64b91
-https://conda.anaconda.org/conda-forge/linux-64/tbb-2022.3.0-h8d10470_1.conda#e3259be3341da4bc06c5b7a78c8bf1bd
https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda#edd329d7d3a4ab45dcf905899a7a6115
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxtst-1.2.5-hb9d3cd8_3.conda#7bbe9a0cc0df0ac5f5a8ad6d6a11af2f
https://conda.anaconda.org/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda#aaa2a381ccc56eac91d63b6c1240312f
-https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.606-hd6e39bc_7.conda#0f7a1d2e2c6cdfc3864c4c0b16ade511
-https://conda.anaconda.org/conda-forge/linux-64/azure-storage-files-datalake-cpp-12.13.0-hf38f1be_1.conda#f10b9303c7239fbce3580a60a92bcf97
-https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda#b8690f53007e9b5ee2c2178dd4ac778c
+https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.35.2-h2a9d012_5.conda#7dcf545d2a6bef32015633c5e18bbaf1
+https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.15.0-h2a74896_1.conda#ffd553ff98ce5d74d3d89ac269153149
+https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-h3394656_0.conda#09262e66b19567aff4f592fb53b28760
+https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.7-default_h99862b1_1.conda#d3042ebdaacc689fd1daa701885fc96c
+https://conda.anaconda.org/conda-forge/linux-64/libclang13-21.1.7-default_h746c552_1.conda#66508e5f84c3dc9af1a0a62694325ef2
+https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.39.0-hdbdcf42_0.conda#bd21962ff8a9d1ce4720d42a35a4af40
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
-https://conda.anaconda.org/conda-forge/linux-64/mkl-2025.3.0-h0e700b2_462.conda#a2e8e73f7132ea5ea70fda6f3cf05578
https://conda.anaconda.org/conda-forge/linux-64/optree-0.18.0-py313h7037e92_0.conda#33901d2cb4969c6b57eefe767d69fa69
https://conda.anaconda.org/conda-forge/noarch/playwright-python-1.56.0-pyhcf101f3_0.conda#d0753cdc3baeacf68e697f457749a58b
https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda#da0c42269086f5170e2b296878ec13a6
-https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py313h54dd161_1.conda#710d4663806d0f72b2fb414e936223b5
-https://conda.anaconda.org/conda-forge/linux-64/libarrow-22.0.0-h773bc41_4_cpu.conda#9d89be0b1ca8be7eedf821a365926338
-https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-2_h5875eb1_mkl.conda#6a1a4ec47263069b2dae3cfba106320c
-https://conda.anaconda.org/conda-forge/linux-64/mkl-devel-2025.3.0-ha770c72_462.conda#619188d87dc94ed199e790d906d74bc3
+https://conda.anaconda.org/conda-forge/noarch/sympy-1.14.0-pyh2585a3b_105.conda#8c09fac3785696e1c477156192d64b91
+https://conda.anaconda.org/conda-forge/linux-64/tbb-2022.3.0-h8d10470_1.conda#e3259be3341da4bc06c5b7a78c8bf1bd
+https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.0-pyhd8ed1ab_0.conda#de7372f43e63ff0876b4023b79b55e95
+https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.606-hf38915e_8.conda#af98ca0cb5bc454e249872270084e9aa
+https://conda.anaconda.org/conda-forge/linux-64/azure-storage-files-datalake-cpp-12.13.0-hf38f1be_1.conda#f10b9303c7239fbce3580a60a92bcf97
+https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda#b8690f53007e9b5ee2c2178dd4ac778c
+https://conda.anaconda.org/conda-forge/linux-64/mkl-2025.3.0-h0e700b2_462.conda#a2e8e73f7132ea5ea70fda6f3cf05578
https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-32-1.35.2-py310hffdcd12_0.conda#2b90c3aaf73a5b6028b068cf3c76e0b7
https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda#50d191b852fccb4bf9ab7b59b030c99d
https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda#8375cfbda7c57fbceeda18229be10417
+https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda#db0c6b99149880c8ba515cf4abe93ee4
+https://conda.anaconda.org/conda-forge/linux-64/libarrow-22.0.0-h773bc41_4_cpu.conda#9d89be0b1ca8be7eedf821a365926338
+https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-4_h5875eb1_mkl.conda#bd1a86e560c3b26961279ef6b6e8d45f
+https://conda.anaconda.org/conda-forge/linux-64/mkl-devel-2025.3.0-ha770c72_462.conda#619188d87dc94ed199e790d906d74bc3
+https://conda.anaconda.org/conda-forge/noarch/polars-1.35.2-pyh6a1acc5_0.conda#24e8f78d79881b3c035f89f4b83c565c
+https://conda.anaconda.org/conda-forge/noarch/pytest-base-url-2.1.0-pyhd8ed1ab_1.conda#057f32e4c376ce0c4c4a32a9f06bf34e
https://conda.anaconda.org/conda-forge/linux-64/qt6-main-6.9.3-h5c1c036_1.conda#762af6d08fdfa7a45346b1466740bacd
-https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda#436c165519e140cb08d246a4472a9d6a
https://conda.anaconda.org/conda-forge/linux-64/libarrow-compute-22.0.0-h8c2c5c3_4_cpu.conda#fdecd3d6168561098fa87d767de05171
-https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-2_hfef963f_mkl.conda#62ffd188ee5c953c2d6ac54662c158a7
-https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-2_h5e43f62_mkl.conda#4f33d79eda3c82c95a54e8c2981adddb
+https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-4_hfef963f_mkl.conda#41f4f9428b9d92b1b06f1fff80a2674d
+https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-4_h5e43f62_mkl.conda#f647e3368af2453546812658b5393901
https://conda.anaconda.org/conda-forge/linux-64/libparquet-22.0.0-h7376487_4_cpu.conda#5e9383b1d25179787aff71aaad8208aa
-https://conda.anaconda.org/conda-forge/noarch/polars-1.35.2-pyh6a1acc5_0.conda#24e8f78d79881b3c035f89f4b83c565c
https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.9.3-py313h85046ba_1.conda#bb7ac52bfa917611096023598a7df152
-https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda#db0c6b99149880c8ba515cf4abe93ee4
+https://conda.anaconda.org/conda-forge/noarch/pytest-playwright-0.7.2-pyhd8ed1ab_0.conda#e6475f566489789e65ebd5544db36b3e
https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-22.0.0-h635bf11_4_cpu.conda#20f1a4625bce6e9b41e01232895450d9
-https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.11.0-2_hdba1596_mkl.conda#96dea51ff1435bd823020e25fd02da59
-https://conda.anaconda.org/conda-forge/linux-64/libtorch-2.8.0-cpu_mkl_h09b866c_102.conda#0194f4ea9e74964548ddb220b61d4712
+https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.11.0-4_hdba1596_mkl.conda#f0b31cc6189ebd85a2e16b15de09850b
+https://conda.anaconda.org/conda-forge/linux-64/libtorch-2.9.1-cpu_mkl_hf3ca1bf_101.conda#5ef08e134f6dfcf431732cb0db6f877d
https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py313hf6604e3_0.conda#15f43bcd12c90186e78801fafc53d89b
https://conda.anaconda.org/conda-forge/linux-64/pyarrow-core-22.0.0-py313he109ebe_0_cpu.conda#0b4a0a9ab270b275eb6da8671edb9458
-https://conda.anaconda.org/conda-forge/noarch/pytest-base-url-2.1.0-pyhd8ed1ab_1.conda#057f32e4c376ce0c4c4a32a9f06bf34e
https://conda.anaconda.org/conda-forge/noarch/array-api-strict-2.4.1-pyhe01879c_0.conda#648e253c455718227c61e26f4a4ce701
-https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.11.0-2_hcf00494_mkl.conda#77b464e7c3b853268dec4c82b21dca5a
+https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.11.0-4_hcf00494_mkl.conda#7f7c616ec25c252749fa4945ea1db3fd
https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.3-py313h7037e92_3.conda#6186382cb34a9953bf2a18fc763dc346
https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-22.0.0-h635bf11_4_cpu.conda#6389644214f7707ab05f17f464863ed3
-https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py313h08cd8bf_1.conda#9e87d4bda0c2711161d765332fa38781
-https://conda.anaconda.org/conda-forge/noarch/pytest-playwright-0.7.2-pyhd8ed1ab_0.conda#e6475f566489789e65ebd5544db36b3e
-https://conda.anaconda.org/conda-forge/linux-64/pytorch-2.8.0-cpu_mkl_py313_h19d87ba_102.conda#755f7ca398f27fdab5c5842cdd7b0e89
+https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py313h08cd8bf_2.conda#8a69ea71fdd37bfe42a28f0967dbb75a
+https://conda.anaconda.org/conda-forge/linux-64/pytorch-2.9.1-cpu_mkl_py313_h5a1586b_101.conda#48b128d28e7849060753d14a5f249f27
https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py313h11c21cd_1.conda#26b089b9e5fcdcdca714b01f8008d808
https://conda.anaconda.org/conda-forge/noarch/scipy-doctest-2.0.1-pyhe01879c_0.conda#303ec962addf1b6016afd536e9db6bc6
-https://conda.anaconda.org/conda-forge/linux-64/blas-2.302-mkl.conda#9c83adee9e1069446e6cc92b8ea19797
+https://conda.anaconda.org/conda-forge/linux-64/blas-2.304-mkl.conda#adbc1b7f2e7acf80f45bd6592f88f0ae
https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-22.0.0-h3f74fd7_4_cpu.conda#6f07bf204431fb87d8f827807d752662
https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.10.8-py313h683a580_0.conda#ffe67570e1a9192d2f4c189b27f75f89
https://conda.anaconda.org/conda-forge/linux-64/pyamg-5.3.0-py313hfaae9d9_1.conda#6d308eafec3de495f6b06ebe69c990ed
-https://conda.anaconda.org/conda-forge/linux-64/pytorch-cpu-2.8.0-cpu_mkl_hc60beec_102.conda#2b401c2d6c6b2f0d6c4e1862b4291247
+https://conda.anaconda.org/conda-forge/linux-64/pytorch-cpu-2.9.1-cpu_mkl_hd61e0f4_101.conda#d053f5fbadaf26fcb23a7acb2b0e21e6
https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.10.8-py313h78bf25f_0.conda#85bce686dd57910d533807562204e16b
https://conda.anaconda.org/conda-forge/linux-64/pyarrow-22.0.0-py313h78bf25f_0.conda#dfe7289ae9ad7aa091979a7c5e6a55c7
diff --git a/build_tools/azure/pylatest_conda_forge_mkl_no_openmp_osx-64_conda.lock b/build_tools/azure/pylatest_conda_forge_mkl_no_openmp_osx-64_conda.lock
index 8743a76f7e824..b497327c72150 100644
--- a/build_tools/azure/pylatest_conda_forge_mkl_no_openmp_osx-64_conda.lock
+++ b/build_tools/azure/pylatest_conda_forge_mkl_no_openmp_osx-64_conda.lock
@@ -7,8 +7,9 @@ https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda#0539
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_8.conda#97c4b3bd8a90722104798175a1bdddbf
https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
-https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.2.0-h105ed1c_0.conda#61c2b02435758f1c6926b3733d34ea08
-https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.6-h3d58e20_0.conda#866af4d7269cd8c9b70f5b49ad6173aa
+https://conda.anaconda.org/conda-forge/osx-64/icu-75.1-h120a0e1_0.conda#d68d48a3060eb5abdc1cdc8e2a3a5966
+https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.2.0-h8616949_1.conda#f157c098841474579569c85a60ece586
+https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.7-h3d58e20_0.conda#67c086bf0efc67b54a235dd9184bd7a2
https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.25-h517ebb2_0.conda#31aa65919a729dc48180893f62c25221
https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.3-heffb93a_0.conda#222e0732a1d0780a622926265bee14ef
https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-h750e83c_0.conda#d214916b24c625bcc459b245d509f22e
@@ -18,50 +19,49 @@ https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.1-hd471939_2.conda#846
https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-h6e16a3a_0.conda#18b81186a6adb43f000ad19ed7b70381
https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.6.0-hb807250_0.conda#7bb6608cf1f83578587297a158a6630b
https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.1-hd23fc13_2.conda#003a54a4e32b02f7355b50a837e699da
-https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-21.1.6-h472b3d1_0.conda#d002bb48f35085405e90a62ffeebebfb
+https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-21.1.7-h472b3d1_0.conda#c9f0fc88c8f46637392b95bef78dc036
https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda#ced34dd9929f491ca6dab6a2927aff25
https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-h00291cd_1002.conda#8bcf980d2c6b17094961198284b8e862
https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.12-h8616949_1.conda#47f1b8b4a76ebd0cd22bd7153e54a4dc
https://conda.anaconda.org/conda-forge/osx-64/xorg-libxdmcp-1.1.5-h8616949_1.conda#435446d9d7db8e094d2c989766cfb146
-https://conda.anaconda.org/conda-forge/osx-64/_openmp_mutex-4.5-6_kmp_llvm.conda#f699f090723c4948e11bfbb4a23e87f9
+https://conda.anaconda.org/conda-forge/osx-64/_openmp_mutex-4.5-7_kmp_llvm.conda#eaac87c21aff3ed21ad9656697bb8326
https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hcca01a6_1.conda#21f765ced1a0ef4070df53cb425e1967
-https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.2.0-h660c9da_0.conda#c8f29cbebccb17826d805c15282c7e8b
-https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.2.0-h2338291_0.conda#57b746e8ed03d56fe908fd050c517299
-https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-15.2.0-h336fb69_1.conda#b6331e2dcc025fc79cd578f4c181d6f2
-https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.51-h380d223_0.conda#d54babdd92ec19c27af739b53e189335
-https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.51.0-h86bffb9_0.conda#1ee9b74571acd6dd87e6a0f783989426
+https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.2.0-h8616949_1.conda#63186ac7a8a24b3528b4b14f21c03f54
+https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.2.0-h8616949_1.conda#12a58fd3fc285ce20cf20edf21a0ff8f
+https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.53-h380d223_0.conda#0cdbbd56f660997cfe5d33e516afac2f
+https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.51.1-h6cc646a_0.conda#f71213ed0c51030cb17a77fc60a757f1
https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.17.0-hf1f96e2_0.conda#bbeca862892e2898bdb45792a61c4afc
-https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.1-h0ad03eb_0.conda#8487998051f3d300fef701a49c27f282
+https://conda.anaconda.org/conda-forge/osx-64/libxml2-16-2.15.1-ha1d9b0f_0.conda#453807a4b94005e7148f89f9327eb1b7
https://conda.anaconda.org/conda-forge/osx-64/ninja-1.13.2-hfc0b2d5_0.conda#afda563484aa0017278866707807a335
https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.0-h230baf5_0.conda#3f50cdf9a97d0280655758b735781096
https://conda.anaconda.org/conda-forge/osx-64/qhull-2020.2-h3c5361c_5.conda#dd1ea9ff27c93db7c01a7b7656bd4ad4
https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h7cca4af_2.conda#342570f8e02f2f022147a7f841475784
https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-hf689a15_3.conda#bd9f1de651dbd80b51281c694827f78f
-https://conda.anaconda.org/conda-forge/osx-64/zlib-ng-2.2.5-h55e386d_0.conda#692a62051af2270eb9c24e8f09e88db6
-https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h8210216_2.conda#cd60a4a5a8d6a476b30d8aa4bb49251a
-https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.2.0-h5c1846c_0.conda#e3b4a50ddfcda3835379b10c5b0c951b
+https://conda.anaconda.org/conda-forge/osx-64/zlib-ng-2.3.2-h53ec75d_0.conda#1e979f90e823b82604ab1da7e76c75e5
+https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda#727109b184d680772e3122f40136d5ca
+https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.2.0-h8616949_1.conda#34803b20dfec7af32ba675c5ccdbedbf
https://conda.anaconda.org/conda-forge/osx-64/libfreetype6-2.14.1-h6912278_0.conda#dfbdc8fd781dc3111541e4234c19fdbd
-https://conda.anaconda.org/conda-forge/osx-64/libgfortran-15.2.0-h306097a_1.conda#cd5393330bff47a00d37a117c65b65d0
+https://conda.anaconda.org/conda-forge/osx-64/libgcc-15.2.0-h08519bb_15.conda#c816665789d1e47cdfd6da8a81e1af64
https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-ha0a348c_1.conda#9d4344f94de4ab1330cdc41c40152ea6
-https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.1-h23bb396_0.conda#65dd26de1eea407dda59f0da170aed22
-https://conda.anaconda.org/conda-forge/osx-64/python-3.14.0-hf88997e_102_cp314.conda#7917d1205eed3e72366a3397dca8a2af
-https://conda.anaconda.org/conda-forge/osx-64/brotli-1.2.0-hb27157a_0.conda#01fd35c4b0b4641d3174d5ebb6065d96
+https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.15.1-h7b7ecba_0.conda#e7ed73b34f9d43d80b7e80eba9bce9f3
+https://conda.anaconda.org/conda-forge/osx-64/python-3.14.2-hf88997e_100_cp314.conda#48921d5efb314c3e628089fc6e27e54a
+https://conda.anaconda.org/conda-forge/osx-64/brotli-1.2.0-hf139dec_1.conda#149d8ee7d6541a02a6117d8814fd9413
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833
-https://conda.anaconda.org/conda-forge/osx-64/cython-3.2.1-py314h9fad922_0.conda#ed199501ba2943766cc51a898650cccd
+https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhcf101f3_2.conda#4c2a8fef270f6c69591889b93f9f55c1
+https://conda.anaconda.org/conda-forge/osx-64/cython-3.2.2-py314h9fad922_0.conda#4e8210b53b2a0cb9d397c6cc025d0fec
https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.9-py314hf3ac25a_2.conda#28a77c52c425fa9c6d914c609c626b1a
https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.17-h72f5680_0.conda#bf210d0c63f2afb9e414a858b79f0eaa
https://conda.anaconda.org/conda-forge/osx-64/libfreetype-2.14.1-h694c41f_0.conda#e0e2edaf5e0c71b843e25a7ecc451cc9
-https://conda.anaconda.org/conda-forge/osx-64/libhiredis-1.0.2-h2beb688_0.tar.bz2#524282b2c46c9dedf051b3bc2ae05494
-https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.12.1-default_h094e1f9_1002.conda#4d9e9610b6a16291168144842cd9cae2
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
+https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-15.2.0-hd16e46c_15.conda#c2a6149bf7f82774a0118b9efef966dd
+https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.12.1-default_h273dbb7_1003.conda#5a87dfe5dcdc54ca4dc839e1d3577785
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.4-h87e8dc5_0.conda#a67d3517ebbf615b91ef9fdc99934e0c
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf47878473e5ab9fdb4115735230e191
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda#6c8979be6d7a17692793114fa26916e8
https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2025.2-pyhd8ed1ab_0.conda#88476ae6ebd24f39261e0854ac244f33
@@ -69,24 +69,26 @@ https://conda.anaconda.org/conda-forge/noarch/pytz-2025.2-pyhd8ed1ab_0.conda#bc8
https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
-https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda#00d80af3a7bf27729484e786a68aafff
+https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda#d0fc809fa4c4d85e959ce4ab6e1de800
https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
https://conda.anaconda.org/conda-forge/osx-64/tornado-6.5.2-py314h6482030_2.conda#d97f0d30ffb1b03fa8d09ef8ba0fdd7c
https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
https://conda.anaconda.org/conda-forge/osx-64/unicodedata2-17.0.0-py314h6482030_1.conda#d69097de15cbad36f1eaafda0bad598a
-https://conda.anaconda.org/conda-forge/osx-64/ccache-4.11.3-h33566b8_0.conda#b65cad834bd6c1f660c101cca09430bf
https://conda.anaconda.org/conda-forge/osx-64/coverage-7.12.0-py314hb9c7d66_0.conda#d8805ca5ce27c9a2182baf03a16209ab
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
-https://conda.anaconda.org/conda-forge/noarch/fonttools-4.60.1-pyh7db6752_0.conda#85c6b2f3ae5044dd279dc0970f882cd9
+https://conda.anaconda.org/conda-forge/noarch/fonttools-4.61.0-pyh7db6752_0.conda#2ae6c63938d6dd000e940673df75419c
https://conda.anaconda.org/conda-forge/osx-64/freetype-2.14.1-h694c41f_0.conda#ca641fdf8b7803f4b7212b6d66375930
https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
-https://conda.anaconda.org/conda-forge/osx-64/pillow-12.0.0-py314h0a84944_0.conda#95252d1cf079f62c4d0ea90eb5cd7219
+https://conda.anaconda.org/conda-forge/osx-64/libgfortran-15.2.0-h7e5c614_15.conda#a089323fefeeaba2ae60e1ccebf86ddc
+https://conda.anaconda.org/conda-forge/osx-64/pillow-12.0.0-py314hedf0282_2.conda#399177697c7225b64edeaeb373a8c98b
https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda#5b8d21249ff20967101ffa321cab24e8
https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.13.0-hf0c99ee_4.conda#411c95470bff187ae555120702f28c0e
+https://conda.anaconda.org/conda-forge/osx-64/libhiredis-1.0.2-h2beb688_0.tar.bz2#524282b2c46c9dedf051b3bc2ae05494
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
https://conda.anaconda.org/conda-forge/osx-64/mkl-2023.2.0-h694c41f_50502.conda#0bdfc939c8542e0bc6041cbd9a900219
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
+https://conda.anaconda.org/conda-forge/osx-64/ccache-4.11.3-h33566b8_0.conda#b65cad834bd6c1f660c101cca09430bf
https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-20_osx64_mkl.conda#160fdc97a51d66d51dc782fb67d35205
https://conda.anaconda.org/conda-forge/osx-64/mkl-devel-2023.2.0-h694c41f_50502.conda#045f993e4434eaa02518d780fdca34ae
https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda#50d191b852fccb4bf9ab7b59b030c99d
@@ -97,7 +99,7 @@ https://conda.anaconda.org/conda-forge/osx-64/liblapacke-3.9.0-20_osx64_mkl.cond
https://conda.anaconda.org/conda-forge/osx-64/numpy-2.3.5-py314hf08249b_0.conda#5c9e4bc0c170115fd3602d7377c9e8da
https://conda.anaconda.org/conda-forge/osx-64/blas-devel-3.9.0-20_osx64_mkl.conda#cc3260179093918b801e373c6e888e02
https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.3.3-py314h00ed6fe_3.conda#761aa19f97a0dd5dedb9a0a6003707c1
-https://conda.anaconda.org/conda-forge/osx-64/pandas-2.3.3-py314hc4308db_1.conda#21a858b49f91ac1f5a7b8d0ab61f8e7d
+https://conda.anaconda.org/conda-forge/osx-64/pandas-2.3.3-py314hc4308db_2.conda#b082e18eb2696625aa09c80e0fbd1997
https://conda.anaconda.org/conda-forge/osx-64/scipy-1.16.3-py314h9d854bd_1.conda#017b471251f1d7401ed1dd63370bad2f
https://conda.anaconda.org/conda-forge/osx-64/blas-2.120-mkl.conda#b041a7677a412f3d925d8208936cb1e2
https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.10.8-py314hd47142c_0.conda#91d76a5937b47f7f0894857ce88feb9f
diff --git a/build_tools/azure/pylatest_conda_forge_osx-arm64_conda.lock b/build_tools/azure/pylatest_conda_forge_osx-arm64_conda.lock
index 9aa61ae3d9577..fe44be4c0899f 100644
--- a/build_tools/azure/pylatest_conda_forge_osx-arm64_conda.lock
+++ b/build_tools/azure/pylatest_conda_forge_osx-arm64_conda.lock
@@ -4,14 +4,15 @@
@EXPLICIT
https://conda.anaconda.org/conda-forge/noarch/libgfortran-devel_osx-arm64-14.3.0-hc965647_1.conda#c1b69e537b3031d0f5af780b432ce511
https://conda.anaconda.org/conda-forge/noarch/nomkl-1.0-h5ca1d4c_0.tar.bz2#9a66894dfd07c4510beb6b3f9672ccc0
-https://conda.anaconda.org/conda-forge/noarch/pybind11-abi-4-hd8ed1ab_3.tar.bz2#878f923dd6acc8aeb47a75da6c4098be
+https://conda.anaconda.org/conda-forge/noarch/pybind11-abi-11-hc364b38_1.conda#f0599959a2447c1e544e216bddf393fa
https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda#94305520c52a4aa3f6c2b1ff6008d9f8
+https://conda.anaconda.org/conda-forge/noarch/sdkroot_env_osx-arm64-14.5-hfa17104_3.conda#3351af6c29661d56d7ef9ea9699d1314
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda#58fd217444c2a5701a44244faf518206
https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
-https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda#5eb22c1d7b3fc4abb50d92d621583137
-https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.2.0-h87ba0bc_0.conda#07d43b5e2b6f4a73caed8238b60fabf5
-https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.6-hf598326_0.conda#3ea79e55a64bff6c3cbd4588c89a527a
+https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.2.0-hc919400_1.conda#006e7ddd8a110771134fcc4e1e3a6ffa
+https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.7-hf598326_0.conda#0de94f39727c31c0447e408c5a210a56
+https://conda.anaconda.org/conda-forge/noarch/libcxx-headers-19.1.7-h707e725_2.conda#de91b5ce46dc7968b6e311f9add055a2
https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.25-hc11a715_0.conda#a6130c709305cd9828b4e1bd9ba0000c
https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.3-haf25636_0.conda#b79875dbb5b1db9a4a22a4520f918e1a
https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-he5f378a_0.conda#411ff7cd5d1472bba0f55c0faf04453b
@@ -22,68 +23,68 @@ https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda
https://conda.anaconda.org/conda-forge/osx-arm64/libuv-1.51.0-h6caf38d_1.conda#c0d87c3c8e075daf1daf6c31b53e8083
https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.6.0-h07db88b_0.conda#e5e7d467f80da752be17796b87fe6385
https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda#369964e85dc26bfe78f41399b366c435
-https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-21.1.6-h4a912ad_0.conda#4a274d80967416bce3c7d89bf43923ec
+https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-21.1.7-h4a912ad_0.conda#05d475f50ddcc2173a6beece9960c6cb
https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda#068d497125e4bf8a66bf707254fff5ae
https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-hd74edd7_1002.conda#415816daf82e0b23a736a069a75e9da7
https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.12-hc919400_1.conda#78b548eed8227a689f93775d5d23ae09
https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxdmcp-1.1.5-hc919400_1.conda#9d1299ace1924aa8f4e0bc8e71dd0cf7
+https://conda.anaconda.org/conda-forge/osx-arm64/_openmp_mutex-4.5-7_kmp_llvm.conda#a44032f282e7d2acdeb1c240308052dd
+https://conda.anaconda.org/conda-forge/osx-arm64/fmt-12.0.0-h669d743_0.conda#364025d9b6f6305a73f8a5e84a2310d5
https://conda.anaconda.org/conda-forge/osx-arm64/gmp-6.3.0-h7bae524_2.conda#eed7278dfbab727b56f2c0b64330814b
https://conda.anaconda.org/conda-forge/osx-arm64/isl-0.26-imath32_h347afa1_101.conda#e80e44a3f4862b1da870dc0557f8cf3b
https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-hd64df32_1.conda#a74332d9b60b62905e3d30709df08bf1
https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20250512.1-cxx17_hd41c47c_0.conda#360dbb413ee2c170a0a684a33c4fc6b8
-https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.2.0-h95a88de_0.conda#39d47dac85038e73b5f199f2b594a547
-https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.2.0-hb1b9735_0.conda#4e3fec2238527187566e26a5ddbc2f83
-https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-19.1.7-h6dc3340_1.conda#1399af81db60d441e7c6577307d5cf82
-https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-15.2.0-h742603c_1.conda#afccf412b03ce2f309f875ff88419173
-https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.51-hfab5511_0.conda#06efb9eace7676738ced2f9661c59fb8
-https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.0-h8adb53f_0.conda#5fb1945dbc6380e6fe7e939a62267772
+https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.2.0-hc919400_1.conda#079e88933963f3f149054eec2c487bc2
+https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.2.0-hc919400_1.conda#b2b7c8288ca1a2d71ff97a8e6a1e8883
+https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-devel-19.1.7-h6dc3340_2.conda#9f7810b7c0a731dbc84d46d6005890ef
+https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.53-hfab5511_0.conda#62b6111feeffe607c3ecc8ca5bd1514b
+https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.1-h9a5124b_0.conda#67e50e5bd4e5e2310d66b88c4da50096
https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.17.0-hdb1d25a_0.conda#af523aae2eca6dfa1c8eec693f5b9a79
-https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.1-h0ff4647_0.conda#438c97d1e9648dd7342f86049dd44638
+https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.1-h8eac4d7_0.conda#cf7291a970b93fe3bb726879f2037af8
https://conda.anaconda.org/conda-forge/osx-arm64/ninja-1.13.2-h49c215f_0.conda#175809cc57b2c67f27a0f238bd7f069d
https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.0-h5503f6c_0.conda#b34dc4172653c13dcf453862f251af2b
https://conda.anaconda.org/conda-forge/osx-arm64/qhull-2020.2-h420ef59_5.conda#6483b1f59526e05d7d894e466b5b6924
https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda#63ef3f6e6d6d5c589e64f11263dc5676
https://conda.anaconda.org/conda-forge/osx-arm64/sleef-3.9.0-hb028509_0.conda#68f833178f171cfffdd18854c0e9b7f9
-https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1300.6.5-h03f4b80_0.conda#b703bc3e6cba5943acf0e5f987b5d0e2
+https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1600.0.11.8-h997e182_0.conda#347261d575a245cb6111fb2cb5a79fc7
https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_3.conda#a73d54a5abba6543cb2f0af1bfbd6851
https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.3.1-h8359307_2.conda#e3170d898ca6cb48f1bb567afb92f775
-https://conda.anaconda.org/conda-forge/osx-arm64/zlib-ng-2.2.5-h3470cca_0.conda#c86493f35e79c93b04ff0279092b53e2
-https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-h6491c7d_2.conda#e6f69c7bcccdefa417f056fa593b40f0
-https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.2.0-hce9b42c_0.conda#2695046c2e5875fee19438aa752924a5
+https://conda.anaconda.org/conda-forge/osx-arm64/zlib-ng-2.3.2-h248ca61_0.conda#c2a30a3b30cf86ef97ec880d53a6571a
+https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda#ab136e4c34e97f34fb621d2592a393d8
+https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.2.0-hc919400_1.conda#377d015c103ad7f3371be1777f8b584c
https://conda.anaconda.org/conda-forge/osx-arm64/libfreetype6-2.14.1-h6da58f4_0.conda#6d4ede03e2a8e20eb51f7f681d2a2550
-https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-15.2.0-hfcf01ff_1.conda#f699348e3f4f924728e33551b1920f79
+https://conda.anaconda.org/conda-forge/osx-arm64/libgcc-15.2.0-hcbb3090_15.conda#9633bbd83cdc75ca0d325bf26fa32375
https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-6.31.1-h658db43_2.conda#155d3d17eaaf49ddddfe6c73842bc671
https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h4030677_1.conda#e2a72ab2fa54ecb6abab2b26cde93500
-https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.1-h9329255_0.conda#fb5ce61da27ee937751162f86beba6d1
+https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.1-hba2cd1d_0.conda#a53d5f7fff38853ddb6bdc8fb609c039
https://conda.anaconda.org/conda-forge/osx-arm64/mpfr-4.2.1-hb693164_3.conda#4e4ea852d54cc2b869842de5044662fb
-https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.9-hfc2f54d_101_cp313.conda#a4241bce59eecc74d4d2396e108c93b8
+https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.11-hfc2f54d_100_cp313.conda#18a8c69608151098a8fb75eea64cc266
https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-0.1.3-h44b9a77_0.tar.bz2#4a2cac04f86a4540b8c9b8d8f597848f
-https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.2.0-hca488c2_0.conda#3673e631cdf1fa81c9f5cc3da763a07e
+https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.2.0-h7d5ae5b_1.conda#48ece20aa479be6ac9a284772827d00c
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/noarch/cpython-3.13.9-py313hd8ed1ab_101.conda#367133808e89325690562099851529c8
-https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833
-https://conda.anaconda.org/conda-forge/osx-arm64/cython-3.2.1-py313h66a7184_0.conda#e9970e29bc5029e981fedcd31cff310a
+https://conda.anaconda.org/conda-forge/noarch/cpython-3.13.11-py313hd8ed1ab_100.conda#5bf347916a543bcb290c780fa449bf73
+https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhcf101f3_2.conda#4c2a8fef270f6c69591889b93f9f55c1
+https://conda.anaconda.org/conda-forge/osx-arm64/cython-3.2.2-py313h66a7184_0.conda#e5fd9ec2e9f89306a3f48302b29df4e1
https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda#66b8b26023b8efdf8fcb23bac4b6325d
-https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.10.0-pyhd8ed1ab_0.conda#d18004c37182f83b9818b714825a7627
+https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.12.0-pyhd8ed1ab_0.conda#a3b9510e2491c20c7fc0f5e730227fbb
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.9-py313h7add70c_2.conda#9583687276aaa393e723f3b7970be69f
https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.17-h7eeda09_0.conda#92a61fd30b19ebd5c1621a5bfe6d8b5f
-https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.11.0-2_h8d724d3_accelerate.conda#143e99fafc3cdd43c917ff8183f6a219
https://conda.anaconda.org/conda-forge/osx-arm64/libfreetype-2.14.1-hce30654_0.conda#f35fb38e89e2776994131fbf961fa44b
-https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.0.2-hbec66e7_0.tar.bz2#37ca71a16015b17397da4a5e6883f66f
+https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-15.2.0-hdae7583_15.conda#75737d092770ee4695e13f6b181bdbd2
https://conda.anaconda.org/conda-forge/osx-arm64/libllvm19-19.1.7-h8e0c9ce_2.conda#d1d9b233830f6631800acc1e081a9444
https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-3.0.3-py313h7d74516_0.conda#3df5979cc0b761dda0053ffdb0bca3ea
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/osx-arm64/mpc-1.3.1-h8f1351a_1.conda#a5635df796b71f6ca400fc7026f50701
https://conda.anaconda.org/conda-forge/noarch/mpmath-1.3.0-pyhd8ed1ab_1.conda#3585aa87c43ab15b167b574cd73b057b
https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
-https://conda.anaconda.org/conda-forge/noarch/networkx-3.5-pyhe01879c_0.conda#16bff3d37a4f99e3aa089c36c2b8d650
+https://conda.anaconda.org/conda-forge/noarch/networkx-3.6-pyhcf101f3_0.conda#6725bfdf8ea7a8bf6415f096f3f1ffa5
https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.4-hbfb3c88_0.conda#6bf3d24692c157a41c01ce0bd17daeea
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf47878473e5ab9fdb4115735230e191
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
-https://conda.anaconda.org/conda-forge/noarch/pybind11-global-2.13.6-pyh217bc35_3.conda#730a5284e26d6bdb73332dafb26aec82
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
+https://conda.anaconda.org/conda-forge/noarch/pybind11-global-3.0.1-pyhc7ab6ef_0.conda#fe10b422ce8b5af5dab3740e4084c3f9
https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda#6c8979be6d7a17692793114fa26916e8
https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2025.2-pyhd8ed1ab_0.conda#88476ae6ebd24f39261e0854ac244f33
@@ -91,64 +92,68 @@ https://conda.anaconda.org/conda-forge/noarch/pytz-2025.2-pyhd8ed1ab_0.conda#bc8
https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
-https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda#00d80af3a7bf27729484e786a68aafff
+https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda#d0fc809fa4c4d85e959ce4ab6e1de800
https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.5.2-py313h6535dbc_2.conda#c7fea1e31871009ff882a327ba4b7d9a
https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
-https://conda.anaconda.org/conda-forge/osx-arm64/ccache-4.11.3-hd7c7cec_0.conda#7fe1ee81492f43731ea583b4bee50b8b
https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.12.0-py313h7d74516_0.conda#35d87ef273c80581a7f73172b757e4e2
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
-https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.60.1-py313h7d74516_0.conda#107233e5dccf267cfc6fd551a10aea4e
+https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.61.0-py313h7d74516_0.conda#4c69b2b96797e459051f24ae70d22220
https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.14.1-hce30654_0.conda#1ec9a1ee7a2c9339774ad9bb6fe6caec
https://conda.anaconda.org/conda-forge/osx-arm64/gmpy2-2.2.1-py313hc1c22ca_2.conda#08bbc47d90ccee895465f61b8692e236
-https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhd8ed1ab_0.conda#446bd6c8cb26050d528881df495ce646
+https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda#04558c96691bed63104678757beb4f8d
https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
-https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-955.13-llvm19_1_h6922315_9.conda#6725e9298bc2bc60c2dd48cc470db59b
-https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.11.0-2_h752f6bc_accelerate.conda#e0e6e7e33c7bc6b61471ee1014b7d4a9
+https://conda.anaconda.org/conda-forge/osx-arm64/ld64_osx-arm64-956.6-llvm19_1_h6922315_1.conda#66697cc97d32afa29c17855b3d56680e
https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp19.1-19.1.7-default_h73dfc95_5.conda#0b1110de04b80ea62e93fef6f8056fbb
-https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.11.0-2_hcb0d94e_accelerate.conda#cc5238dd60dec488f46a164cdba0a0f5
+https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-15.2.0-h07b0088_15.conda#5c9f004d0b98ce792a022f1095d1b338
https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-19-19.1.7-h91fd4e7_2.conda#8237b150fcd7baf65258eef9a0fc76ef
-https://conda.anaconda.org/conda-forge/osx-arm64/pillow-12.0.0-py313h54da0cd_0.conda#fe80ca21c7be92922c5718a46ec50959
-https://conda.anaconda.org/conda-forge/noarch/pybind11-2.13.6-pyhc790b64_3.conda#1594696beebf1ecb6d29a1136f859a74
+https://conda.anaconda.org/conda-forge/osx-arm64/pillow-12.0.0-py313ha86496b_2.conda#d52bb6207093e90d6b70649728257e3f
+https://conda.anaconda.org/conda-forge/noarch/pybind11-3.0.1-pyh7a1b43c_0.conda#70ece62498c769280f791e836ac53fff
https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda#5b8d21249ff20967101ffa321cab24e8
https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda#edd329d7d3a4ab45dcf905899a7a6115
https://conda.anaconda.org/conda-forge/osx-arm64/clang-19-19.1.7-default_h73dfc95_5.conda#561b822bdb2c1bb41e16e59a090f1e36
-https://conda.anaconda.org/conda-forge/osx-arm64/ld64-955.13-he86490a_9.conda#279533a0a5e350ee3c736837114f9aaf
-https://conda.anaconda.org/conda-forge/osx-arm64/liblapacke-3.11.0-2_hbdd07e9_accelerate.conda#790ab9dc92e3f2374a848a27d3ea3be1
+https://conda.anaconda.org/conda-forge/osx-arm64/ld64-956.6-llvm19_1_he86490a_1.conda#3a3ff7c8991ea2807eb13425733491c2
+https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.11.0-4_h8d724d3_accelerate.conda#2a826a3c1c83fe42be22ee4efddfe597
+https://conda.anaconda.org/conda-forge/osx-arm64/libhiredis-1.0.2-hbec66e7_0.tar.bz2#37ca71a16015b17397da4a5e6883f66f
https://conda.anaconda.org/conda-forge/osx-arm64/llvm-tools-19.1.7-h855ad52_2.conda#3e3ac06efc5fdc1aa675ca30bf7d53df
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
-https://conda.anaconda.org/conda-forge/osx-arm64/numpy-2.3.5-py313h9771d21_0.conda#3f8330206033158d3e443120500af416
https://conda.anaconda.org/conda-forge/osx-arm64/optree-0.18.0-py313ha61f8ec_0.conda#08c825d0a6cde154eb8c4729563114e7
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
https://conda.anaconda.org/conda-forge/noarch/sympy-1.14.0-pyh2585a3b_105.conda#8c09fac3785696e1c477156192d64b91
-https://conda.anaconda.org/conda-forge/noarch/array-api-strict-2.4.1-pyhe01879c_0.conda#648e253c455718227c61e26f4a4ce701
-https://conda.anaconda.org/conda-forge/osx-arm64/blas-devel-3.11.0-2_h55bc449_accelerate.conda#a9d1c17bf0b35053727c05235be9b7ba
-https://conda.anaconda.org/conda-forge/osx-arm64/cctools_osx-arm64-1024.3-llvm19_1_h8c76c84_9.conda#89b4c077857b4cfd7220a32e7f96f8e1
+https://conda.anaconda.org/conda-forge/osx-arm64/ccache-4.11.3-hd7c7cec_0.conda#7fe1ee81492f43731ea583b4bee50b8b
+https://conda.anaconda.org/conda-forge/osx-arm64/cctools_impl_osx-arm64-1030.6.3-llvm19_1_h8c76c84_1.conda#296de61644a3372f5cf13f266eb6ad88
https://conda.anaconda.org/conda-forge/osx-arm64/clang-19.1.7-default_hf9bcbb7_5.conda#6773a2b7d7d1b0a8d0e0f3bf4e928936
-https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.3.3-py313ha61f8ec_3.conda#5643cff3e9ab77999fba139465156e35
-https://conda.anaconda.org/conda-forge/osx-arm64/libtorch-2.8.0-cpu_generic_hf67e7d3_2.conda#cebb78a08e92e7a1639d6e0a645c917a
-https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.3.3-py313h7d16b84_1.conda#5ddddcc319d3aee21cc4fe4640a61f8a
+https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.11.0-4_h752f6bc_accelerate.conda#e296bcad6b433ca2c30cee42fd43603a
+https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.11.0-4_hcb0d94e_accelerate.conda#4285e49fbda8dc95c699f71ccc1527ac
https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda#50d191b852fccb4bf9ab7b59b030c99d
https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda#8375cfbda7c57fbceeda18229be10417
-https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.16.3-py313h0d10b07_1.conda#55c947938346fb644c2752383c40f935
-https://conda.anaconda.org/conda-forge/osx-arm64/blas-2.302-accelerate.conda#cce50d5ad6fc1de3752d42d71af96b6c
-https://conda.anaconda.org/conda-forge/osx-arm64/cctools-1024.3-hd01ab73_9.conda#3819ebcafd8ade70c3c20dd3e368b699
+https://conda.anaconda.org/conda-forge/osx-arm64/cctools-1030.6.3-llvm19_1_hd01ab73_1.conda#4df7fec2dac84a966f9de8addd561561
+https://conda.anaconda.org/conda-forge/osx-arm64/cctools_osx-arm64-1030.6.3-llvm19_1_h6d92914_1.conda#e9d1109b5313ca4969210c3bedec6f0b
https://conda.anaconda.org/conda-forge/osx-arm64/clangxx-19.1.7-default_h36137df_5.conda#c11a3a5a0cdb74d8ce58c6eac8d1f662
https://conda.anaconda.org/conda-forge/noarch/compiler-rt_osx-arm64-19.1.7-he32a8d3_1.conda#8d99c82e0f5fed6cc36fcf66a11e03f0
+https://conda.anaconda.org/conda-forge/osx-arm64/liblapacke-3.11.0-4_hbdd07e9_accelerate.conda#14bf7f811c9e1b7c4af5387d4878ebbf
+https://conda.anaconda.org/conda-forge/osx-arm64/libtorch-2.9.1-cpu_generic_h040b7fb_1.conda#4d3dbf224d7d41e146777ae04c05ecc0
+https://conda.anaconda.org/conda-forge/osx-arm64/numpy-2.3.5-py313h9771d21_0.conda#3f8330206033158d3e443120500af416
+https://conda.anaconda.org/conda-forge/noarch/array-api-strict-2.4.1-pyhe01879c_0.conda#648e253c455718227c61e26f4a4ce701
+https://conda.anaconda.org/conda-forge/osx-arm64/blas-devel-3.11.0-4_h55bc449_accelerate.conda#cc98d2287a45077d377bdaf45bf27069
+https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-19.1.7-h855ad52_1.conda#39451684370ae65667fa5c11222e43f7
+https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.3.3-py313ha61f8ec_3.conda#5643cff3e9ab77999fba139465156e35
https://conda.anaconda.org/conda-forge/osx-arm64/gfortran_impl_osx-arm64-14.3.0-h6d03799_1.conda#1e9ec88ecc684d92644a45c6df2399d0
+https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.3.3-py313h7d16b84_2.conda#03771a1c710d15974372ae791811bcde
+https://conda.anaconda.org/conda-forge/osx-arm64/pytorch-2.9.1-cpu_generic_py313_h6bf06e3_1.conda#b47dd1b58e9c6aa7b45239f7902b1243
+https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.16.3-py313h0d10b07_1.conda#55c947938346fb644c2752383c40f935
+https://conda.anaconda.org/conda-forge/osx-arm64/blas-2.304-accelerate.conda#6515d85975013b221a4b97bb96540f5d
+https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-19.1.7-h76e6a08_27.conda#2fb912af00fa523f5968855053bebd13
https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.10.8-py313h58042b9_0.conda#745c18472bc6d3dc9146c3dec18bb740
https://conda.anaconda.org/conda-forge/osx-arm64/pyamg-5.3.0-py313h28ea3aa_1.conda#51a353d043e612a8f520627cf0e73653
-https://conda.anaconda.org/conda-forge/osx-arm64/pytorch-2.8.0-cpu_generic_py313_h1ee2325_2.conda#fce43a59b1180cdcb1ca67f5f45b72ac
-https://conda.anaconda.org/conda-forge/osx-arm64/compiler-rt-19.1.7-h855ad52_1.conda#39451684370ae65667fa5c11222e43f7
+https://conda.anaconda.org/conda-forge/osx-arm64/pytorch-cpu-2.9.1-cpu_generic_hcc7c195_1.conda#139bf77a4b1174e2e30c7d884fb160c8
+https://conda.anaconda.org/conda-forge/osx-arm64/clang_osx-arm64-19.1.7-h07b0088_27.conda#0c9ac1e5d33185824ced44ce0aeab0b2
https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.10.8-py313h39782a4_0.conda#bae471007cbebf097a19e851c219d56a
-https://conda.anaconda.org/conda-forge/osx-arm64/pytorch-cpu-2.8.0-cpu_generic_py313_h510b526_2.conda#a8282f13e5e3abcc96a78154f0f25ae3
-https://conda.anaconda.org/conda-forge/osx-arm64/clang_impl_osx-arm64-19.1.7-h76e6a08_25.conda#a4e2f211f7c3cf582a6cb447bee2cad9
-https://conda.anaconda.org/conda-forge/osx-arm64/clang_osx-arm64-19.1.7-h07b0088_25.conda#1b53cb5305ae53b5aeba20e58c625d96
https://conda.anaconda.org/conda-forge/osx-arm64/c-compiler-1.11.0-h61f9b84_0.conda#148516e0c9edf4e9331a4d53ae806a9b
-https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-19.1.7-h276745f_25.conda#5eeaa7b2dd32f62eb3beb0d6ba1e664f
+https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_impl_osx-arm64-19.1.7-h276745f_27.conda#834e2e73c7a45604603b5e586f53a377
https://conda.anaconda.org/conda-forge/osx-arm64/gfortran_osx-arm64-14.3.0-h3c33bd0_0.conda#8db8c0061c0f3701444b7b9cc9966511
-https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_osx-arm64-19.1.7-h07b0088_25.conda#4e09188aa8def7d8b3ae149aa856c0e5
+https://conda.anaconda.org/conda-forge/osx-arm64/clangxx_osx-arm64-19.1.7-h07b0088_27.conda#de5434190db50b34f78341ae3c58cb1b
https://conda.anaconda.org/conda-forge/osx-arm64/gfortran-14.3.0-h3ef1dbf_0.conda#e148e0bc9bbc90b6325a479a5501786d
https://conda.anaconda.org/conda-forge/osx-arm64/cxx-compiler-1.11.0-h88570a1_0.conda#043afed05ca5a0f2c18252ae4378bdee
https://conda.anaconda.org/conda-forge/osx-arm64/fortran-compiler-1.11.0-h81a4f41_0.conda#d221c62af175b83186f96d8b0880bff6
diff --git a/build_tools/azure/pylatest_free_threaded_linux-64_conda.lock b/build_tools/azure/pylatest_free_threaded_linux-64_conda.lock
index 8628cfb70b54a..a38cc403d1a05 100644
--- a/build_tools/azure/pylatest_free_threaded_linux-64_conda.lock
+++ b/build_tools/azure/pylatest_free_threaded_linux-64_conda.lock
@@ -6,47 +6,45 @@ https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.ta
https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314t.conda#3251796e09870c978e0f69fa05e38fb6
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
-https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-bootstrap_ha15bf96_3.conda#3036ca5b895b7f5146c5a25486234a68
-https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_7.conda#f7b4d76975aac7e5d9e6ad13845f92fe
+https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_15.conda#a90d6983da0757f4c09bb8fcfaf34e71
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/libgcc-15.2.0-h767d61c_7.conda#c0374badb3a5d4b1372db28d19462c53
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_15.conda#a5d86b0496174a412d531eac03af9174
https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda#51a19bba1b8ebfb60df25cde030b7ebc
https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda#8b09ae86839581147ef2e5c5e229d164
https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda#35f29eec58405aaf55e01cb470d8c26a
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda#280ea6eee9e2ddefde25ff799c4f0363
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_7.conda#f116940d825ffc9104400f0d7f1a4551
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_15.conda#7b742943660c5173bb6a5c823021c9a0
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_15.conda#356b7358fcd6df32ad50d07cdfadd27d
https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc
https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda#c7e925f37e3b40d893459e625f6a53f1
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda#5b767048b1b3ee9a954b06f4084f93dc
-https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda#80c07c68d2f6870250959dcc95b209d1
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_15.conda#fccfb26375ec5e4a2192dee6604b6d02
+https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-h5347b49_1.conda#41f5c09a211985c3ce642d60721e7c3e
https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda#edb0dca6bc32e4f4789199455a1dbeb8
https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda#47e340acb35de30501a76c7c799c41d7
https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.0-h26f9b46_0.conda#9ee58d5c534af06558933af3c845a780
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_7.conda#8621a450add4e231f676646880703f49
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda#f627678cf829bd70bccf141a19c3ad3e
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_15.conda#7deffdc77cda3d2bbc9c558efa33d3ed
+https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda#2e1b84d273b01835256e53fd938de355
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_15.conda#20a8584ff8677ac9d724345b9d4eb757
https://conda.anaconda.org/conda-forge/linux-64/ninja-1.13.2-h171cf75_0.conda#b518e9e92493721281a60fa975bddc65
https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda#283b96675859b20a825f8fa30f311446
https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda#86bc20552bf46075e3d92b67f089172d
-https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda#6432cb5d4ac0046c3ac0a8a0f95842f9
-https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda#8b189310083baabfb622af68fd9d3ae3
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_7.conda#beeb74a6fe5ff118451cf0581bfe2642
+https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda#4a13eeac0b5c8e5b8ab496e6c4ddd829
+https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda#a6abd2796fc332536735f68ba23f7901
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_15.conda#83c3e3937b2715e9919bc1ca27a7f684
https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_4.conda#be43915efc66345cccb3c310b6ed0374
-https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-2_h4a7cf45_openblas.conda#6146bf1b7f58113d54614c6ec683c14a
+https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-4_h4a7cf45_openblas.conda#14ff9fdfbd8bd590fca383b995470711
https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.0.2-h2cc385e_0.tar.bz2#b34907d3a81a3cd8095ee83d174c074a
-https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.0-hee844dc_0.conda#729a572a3ebb8c43933b30edcc628ceb
+https://conda.anaconda.org/conda-forge/linux-64/python-3.14.2-he1279bd_0_cp314t.conda#08a2a24f4e6907bea0ebfe22eecae6be
https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
-https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-2_h0358290_openblas.conda#a84b2b7ed34206d14739fb8d29cd2799
-https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-2_h47877c9_openblas.conda#9fb20e74a7436dc94dd39d9a9decddc3
-https://conda.anaconda.org/conda-forge/linux-64/python-3.14.0-he1279bd_2_cp314t.conda#f82ece6dbaba8c6bf8ed6122eb273b9d
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.0-py314hd8ed1ab_2.conda#86fdc2e15c6f0efb98804a2c461f30b6
-https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.1-py314h3f98dc2_0.conda#eebd4c060e488edb97488858f1293190
+https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.2-py314hd8ed1ab_0.conda#d0ce45508dd9dffaec3795252897bd7a
+https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.2-py314h3f98dc2_0.conda#af078f15b212d1414633e888166dd2bf
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
-https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py314hd4f4903_0.conda#f9c8cd3ab6c388232550c806379856d5
+https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-4_h0358290_openblas.conda#25f5e5af61cee1ffedd9b4c9947d3af8
+https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-4_h47877c9_openblas.conda#8ba8431802764597f400ee3e99026367
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf47878473e5ab9fdb4115735230e191
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
@@ -54,9 +52,10 @@ https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d27
https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
+https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py314hd4f4903_0.conda#f9c8cd3ab6c388232550c806379856d5
https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
-https://conda.anaconda.org/conda-forge/noarch/python-freethreading-3.14.0-h92d6c8b_2.conda#bbd6d97a4f90042d5ae148217d3110a6
-https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py314hf5b80f4_1.conda#b010b4d97f99c579c759996db97e53c0
+https://conda.anaconda.org/conda-forge/noarch/python-freethreading-3.14.2-h92d6c8b_0.conda#f4db4d53331f31ec695670d5b3cedabb
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
-https://conda.anaconda.org/conda-forge/noarch/pytest-run-parallel-0.7.1-pyhd8ed1ab_0.conda#1277cda67d2764e7b19d6b0bed02c812
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
+https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py314hf5b80f4_1.conda#b010b4d97f99c579c759996db97e53c0
+https://conda.anaconda.org/conda-forge/noarch/pytest-run-parallel-0.8.0-pyhd8ed1ab_0.conda#7d545e76cfc231cf246f99963bcd27b0
diff --git a/build_tools/azure/pylatest_pip_openblas_pandas_linux-64_conda.lock b/build_tools/azure/pylatest_pip_openblas_pandas_linux-64_conda.lock
index d9fcd7de5fc54..9872a43eb2915 100644
--- a/build_tools/azure/pylatest_pip_openblas_pandas_linux-64_conda.lock
+++ b/build_tools/azure/pylatest_pip_openblas_pandas_linux-64_conda.lock
@@ -6,33 +6,32 @@ https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.ta
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.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
-https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-bootstrap_ha15bf96_3.conda#3036ca5b895b7f5146c5a25486234a68
-https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_7.conda#f7b4d76975aac7e5d9e6ad13845f92fe
+https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_15.conda#a90d6983da0757f4c09bb8fcfaf34e71
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/libgcc-15.2.0-h767d61c_7.conda#c0374badb3a5d4b1372db28d19462c53
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_15.conda#a5d86b0496174a412d531eac03af9174
https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda#51a19bba1b8ebfb60df25cde030b7ebc
https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda#8b09ae86839581147ef2e5c5e229d164
https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda#35f29eec58405aaf55e01cb470d8c26a
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda#280ea6eee9e2ddefde25ff799c4f0363
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_7.conda#f116940d825ffc9104400f0d7f1a4551
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_15.conda#7b742943660c5173bb6a5c823021c9a0
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_15.conda#356b7358fcd6df32ad50d07cdfadd27d
https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc
https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda#c7e925f37e3b40d893459e625f6a53f1
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda#5b767048b1b3ee9a954b06f4084f93dc
-https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda#80c07c68d2f6870250959dcc95b209d1
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_15.conda#fccfb26375ec5e4a2192dee6604b6d02
+https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-h5347b49_1.conda#41f5c09a211985c3ce642d60721e7c3e
https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda#edb0dca6bc32e4f4789199455a1dbeb8
https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda#47e340acb35de30501a76c7c799c41d7
https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.0-h26f9b46_0.conda#9ee58d5c534af06558933af3c845a780
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_7.conda#8621a450add4e231f676646880703f49
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda#f627678cf829bd70bccf141a19c3ad3e
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_15.conda#7deffdc77cda3d2bbc9c558efa33d3ed
+https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda#2e1b84d273b01835256e53fd938de355
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_15.conda#20a8584ff8677ac9d724345b9d4eb757
https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda#283b96675859b20a825f8fa30f311446
https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda#86bc20552bf46075e3d92b67f089172d
-https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda#6432cb5d4ac0046c3ac0a8a0f95842f9
-https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda#8b189310083baabfb622af68fd9d3ae3
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_7.conda#beeb74a6fe5ff118451cf0581bfe2642
+https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda#4a13eeac0b5c8e5b8ab496e6c4ddd829
+https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda#a6abd2796fc332536735f68ba23f7901
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_15.conda#83c3e3937b2715e9919bc1ca27a7f684
https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.0.2-h2cc385e_0.tar.bz2#b34907d3a81a3cd8095ee83d174c074a
-https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.0-hee844dc_0.conda#729a572a3ebb8c43933b30edcc628ceb
+https://conda.anaconda.org/conda-forge/linux-64/python-3.13.11-hc97d973_100_cp313.conda#0cbb0010f1d8ecb64a428a8d4214609e
https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
-https://conda.anaconda.org/conda-forge/linux-64/python-3.13.9-hc97d973_101_cp313.conda#4780fe896e961722d0623fa91d0d3378
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf47878473e5ab9fdb4115735230e191
# pip alabaster @ https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl#sha256=fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b
# pip babel @ https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl#sha256=4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2
@@ -40,17 +39,17 @@ https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf4787
# pip charset-normalizer @ https://files.pythonhosted.org/packages/f5/83/6ab5883f57c9c801ce5e5677242328aa45592be8a00644310a008d04f922/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl#sha256=a8a8b89589086a25749f471e6a900d3f662d1d3b6e2e59dcecf787b1cc3a1894
# pip coverage @ https://files.pythonhosted.org/packages/76/b6/67d7c0e1f400b32c883e9342de4a8c2ae7c1a0b57c5de87622b7262e2309/coverage-7.12.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl#sha256=bc13baf85cd8a4cfcf4a35c7bc9d795837ad809775f782f697bf630b7e200211
# pip cycler @ https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl#sha256=85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30
-# pip cython @ https://files.pythonhosted.org/packages/f9/33/5d9ca6abba0e77e1851b843dd1b3c4095fbc6373166935e83c4414f80e88/cython-3.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl#sha256=f5a54a757d01ca6a260b02ce5baf17d9db1c2253566ab5844ee4966ff2a69c19
-# pip docutils @ https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl#sha256=dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2
+# pip cython @ https://files.pythonhosted.org/packages/57/c1/76928c07176a4402c74d5b304936ad8ee167dd04a07cf7dca545e8c25f9b/cython-3.2.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl#sha256=a473df474ba89e9fee81ee82b31062a267f9e598096b222783477e56d02ad12c
+# pip docutils @ https://files.pythonhosted.org/packages/11/a8/c6a4b901d17399c77cd81fb001ce8961e9f5e04d3daf27e8925cb012e163/docutils-0.22.3-py3-none-any.whl#sha256=bd772e4aca73aff037958d44f2be5229ded4c09927fcf8690c577b66234d6ceb
# pip execnet @ https://files.pythonhosted.org/packages/ab/84/02fc1827e8cdded4aa65baef11296a9bbe595c474f0d6d758af082d849fd/execnet-2.1.2-py3-none-any.whl#sha256=67fba928dd5a544b783f6056f449e5e3931a5c378b128bc18501f7ea79e296ec
-# pip fonttools @ https://files.pythonhosted.org/packages/2d/8b/371ab3cec97ee3fe1126b3406b7abd60c8fec8975fd79a3c75cdea0c3d83/fonttools-4.60.1-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl#sha256=b33a7884fabd72bdf5f910d0cf46be50dce86a0362a65cfc746a4168c67eb96c
+# pip fonttools @ https://files.pythonhosted.org/packages/4e/80/c87bc524a90dbeb2a390eea23eae448286983da59b7e02c67fa0ca96a8c5/fonttools-4.61.0-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl#sha256=b2b734d8391afe3c682320840c8191de9bd24e7eb85768dd4dc06ed1b63dbb1b
# pip idna @ https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl#sha256=771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea
# pip imagesize @ https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl#sha256=0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b
# pip iniconfig @ https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl#sha256=f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53fbf12
# pip joblib @ https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl#sha256=4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241
# pip kiwisolver @ https://files.pythonhosted.org/packages/e9/e9/f218a2cb3a9ffbe324ca29a9e399fa2d2866d7f348ec3a88df87fc248fc5/kiwisolver-1.4.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl#sha256=b67e6efbf68e077dd71d1a6b37e43e1a99d0bff1a3d51867d45ee8908b931098
# pip markupsafe @ https://files.pythonhosted.org/packages/a9/21/9b05698b46f218fc0e118e1f8168395c65c8a2c750ae2bab54fc4bd4e0e8/markupsafe-3.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl#sha256=ccfcd093f13f0f0b7fdd0f198b90053bf7b2f02a3927a30e63f3ccc9df56b676
-# pip meson @ https://files.pythonhosted.org/packages/9c/07/b48592d325cb86682829f05216e4efb2dc881762b8f1bafb48b57442307a/meson-1.9.1-py3-none-any.whl#sha256=f824ab770c041a202f532f69e114c971918ed2daff7ea56583d80642564598d0
+# pip meson @ https://files.pythonhosted.org/packages/d7/ab/115470e7c6dcce024e43e2e00986864c56e48c59554bb19f4b02ed72814c/meson-1.9.2-py3-none-any.whl#sha256=1a284dc1912929098a6462401af58dc49ae3f324e94814a38a8f1020cee07cba
# pip ninja @ https://files.pythonhosted.org/packages/ed/de/0e6edf44d6a04dabd0318a519125ed0415ce437ad5a1ec9b9be03d9048cf/ninja-1.13.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl#sha256=fb46acf6b93b8dd0322adc3a4945452a4e774b75b91293bafcc7b7f8e6517dfa
# pip numpy @ https://files.pythonhosted.org/packages/f5/10/ca162f45a102738958dcec8023062dad0cbc17d1ab99d68c4e4a6c45fb2b/numpy-2.3.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl#sha256=11e06aa0af8c0f05104d56450d6093ee639e15f24ecf62d417329d06e522e017
# pip packaging @ https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl#sha256=29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484
@@ -59,7 +58,7 @@ https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf4787
# pip pygments @ https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl#sha256=86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b
# pip pyparsing @ https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl#sha256=e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e
# pip pytz @ https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl#sha256=5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00
-# pip roman-numerals-py @ https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl#sha256=9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c
+# pip roman-numerals @ https://files.pythonhosted.org/packages/82/1d/7356f115a0e5faf8dc59894a3e9fc8b1821ab949163458b0072db0a12a68/roman_numerals-3.1.0-py3-none-any.whl#sha256=842ae5fd12912d62720c9aad8cab706e8c692556d01a38443e051ee6cc158d90
# pip six @ https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl#sha256=4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274
# pip snowballstemmer @ https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl#sha256=6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064
# pip sphinxcontrib-applehelp @ https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl#sha256=4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5
@@ -71,12 +70,12 @@ https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf4787
# pip tabulate @ https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl#sha256=024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f
# pip threadpoolctl @ https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl#sha256=43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb
# pip tzdata @ https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl#sha256=1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8
-# pip urllib3 @ https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl#sha256=e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc
+# pip urllib3 @ https://files.pythonhosted.org/packages/56/1a/9ffe814d317c5224166b23e7c47f606d6e473712a2fad0f704ea9b99f246/urllib3-2.6.0-py3-none-any.whl#sha256=c90f7a39f716c572c4e3e58509581ebd83f9b59cced005b7db7ad2d22b0db99f
# pip array-api-strict @ https://files.pythonhosted.org/packages/e1/7b/81bef4348db9705d829c58b9e563c78eddca24438f1ce1108d709e6eed55/array_api_strict-2.4.1-py3-none-any.whl#sha256=22198ceb47cd3d9c0534c50650d265848d0da6ff71707171215e6678ce811ca5
# pip contourpy @ https://files.pythonhosted.org/packages/4b/32/e0f13a1c5b0f8572d0ec6ae2f6c677b7991fafd95da523159c19eff0696a/contourpy-1.3.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl#sha256=4debd64f124ca62069f313a9cb86656ff087786016d76927ae2cf37846b006c9
# pip jinja2 @ https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl#sha256=85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67
# pip pyproject-metadata @ https://files.pythonhosted.org/packages/c0/57/e69a1de45ec7a99a707e9f1a5defa035a48de0cae2d8582451c72d2db456/pyproject_metadata-0.10.0-py3-none-any.whl#sha256=b1e439a9f7560f9792ee5975dcf5e89d2510b1fc84a922d7e5d665aa9102d966
-# pip pytest @ https://files.pythonhosted.org/packages/0b/8b/6300fb80f858cda1c51ffa17075df5d846757081d11ab4aa35cef9e6258b/pytest-9.0.1-py3-none-any.whl#sha256=67be0030d194df2dfa7b556f2e56fb3c3315bd5c8822c6951162b92b32ce7dad
+# pip pytest @ https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl#sha256=711ffd45bf766d5264d487b917733b453d917afd2b0ad65223959f59089f875b
# pip python-dateutil @ https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl#sha256=a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427
# pip requests @ https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl#sha256=2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6
# pip scipy @ https://files.pythonhosted.org/packages/21/f6/4bfb5695d8941e5c570a04d9fcd0d36bce7511b7d78e6e75c8f9791f82d0/scipy-1.16.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl#sha256=7dc1360c06535ea6116a2220f760ae572db9f661aba2d88074fe30ec2aa1ff88
@@ -88,5 +87,5 @@ https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf4787
# pip pytest-cov @ https://files.pythonhosted.org/packages/80/b4/bb7263e12aade3842b938bc5c6958cae79c5ee18992f9b9349019579da0f/pytest_cov-6.3.0-py3-none-any.whl#sha256=440db28156d2468cafc0415b4f8e50856a0d11faefa38f30906048fe490f1749
# pip pytest-xdist @ https://files.pythonhosted.org/packages/ca/31/d4e37e9e550c2b92a9cbc2e4d0b7420a27224968580b5a447f420847c975/pytest_xdist-3.8.0-py3-none-any.whl#sha256=202ca578cfeb7370784a8c33d6d05bc6e13b4f25b5053c30a152269fd10f0b88
# pip scipy-doctest @ https://files.pythonhosted.org/packages/f5/99/a17f725f45e57efcf5a84494687bba7176e0b5cba7ca0f69161a063fa86d/scipy_doctest-2.0.1-py3-none-any.whl#sha256=7725b1cb5f4722ab2a77b39f0aadd39726266e682b19e40f96663d7afb2d46b1
-# pip sphinx @ https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl#sha256=4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3
+# pip sphinx @ https://files.pythonhosted.org/packages/c6/3f/4bbd76424c393caead2e1eb89777f575dee5c8653e2d4b6afd7a564f5974/sphinx-9.0.4-py3-none-any.whl#sha256=5bebc595a5e943ea248b99c13814c1c5e10b3ece718976824ffa7959ff95fffb
# pip numpydoc @ https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl#sha256=72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541
diff --git a/build_tools/azure/pylatest_pip_scipy_dev_linux-64_conda.lock b/build_tools/azure/pylatest_pip_scipy_dev_linux-64_conda.lock
index 521720e99c03a..e5db81f2c3b5e 100644
--- a/build_tools/azure/pylatest_pip_scipy_dev_linux-64_conda.lock
+++ b/build_tools/azure/pylatest_pip_scipy_dev_linux-64_conda.lock
@@ -6,40 +6,39 @@ https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.ta
https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda#0539938c55b6b1a59b560e843ad864a4
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
-https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-bootstrap_ha15bf96_3.conda#3036ca5b895b7f5146c5a25486234a68
-https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_7.conda#f7b4d76975aac7e5d9e6ad13845f92fe
+https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_14.conda#91349c276f84f590487e4c7f6e90e077
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/libgcc-15.2.0-h767d61c_7.conda#c0374badb3a5d4b1372db28d19462c53
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_14.conda#550dceb769d23bcf0e2f97fd4062d720
https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda#51a19bba1b8ebfb60df25cde030b7ebc
https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda#8b09ae86839581147ef2e5c5e229d164
https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda#35f29eec58405aaf55e01cb470d8c26a
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda#280ea6eee9e2ddefde25ff799c4f0363
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_7.conda#f116940d825ffc9104400f0d7f1a4551
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_14.conda#6c13aaae36d7514f28bd5544da1a7bb8
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_14.conda#3078a2a9a58566a54e579b41b9e88c84
https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc
https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda#c7e925f37e3b40d893459e625f6a53f1
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda#5b767048b1b3ee9a954b06f4084f93dc
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_14.conda#8e96fe9b17d5871b5cf9d312cab832f6
https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda#80c07c68d2f6870250959dcc95b209d1
https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda#edb0dca6bc32e4f4789199455a1dbeb8
https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda#47e340acb35de30501a76c7c799c41d7
https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.0-h26f9b46_0.conda#9ee58d5c534af06558933af3c845a780
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_7.conda#8621a450add4e231f676646880703f49
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda#f627678cf829bd70bccf141a19c3ad3e
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_14.conda#fa9d91abc5a9db36fa8dcd1b9a602e61
+https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda#2e1b84d273b01835256e53fd938de355
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_14.conda#9531f671a13eec0597941fa19e489b96
https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda#283b96675859b20a825f8fa30f311446
https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda#86bc20552bf46075e3d92b67f089172d
-https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda#6432cb5d4ac0046c3ac0a8a0f95842f9
-https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda#8b189310083baabfb622af68fd9d3ae3
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_7.conda#beeb74a6fe5ff118451cf0581bfe2642
+https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-h3691f8a_4.conda#af7715829219de9043fcc5575e66d22e
+https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda#a6abd2796fc332536735f68ba23f7901
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_14.conda#ab557953cdcf9c483e1d088e0d8ab238
https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.0.2-h2cc385e_0.tar.bz2#b34907d3a81a3cd8095ee83d174c074a
-https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.0-hee844dc_0.conda#729a572a3ebb8c43933b30edcc628ceb
-https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
https://conda.anaconda.org/conda-forge/linux-64/python-3.14.0-h32b2ec7_102_cp314.conda#0a19d2cc6eb15881889b0c6fa7d6a78d
+https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf47878473e5ab9fdb4115735230e191
# pip alabaster @ https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl#sha256=fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b
# pip babel @ https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl#sha256=4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2
# pip certifi @ https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl#sha256=97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b
# pip charset-normalizer @ https://files.pythonhosted.org/packages/67/ff/f6b948ca32e4f2a4576aa129d8bed61f2e0543bf9f5f2b7fc3758ed005c9/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl#sha256=ecaae4149d99b1c9e7b88bb03e3221956f68fd6d50be2ef061b2381b61d20838
# pip coverage @ https://files.pythonhosted.org/packages/d9/1d/9529d9bd44049b6b05bb319c03a3a7e4b0a8a802d28fa348ad407e10706d/coverage-7.12.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl#sha256=fdba9f15849534594f60b47c9a30bc70409b54947319a7c4fd0e8e3d8d2f355d
-# pip docutils @ https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl#sha256=dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2
+# pip docutils @ https://files.pythonhosted.org/packages/11/a8/c6a4b901d17399c77cd81fb001ce8961e9f5e04d3daf27e8925cb012e163/docutils-0.22.3-py3-none-any.whl#sha256=bd772e4aca73aff037958d44f2be5229ded4c09927fcf8690c577b66234d6ceb
# pip execnet @ https://files.pythonhosted.org/packages/ab/84/02fc1827e8cdded4aa65baef11296a9bbe595c474f0d6d758af082d849fd/execnet-2.1.2-py3-none-any.whl#sha256=67fba928dd5a544b783f6056f449e5e3931a5c378b128bc18501f7ea79e296ec
# pip idna @ https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl#sha256=771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea
# pip imagesize @ https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl#sha256=0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b
@@ -51,7 +50,7 @@ https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf4787
# pip platformdirs @ https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl#sha256=e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3
# pip pluggy @ https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl#sha256=e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746
# pip pygments @ https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl#sha256=86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b
-# pip roman-numerals-py @ https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl#sha256=9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c
+# pip roman-numerals @ https://files.pythonhosted.org/packages/82/1d/7356f115a0e5faf8dc59894a3e9fc8b1821ab949163458b0072db0a12a68/roman_numerals-3.1.0-py3-none-any.whl#sha256=842ae5fd12912d62720c9aad8cab706e8c692556d01a38443e051ee6cc158d90
# pip six @ https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl#sha256=4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274
# pip snowballstemmer @ https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl#sha256=6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064
# pip sphinxcontrib-applehelp @ https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl#sha256=4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5
@@ -72,5 +71,5 @@ https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf4787
# pip pooch @ https://files.pythonhosted.org/packages/a8/87/77cc11c7a9ea9fd05503def69e3d18605852cd0d4b0d3b8f15bbeb3ef1d1/pooch-1.8.2-py3-none-any.whl#sha256=3529a57096f7198778a5ceefd5ac3ef0e4d06a6ddaf9fc2d609b806f25302c47
# pip pytest-cov @ https://files.pythonhosted.org/packages/80/b4/bb7263e12aade3842b938bc5c6958cae79c5ee18992f9b9349019579da0f/pytest_cov-6.3.0-py3-none-any.whl#sha256=440db28156d2468cafc0415b4f8e50856a0d11faefa38f30906048fe490f1749
# pip pytest-xdist @ https://files.pythonhosted.org/packages/ca/31/d4e37e9e550c2b92a9cbc2e4d0b7420a27224968580b5a447f420847c975/pytest_xdist-3.8.0-py3-none-any.whl#sha256=202ca578cfeb7370784a8c33d6d05bc6e13b4f25b5053c30a152269fd10f0b88
-# pip sphinx @ https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl#sha256=4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3
+# pip sphinx @ https://files.pythonhosted.org/packages/fe/8b/76e2a1ce12b915399365873eef2b1197da9d032c99e661a71fd7e1490333/sphinx-9.0.0-py3-none-any.whl#sha256=3442bf635d378da2ba4e88aa8496f3a61b2d59ef145aeaf34353ab93fd79f1bf
# pip numpydoc @ https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl#sha256=72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541
diff --git a/build_tools/azure/pymin_conda_forge_openblas_min_dependencies_linux-64_conda.lock b/build_tools/azure/pymin_conda_forge_openblas_min_dependencies_linux-64_conda.lock
index 9f881ff559fc7..e94fdf6ae3dec 100644
--- a/build_tools/azure/pymin_conda_forge_openblas_min_dependencies_linux-64_conda.lock
+++ b/build_tools/azure/pymin_conda_forge_openblas_min_dependencies_linux-64_conda.lock
@@ -10,14 +10,13 @@ https://conda.anaconda.org/conda-forge/noarch/python_abi-3.11-8_cp311.conda#8fcb
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda#a7970cd949a077b7cb9696379d338681
-https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-bootstrap_ha15bf96_3.conda#3036ca5b895b7f5146c5a25486234a68
https://conda.anaconda.org/conda-forge/linux-64/libglvnd-1.7.0-ha4b6fd6_2.conda#434ca7e50e40f4918ab701e3facd59a0
-https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-21.1.6-h4922eb0_0.conda#7a0b9ce502e0ed62195e02891dfcd704
-https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-6_kmp_llvm.conda#197811678264cb9da0d2ea0726a70661
+https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-21.1.7-h4922eb0_0.conda#ec29f865968a81e1961b3c2f2765eebb
+https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-7_kmp_llvm.conda#887b70e1d607fba7957aa02f9ee0d939
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2#fee5683a3f04bd15cbd8318b096a27ab
https://conda.anaconda.org/conda-forge/linux-64/libegl-1.7.0-ha4b6fd6_2.conda#c151d5eb730e9b7480e6d48c0fc44048
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.2.0-h767d61c_7.conda#c0374badb3a5d4b1372db28d19462c53
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_15.conda#a5d86b0496174a412d531eac03af9174
https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.14-hb9d3cd8_0.conda#76df83c2a9035c54df5d04ff81bcc02d
https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.2-h39aace5_0.conda#791365c5f65975051e4e017b5da3abf5
https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda#51a19bba1b8ebfb60df25cde030b7ebc
@@ -26,8 +25,8 @@ https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda#
https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda#6c77a605a7a689d17d4819c0f8ac9a00
https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda#8b09ae86839581147ef2e5c5e229d164
https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda#35f29eec58405aaf55e01cb470d8c26a
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda#280ea6eee9e2ddefde25ff799c4f0363
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_7.conda#f116940d825ffc9104400f0d7f1a4551
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_15.conda#7b742943660c5173bb6a5c823021c9a0
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_15.conda#356b7358fcd6df32ad50d07cdfadd27d
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.2-hb03c661_0.conda#8397539e3a0bbd1695584fb4f927485a
https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc
@@ -37,9 +36,9 @@ https://conda.anaconda.org/conda-forge/linux-64/libnuma-2.0.18-hb9d3cd8_3.conda#
https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.5-hd0c01bc_1.conda#68e52064ed3897463c0e958ab5c8f91b
https://conda.anaconda.org/conda-forge/linux-64/libopus-1.5.2-hd0c01bc_0.conda#b64523fb87ac6f87f0790f324ad43046
https://conda.anaconda.org/conda-forge/linux-64/libpciaccess-0.18-hb9d3cd8_0.conda#70e3400cbbfa03e96dcde7fc13e38c7b
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda#5b767048b1b3ee9a954b06f4084f93dc
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_15.conda#fccfb26375ec5e4a2192dee6604b6d02
https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-hf23e847_1.conda#b1aa0faa95017bca11369bd080487ec4
-https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda#80c07c68d2f6870250959dcc95b209d1
+https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-h5347b49_1.conda#41f5c09a211985c3ce642d60721e7c3e
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/ncurses-6.5-h2d0b736_3.conda#47e340acb35de30501a76c7c799c41d7
@@ -63,10 +62,11 @@ https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949
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.2.0-h69a702a_7.conda#8621a450add4e231f676646880703f49
-https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.51-h421ea60_0.conda#d8b81203d08435eb999baa249427884e
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_15.conda#7deffdc77cda3d2bbc9c558efa33d3ed
+https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.53-h421ea60_0.conda#00d4e66b1f746cb14944cad23fffb405
+https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda#2e1b84d273b01835256e53fd938de355
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.2.0-h4852527_7.conda#f627678cf829bd70bccf141a19c3ad3e
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_15.conda#20a8584ff8677ac9d724345b9d4eb757
https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h54a6638_2.conda#b4ecbefe517ed0157c37f8182768271c
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
@@ -80,8 +80,8 @@ https://conda.anaconda.org/conda-forge/linux-64/s2n-1.3.46-h06160fa_0.conda#413d
https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda#86bc20552bf46075e3d92b67f089172d
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/zlib-1.3.1-hb9d3cd8_2.conda#c9f075ab2f33b3bbee9e62d4ad0a6cd8
-https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.2.5-hde8ca8f_0.conda#1920c3502e7f6688d650ab81cd3775fd
-https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda#6432cb5d4ac0046c3ac0a8a0f95842f9
+https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.3.2-h54a6638_0.conda#0faadd01896315ceea58bcc3479b1d21
+https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda#4a13eeac0b5c8e5b8ab496e6c4ddd829
https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.0-h93469e0_0.conda#580a52a05f5be28ce00764149017c6d4
https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.17-h862ab75_1.conda#0013fcee7acb3cfc801c5929824feb3c
https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.11-h862ab75_1.conda#6fbc9bd49434eb36d3a59c5020f4af95
@@ -89,6 +89,7 @@ https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.16-h862ab75_1.
https://conda.anaconda.org/conda-forge/linux-64/glog-0.6.0-h6f12383_0.tar.bz2#b31f3565cb84435407594e548a2fb7b2
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/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda#a6abd2796fc332536735f68ba23f7901
https://conda.anaconda.org/conda-forge/linux-64/libabseil-20230125.3-cxx17_h59595ed_0.conda#d1db1b8be7c3a8983dcbbbfe4f0765de
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/libbrotlidec-1.0.9-h166bdaf_9.conda#081aa22f4581c08e4372b0b6c2f8478e
@@ -96,7 +97,7 @@ https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.0.9-h166bdaf_9.co
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/libfreetype6-2.14.1-h73754d4_0.conda#8e7251989bca326a28f4a5ffbd74557a
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.2.0-h69a702a_7.conda#beeb74a6fe5ff118451cf0581bfe2642
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_15.conda#83c3e3937b2715e9919bc1ca27a7f684
https://conda.anaconda.org/conda-forge/linux-64/libglib-2.86.2-h6548e54_1.conda#f01292fb36b6d00d5c51e5d46b513bcf
https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda#b499ce4b026493a13774bcf0f4c33849
https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-3.21.12-hfc55251_2.conda#e3a7d4ba09b8dc939b98fef55f539220
@@ -104,6 +105,7 @@ https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-257.10-hd0affe5_2.co
https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.18.1-h8fd135c_2.conda#bbf65f7688512872f063810623b755dc
https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda#cd5a90476766d53e901500df9215e927
https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda#318b08df404f9c9be5712aaa5a6f0bb0
+https://conda.anaconda.org/conda-forge/linux-64/nss-3.118-h445c969_0.conda#567fbeed956c200c1db5782a424e58ee
https://conda.anaconda.org/conda-forge/linux-64/rdma-core-28.9-h59595ed_1.conda#aeffb7c06b5f65e55e6c637408dc4100
https://conda.anaconda.org/conda-forge/linux-64/re2-2023.03.02-h8c504da_0.conda#206f8fa808748f6e90599c3368a1114e
https://conda.anaconda.org/conda-forge/linux-64/snappy-1.1.10-hdb0a2a9_1.conda#78b8b85bdf1f42b8a2b3cb577d8742d1
@@ -115,7 +117,7 @@ https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.12-h4f16b4b_0.co
https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.13.27-h3870b5a_0.conda#b868db6b48436bdbda71aa8576f4a44d
https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.0.9-h166bdaf_9.conda#d47dee1856d9cb955b8076eeff304a5b
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/dbus-1.16.2-h3c4dab8_0.conda#679616eb5ad4e521c83da4650860aba7
+https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h24cb091_1.conda#ce96f2f470d39bd96ce03945af92e280
https://conda.anaconda.org/conda-forge/linux-64/gettext-0.25.1-h3f43e3d_1.conda#c42356557d7f2e37676e121515417e3b
https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.86.2-hf516916_1.conda#495c262933b7c5b8c09413d44fa5974b
https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.17-h717163a_0.conda#000e85703f0fd9594c81710dd5066471
@@ -126,10 +128,10 @@ https://conda.anaconda.org/conda-forge/linux-64/libglx-1.7.0-ha4b6fd6_2.conda#c8
https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.54.3-hb20ce57_0.conda#7af7c59ab24db007dfd82e0a3a343f66
https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.0.2-h2cc385e_0.tar.bz2#b34907d3a81a3cd8095ee83d174c074a
https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.25-pthreads_h413a1c8_0.conda#d172b34a443b95f86089e8229ddc9a17
-https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.0-hee844dc_0.conda#729a572a3ebb8c43933b30edcc628ceb
https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.1-ha9997c6_0.conda#e7733bc6785ec009e47a224a71917e84
https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.4-h55fea9a_0.conda#11b3379b191f63139e29c0d19dee24cd
https://conda.anaconda.org/conda-forge/linux-64/orc-1.8.4-h2f23424_0.conda#4bb92585a250e67d49b46c073d29f9dd
+https://conda.anaconda.org/conda-forge/linux-64/python-3.11.14-hd63d673_2_cpython.conda#c4202a55b4486314fbb8c11bc43a29a0
https://conda.anaconda.org/conda-forge/linux-64/ucx-1.14.1-h64cca9d_5.conda#39aa3b356d10d7e5add0c540945a0944
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-hb711507_2.conda#a0901183f08b6c7107aab109733a3c91
https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.46-hb03c661_0.conda#71ae752a748962161b4740eaff510258
@@ -139,47 +141,33 @@ https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.12-hb9d3cd8_
https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.3.1-h1e03375_0.conda#3082be841420d6288bc1268a9be45b75
https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.7.10-h9ab9c9b_2.conda#cf49873da2e59f876a2ad4794b05801b
https://conda.anaconda.org/conda-forge/linux-64/brotli-1.0.9-h166bdaf_9.conda#4601544b4982ba1861fa9b9c607b2c06
-https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
-https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.1-ha770c72_0.conda#4afc585cd97ba8a23809406cd8a9eda8
-https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-20_linux64_openblas.conda#2b7bb4f7562c8cf334fc2e20c2d28abc
-https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda#ee48bf17cc83a00f59ca1494d5646869
-https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda#928b8be80851f5d8ffb016f9c81dae7a
-https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.12.0-hac9eb74_1.conda#0dee716254497604762957076ac76540
-https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.1-h26afc86_0.conda#e512be7dc1f84966d50959e900ca121f
-https://conda.anaconda.org/conda-forge/linux-64/nss-3.118-h445c969_0.conda#567fbeed956c200c1db5782a424e58ee
-https://conda.anaconda.org/conda-forge/linux-64/openblas-0.3.25-pthreads_h7a3da1a_0.conda#87661673941b5e702275fdf0fc095ad0
-https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878
-https://conda.anaconda.org/conda-forge/linux-64/python-3.11.14-hd63d673_2_cpython.conda#c4202a55b4486314fbb8c11bc43a29a0
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.6-hb9d3cd8_2.conda#d3c295b50f092ab525ffe3c2aa4b7413
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda#b5fcc7172d22516e1f965490e65e33a4
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.6-hb9d3cd8_0.conda#5efa5fa6243a622445fdfd72aee15efa
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.0-h435f46f_0.conda#c7726f96aab024855ede05e0ca6e94a0
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.8.13-hd4f18eb_5.conda#860fb8c0efec64a4a678eb2ea066ff65
https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.0.9-py311ha362b79_9.conda#ced5340f5dc6cff43a80deac8d0e398f
+https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
https://conda.anaconda.org/conda-forge/noarch/certifi-2025.11.12-pyhd8ed1ab_0.conda#96a02a5c1a65470a7e4eedb644c872fd
https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda#a22d1fd9bf98827e280a02875d9a007a
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833
+https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhcf101f3_2.conda#4c2a8fef270f6c69591889b93f9f55c1
https://conda.anaconda.org/conda-forge/linux-64/cython-3.1.2-py311ha3e34f5_2.conda#f56da6e1e1f310f27cca558e58882f40
https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
-https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee
+https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.1-ha770c72_0.conda#4afc585cd97ba8a23809406cd8a9eda8
https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda#0a802cb9888dd14eeefc611f05c40b6e
https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda#8e6923fc12f1fe8f8c4e5c9f343256ac
https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda#53abe63df7e10a6ba605dc5f9f961d36
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py311h724c32c_2.conda#4089f739463c798e10d8644bc34e24de
-https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-20_linux64_openblas.conda#36d486d72ab64ffea932329a1d3729a3
-https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-20_linux64_openblas.conda#6fabc51f5e647d09cc010c40061557e0
-https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.6-hf7376ad_0.conda#8aa154f30e0bc616cbde9794710e0be2
-https://conda.anaconda.org/conda-forge/linux-64/libpq-18.1-h5c52fec_1.conda#638350cf5da41f3651958876a2104992
-https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda#ef1910918dd895516a769ed36b5b3a4e
-https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.0-hca5e8e5_0.conda#aa65b4add9574bb1d23c76560c5efd4c
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
+https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-20_linux64_openblas.conda#2b7bb4f7562c8cf334fc2e20c2d28abc
+https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda#ee48bf17cc83a00f59ca1494d5646869
+https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda#928b8be80851f5d8ffb016f9c81dae7a
+https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.12.0-hac9eb74_1.conda#0dee716254497604762957076ac76540
+https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.1-h26afc86_0.conda#e512be7dc1f84966d50959e900ca121f
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
+https://conda.anaconda.org/conda-forge/linux-64/openblas-0.3.25-pthreads_h7a3da1a_0.conda#87661673941b5e702275fdf0fc095ad0
+https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
-https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py311h07c5bb8_0.conda#51f505a537b2d216a1b36b823df80995
-https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda#5c7a868f8241e64e1cf5fdf4962f23e2
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
+https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py311hf88fc01_2.conda#79edb22fb652ee142099df18042ca8c0
+https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda#1bd2e65c8c7ef24f4639ae6e850dacc2
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_3.conda#fd5062942bfa1b0bd5e0d2a4397b099e
https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda#12c566707c80111f9799308d9e265aef
https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
@@ -188,54 +176,66 @@ https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda#4
https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.2.0-pyha21a80b_0.conda#978d03388b62173b8e6f79162cf52b86
-https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda#00d80af3a7bf27729484e786a68aafff
+https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda#d0fc809fa4c4d85e959ce4ab6e1de800
https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py311h49ec1c0_2.conda#8d7a63fc9653ed0bdc253a51d9a5c371
https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-17.0.0-py311h49ec1c0_1.conda#5e6d4026784e83c0a51c86ec428e8cc8
https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda#75cb7132eb58d97896e173ef12ac9986
-https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.3.12-he2a37c1_2.conda#44876aca9aa47da1e5e2d3f9906169ba
-https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-h3394656_0.conda#09262e66b19567aff4f592fb53b28760
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.6-hb9d3cd8_2.conda#d3c295b50f092ab525ffe3c2aa4b7413
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda#b5fcc7172d22516e1f965490e65e33a4
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.6-hb9d3cd8_0.conda#5efa5fa6243a622445fdfd72aee15efa
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.0-h435f46f_0.conda#c7726f96aab024855ede05e0ca6e94a0
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.8.13-hd4f18eb_5.conda#860fb8c0efec64a4a678eb2ea066ff65
https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py311h03d9500_1.conda#3912e4373de46adafd8f1e97e4bd166b
https://conda.anaconda.org/conda-forge/linux-64/coverage-7.12.0-py311h3778330_0.conda#4ef5919a315f5c2834fc8da49044156d
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
-https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.60.1-py311h3778330_0.conda#91f834f85ac92978cfc3c1c178573e85
+https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee
+https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.61.0-py311h3778330_0.conda#f5ee391df23b7f50676ebe79fc53ee03
https://conda.anaconda.org/conda-forge/linux-64/glib-2.86.2-h5192d8d_1.conda#7071a9745767777b4be235f8c164ea75
https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda#164fc43f0b53b6e3a7bc7dce5e4f1dc9
https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.0-pyhd8ed1ab_1.conda#fb4caf6da228ccc487350eade569abae
-https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.6-default_h99862b1_0.conda#0fcc9b4d3fc5e5010a7098318d9b7971
-https://conda.anaconda.org/conda-forge/linux-64/libclang13-21.1.6-default_h746c552_0.conda#f5b64315835b284c7eb5332202b1e14b
-https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.9.0-20_linux64_openblas.conda#05c5862c7dc25e65ba6c471d96429dae
-https://conda.anaconda.org/conda-forge/linux-64/numpy-1.24.1-py311h8e6699e_0.conda#bd7c9bf413aa9478ea5f68123e796ab1
+https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-20_linux64_openblas.conda#36d486d72ab64ffea932329a1d3729a3
+https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-20_linux64_openblas.conda#6fabc51f5e647d09cc010c40061557e0
+https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.7-hf7376ad_0.conda#27dc1a582b442f24979f2a28641fe478
+https://conda.anaconda.org/conda-forge/linux-64/libpq-18.1-h5c52fec_2.conda#a8ac9a6342569d1714ae1b53ae2fcadb
+https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda#ef1910918dd895516a769ed36b5b3a4e
+https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.1-hca5e8e5_0.conda#2bca1fbb221d9c3c8e3a155784bbc2e9
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh8b19718_0.conda#c55515ca43c6444d2572e0f0d93cb6b9
-https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-h9a6aba3_3.conda#b8ea447fdf62e3597cb8d2fae4eb1a90
https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda#5b8d21249ff20967101ffa321cab24e8
https://conda.anaconda.org/conda-forge/linux-64/sip-6.10.0-py311h1ddb823_1.conda#8012258dbc1728a96a7a72a2b3daf2ad
-https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.20.2-h2a5cb19_18.conda#7313674073496cec938f73b71163bc31
-https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.9.0-20_linux64_openblas.conda#9932a1d4e9ecf2d35fb19475446e361e
-https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.2-py311hd18a35c_0.conda#f8e440efa026c394461a45a46cea49fc
+https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.3.12-he2a37c1_2.conda#44876aca9aa47da1e5e2d3f9906169ba
+https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-h3394656_0.conda#09262e66b19567aff4f592fb53b28760
https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.24.11-hc37bda9_0.conda#056d86cacf2b48c79c6a562a2486eb8c
-https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda#b8690f53007e9b5ee2c2178dd4ac778c
+https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.7-default_h99862b1_1.conda#d3042ebdaacc689fd1daa701885fc96c
+https://conda.anaconda.org/conda-forge/linux-64/libclang13-21.1.7-default_h746c552_1.conda#66508e5f84c3dc9af1a0a62694325ef2
+https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.9.0-20_linux64_openblas.conda#05c5862c7dc25e65ba6c471d96429dae
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.17.1-pyh70fd9c4_1.conda#7a02679229c6c2092571b4c025055440
-https://conda.anaconda.org/conda-forge/linux-64/polars-0.20.30-py311h00856b1_0.conda#5113e0013db6b28be897218ddf9835f9
+https://conda.anaconda.org/conda-forge/linux-64/numpy-1.24.1-py311h8e6699e_0.conda#bd7c9bf413aa9478ea5f68123e796ab1
+https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-h9a6aba3_3.conda#b8ea447fdf62e3597cb8d2fae4eb1a90
https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.17.0-py311h1ddb823_2.conda#4f296d802e51e7a6889955c7f1bd10be
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py311haee01d2_1.conda#ca45bfd4871af957aaa5035593d5efd2
-https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.10.57-h7b9373a_16.conda#54db1af780a69493a2e0675113a027f9
-https://conda.anaconda.org/conda-forge/linux-64/blas-2.120-openblas.conda#c8f6916a81a340650078171b1d852574
+https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.20.2-h2a5cb19_18.conda#7313674073496cec938f73b71163bc31
+https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.9.0-20_linux64_openblas.conda#9932a1d4e9ecf2d35fb19475446e361e
+https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.2-py311hd18a35c_0.conda#f8e440efa026c394461a45a46cea49fc
https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.24.11-h651a532_0.conda#d8d8894f8ced2c9be76dc9ad1ae531ce
-https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.6.1-py311he728205_1.tar.bz2#88af4d7dc89608bfb7665a9685578800
+https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda#b8690f53007e9b5ee2c2178dd4ac778c
+https://conda.anaconda.org/conda-forge/linux-64/polars-0.20.30-py311h00856b1_0.conda#5113e0013db6b28be897218ddf9835f9
https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda#50d191b852fccb4bf9ab7b59b030c99d
https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda#8375cfbda7c57fbceeda18229be10417
https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda#436c165519e140cb08d246a4472a9d6a
-https://conda.anaconda.org/conda-forge/linux-64/libarrow-12.0.0-hc410076_9_cpu.conda#3dcb50139596ef80908e2dd9a931d84c
+https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.10.57-h7b9373a_16.conda#54db1af780a69493a2e0675113a027f9
+https://conda.anaconda.org/conda-forge/linux-64/blas-2.120-openblas.conda#c8f6916a81a340650078171b1d852574
+https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.6.1-py311he728205_1.tar.bz2#88af4d7dc89608bfb7665a9685578800
https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.15-h3c3fd16_6.conda#5aab84b9d164509b5bbe3af660518606
https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda#db0c6b99149880c8ba515cf4abe93ee4
+https://conda.anaconda.org/conda-forge/linux-64/libarrow-12.0.0-hc410076_9_cpu.conda#3dcb50139596ef80908e2dd9a931d84c
https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.2-pyhd8ed1ab_3.conda#d2bbbd293097e664ffb01fc4cdaf5729
-https://conda.anaconda.org/conda-forge/linux-64/pyarrow-12.0.0-py311h39c9aba_9_cpu.conda#c35fe329bcc51a1a3a254c990ba8f738
https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.11-py311h0580839_2.conda#59ae5d8d4bcb1371d61ec49dfb985c70
https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.6.1-py311h38be061_1.tar.bz2#37d18a25f4f7fcef45ba4fb31cbe30af
+https://conda.anaconda.org/conda-forge/linux-64/pyarrow-12.0.0-py311h39c9aba_9_cpu.conda#c35fe329bcc51a1a3a254c990ba8f738
https://conda.anaconda.org/conda-forge/linux-64/scipy-1.10.0-py311h8e6699e_2.conda#29e7558b75488b2d5c7d1458be2b3b11
https://conda.anaconda.org/conda-forge/linux-64/pyamg-5.0.0-py311hcb41070_0.conda#af2d6818c526791fb81686c554ab262b
# pip pytz @ https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl#sha256=5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00
diff --git a/build_tools/azure/pymin_conda_forge_openblas_ubuntu_2204_linux-64_conda.lock b/build_tools/azure/pymin_conda_forge_openblas_ubuntu_2204_linux-64_conda.lock
index a6903bbe4eef5..f0adc2af81009 100644
--- a/build_tools/azure/pymin_conda_forge_openblas_ubuntu_2204_linux-64_conda.lock
+++ b/build_tools/azure/pymin_conda_forge_openblas_ubuntu_2204_linux-64_conda.lock
@@ -6,21 +6,20 @@ https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.ta
https://conda.anaconda.org/conda-forge/noarch/python_abi-3.11-8_cp311.conda#8fcb6b0e2161850556231336dae58358
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
-https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-bootstrap_ha15bf96_3.conda#3036ca5b895b7f5146c5a25486234a68
-https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_7.conda#f7b4d76975aac7e5d9e6ad13845f92fe
+https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_15.conda#a90d6983da0757f4c09bb8fcfaf34e71
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/libgcc-15.2.0-h767d61c_7.conda#c0374badb3a5d4b1372db28d19462c53
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_15.conda#a5d86b0496174a412d531eac03af9174
https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda#51a19bba1b8ebfb60df25cde030b7ebc
https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda#6c77a605a7a689d17d4819c0f8ac9a00
https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda#8b09ae86839581147ef2e5c5e229d164
https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda#35f29eec58405aaf55e01cb470d8c26a
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda#280ea6eee9e2ddefde25ff799c4f0363
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_7.conda#f116940d825ffc9104400f0d7f1a4551
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_15.conda#7b742943660c5173bb6a5c823021c9a0
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_15.conda#356b7358fcd6df32ad50d07cdfadd27d
https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda#8397539e3a0bbd1695584fb4f927485a
https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc
https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda#d864d34357c3b65a4b731f78c0801dc4
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda#5b767048b1b3ee9a954b06f4084f93dc
-https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda#80c07c68d2f6870250959dcc95b209d1
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_15.conda#fccfb26375ec5e4a2192dee6604b6d02
+https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-h5347b49_1.conda#41f5c09a211985c3ce642d60721e7c3e
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/ncurses-6.5-h2d0b736_3.conda#47e340acb35de30501a76c7c799c41d7
@@ -29,91 +28,89 @@ https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.12-hb03c661_1.conda#b2895afaf55bf96a8c8282a2e47a5de0
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.5-hb03c661_1.conda#1dafce8548e38671bea82e3f5c6ce22f
https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda#9344155d33912347b37f0ae6c410a835
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_7.conda#8621a450add4e231f676646880703f49
-https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.51-h421ea60_0.conda#d8b81203d08435eb999baa249427884e
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda#f627678cf829bd70bccf141a19c3ad3e
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_15.conda#7deffdc77cda3d2bbc9c558efa33d3ed
+https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.53-h421ea60_0.conda#00d4e66b1f746cb14944cad23fffb405
+https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda#2e1b84d273b01835256e53fd938de355
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_15.conda#20a8584ff8677ac9d724345b9d4eb757
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/ninja-1.13.2-h171cf75_0.conda#b518e9e92493721281a60fa975bddc65
https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda#283b96675859b20a825f8fa30f311446
https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda#86bc20552bf46075e3d92b67f089172d
-https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.2.5-hde8ca8f_0.conda#1920c3502e7f6688d650ab81cd3775fd
-https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda#6432cb5d4ac0046c3ac0a8a0f95842f9
-https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda#8b189310083baabfb622af68fd9d3ae3
+https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.3.2-h54a6638_0.conda#0faadd01896315ceea58bcc3479b1d21
+https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda#4a13eeac0b5c8e5b8ab496e6c4ddd829
+https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda#a6abd2796fc332536735f68ba23f7901
https://conda.anaconda.org/conda-forge/linux-64/libfreetype6-2.14.1-h73754d4_0.conda#8e7251989bca326a28f4a5ffbd74557a
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_7.conda#beeb74a6fe5ff118451cf0581bfe2642
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_15.conda#83c3e3937b2715e9919bc1ca27a7f684
https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_4.conda#be43915efc66345cccb3c310b6ed0374
https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda#cd5a90476766d53e901500df9215e927
https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.17-h717163a_0.conda#000e85703f0fd9594c81710dd5066471
-https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-2_h4a7cf45_openblas.conda#6146bf1b7f58113d54614c6ec683c14a
+https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-4_h4a7cf45_openblas.conda#14ff9fdfbd8bd590fca383b995470711
https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.1-ha770c72_0.conda#f4084e4e6577797150f9b04a4560ceb0
https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.0.2-h2cc385e_0.tar.bz2#b34907d3a81a3cd8095ee83d174c074a
-https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.0-hee844dc_0.conda#729a572a3ebb8c43933b30edcc628ceb
https://conda.anaconda.org/conda-forge/linux-64/openblas-0.3.30-pthreads_h6ec200e_4.conda#379ec5261b0b8fc54f2e7bd055360b0c
https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.4-h55fea9a_0.conda#11b3379b191f63139e29c0d19dee24cd
-https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
-https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-2_h0358290_openblas.conda#a84b2b7ed34206d14739fb8d29cd2799
-https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-2_h47877c9_openblas.conda#9fb20e74a7436dc94dd39d9a9decddc3
https://conda.anaconda.org/conda-forge/linux-64/python-3.11.14-hd63d673_2_cpython.conda#c4202a55b4486314fbb8c11bc43a29a0
https://conda.anaconda.org/conda-forge/noarch/alabaster-1.0.0-pyhd8ed1ab_1.conda#1fd9696649f65fd6611fcdb4ffec738a
-https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py311h7c6b74e_0.conda#645bc783bc723d67a294a51bc860762d
+https://conda.anaconda.org/conda-forge/linux-64/backports.zstd-1.2.0-py311h6b1f9c4_0.conda#596b9cc36b7af0640825b399e6b11ccc
+https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py311h66f275b_1.conda#86daecb8e4ed1042d5dc6efbe0152590
+https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
https://conda.anaconda.org/conda-forge/noarch/certifi-2025.11.12-pyhd8ed1ab_0.conda#96a02a5c1a65470a7e4eedb644c872fd
https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda#a22d1fd9bf98827e280a02875d9a007a
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.1-py311h0daaf2c_0.conda#1be85c7845e9ba143f3cef9fd5780dc3
-https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_1.conda#24c1ca34138ee57de72a943237cde4cc
+https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.2-py311h0daaf2c_0.conda#93f275715239f0ad95343a75fb15dbd7
+https://conda.anaconda.org/conda-forge/noarch/docutils-0.22.3-pyhd8ed1ab_0.conda#abbe8c85619c87c4f4f61b44173434af
https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda#0a802cb9888dd14eeefc611f05c40b6e
https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda#8e6923fc12f1fe8f8c4e5c9f343256ac
https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda#53abe63df7e10a6ba605dc5f9f961d36
https://conda.anaconda.org/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2#7de5386c8fea29e76b303f37dde4c352
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
-https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.11.0-2_h6ae95b6_openblas.conda#35d16498d50b73886cb30014c2741726
+https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-4_h0358290_openblas.conda#25f5e5af61cee1ffedd9b4c9947d3af8
+https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-4_h47877c9_openblas.conda#8ba8431802764597f400ee3e99026367
https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py311h3778330_0.conda#0954f1a6a26df4a510b54f73b2a0345c
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
-https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py311h2e04523_0.conda#01da92ddaf561cabebd06019ae521510
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
-https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py311h07c5bb8_0.conda#51f505a537b2d216a1b36b823df80995
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
-https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda#12c566707c80111f9799308d9e265aef
+https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py311hf88fc01_2.conda#79edb22fb652ee142099df18042ca8c0
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda#461219d1a5bd61342293efa2c0c90eac
https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2025.2-pyhd8ed1ab_0.conda#88476ae6ebd24f39261e0854ac244f33
https://conda.anaconda.org/conda-forge/noarch/pytz-2025.2-pyhd8ed1ab_0.conda#bc8e3267d44011051f2eb14d22fb0960
-https://conda.anaconda.org/conda-forge/noarch/roman-numerals-py-3.1.0-pyhd8ed1ab_0.conda#5f0f24f8032c2c1bb33f59b75974f5fc
+https://conda.anaconda.org/conda-forge/noarch/roman-numerals-3.1.0-pyhd8ed1ab_0.conda#b272e95116c1449e584fb397e12bc3db
https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
https://conda.anaconda.org/conda-forge/noarch/snowballstemmer-3.0.1-pyhd8ed1ab_0.conda#755cf22df8693aa0d1aec1c123fa5863
https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jsmath-1.0.1-pyhd8ed1ab_1.conda#fa839b5ff59e192f411ccc7dae6588bb
-https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_2.conda#959484a66b4b76befcddc4fa97c95567
+https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhcf101f3_3.conda#de98449f11d48d4b52eefb354e2bfe35
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda#75cb7132eb58d97896e173ef12ac9986
https://conda.anaconda.org/conda-forge/noarch/babel-2.17.0-pyhd8ed1ab_0.conda#0a01c169f0ab0f91b26e77a3301fbfe4
-https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.11.0-2_h1ea3ea9_openblas.conda#7cee1860b6bf5a1deb8a62a6b2dfcfbd
-https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py311h03d9500_1.conda#3912e4373de46adafd8f1e97e4bd166b
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda#164fc43f0b53b6e3a7bc7dce5e4f1dc9
-https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhd8ed1ab_0.conda#446bd6c8cb26050d528881df495ce646
+https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda#04558c96691bed63104678757beb4f8d
https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
+https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.11.0-4_h6ae95b6_openblas.conda#91ee3fce1a4fb8495b9aa110de74d926
+https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py311h2e04523_0.conda#01da92ddaf561cabebd06019ae521510
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh8b19718_0.conda#c55515ca43c6444d2572e0f0d93cb6b9
https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda#5b8d21249ff20967101ffa321cab24e8
-https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py311h1e13796_1.conda#e1947291b713cb0afa949e1bcda1f935
-https://conda.anaconda.org/conda-forge/linux-64/blas-2.302-openblas.conda#fa34398c7f1c68bec5f00b0a841d2d05
+https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.11.0-4_h1ea3ea9_openblas.conda#b94457a746ba3bba8cc39881a18d6d41
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
-https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py311hed34c8f_1.conda#72e3452bf0ff08132e86de0272f2fbb0
+https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py311hed34c8f_2.conda#2366b5470cf61614c131e356efe9f74c
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
+https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py311h1e13796_1.conda#e1947291b713cb0afa949e1bcda1f935
+https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.0-pyhd8ed1ab_0.conda#de7372f43e63ff0876b4023b79b55e95
+https://conda.anaconda.org/conda-forge/linux-64/blas-2.304-openblas.conda#9f3df6e080be9558b0eced56c01b1ce5
https://conda.anaconda.org/conda-forge/linux-64/pyamg-5.3.0-py311h1d5f577_1.conda#65b9997185d6db9b8be75ccb11664de5
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
-https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py311haee01d2_1.conda#ca45bfd4871af957aaa5035593d5efd2
https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda#8375cfbda7c57fbceeda18229be10417
-https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda#436c165519e140cb08d246a4472a9d6a
https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda#db0c6b99149880c8ba515cf4abe93ee4
https://conda.anaconda.org/conda-forge/noarch/numpydoc-1.8.0-pyhd8ed1ab_1.conda#5af206d64d18d6c8dfb3122b4d9e643b
https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-applehelp-2.0.0-pyhd8ed1ab_1.conda#16e3f039c0aa6446513e94ab18a8784b
https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-devhelp-2.0.0-pyhd8ed1ab_1.conda#910f28a05c178feba832f842155cbfff
https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-htmlhelp-2.1.0-pyhd8ed1ab_1.conda#e9fb3fe8a5b758b4aff187d434f94f03
https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-qthelp-2.0.0-pyhd8ed1ab_1.conda#00534ebcc0375929b45c3039b5ba7636
-https://conda.anaconda.org/conda-forge/noarch/sphinx-8.2.3-pyhd8ed1ab_0.conda#f7af826063ed569bb13f7207d6f949b0
+https://conda.anaconda.org/conda-forge/noarch/sphinx-9.0.4-pyhd8ed1ab_0.conda#950eae33376107d143a529d48c363832
https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-serializinghtml-1.1.10-pyhd8ed1ab_1.conda#3bc61f7161d28137797e038263c04c54
diff --git a/build_tools/azure/pymin_conda_forge_openblas_win-64_conda.lock b/build_tools/azure/pymin_conda_forge_openblas_win-64_conda.lock
index 507b357f67636..f510d9a52f8a8 100644
--- a/build_tools/azure/pymin_conda_forge_openblas_win-64_conda.lock
+++ b/build_tools/azure/pymin_conda_forge_openblas_win-64_conda.lock
@@ -14,7 +14,7 @@ https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.con
https://conda.anaconda.org/conda-forge/win-64/libwinpthread-12.0.0.r4.gg4f2fc60ca-h57928b3_10.conda#8a86073cf3b343b87d03f41790d8b4e5
https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_32.conda#58f67b437acbf2764317ba273d731f1d
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2#fee5683a3f04bd15cbd8318b096a27ab
-https://conda.anaconda.org/conda-forge/win-64/libgomp-15.2.0-h1383e82_7.conda#7f970a7f9801622add7746aa3cbc24d5
+https://conda.anaconda.org/conda-forge/win-64/libgomp-15.2.0-h8ee18e1_15.conda#18713a6d90ce576053ac3ce9f792fe14
https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_32.conda#378d5dcec45eaea8d303da6f00447ac0
https://conda.anaconda.org/conda-forge/win-64/_openmp_mutex-4.5-2_gnu.conda#37e16618af5c4851a3f3d66dd0e11141
https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h2b53caa_32.conda#ef02bbe151253a72b8eda264a935db66
@@ -23,16 +23,16 @@ https://conda.anaconda.org/conda-forge/win-64/double-conversion-3.3.1-he0c23c2_0
https://conda.anaconda.org/conda-forge/win-64/graphite2-1.3.14-hac47afa_2.conda#b785694dd3ec77a011ccf0c24725382b
https://conda.anaconda.org/conda-forge/win-64/icu-75.1-he0c23c2_0.conda#8579b6bb8d18be7c0b27fb08adeeeb40
https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h6470a55_1.conda#c1b81da6d29a14b542da14a36c9fbf3f
-https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.2.0-hc82b238_0.conda#a5607006c2135402ca3bb96ff9b87896
+https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.2.0-hfd05255_1.conda#444b0a45bbd1cb24f82eedb56721b9c4
https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.25-h51727cc_0.conda#e77030e67343e28b084fabd7db0ce43e
https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda#8c9e4f1a0e688eef2e95711178061a0f
https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h52bdfb6_0.conda#ba4ad812d2afc22b9a34ce8327a0930f
-https://conda.anaconda.org/conda-forge/win-64/libgcc-15.2.0-h1383e82_7.conda#926a82fc4fa5b284b1ca1fb74f20dee2
+https://conda.anaconda.org/conda-forge/win-64/libgcc-15.2.0-h8ee18e1_15.conda#e05ab7ace69b10ae32f8a710a5971f4f
https://conda.anaconda.org/conda-forge/win-64/libiconv-1.18-hc1393d2_2.conda#64571d1dd6cdcfa25d0664a5950fdaa2
https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.2-hfd05255_0.conda#56a686f92ac0273c0f6af58858a3f013
https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda#c15148b2e18da456f5108ccb5e411446
https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.30-pthreads_h877e47f_4.conda#f551f8ae0ae6535be1ffde181f9377f3
-https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.0-hf5d6505_0.conda#d2c9300ebd2848862929b18c264d1b1e
+https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.1-hf5d6505_0.conda#f92bef2f8e523bb0eabe60099683617a
https://conda.anaconda.org/conda-forge/win-64/libvulkan-loader-1.4.328.1-h477610d_0.conda#4403eae6c81f448d63a7f66c0b330536
https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.6.0-h4d5522a_0.conda#f9bbae5e2537e3b06e0f7310ba76c893
https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda#41fbfac52c601159df6c01f875de31b9
@@ -41,13 +41,13 @@ https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.0-h725018a_0.conda#84f
https://conda.anaconda.org/conda-forge/win-64/pixman-0.46.4-h5112557_1.conda#08c8fa3b419df480d985e304f7884d35
https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-hc790b64_5.conda#854fbdff64b572b5c0b470f334d34c11
https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h2c6b04d_3.conda#7cb36e506a7dba4817970f8adb6396f9
-https://conda.anaconda.org/conda-forge/win-64/zlib-ng-2.2.5-h32d8bfd_0.conda#dec092b1a069abafc38655ded65a7b29
+https://conda.anaconda.org/conda-forge/win-64/zlib-ng-2.3.2-h5112557_0.conda#2b4f8712b09b5fd3182cda872ce8482c
https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda#31aec030344e962fbd7dbbbbd68e60a9
-https://conda.anaconda.org/conda-forge/win-64/libblas-3.11.0-2_h0adab6e_openblas.conda#95fa206f4ffdc2993fa6a48b07b4c77d
-https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.2.0-h431afc6_0.conda#edc47a5d0ec6d95efefab3e99d0f4df0
-https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.2.0-ha521d6b_0.conda#f780291507a3f91d93a7147daea082f8
+https://conda.anaconda.org/conda-forge/win-64/libblas-3.11.0-4_h0adab6e_openblas.conda#1e44e1899ea86037873e65de3f5c19c5
+https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.2.0-hfd05255_1.conda#450e3ae947fc46b60f1d8f8f318b40d4
+https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.2.0-hfd05255_1.conda#ccd93cfa8e54fd9df4e83dbe55ff6e8c
https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_3.conda#2cf0cf76cc15d360dfa2f17fd6cf9772
-https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.51-h7351971_0.conda#5b98079b7e86c25c7e70ed7fd7da7da5
+https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.53-h7351971_0.conda#fb6f43f6f08ca100cb24cff125ab0d9e
https://conda.anaconda.org/conda-forge/win-64/libxml2-16-2.15.1-h06f855e_0.conda#4a5ea6ec2055ab0dfd09fd0c498f834a
https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.30-pthreads_h4a7f399_4.conda#482e61f83248a880d180629bf8ed36b2
https://conda.anaconda.org/conda-forge/win-64/pcre2-10.46-h3402e2f_0.conda#889053e920d15353c2665fa6310d7a7a
@@ -55,59 +55,59 @@ https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-h0e40799_1002.co
https://conda.anaconda.org/conda-forge/win-64/python-3.11.14-h0159041_2_cpython.conda#02a9ba5950d8b78e6c9862d6ba7a5045
https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.12-hba3369d_1.conda#8436cab9a76015dfe7208d3c9f97c156
https://conda.anaconda.org/conda-forge/win-64/xorg-libxdmcp-1.1.5-hba3369d_1.conda#a7c03e38aa9c0e84d41881b9236eacfb
-https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-hbeecb71_2.conda#21f56217d6125fb30c3c3f10c786d751
-https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.2.0-h6910e44_0.conda#c3a73d78af195cb2621e9e16426f7bba
+https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda#053b84beec00b71ea8ff7a4f84b55207
+https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.2.0-hfd05255_1.conda#6abd7089eb3f0c790235fe469558d190
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833
-https://conda.anaconda.org/conda-forge/win-64/cython-3.2.1-py311h9990397_0.conda#012d47877f130af0cf3434dbda810e96
+https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhcf101f3_2.conda#4c2a8fef270f6c69591889b93f9f55c1
+https://conda.anaconda.org/conda-forge/win-64/cython-3.2.2-py311h9990397_0.conda#c146d51910e29a6d6060ecf84ba7978d
https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.9-py311h275cad7_2.conda#e9eb24a8d111be48179bf82a9e0e13ca
-https://conda.anaconda.org/conda-forge/win-64/libcblas-3.11.0-2_h2a8eebe_openblas.conda#ffc9f6913d7436e558b9d85a1c380591
-https://conda.anaconda.org/conda-forge/win-64/libclang13-21.1.6-default_ha2db4b5_0.conda#32b0f9f52f859396db50d738d50b4a82
+https://conda.anaconda.org/conda-forge/win-64/libcblas-3.11.0-4_h2a8eebe_openblas.conda#464b3434e245c2967c0e226f1611f6f9
+https://conda.anaconda.org/conda-forge/win-64/libclang13-21.1.7-default_ha2db4b5_1.conda#065bcc5d1a29de06d4566b7b9ac89882
https://conda.anaconda.org/conda-forge/win-64/libfreetype6-2.14.1-hdbac1cb_0.conda#6e7c5c5ab485057b5d07fd8188ba5c28
https://conda.anaconda.org/conda-forge/win-64/libglib-2.86.2-hd9c3897_0.conda#fbd144e60009d93f129f0014a76512d3
-https://conda.anaconda.org/conda-forge/win-64/liblapack-3.11.0-2_hd232482_openblas.conda#b42a971e4cef38ee91a7a42cdb224be4
+https://conda.anaconda.org/conda-forge/win-64/liblapack-3.11.0-4_hd232482_openblas.conda#808ae0372f0b1495c41a1ce2064f291f
https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h8f73337_1.conda#549845d5133100142452812feb9ba2e8
https://conda.anaconda.org/conda-forge/win-64/libxcb-1.17.0-h0e4246c_0.conda#a69bbf778a462da324489976c84cfc8c
https://conda.anaconda.org/conda-forge/win-64/libxml2-2.15.1-ha29bfb0_0.conda#87116b9de9c1825c3fd4ef92c984877b
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda#6c8979be6d7a17692793114fa26916e8
https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
-https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda#00d80af3a7bf27729484e786a68aafff
+https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda#d0fc809fa4c4d85e959ce4ab6e1de800
https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
https://conda.anaconda.org/conda-forge/win-64/tornado-6.5.2-py311h3485c13_2.conda#56b468f7a48593bc555c35e4a610d1f2
https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
https://conda.anaconda.org/conda-forge/win-64/unicodedata2-17.0.0-py311h3485c13_1.conda#a30a6a70ab7754dbf0b06fe1a96af9cb
https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda#75cb7132eb58d97896e173ef12ac9986
-https://conda.anaconda.org/conda-forge/win-64/brotli-1.2.0-h17ff524_0.conda#60c575ea855a6aa03393aa3be2af0414
+https://conda.anaconda.org/conda-forge/win-64/brotli-1.2.0-h2d644bc_1.conda#bc58fdbced45bb096364de0fba1637af
https://conda.anaconda.org/conda-forge/win-64/coverage-7.12.0-py311h3f79411_0.conda#5eb14cad407cb102cc678fcaba4b0ee3
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
https://conda.anaconda.org/conda-forge/win-64/lcms2-2.17-hbcf6048_0.conda#3538827f77b82a837fa681a4579e37a1
https://conda.anaconda.org/conda-forge/win-64/libfreetype-2.14.1-h57928b3_0.conda#3235024fe48d4087721797ebd6c9d28c
-https://conda.anaconda.org/conda-forge/win-64/liblapacke-3.11.0-2_hbb0e6ff_openblas.conda#d0bc7a5338ff7d95e210a3f7e1264ed9
+https://conda.anaconda.org/conda-forge/win-64/liblapacke-3.11.0-4_hbb0e6ff_openblas.conda#cf28f3b4945a9b76dbb64c60d534d7b7
https://conda.anaconda.org/conda-forge/win-64/libxslt-1.1.43-h0fbe4c1_1.conda#46034d9d983edc21e84c0b36f1b4ba61
https://conda.anaconda.org/conda-forge/win-64/numpy-2.3.5-py311h80b3fa1_0.conda#1e0fb210584b09130000c4404b77f0f6
https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.4-h24db6dd_0.conda#5af852046226bb3cb15c7f61c2ac020a
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh8b19718_0.conda#c55515ca43c6444d2572e0f0d93cb6b9
https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda#5b8d21249ff20967101ffa321cab24e8
-https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.11.0-2_ha590de0_openblas.conda#2faff8da7caa95fedbebd4029c815910
+https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.11.0-4_ha590de0_openblas.conda#e3e893858dd88ee0351f1a5b9cb140f3
https://conda.anaconda.org/conda-forge/win-64/contourpy-1.3.3-py311h3fd045d_3.conda#5e7e380c470e9f4683b3129fedafbcdf
-https://conda.anaconda.org/conda-forge/win-64/fonttools-4.60.1-py311h3f79411_0.conda#00f530a3767510908b89b6c0f2698479
+https://conda.anaconda.org/conda-forge/win-64/fonttools-4.61.0-py311h3f79411_0.conda#448f4a9f042eec9a840e3a0090e9a6d8
https://conda.anaconda.org/conda-forge/win-64/freetype-2.14.1-h57928b3_0.conda#d69c21967f35eb2ce7f1f85d6b6022d3
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
-https://conda.anaconda.org/conda-forge/win-64/pillow-12.0.0-py311hf7ee305_0.conda#c1e7a1806f85aac047cbadd6d4dfae41
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
+https://conda.anaconda.org/conda-forge/win-64/pillow-12.0.0-py311h17b8079_2.conda#a80f6ec79f4ea2bf7572f4f8e8b467f7
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
https://conda.anaconda.org/conda-forge/win-64/scipy-1.16.3-py311hf127856_1.conda#48d562b3a3fb120d7c3f5e6af6d4b3e9
-https://conda.anaconda.org/conda-forge/win-64/blas-2.302-openblas.conda#9a3d6e4359ba0ce36b6dea7b6c32bd94
+https://conda.anaconda.org/conda-forge/win-64/blas-2.304-openblas.conda#a17d4405929291b138f4fb3068b44b2a
https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.15.0-h765892d_1.conda#9bb0026a2131b09404c59c4290c697cd
https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.10.8-py311h1675fdf_0.conda#57671b98b86015c8b28551cdb09ee294
https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda#50d191b852fccb4bf9ab7b59b030c99d
diff --git a/build_tools/azure/ubuntu_atlas_lock.txt b/build_tools/azure/ubuntu_atlas_lock.txt
index 6db4c2cd12771..b7e46d69c03b0 100644
--- a/build_tools/azure/ubuntu_atlas_lock.txt
+++ b/build_tools/azure/ubuntu_atlas_lock.txt
@@ -12,7 +12,7 @@ iniconfig==2.3.0
# via pytest
joblib==1.3.0
# via -r build_tools/azure/ubuntu_atlas_requirements.txt
-meson==1.9.1
+meson==1.9.2
# via meson-python
meson-python==0.18.0
# via -r build_tools/azure/ubuntu_atlas_requirements.txt
@@ -29,7 +29,7 @@ pygments==2.19.2
# via pytest
pyproject-metadata==0.10.0
# via meson-python
-pytest==9.0.1
+pytest==9.0.2
# via
# -r build_tools/azure/ubuntu_atlas_requirements.txt
# pytest-xdist
diff --git a/build_tools/circle/doc_linux-64_conda.lock b/build_tools/circle/doc_linux-64_conda.lock
index 7aa32a4589b35..5776d859d9d67 100644
--- a/build_tools/circle/doc_linux-64_conda.lock
+++ b/build_tools/circle/doc_linux-64_conda.lock
@@ -2,48 +2,43 @@
# platform: linux-64
# input_hash: ca6b5567d8c939295b5b4408ecaa611380022818d7f626c2732e529c500271e7
@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/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2#0c96522c6bdaed4b1566d11387caaf45
https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2#34893075a5c9e55cdafac56607368fc6
https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2#4d59c254e01d9cde7957100457e2d5fb
https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.conda#49023d73832ef61042f6a237cb2687e7
https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-4.18.0-he073ed8_8.conda#ff007ab0f0fdc53d245972bba8a6d40c
-https://conda.anaconda.org/conda-forge/linux-64/mkl-include-2025.3.0-hf2ce2f3_462.conda#0ec3505e9b16acc124d1ec6e5ae8207c
https://conda.anaconda.org/conda-forge/noarch/python_abi-3.11-8_cp311.conda#8fcb6b0e2161850556231336dae58358
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda#a7970cd949a077b7cb9696379d338681
-https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-bootstrap_ha15bf96_3.conda#3036ca5b895b7f5146c5a25486234a68
-https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-14.3.0-h85bb3a7_107.conda#84915638a998fae4d495fa038683a73e
+https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-14.3.0-hf649bbc_115.conda#eedcd688f597873e1d16f0529f4d6d10
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.2.0-h767d61c_7.conda#f7b4d76975aac7e5d9e6ad13845f92fe
-https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-14.3.0-h85bb3a7_107.conda#eaf0f047b048c4d86a4b8c60c0e95f38
-https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-21.1.6-h4922eb0_0.conda#7a0b9ce502e0ed62195e02891dfcd704
+https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_15.conda#a90d6983da0757f4c09bb8fcfaf34e71
+https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-14.3.0-h9f08a49_115.conda#1ef1a0376c610365eb26e67f5da5e48d
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-6_kmp_llvm.conda#197811678264cb9da0d2ea0726a70661
-https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45-bootstrap_h59bd682_3.conda#5f1f949fc9c875458b5bc02a0c856f18
+https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2#73aaf86a425cc6e73fcf236a5a46396d
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2#fee5683a3f04bd15cbd8318b096a27ab
https://conda.anaconda.org/conda-forge/linux-64/libegl-1.7.0-ha4b6fd6_2.conda#c151d5eb730e9b7480e6d48c0fc44048
https://conda.anaconda.org/conda-forge/linux-64/libopengl-1.7.0-ha4b6fd6_2.conda#7df50d44d4a14d6c31a2c54f2cd92157
-https://conda.anaconda.org/conda-forge/linux-64/binutils-2.45-bootstrap_h8a22499_3.conda#e39cc547941ee90dd512bfbe3d2a02d7
-https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-64-2.45-bootstrap_h8a22499_3.conda#c990e32bb7fce8b93d78b67f5eb26117
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_7.conda#c0374badb3a5d4b1372db28d19462c53
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_15.conda#a5d86b0496174a412d531eac03af9174
https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.14-hb9d3cd8_0.conda#76df83c2a9035c54df5d04ff81bcc02d
https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda#51a19bba1b8ebfb60df25cde030b7ebc
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.2.0-h09219d5_0.conda#9b3117ec960b823815b02190b41c0484
+https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda#72c8fd1af66bd67bf580645b426513ed
https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda#6c77a605a7a689d17d4819c0f8ac9a00
https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda#8b09ae86839581147ef2e5c5e229d164
https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda#35f29eec58405aaf55e01cb470d8c26a
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda#280ea6eee9e2ddefde25ff799c4f0363
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_7.conda#f116940d825ffc9104400f0d7f1a4551
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_15.conda#7b742943660c5173bb6a5c823021c9a0
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_15.conda#356b7358fcd6df32ad50d07cdfadd27d
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.2-hb03c661_0.conda#8397539e3a0bbd1695584fb4f927485a
https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc
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/libpciaccess-0.18-hb9d3cd8_0.conda#70e3400cbbfa03e96dcde7fc13e38c7b
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda#5b767048b1b3ee9a954b06f4084f93dc
-https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda#80c07c68d2f6870250959dcc95b209d1
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_15.conda#fccfb26375ec5e4a2192dee6604b6d02
+https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-h5347b49_1.conda#41f5c09a211985c3ce642d60721e7c3e
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/ncurses-6.5-h2d0b736_3.conda#47e340acb35de30501a76c7c799c41d7
@@ -61,16 +56,17 @@ https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.14-hecca717_2.cond
https://conda.anaconda.org/conda-forge/linux-64/jxrlib-1.1-hd590300_3.conda#5aeabe88534ea4169d4c49998f293d6c
https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda#9344155d33912347b37f0ae6c410a835
https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.4-h3f801dc_0.conda#01ba04e414e47f95c03d6ddd81fd37be
-https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hd53d788_0.conda#c183787d2b228775dece45842abbbe53
-https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.2.0-h02bd7ab_0.conda#b7a924e3e9ebc7938ffc7d94fe603ed3
+https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hb03c661_1.conda#366b40a69f0ad6072561c1d09301c886
+https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.2.0-hb03c661_1.conda#4ffbb341c8b616aa2494b6afb26a0c5f
https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.125-hb03c661_1.conda#9314bc5a1fe7d1044dc9dfd3ef400535
https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda#c277e0a4d549b03ac1e9d6cbbe3d017b
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_7.conda#8621a450add4e231f676646880703f49
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_15.conda#7deffdc77cda3d2bbc9c558efa33d3ed
https://conda.anaconda.org/conda-forge/linux-64/libhwy-1.3.0-h4c17acf_1.conda#c2a0c1d0120520e979685034e0b79859
-https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.51-h421ea60_0.conda#d8b81203d08435eb999baa249427884e
-https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.3.0-hd08acf3_7.conda#716f4c96e07207d74e635c915b8b3f8b
+https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.53-h421ea60_0.conda#00d4e66b1f746cb14944cad23fffb405
+https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.3.0-h8f1669f_15.conda#9e82f96224931323c6ed53d88fb3241b
https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.20-h4ab18f5_0.conda#a587892d3c13b6621a6091be690dbca2
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda#f627678cf829bd70bccf141a19c3ad3e
+https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda#2e1b84d273b01835256e53fd938de355
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_15.conda#20a8584ff8677ac9d724345b9d4eb757
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/lz4-c-1.10.0-h5888daf_1.conda#9de5350a85c4a20c685259b889aa6393
@@ -84,20 +80,21 @@ https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.con
https://conda.anaconda.org/conda-forge/linux-64/wayland-1.24.0-hd6090a7_1.conda#035da2e4f5770f036ff704fa17aace24
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/zfp-1.0.1-h909a3a2_3.conda#03b04e4effefa41aee638f8ba30a6e78
-https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.2.5-hde8ca8f_0.conda#1920c3502e7f6688d650ab81cd3775fd
-https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda#6432cb5d4ac0046c3ac0a8a0f95842f9
+https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.3.2-h54a6638_0.conda#0faadd01896315ceea58bcc3479b1d21
+https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda#4a13eeac0b5c8e5b8ab496e6c4ddd829
https://conda.anaconda.org/conda-forge/linux-64/aom-3.9.1-hac33072_0.conda#346722a0be40f6edc53f12640d301338
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.2.0-hf2c8021_0.conda#5304333319a6124a2737d9f128cbc4ed
+https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.2.0-hb03c661_1.conda#af39b9a8711d4a8d437b52c1d78eb6a1
https://conda.anaconda.org/conda-forge/linux-64/brunsli-0.1-hd1e3526_2.conda#5948f4fead433c6e5c46444dbfb01162
-https://conda.anaconda.org/conda-forge/linux-64/c-blosc2-2.22.0-h4cfbee9_0.conda#bede98a38485d588b3ec7e4ba2e46532
+https://conda.anaconda.org/conda-forge/linux-64/c-blosc2-2.22.0-hc31b594_1.conda#52019609422a72ec80c32bbc16a889d8
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-14.3.0-hd9e9e21_7.conda#54876317578ad4bf695aad97ff8398d9
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/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda#a6abd2796fc332536735f68ba23f7901
https://conda.anaconda.org/conda-forge/linux-64/libfreetype6-2.14.1-h73754d4_0.conda#8e7251989bca326a28f4a5ffbd74557a
https://conda.anaconda.org/conda-forge/linux-64/libglib-2.86.2-h32235b2_0.conda#0cb0612bc9cb30c62baf41f9d600611b
https://conda.anaconda.org/conda-forge/linux-64/libjxl-0.11.1-hf08fa70_5.conda#82954a6f42e3fba59628741dca105c98
+https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_4.conda#be43915efc66345cccb3c310b6ed0374
https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda#cd5a90476766d53e901500df9215e927
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/qhull-2020.2-h434a139_5.conda#353823361b1d27eb3960efb076dfcaf6
@@ -106,88 +103,72 @@ https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.1-hb711507_
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.10-hb711507_0.conda#0e0cbe0564d03a99afd5fd7b362feecd
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.2-hb711507_0.conda#608e0ef8256b81d04456e8d211eee3e8
https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.12-h4f16b4b_0.conda#db038ce880f100acc74dba10302b5630
-https://conda.anaconda.org/conda-forge/linux-64/brotli-1.2.0-h41a2e66_0.conda#4ddfd44e473c676cb8e80548ba4aa704
-https://conda.anaconda.org/conda-forge/linux-64/conda-gcc-specs-14.3.0-hb991d5c_7.conda#39586596e88259bae48f904fb1025b77
+https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45-default_hfdba357_104.conda#a7a67bf132a4a2dea92a7cb498cdc5b1
+https://conda.anaconda.org/conda-forge/linux-64/brotli-1.2.0-hed03a55_1.conda#8ccf913aaba749a5496c17629d859ed1
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/dbus-1.16.2-h3c4dab8_0.conda#679616eb5ad4e521c83da4650860aba7
-https://conda.anaconda.org/conda-forge/linux-64/gcc_linux-64-14.3.0-h298d278_14.conda#fe0c2ac970a0b10835f3432a3dfd4542
-https://conda.anaconda.org/conda-forge/linux-64/gfortran_impl_linux-64-14.3.0-h7db7018_7.conda#a68add92b710d3139b46f46a27d06c80
-https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-14.3.0-he663afc_7.conda#2700e7aad63bca8c26c2042a6a7214d6
+https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h24cb091_1.conda#ce96f2f470d39bd96ce03945af92e280
https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.17-h717163a_0.conda#000e85703f0fd9594c81710dd5066471
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.11.0-4_h4a7cf45_openblas.conda#14ff9fdfbd8bd590fca383b995470711
https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-hb8b1518_5.conda#d4a250da4737ee127fb1fa6452a9002e
https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.1-ha770c72_0.conda#f4084e4e6577797150f9b04a4560ceb0
https://conda.anaconda.org/conda-forge/linux-64/libglx-1.7.0-ha4b6fd6_2.conda#c8013e438185f33b13814c5c488acd5c
-https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.0-hee844dc_0.conda#729a572a3ebb8c43933b30edcc628ceb
https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.1-ha9997c6_0.conda#e7733bc6785ec009e47a224a71917e84
+https://conda.anaconda.org/conda-forge/linux-64/openblas-0.3.30-pthreads_h6ec200e_4.conda#379ec5261b0b8fc54f2e7bd055360b0c
https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.4-h55fea9a_0.conda#11b3379b191f63139e29c0d19dee24cd
+https://conda.anaconda.org/conda-forge/linux-64/python-3.11.14-hd63d673_2_cpython.conda#c4202a55b4486314fbb8c11bc43a29a0
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-hb711507_2.conda#a0901183f08b6c7107aab109733a3c91
https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.46-hb03c661_0.conda#71ae752a748962161b4740eaff510258
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.6-hb9d3cd8_0.conda#febbab7d15033c913d53c7a2c102309d
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxfixes-6.0.2-hb03c661_0.conda#ba231da7fccf9ea1e768caf5c7099b84
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/zeromq-4.3.5-h387f397_9.conda#8035e5b54c08429354d5d64027041cad
-https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.1-ha770c72_0.conda#4afc585cd97ba8a23809406cd8a9eda8
-https://conda.anaconda.org/conda-forge/linux-64/gcc-14.3.0-h76bdaa0_7.conda#cd5d2db69849f2fc7b592daf86c3015a
-https://conda.anaconda.org/conda-forge/linux-64/gfortran_linux-64-14.3.0-h1e4d427_14.conda#5d81121caf70d8799d90dabbf98e5d3d
-https://conda.anaconda.org/conda-forge/linux-64/gxx_linux-64-14.3.0-hc876b51_14.conda#1852de0052b0d6af4294b3ae25a4a450
-https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda#928b8be80851f5d8ffb016f9c81dae7a
-https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.1-h26afc86_0.conda#e512be7dc1f84966d50959e900ca121f
-https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878
-https://conda.anaconda.org/conda-forge/linux-64/python-3.11.14-hd63d673_2_cpython.conda#c4202a55b4486314fbb8c11bc43a29a0
-https://conda.anaconda.org/conda-forge/linux-64/xcb-util-cursor-0.1.6-hb03c661_0.conda#4d1fc190b99912ed557a8236e958c559
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.6-hb9d3cd8_2.conda#d3c295b50f092ab525ffe3c2aa4b7413
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcursor-1.2.3-hb9d3cd8_0.conda#2ccd714aa2242315acaf0a67faea780b
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda#b5fcc7172d22516e1f965490e65e33a4
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxi-1.8.2-hb9d3cd8_0.conda#17dcc85db3c7886650b8908b183d6876
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrandr-1.5.4-hb9d3cd8_0.conda#2de7f99d6581a4a7adbff607b5c278ca
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.6-hb9d3cd8_0.conda#5efa5fa6243a622445fdfd72aee15efa
https://conda.anaconda.org/conda-forge/noarch/alabaster-1.0.0-pyhd8ed1ab_1.conda#1fd9696649f65fd6611fcdb4ffec738a
-https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda#c7944d55af26b6d2d7629e27e9a972c1
-https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py311h7c6b74e_0.conda#645bc783bc723d67a294a51bc860762d
-https://conda.anaconda.org/conda-forge/linux-64/c-compiler-1.11.0-h4d9bdce_0.conda#abd85120de1187b0d1ec305c2173c71b
+https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda#537296d57ea995666c68c821b00e360b
+https://conda.anaconda.org/conda-forge/linux-64/backports.zstd-1.2.0-py311h6b1f9c4_0.conda#596b9cc36b7af0640825b399e6b11ccc
+https://conda.anaconda.org/conda-forge/linux-64/binutils-2.45-default_h4852527_104.conda#d351e4894d6c4d9d8775bf169a97089d
+https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-64-2.45-default_h4852527_104.conda#e30e71d685e23cc1e5ac1c1990ba1f81
+https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py311h66f275b_1.conda#86daecb8e4ed1042d5dc6efbe0152590
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.11.12-pyhd8ed1ab_0.conda#96a02a5c1a65470a7e4eedb644c872fd
https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda#a22d1fd9bf98827e280a02875d9a007a
-https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh707e725_0.conda#9ba00b39e03a0afb2b1cc0767d4c6175
+https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda#ea8a6c3256897cc31263de9f455e25d9
https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.1.2-pyhd8ed1ab_0.conda#fcac5929097ba1f2a0e5b6ecaa13b253
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
https://conda.anaconda.org/conda-forge/noarch/cpython-3.11.14-py311hd8ed1ab_2.conda#43ed151bed1a0eb7181d305fed7cf051
-https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833
-https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.1-py311h0daaf2c_0.conda#1be85c7845e9ba143f3cef9fd5780dc3
+https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhcf101f3_2.conda#4c2a8fef270f6c69591889b93f9f55c1
+https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.2-py311h0daaf2c_0.conda#93f275715239f0ad95343a75fb15dbd7
https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2#961b3a227b437d82ad7054484cfa71b2
https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_1.conda#24c1ca34138ee57de72a943237cde4cc
https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
-https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee
-https://conda.anaconda.org/conda-forge/linux-64/gfortran-14.3.0-he448592_7.conda#94394acdc56dcb4d55dddf0393134966
-https://conda.anaconda.org/conda-forge/linux-64/gxx-14.3.0-he448592_7.conda#91dc0abe7274ac5019deaa6100643265
+https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.1-ha770c72_0.conda#4afc585cd97ba8a23809406cd8a9eda8
+https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.3.0-h319ec69_15.conda#042695cf5fb55a63294f3575c33a468c
https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda#0a802cb9888dd14eeefc611f05c40b6e
https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda#8e6923fc12f1fe8f8c4e5c9f343256ac
https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda#53abe63df7e10a6ba605dc5f9f961d36
https://conda.anaconda.org/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2#7de5386c8fea29e76b303f37dde4c352
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
https://conda.anaconda.org/conda-forge/noarch/json5-0.12.1-pyhd8ed1ab_0.conda#0fc93f473c31a2f85c0bde213e7c63ca
-https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-3.0.0-py311h38be061_2.conda#5dd29601defbcc14ac6953d9504a80a7
+https://conda.anaconda.org/conda-forge/noarch/jsonpointer-3.0.0-pyhcf101f3_3.conda#cd2214824e36b0180141d422aba01938
https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py311h724c32c_2.conda#4089f739463c798e10d8644bc34e24de
https://conda.anaconda.org/conda-forge/noarch/lark-1.3.1-pyhd8ed1ab_0.conda#9b965c999135d43a3d0f7bd7d024e26a
-https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.12.1-default_h7f8ec31_1002.conda#c01021ae525a76fe62720c7346212d74
-https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.6-hf7376ad_0.conda#8aa154f30e0bc616cbde9794710e0be2
-https://conda.anaconda.org/conda-forge/linux-64/libpq-18.1-h5c52fec_1.conda#638350cf5da41f3651958876a2104992
-https://conda.anaconda.org/conda-forge/linux-64/libvulkan-loader-1.4.328.1-h5279c79_0.conda#372a62464d47d9e966b630ffae3abe73
-https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.0-hca5e8e5_0.conda#aa65b4add9574bb1d23c76560c5efd4c
-https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.43-h711ed8c_1.conda#87e6096ec6d542d1c1f8b33245fe8300
+https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-4_h0358290_openblas.conda#25f5e5af61cee1ffedd9b4c9947d3af8
+https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda#928b8be80851f5d8ffb016f9c81dae7a
+https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-4_h47877c9_openblas.conda#8ba8431802764597f400ee3e99026367
+https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.1-h26afc86_0.conda#e512be7dc1f84966d50959e900ca121f
https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py311h3778330_0.conda#0954f1a6a26df4a510b54f73b2a0345c
https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_1.conda#592132998493b3ff25fd7479396e8351
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
-https://conda.anaconda.org/conda-forge/noarch/narwhals-2.12.0-pyhcf101f3_0.conda#02cab382663872083b7e8675f09d9c21
-https://conda.anaconda.org/conda-forge/noarch/networkx-3.5-pyhe01879c_0.conda#16bff3d37a4f99e3aa089c36c2b8d650
+https://conda.anaconda.org/conda-forge/noarch/narwhals-2.13.0-pyhcf101f3_0.conda#0129bb97a81c2ca0f57031673424387a
+https://conda.anaconda.org/conda-forge/noarch/networkx-3.6-pyhcf101f3_0.conda#6725bfdf8ea7a8bf6415f096f3f1ffa5
+https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2#457c2c8c08e54905d6954e79cb5b5db9
-https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py311h07c5bb8_0.conda#51f505a537b2d216a1b36b823df80995
+https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py311hf88fc01_2.conda#79edb22fb652ee142099df18042ca8c0
https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.12.1.2-pyhd8ed1ab_0.conda#dc702b2fae7ebe770aff3c83adb16b63
-https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda#5c7a868f8241e64e1cf5fdf4962f23e2
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
+https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda#1bd2e65c8c7ef24f4639ae6e850dacc2
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.23.1-pyhd8ed1ab_0.conda#a1e91db2d17fd258c64921cb38e6745a
https://conda.anaconda.org/conda-forge/linux-64/psutil-7.1.3-py311haee01d2_0.conda#2092b7977bc8e05eb17a1048724593a4
https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd8ed1ab_1.conda#7d9daffbb8d8e0af0f769dbbcd173a54
@@ -203,15 +184,14 @@ https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py311h3778330_0.con
https://conda.anaconda.org/conda-forge/linux-64/pyzmq-27.1.0-py311h2315fbb_0.conda#6c87a0f4566469af3585b11d89163fd7
https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2#912a71cc01012ee38e6b90ddd561e36f
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.29.0-py311h902ca64_0.conda#9c57ad209dc7af39ada3b571202daf8d
+https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.30.0-py311h902ca64_0.conda#3893f7b40738f9fe87510cb4468cdda5
https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.3-pyh0d859eb_1.conda#938c8de6b9de091997145b3bf25cdbf9
https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
-https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_2.conda#03fe290994c5e4ec17293cfb6bdce520
https://conda.anaconda.org/conda-forge/noarch/snowballstemmer-3.0.1-pyhd8ed1ab_0.conda#755cf22df8693aa0d1aec1c123fa5863
https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.8-pyhd8ed1ab_0.conda#18c019ccf43769d211f2cf78e9ad46c2
https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jsmath-1.0.1-pyhd8ed1ab_1.conda#fa839b5ff59e192f411ccc7dae6588bb
-https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_2.conda#959484a66b4b76befcddc4fa97c95567
+https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhcf101f3_3.conda#de98449f11d48d4b52eefb354e2bfe35
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py311h49ec1c0_2.conda#8d7a63fc9653ed0bdc253a51d9a5c371
@@ -224,30 +204,43 @@ https://conda.anaconda.org/conda-forge/noarch/webcolors-25.10.0-pyhd8ed1ab_0.con
https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_3.conda#2841eb5bfc75ce15e9a0054b98dcd64d
https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.9.0-pyhd8ed1ab_0.conda#2f1ed718fcd829c184a6d4f0f2e07409
https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda#75cb7132eb58d97896e173ef12ac9986
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxtst-1.2.5-hb9d3cd8_3.conda#7bbe9a0cc0df0ac5f5a8ad6d6a11af2f
-https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhd8ed1ab_0.conda#df5e78d904988eb55042c0c97446079f
+https://conda.anaconda.org/conda-forge/linux-64/xcb-util-cursor-0.1.6-hb03c661_0.conda#4d1fc190b99912ed557a8236e958c559
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.6-hb9d3cd8_2.conda#d3c295b50f092ab525ffe3c2aa4b7413
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcursor-1.2.3-hb9d3cd8_0.conda#2ccd714aa2242315acaf0a67faea780b
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda#b5fcc7172d22516e1f965490e65e33a4
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxi-1.8.2-hb9d3cd8_0.conda#17dcc85db3c7886650b8908b183d6876
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrandr-1.5.4-hb9d3cd8_0.conda#2de7f99d6581a4a7adbff607b5c278ca
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.6-hb9d3cd8_0.conda#5efa5fa6243a622445fdfd72aee15efa
+https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhcf101f3_1.conda#30cd29cb87d819caead4d55184c1d115
https://conda.anaconda.org/conda-forge/noarch/accessible-pygments-0.0.5-pyhd8ed1ab_1.conda#74ac5069774cdbc53910ec4d631a3999
https://conda.anaconda.org/conda-forge/noarch/babel-2.17.0-pyhd8ed1ab_0.conda#0a01c169f0ab0f91b26e77a3301fbfe4
https://conda.anaconda.org/conda-forge/noarch/bleach-6.3.0-pyhcf101f3_0.conda#b1a27250d70881943cca0dd6b4ba0956
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/cairo-1.18.4-h3394656_0.conda#09262e66b19567aff4f592fb53b28760
https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py311h03d9500_1.conda#3912e4373de46adafd8f1e97e4bd166b
-https://conda.anaconda.org/conda-forge/linux-64/cxx-compiler-1.11.0-hfcd1e18_0.conda#5da8c935dca9186673987f79cef0b2a5
+https://conda.anaconda.org/conda-forge/linux-64/conda-gcc-specs-14.3.0-he8ccf15_15.conda#93b9b94788b52e6f79cf6ae88de40c76
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
-https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.60.1-py311h3778330_0.conda#91f834f85ac92978cfc3c1c178573e85
-https://conda.anaconda.org/conda-forge/linux-64/fortran-compiler-1.11.0-h9bea470_0.conda#d5596f445a1273ddc5ea68864c01b69f
+https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee
+https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.61.0-py311h3778330_0.conda#f5ee391df23b7f50676ebe79fc53ee03
+https://conda.anaconda.org/conda-forge/linux-64/gcc_linux-64-14.3.0-h298d278_14.conda#fe0c2ac970a0b10835f3432a3dfd4542
+https://conda.anaconda.org/conda-forge/linux-64/gfortran_impl_linux-64-14.3.0-h1a219da_15.conda#d10648cffe3cdacded77f7fdeacfb8f0
+https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-14.3.0-h2185e75_15.conda#a27be47954f8b96b0e4c383632bc80f9
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/importlib_resources-6.5.2-pyhd8ed1ab_0.conda#c85c76dc67d75619a92f51dfbce06992
-https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhd8ed1ab_0.conda#446bd6c8cb26050d528881df495ce646
+https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda#04558c96691bed63104678757beb4f8d
https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
https://conda.anaconda.org/conda-forge/noarch/jupyter_core-5.9.1-pyhc90fa1f_0.conda#b38fe4e78ee75def7e599843ef4c1ab0
https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_2.conda#fd312693df06da3578383232528c468d
-https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.6-default_h99862b1_0.conda#0fcc9b4d3fc5e5010a7098318d9b7971
-https://conda.anaconda.org/conda-forge/linux-64/libclang13-21.1.6-default_h746c552_0.conda#f5b64315835b284c7eb5332202b1e14b
+https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.11.0-4_h6ae95b6_openblas.conda#91ee3fce1a4fb8495b9aa110de74d926
+https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.7-hf7376ad_0.conda#27dc1a582b442f24979f2a28641fe478
+https://conda.anaconda.org/conda-forge/linux-64/libpq-18.1-h5c52fec_2.conda#a8ac9a6342569d1714ae1b53ae2fcadb
+https://conda.anaconda.org/conda-forge/linux-64/libvulkan-loader-1.4.328.1-h5279c79_0.conda#372a62464d47d9e966b630ffae3abe73
+https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.1-hca5e8e5_0.conda#2bca1fbb221d9c3c8e3a155784bbc2e9
+https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.43-h711ed8c_1.conda#87e6096ec6d542d1c1f8b33245fe8300
https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-4.0.0-pyhd8ed1ab_0.conda#5b5203189eb668f042ac2b0826244964
-https://conda.anaconda.org/conda-forge/noarch/memory_profiler-0.61.0-pyhd8ed1ab_1.conda#71abbefb6f3b95e1668cd5e0af3affb9
+https://conda.anaconda.org/conda-forge/noarch/memory_profiler-0.61.0-pyhcf101f3_1.conda#e1bccffd88819e75729412799824e270
https://conda.anaconda.org/conda-forge/noarch/mistune-3.1.4-pyhcf101f3_0.conda#f5a4d548d1d3bdd517260409fc21e205
+https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py311h2e04523_0.conda#01da92ddaf561cabebd06019ae521510
https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_1.conda#e51f1e4089cad105b6cac64bd8166587
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh8b19718_0.conda#c55515ca43c6444d2572e0f0d93cb6b9
https://conda.anaconda.org/conda-forge/noarch/plotly-6.5.0-pyhd8ed1ab_0.conda#6d4c79b604d50c1140c32164f7eca72a
@@ -257,81 +250,84 @@ https://conda.anaconda.org/conda-forge/noarch/python-gil-3.11.14-hd8ed1ab_2.cond
https://conda.anaconda.org/conda-forge/noarch/referencing-0.37.0-pyhcf101f3_0.conda#870293df500ca7e18bedefa5838a22ab
https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_1.conda#36de09a8d3e5d5e6f4ee63af49e59706
https://conda.anaconda.org/conda-forge/noarch/rfc3987-syntax-1.1.0-pyhe01879c_1.conda#7234f99325263a5af6d4cd195035e8f2
-https://conda.anaconda.org/conda-forge/linux-64/tbb-2022.3.0-h8d10470_1.conda#e3259be3341da4bc06c5b7a78c8bf1bd
https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh0d859eb_0.conda#efba281bbdae5f6b0a1d53c6d4a97c93
-https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.5.0-pyhcf101f3_0.conda#2caf483992d5d92b232451f843bdc8af
+https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.5.1-pyhcf101f3_0.conda#c0d0b883e97906f7524e2aac94be0e0d
https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda#edd329d7d3a4ab45dcf905899a7a6115
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxtst-1.2.5-hb9d3cd8_3.conda#7bbe9a0cc0df0ac5f5a8ad6d6a11af2f
https://conda.anaconda.org/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda#aaa2a381ccc56eac91d63b6c1240312f
-https://conda.anaconda.org/conda-forge/noarch/anyio-4.11.0-pyhcf101f3_0.conda#814472b61da9792fae28156cb9ee54f5
+https://conda.anaconda.org/conda-forge/noarch/anyio-4.12.0-pyhcf101f3_0.conda#9958d4a1ee7e9c768fe8f4fb51bd07ea
https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-25.1.0-py311h49ec1c0_2.conda#6e36e9d2b535c3fbe2e093108df26695
https://conda.anaconda.org/conda-forge/noarch/arrow-1.4.0-pyhcf101f3_0.conda#85c4f19f377424eafc4ed7911b291642
-https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.14.2-pyha770c72_0.conda#749ebebabc2cae99b2e5b3edd04c6ca2
+https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.14.3-pyha770c72_0.conda#5267bef8efea4127aacd1f4e1f149b6e
+https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.11.0-4_h1ea3ea9_openblas.conda#b94457a746ba3bba8cc39881a18d6d41
https://conda.anaconda.org/conda-forge/noarch/bleach-with-css-6.3.0-h5f6438b_0.conda#08a03378bc5293c6f97637323802f480
-https://conda.anaconda.org/conda-forge/linux-64/compilers-1.11.0-ha770c72_0.conda#fdcf2e31dd960ef7c5daa9f2c95eff0e
+https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-h3394656_0.conda#09262e66b19567aff4f592fb53b28760
+https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.3-py311hdf67eae_3.conda#c4e2f4d5193e55a70bb67a2aa07006ae
https://conda.anaconda.org/conda-forge/noarch/doit-0.36.0-pyhd8ed1ab_1.conda#18d4243b3d30352f9dea8e522f6ff4d1
https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_1.conda#d3549fd50d450b6d9e7dddff25dd2110
-https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda#b8690f53007e9b5ee2c2178dd4ac778c
+https://conda.anaconda.org/conda-forge/linux-64/gcc-14.3.0-h0dff253_15.conda#893d79ba69d21198012ff8212a8c563a
+https://conda.anaconda.org/conda-forge/linux-64/gfortran_linux-64-14.3.0-h1e4d427_14.conda#5d81121caf70d8799d90dabbf98e5d3d
+https://conda.anaconda.org/conda-forge/linux-64/gxx_linux-64-14.3.0-hcfe7c2f_14.conda#c4fd428cfc444609ff7dbceed7f9b3ef
+https://conda.anaconda.org/conda-forge/linux-64/imagecodecs-2025.11.11-py311hd2c663a_1.conda#6cbb8004493da9989e6c94c36151e4c3
+https://conda.anaconda.org/conda-forge/noarch/imageio-2.37.0-pyhfb79c49_0.conda#b5577bc2212219566578fd5af9993af6
https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.5.2-pyhd8ed1ab_0.conda#e376ea42e9ae40f3278b0f79c9bf9826
https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2025.9.1-pyhcf101f3_0.conda#439cd0f567d697b20a8f45cb70a1005a
https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.3-pyhd8ed1ab_1.conda#4ebae00eae9705b0c3d6d1018a81d047
https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_1.conda#2d983ff1b82a1ccb6f2e9d8784bdd6bd
https://conda.anaconda.org/conda-forge/noarch/lazy-loader-0.4-pyhd8ed1ab_2.conda#d10d9393680734a8febc4b362a4c94f2
+https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.7-default_h99862b1_1.conda#d3042ebdaacc689fd1daa701885fc96c
+https://conda.anaconda.org/conda-forge/linux-64/libclang13-21.1.7-default_h746c552_1.conda#66508e5f84c3dc9af1a0a62694325ef2
https://conda.anaconda.org/conda-forge/noarch/mdit-py-plugins-0.5.0-pyhd8ed1ab_0.conda#1997a083ef0b4c9331f9191564be275e
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
-https://conda.anaconda.org/conda-forge/linux-64/mkl-2025.3.0-h0e700b2_462.conda#a2e8e73f7132ea5ea70fda6f3cf05578
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
-https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py311haee01d2_1.conda#ca45bfd4871af957aaa5035593d5efd2
+https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py311hed34c8f_2.conda#2366b5470cf61614c131e356efe9f74c
+https://conda.anaconda.org/conda-forge/noarch/patsy-1.0.2-pyhcf101f3_0.conda#8678577a52161cc4e1c93fcc18e8a646
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
+https://conda.anaconda.org/conda-forge/linux-64/pywavelets-1.9.0-py311h0372a8f_2.conda#4e078a6bafb23473ea476450f45c9650
+https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py311h1e13796_1.conda#e1947291b713cb0afa949e1bcda1f935
+https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.0-pyhd8ed1ab_0.conda#de7372f43e63ff0876b4023b79b55e95
https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-25.1.0-pyhd8ed1ab_0.conda#8ac12aff0860280ee0cff7fa2cf63f3b
+https://conda.anaconda.org/conda-forge/linux-64/blas-2.304-openblas.conda#9f3df6e080be9558b0eced56c01b1ce5
+https://conda.anaconda.org/conda-forge/linux-64/c-compiler-1.11.0-h4d9bdce_0.conda#abd85120de1187b0d1ec305c2173c71b
+https://conda.anaconda.org/conda-forge/linux-64/gfortran-14.3.0-h76987e4_15.conda#2cad53f60b22fba4693d6c67ee8e0cb7
+https://conda.anaconda.org/conda-forge/linux-64/gxx-14.3.0-h76987e4_15.conda#0b1faa0b6a877261a8b4ec692d41b7c4
+https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda#b8690f53007e9b5ee2c2178dd4ac778c
https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_1.conda#0b0154421989637d424ccf0f104be51a
https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.25.1-pyhe01879c_0.conda#341fd940c242cf33e832c0402face56f
-https://conda.anaconda.org/conda-forge/noarch/jupyterlite-core-0.6.4-pyhe01879c_0.conda#b1f5663c5ccf466416fb822d11e1aff3
-https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-2_h5875eb1_mkl.conda#6a1a4ec47263069b2dae3cfba106320c
-https://conda.anaconda.org/conda-forge/linux-64/mkl-devel-2025.3.0-ha770c72_462.conda#619188d87dc94ed199e790d906d74bc3
+https://conda.anaconda.org/conda-forge/noarch/jupyterlite-core-0.7.0-pyhcf101f3_0.conda#4797b73e8813dce0afe8c96839118294
+https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.10.8-py311h0f3be63_0.conda#21a0139015232dc0edbf6c2179b5ec24
https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-32-1.34.0-py310hffdcd12_0.conda#496b18392ef5af544d22d18d91a2a371
+https://conda.anaconda.org/conda-forge/linux-64/pyamg-5.3.0-py311h1d5f577_1.conda#65b9997185d6db9b8be75ccb11664de5
https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda#8375cfbda7c57fbceeda18229be10417
-https://conda.anaconda.org/conda-forge/linux-64/qt6-main-6.9.3-h5c1c036_1.conda#762af6d08fdfa7a45346b1466740bacd
+https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda#db0c6b99149880c8ba515cf4abe93ee4
+https://conda.anaconda.org/conda-forge/linux-64/statsmodels-0.14.6-py311h0372a8f_0.conda#dd92402db25b74b98489a4c144f14b62
+https://conda.anaconda.org/conda-forge/noarch/tifffile-2025.10.16-pyhd8ed1ab_0.conda#f5b9f02d19761f79c564900a2a399984
https://conda.anaconda.org/conda-forge/noarch/towncrier-25.8.0-pyhd8ed1ab_0.conda#3e0e8e44292bdac62f7bcbf0450b5cc7
-https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda#436c165519e140cb08d246a4472a9d6a
+https://conda.anaconda.org/conda-forge/linux-64/cxx-compiler-1.11.0-hfcd1e18_0.conda#5da8c935dca9186673987f79cef0b2a5
+https://conda.anaconda.org/conda-forge/linux-64/fortran-compiler-1.11.0-h9bea470_0.conda#d5596f445a1273ddc5ea68864c01b69f
https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.25.1-he01879c_0.conda#13e31c573c884962318a738405ca3487
-https://conda.anaconda.org/conda-forge/noarch/jupyterlite-pyodide-kernel-0.6.1-pyhe01879c_0.conda#b55913693e8934299585267ce95af06e
-https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-2_hfef963f_mkl.conda#62ffd188ee5c953c2d6ac54662c158a7
-https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-2_h5e43f62_mkl.conda#4f33d79eda3c82c95a54e8c2981adddb
+https://conda.anaconda.org/conda-forge/noarch/jupyterlite-pyodide-kernel-0.7.0-pyhcf101f3_0.conda#97624651e6fc9ca05effe0b4a80766e3
https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_1.conda#bbe1963f1e47f594070ffe87cdf612ea
https://conda.anaconda.org/conda-forge/noarch/polars-1.34.0-pyh6a1acc5_0.conda#d398dbcb3312bbebc2b2f3dbb98b4262
-https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.9.3-py311he4c1a5a_1.conda#8c769099c0729ff85aac64f566bcd0d7
-https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda#db0c6b99149880c8ba515cf4abe93ee4
+https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.2-pyhd8ed1ab_3.conda#d2bbbd293097e664ffb01fc4cdaf5729
+https://conda.anaconda.org/conda-forge/linux-64/qt6-main-6.9.3-h5c1c036_1.conda#762af6d08fdfa7a45346b1466740bacd
+https://conda.anaconda.org/conda-forge/linux-64/scikit-image-0.25.2-py311hed34c8f_2.conda#515ec832e4a98828374fded73405e3f3
+https://conda.anaconda.org/conda-forge/noarch/seaborn-base-0.13.2-pyhd8ed1ab_3.conda#fd96da444e81f9e6fcaac38590f3dd42
+https://conda.anaconda.org/conda-forge/linux-64/compilers-1.11.0-ha770c72_0.conda#fdcf2e31dd960ef7c5daa9f2c95eff0e
https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.12.0-pyh29332c3_0.conda#f56000b36f09ab7533877e695e4e8cb0
https://conda.anaconda.org/conda-forge/noarch/jupytext-1.18.1-pyh80e38bb_0.conda#3c85f79f1debe2d2c82ac08f1c1126e1
-https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.11.0-2_hdba1596_mkl.conda#96dea51ff1435bd823020e25fd02da59
https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.2-pyhd8ed1ab_0.conda#6bb0d77277061742744176ab555b723c
-https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py311h2e04523_0.conda#01da92ddaf561cabebd06019ae521510
-https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.2-pyhd8ed1ab_3.conda#d2bbbd293097e664ffb01fc4cdaf5729
-https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.11.0-2_hcf00494_mkl.conda#77b464e7c3b853268dec4c82b21dca5a
-https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.3-py311hdf67eae_3.conda#c4e2f4d5193e55a70bb67a2aa07006ae
-https://conda.anaconda.org/conda-forge/linux-64/imagecodecs-2025.11.11-py311h99464e2_0.conda#ef3de0e69e6b286b5ff5539c07a5c7d4
-https://conda.anaconda.org/conda-forge/noarch/imageio-2.37.0-pyhfb79c49_0.conda#b5577bc2212219566578fd5af9993af6
+https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.9.3-py311he4c1a5a_1.conda#8c769099c0729ff85aac64f566bcd0d7
+https://conda.anaconda.org/conda-forge/noarch/seaborn-0.13.2-hd8ed1ab_3.conda#62afb877ca2c2b4b6f9ecb37320085b6
+https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.10.8-py311h38be061_0.conda#08b5a4eac150c688c9f924bcb3317e02
https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.6-pyhcf101f3_1.conda#cfc86ccc3b1de35d36ccaae4c50391f5
-https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py311hed34c8f_1.conda#72e3452bf0ff08132e86de0272f2fbb0
-https://conda.anaconda.org/conda-forge/noarch/patsy-1.0.2-pyhcf101f3_0.conda#8678577a52161cc4e1c93fcc18e8a646
-https://conda.anaconda.org/conda-forge/linux-64/pywavelets-1.9.0-py311h0372a8f_2.conda#4e078a6bafb23473ea476450f45c9650
-https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py311h1e13796_1.conda#e1947291b713cb0afa949e1bcda1f935
-https://conda.anaconda.org/conda-forge/linux-64/blas-2.302-mkl.conda#9c83adee9e1069446e6cc92b8ea19797
https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.17.0-pyhcf101f3_0.conda#d79a87dcfa726bcea8e61275feed6f83
-https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.10.8-py311h0f3be63_0.conda#21a0139015232dc0edbf6c2179b5ec24
-https://conda.anaconda.org/conda-forge/linux-64/pyamg-5.3.0-py311h1d5f577_1.conda#65b9997185d6db9b8be75ccb11664de5
-https://conda.anaconda.org/conda-forge/linux-64/statsmodels-0.14.5-py311h0372a8f_1.conda#9db66ee103839915d80e7573b522d084
-https://conda.anaconda.org/conda-forge/noarch/tifffile-2025.10.16-pyhd8ed1ab_0.conda#f5b9f02d19761f79c564900a2a399984
https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.28.0-pyhcf101f3_0.conda#a63877cb23de826b1620d3adfccc4014
-https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.10.8-py311h38be061_0.conda#08b5a4eac150c688c9f924bcb3317e02
-https://conda.anaconda.org/conda-forge/linux-64/scikit-image-0.25.2-py311hed34c8f_2.conda#515ec832e4a98828374fded73405e3f3
-https://conda.anaconda.org/conda-forge/noarch/seaborn-base-0.13.2-pyhd8ed1ab_3.conda#fd96da444e81f9e6fcaac38590f3dd42
-https://conda.anaconda.org/conda-forge/noarch/seaborn-0.13.2-hd8ed1ab_3.conda#62afb877ca2c2b4b6f9ecb37320085b6
-https://conda.anaconda.org/conda-forge/noarch/jupyterlite-sphinx-0.22.0-pyhd8ed1ab_0.conda#058a1b9b7deca7ab48659088543a8158
+https://conda.anaconda.org/conda-forge/noarch/jupyterlite-sphinx-0.22.0-pyhcf101f3_1.conda#e53b79419913df0b84f7c3af7727122b
https://conda.anaconda.org/conda-forge/noarch/numpydoc-1.8.0-pyhd8ed1ab_1.conda#5af206d64d18d6c8dfb3122b4d9e643b
https://conda.anaconda.org/conda-forge/noarch/pydata-sphinx-theme-0.16.1-pyhd8ed1ab_0.conda#837aaf71ddf3b27acae0e7e9015eebc6
https://conda.anaconda.org/conda-forge/noarch/sphinx-copybutton-0.5.2-pyhd8ed1ab_1.conda#bf22cb9c439572760316ce0748af3713
https://conda.anaconda.org/conda-forge/noarch/sphinx-design-0.6.1-pyhd8ed1ab_2.conda#3e6c15d914b03f83fc96344f917e0838
-https://conda.anaconda.org/conda-forge/noarch/sphinx-gallery-0.19.0-pyhd8ed1ab_0.conda#3cfa26d23bd7987d84051879f202a855
+https://conda.anaconda.org/conda-forge/noarch/sphinx-gallery-0.20.0-pyhd8ed1ab_0.conda#4cae490c8d142824fb80d9aed672fddd
https://conda.anaconda.org/conda-forge/noarch/sphinx-prompt-1.10.1-pyhd8ed1ab_0.conda#bfc047865de18ef2657bd8a95d7b8b49
https://conda.anaconda.org/conda-forge/noarch/sphinx-remove-toctrees-1.0.0.post1-pyhd8ed1ab_1.conda#b275c865b753413caaa8548b9d44c024
https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-applehelp-2.0.0-pyhd8ed1ab_1.conda#16e3f039c0aa6446513e94ab18a8784b
diff --git a/build_tools/circle/doc_min_dependencies_linux-64_conda.lock b/build_tools/circle/doc_min_dependencies_linux-64_conda.lock
index f171bd9b1de94..997e3d4c0d8a6 100644
--- a/build_tools/circle/doc_min_dependencies_linux-64_conda.lock
+++ b/build_tools/circle/doc_min_dependencies_linux-64_conda.lock
@@ -12,31 +12,27 @@ https://conda.anaconda.org/conda-forge/noarch/python_abi-3.11-8_cp311.conda#8fcb
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda#a7970cd949a077b7cb9696379d338681
-https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-bootstrap_ha15bf96_3.conda#3036ca5b895b7f5146c5a25486234a68
-https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-14.3.0-h85bb3a7_107.conda#84915638a998fae4d495fa038683a73e
+https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-14.3.0-hf649bbc_115.conda#eedcd688f597873e1d16f0529f4d6d10
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.2.0-h767d61c_7.conda#f7b4d76975aac7e5d9e6ad13845f92fe
-https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-14.3.0-h85bb3a7_107.conda#eaf0f047b048c4d86a4b8c60c0e95f38
-https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-21.1.6-h4922eb0_0.conda#7a0b9ce502e0ed62195e02891dfcd704
+https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_15.conda#a90d6983da0757f4c09bb8fcfaf34e71
+https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-14.3.0-h9f08a49_115.conda#1ef1a0376c610365eb26e67f5da5e48d
+https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-21.1.7-h4922eb0_0.conda#ec29f865968a81e1961b3c2f2765eebb
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-6_kmp_llvm.conda#197811678264cb9da0d2ea0726a70661
-https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45-bootstrap_h59bd682_3.conda#5f1f949fc9c875458b5bc02a0c856f18
+https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-7_kmp_llvm.conda#887b70e1d607fba7957aa02f9ee0d939
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2#fee5683a3f04bd15cbd8318b096a27ab
https://conda.anaconda.org/conda-forge/linux-64/libegl-1.7.0-ha4b6fd6_2.conda#c151d5eb730e9b7480e6d48c0fc44048
https://conda.anaconda.org/conda-forge/linux-64/libopengl-1.7.0-ha4b6fd6_2.conda#7df50d44d4a14d6c31a2c54f2cd92157
-https://conda.anaconda.org/conda-forge/linux-64/binutils-2.45-bootstrap_h8a22499_3.conda#e39cc547941ee90dd512bfbe3d2a02d7
-https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-64-2.45-bootstrap_h8a22499_3.conda#c990e32bb7fce8b93d78b67f5eb26117
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_7.conda#c0374badb3a5d4b1372db28d19462c53
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_15.conda#a5d86b0496174a412d531eac03af9174
https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.14-hb9d3cd8_0.conda#76df83c2a9035c54df5d04ff81bcc02d
https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.2-h39aace5_0.conda#791365c5f65975051e4e017b5da3abf5
https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda#51a19bba1b8ebfb60df25cde030b7ebc
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.2.0-h09219d5_0.conda#9b3117ec960b823815b02190b41c0484
+https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda#72c8fd1af66bd67bf580645b426513ed
https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda#6c77a605a7a689d17d4819c0f8ac9a00
https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda#8b09ae86839581147ef2e5c5e229d164
https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda#35f29eec58405aaf55e01cb470d8c26a
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda#280ea6eee9e2ddefde25ff799c4f0363
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_7.conda#f116940d825ffc9104400f0d7f1a4551
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_15.conda#7b742943660c5173bb6a5c823021c9a0
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_15.conda#356b7358fcd6df32ad50d07cdfadd27d
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.2-hb03c661_0.conda#8397539e3a0bbd1695584fb4f927485a
https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc
@@ -45,8 +41,8 @@ https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda#7c7
https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.5-hd0c01bc_1.conda#68e52064ed3897463c0e958ab5c8f91b
https://conda.anaconda.org/conda-forge/linux-64/libopus-1.5.2-hd0c01bc_0.conda#b64523fb87ac6f87f0790f324ad43046
https://conda.anaconda.org/conda-forge/linux-64/libpciaccess-0.18-hb9d3cd8_0.conda#70e3400cbbfa03e96dcde7fc13e38c7b
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda#5b767048b1b3ee9a954b06f4084f93dc
-https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda#80c07c68d2f6870250959dcc95b209d1
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_15.conda#fccfb26375ec5e4a2192dee6604b6d02
+https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-h5347b49_1.conda#41f5c09a211985c3ce642d60721e7c3e
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/ncurses-6.5-h2d0b736_3.conda#47e340acb35de30501a76c7c799c41d7
@@ -66,18 +62,19 @@ https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2
https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda#9344155d33912347b37f0ae6c410a835
https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.4-h3f801dc_0.conda#01ba04e414e47f95c03d6ddd81fd37be
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.2.0-hd53d788_0.conda#c183787d2b228775dece45842abbbe53
-https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.2.0-h02bd7ab_0.conda#b7a924e3e9ebc7938ffc7d94fe603ed3
+https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hb03c661_1.conda#366b40a69f0ad6072561c1d09301c886
+https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.2.0-hb03c661_1.conda#4ffbb341c8b616aa2494b6afb26a0c5f
https://conda.anaconda.org/conda-forge/linux-64/libcap-2.77-h3ff7636_0.conda#09c264d40c67b82b49a3f3b89037bd2e
https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.125-hb03c661_1.conda#9314bc5a1fe7d1044dc9dfd3ef400535
https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda#c277e0a4d549b03ac1e9d6cbbe3d017b
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.2.0-h69a702a_7.conda#8621a450add4e231f676646880703f49
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_15.conda#7deffdc77cda3d2bbc9c558efa33d3ed
https://conda.anaconda.org/conda-forge/linux-64/libhwy-1.3.0-h4c17acf_1.conda#c2a0c1d0120520e979685034e0b79859
-https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.51-h421ea60_0.conda#d8b81203d08435eb999baa249427884e
-https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.3.0-hd08acf3_7.conda#716f4c96e07207d74e635c915b8b3f8b
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda#f627678cf829bd70bccf141a19c3ad3e
+https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.53-h421ea60_0.conda#00d4e66b1f746cb14944cad23fffb405
+https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-14.3.0-h8f1669f_15.conda#9e82f96224931323c6ed53d88fb3241b
+https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda#2e1b84d273b01835256e53fd938de355
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_15.conda#20a8584ff8677ac9d724345b9d4eb757
https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h54a6638_2.conda#b4ecbefe517ed0157c37f8182768271c
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
@@ -93,102 +90,86 @@ 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_ha0e22de_103.conda#86bc20552bf46075e3d92b67f089172d
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/zfp-1.0.1-h909a3a2_3.conda#03b04e4effefa41aee638f8ba30a6e78
-https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.2.5-hde8ca8f_0.conda#1920c3502e7f6688d650ab81cd3775fd
-https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda#6432cb5d4ac0046c3ac0a8a0f95842f9
+https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.3.2-h54a6638_0.conda#0faadd01896315ceea58bcc3479b1d21
+https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda#4a13eeac0b5c8e5b8ab496e6c4ddd829
https://conda.anaconda.org/conda-forge/linux-64/aom-3.9.1-hac33072_0.conda#346722a0be40f6edc53f12640d301338
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.2.0-hf2c8021_0.conda#5304333319a6124a2737d9f128cbc4ed
+https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.2.0-hb03c661_1.conda#af39b9a8711d4a8d437b52c1d78eb6a1
https://conda.anaconda.org/conda-forge/linux-64/brunsli-0.1-hd1e3526_2.conda#5948f4fead433c6e5c46444dbfb01162
-https://conda.anaconda.org/conda-forge/linux-64/c-blosc2-2.22.0-h4cfbee9_0.conda#bede98a38485d588b3ec7e4ba2e46532
+https://conda.anaconda.org/conda-forge/linux-64/c-blosc2-2.22.0-hc31b594_1.conda#52019609422a72ec80c32bbc16a889d8
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-14.3.0-hd9e9e21_7.conda#54876317578ad4bf695aad97ff8398d9
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/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda#a6abd2796fc332536735f68ba23f7901
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/libfreetype6-2.14.1-h73754d4_0.conda#8e7251989bca326a28f4a5ffbd74557a
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.2.0-h69a702a_7.conda#beeb74a6fe5ff118451cf0581bfe2642
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_15.conda#83c3e3937b2715e9919bc1ca27a7f684
https://conda.anaconda.org/conda-forge/linux-64/libglib-2.86.2-h6548e54_1.conda#f01292fb36b6d00d5c51e5d46b513bcf
https://conda.anaconda.org/conda-forge/linux-64/libjxl-0.11.1-hf08fa70_5.conda#82954a6f42e3fba59628741dca105c98
https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-257.10-hd0affe5_2.conda#b04e0a2163a72588a40cde1afd6f2d18
https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda#cd5a90476766d53e901500df9215e927
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/nss-3.118-h445c969_0.conda#567fbeed956c200c1db5782a424e58ee
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.1-h4f16b4b_2.conda#fdc27cb255a7a2cc73b7919a968b48f0
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.1-hb711507_0.conda#ad748ccca349aec3e91743e08b5e2b50
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.10-hb711507_0.conda#0e0cbe0564d03a99afd5fd7b362feecd
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.2-hb711507_0.conda#608e0ef8256b81d04456e8d211eee3e8
https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.12-h4f16b4b_0.conda#db038ce880f100acc74dba10302b5630
-https://conda.anaconda.org/conda-forge/linux-64/brotli-1.2.0-h41a2e66_0.conda#4ddfd44e473c676cb8e80548ba4aa704
-https://conda.anaconda.org/conda-forge/linux-64/conda-gcc-specs-14.3.0-hb991d5c_7.conda#39586596e88259bae48f904fb1025b77
+https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45-default_hfdba357_104.conda#a7a67bf132a4a2dea92a7cb498cdc5b1
+https://conda.anaconda.org/conda-forge/linux-64/brotli-1.2.0-hed03a55_1.conda#8ccf913aaba749a5496c17629d859ed1
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/dbus-1.16.2-h3c4dab8_0.conda#679616eb5ad4e521c83da4650860aba7
-https://conda.anaconda.org/conda-forge/linux-64/gcc_linux-64-14.3.0-h298d278_14.conda#fe0c2ac970a0b10835f3432a3dfd4542
+https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h24cb091_1.conda#ce96f2f470d39bd96ce03945af92e280
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-14.3.0-h7db7018_7.conda#a68add92b710d3139b46f46a27d06c80
https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.86.2-hf516916_1.conda#495c262933b7c5b8c09413d44fa5974b
-https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-14.3.0-he663afc_7.conda#2700e7aad63bca8c26c2042a6a7214d6
https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.17-h717163a_0.conda#000e85703f0fd9594c81710dd5066471
https://conda.anaconda.org/conda-forge/linux-64/libavif16-1.3.0-h6395336_2.conda#c09c4ac973f7992ba0c6bb1aafd77bd4
https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-hb8b1518_5.conda#d4a250da4737ee127fb1fa6452a9002e
https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.1-ha770c72_0.conda#f4084e4e6577797150f9b04a4560ceb0
https://conda.anaconda.org/conda-forge/linux-64/libglx-1.7.0-ha4b6fd6_2.conda#c8013e438185f33b13814c5c488acd5c
-https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.0-hee844dc_0.conda#729a572a3ebb8c43933b30edcc628ceb
https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.1-ha9997c6_0.conda#e7733bc6785ec009e47a224a71917e84
https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.4-h55fea9a_0.conda#11b3379b191f63139e29c0d19dee24cd
+https://conda.anaconda.org/conda-forge/linux-64/python-3.11.14-hd63d673_2_cpython.conda#c4202a55b4486314fbb8c11bc43a29a0
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-hb711507_2.conda#a0901183f08b6c7107aab109733a3c91
https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.46-hb03c661_0.conda#71ae752a748962161b4740eaff510258
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.6-hb9d3cd8_0.conda#febbab7d15033c913d53c7a2c102309d
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxfixes-6.0.2-hb03c661_0.conda#ba231da7fccf9ea1e768caf5c7099b84
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/freetype-2.14.1-ha770c72_0.conda#4afc585cd97ba8a23809406cd8a9eda8
-https://conda.anaconda.org/conda-forge/linux-64/gcc-14.3.0-h76bdaa0_7.conda#cd5d2db69849f2fc7b592daf86c3015a
-https://conda.anaconda.org/conda-forge/linux-64/gfortran_linux-64-14.3.0-h1e4d427_14.conda#5d81121caf70d8799d90dabbf98e5d3d
-https://conda.anaconda.org/conda-forge/linux-64/gxx_linux-64-14.3.0-hc876b51_14.conda#1852de0052b0d6af4294b3ae25a4a450
-https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda#ee48bf17cc83a00f59ca1494d5646869
-https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda#928b8be80851f5d8ffb016f9c81dae7a
-https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.1-h26afc86_0.conda#e512be7dc1f84966d50959e900ca121f
-https://conda.anaconda.org/conda-forge/linux-64/nss-3.118-h445c969_0.conda#567fbeed956c200c1db5782a424e58ee
-https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878
-https://conda.anaconda.org/conda-forge/linux-64/python-3.11.14-hd63d673_2_cpython.conda#c4202a55b4486314fbb8c11bc43a29a0
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.6-hb9d3cd8_2.conda#d3c295b50f092ab525ffe3c2aa4b7413
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda#b5fcc7172d22516e1f965490e65e33a4
-https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.6-hb9d3cd8_0.conda#5efa5fa6243a622445fdfd72aee15efa
https://conda.anaconda.org/conda-forge/noarch/alabaster-0.7.16-pyhd8ed1ab_0.conda#def531a3ac77b7fb8c21d17bb5d0badb
-https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py311h7c6b74e_0.conda#645bc783bc723d67a294a51bc860762d
-https://conda.anaconda.org/conda-forge/linux-64/c-compiler-1.11.0-h4d9bdce_0.conda#abd85120de1187b0d1ec305c2173c71b
+https://conda.anaconda.org/conda-forge/linux-64/backports.zstd-1.2.0-py311h6b1f9c4_0.conda#596b9cc36b7af0640825b399e6b11ccc
+https://conda.anaconda.org/conda-forge/linux-64/binutils-2.45-default_h4852527_104.conda#d351e4894d6c4d9d8775bf169a97089d
+https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-64-2.45-default_h4852527_104.conda#e30e71d685e23cc1e5ac1c1990ba1f81
+https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py311h66f275b_1.conda#86daecb8e4ed1042d5dc6efbe0152590
https://conda.anaconda.org/conda-forge/noarch/certifi-2025.11.12-pyhd8ed1ab_0.conda#96a02a5c1a65470a7e4eedb644c872fd
https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda#a22d1fd9bf98827e280a02875d9a007a
-https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh707e725_0.conda#9ba00b39e03a0afb2b1cc0767d4c6175
+https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda#ea8a6c3256897cc31263de9f455e25d9
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833
+https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhcf101f3_2.conda#4c2a8fef270f6c69591889b93f9f55c1
https://conda.anaconda.org/conda-forge/linux-64/cython-3.1.2-py311ha3e34f5_2.conda#f56da6e1e1f310f27cca558e58882f40
https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_1.conda#24c1ca34138ee57de72a943237cde4cc
https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
-https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee
-https://conda.anaconda.org/conda-forge/linux-64/gfortran-14.3.0-he448592_7.conda#94394acdc56dcb4d55dddf0393134966
-https://conda.anaconda.org/conda-forge/linux-64/gxx-14.3.0-he448592_7.conda#91dc0abe7274ac5019deaa6100643265
+https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.1-ha770c72_0.conda#4afc585cd97ba8a23809406cd8a9eda8
+https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-14.3.0-h319ec69_15.conda#042695cf5fb55a63294f3575c33a468c
https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda#0a802cb9888dd14eeefc611f05c40b6e
https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda#8e6923fc12f1fe8f8c4e5c9f343256ac
https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda#53abe63df7e10a6ba605dc5f9f961d36
https://conda.anaconda.org/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2#7de5386c8fea29e76b303f37dde4c352
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py311h724c32c_2.conda#4089f739463c798e10d8644bc34e24de
-https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.12.1-default_h7f8ec31_1002.conda#c01021ae525a76fe62720c7346212d74
-https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.6-hf7376ad_0.conda#8aa154f30e0bc616cbde9794710e0be2
-https://conda.anaconda.org/conda-forge/linux-64/libpq-18.1-h5c52fec_1.conda#638350cf5da41f3651958876a2104992
-https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda#ef1910918dd895516a769ed36b5b3a4e
-https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.0-hca5e8e5_0.conda#aa65b4add9574bb1d23c76560c5efd4c
+https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda#ee48bf17cc83a00f59ca1494d5646869
+https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda#928b8be80851f5d8ffb016f9c81dae7a
+https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.1-h26afc86_0.conda#e512be7dc1f84966d50959e900ca121f
https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py311h3778330_0.conda#0954f1a6a26df4a510b54f73b2a0345c
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
https://conda.anaconda.org/conda-forge/noarch/networkx-3.4-pyhd8ed1ab_0.conda#17878dfc0a15a6e9d2aaef351a4210dc
+https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
-https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py311h07c5bb8_0.conda#51f505a537b2d216a1b36b823df80995
-https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda#5c7a868f8241e64e1cf5fdf4962f23e2
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
+https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py311hf88fc01_2.conda#79edb22fb652ee142099df18042ca8c0
+https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda#1bd2e65c8c7ef24f4639ae6e850dacc2
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
https://conda.anaconda.org/conda-forge/noarch/ply-3.11-pyhd8ed1ab_3.conda#fd5062942bfa1b0bd5e0d2a4397b099e
https://conda.anaconda.org/conda-forge/linux-64/psutil-7.1.3-py311haee01d2_0.conda#2092b7977bc8e05eb17a1048724593a4
-https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda#12c566707c80111f9799308d9e265aef
https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda#6c8979be6d7a17692793114fa26916e8
https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda#461219d1a5bd61342293efa2c0c90eac
@@ -201,77 +182,94 @@ https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.8-pyhd8ed1ab_0.conda#1
https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jsmath-1.0.1-pyhd8ed1ab_1.conda#fa839b5ff59e192f411ccc7dae6588bb
https://conda.anaconda.org/conda-forge/noarch/tenacity-9.1.2-pyhd8ed1ab_0.conda#5d99943f2ae3cc69e1ada12ce9d4d701
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
-https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda#00d80af3a7bf27729484e786a68aafff
+https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda#d0fc809fa4c4d85e959ce4ab6e1de800
https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py311h49ec1c0_2.conda#8d7a63fc9653ed0bdc253a51d9a5c371
https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-17.0.0-py311h49ec1c0_1.conda#5e6d4026784e83c0a51c86ec428e8cc8
https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda#75cb7132eb58d97896e173ef12ac9986
-https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhd8ed1ab_0.conda#df5e78d904988eb55042c0c97446079f
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.6-hb9d3cd8_2.conda#d3c295b50f092ab525ffe3c2aa4b7413
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda#b5fcc7172d22516e1f965490e65e33a4
+https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.6-hb9d3cd8_0.conda#5efa5fa6243a622445fdfd72aee15efa
+https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhcf101f3_1.conda#30cd29cb87d819caead4d55184c1d115
https://conda.anaconda.org/conda-forge/noarch/accessible-pygments-0.0.5-pyhd8ed1ab_1.conda#74ac5069774cdbc53910ec4d631a3999
https://conda.anaconda.org/conda-forge/noarch/babel-2.17.0-pyhd8ed1ab_0.conda#0a01c169f0ab0f91b26e77a3301fbfe4
-https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-h3394656_0.conda#09262e66b19567aff4f592fb53b28760
-https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py311h03d9500_1.conda#3912e4373de46adafd8f1e97e4bd166b
-https://conda.anaconda.org/conda-forge/linux-64/cxx-compiler-1.11.0-hfcd1e18_0.conda#5da8c935dca9186673987f79cef0b2a5
+https://conda.anaconda.org/conda-forge/linux-64/conda-gcc-specs-14.3.0-he8ccf15_15.conda#93b9b94788b52e6f79cf6ae88de40c76
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
-https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.60.1-py311h3778330_0.conda#91f834f85ac92978cfc3c1c178573e85
-https://conda.anaconda.org/conda-forge/linux-64/fortran-compiler-1.11.0-h9bea470_0.conda#d5596f445a1273ddc5ea68864c01b69f
+https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee
+https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.61.0-py311h3778330_0.conda#f5ee391df23b7f50676ebe79fc53ee03
+https://conda.anaconda.org/conda-forge/linux-64/gcc_linux-64-14.3.0-h298d278_14.conda#fe0c2ac970a0b10835f3432a3dfd4542
+https://conda.anaconda.org/conda-forge/linux-64/gfortran_impl_linux-64-14.3.0-h1a219da_15.conda#d10648cffe3cdacded77f7fdeacfb8f0
https://conda.anaconda.org/conda-forge/linux-64/glib-2.86.2-h5192d8d_1.conda#7071a9745767777b4be235f8c164ea75
+https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-14.3.0-h2185e75_15.conda#a27be47954f8b96b0e4c383632bc80f9
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/importlib_resources-6.5.2-pyhd8ed1ab_0.conda#c85c76dc67d75619a92f51dfbce06992
-https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhd8ed1ab_0.conda#446bd6c8cb26050d528881df495ce646
+https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda#04558c96691bed63104678757beb4f8d
https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
-https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.6-default_h99862b1_0.conda#0fcc9b4d3fc5e5010a7098318d9b7971
-https://conda.anaconda.org/conda-forge/linux-64/libclang13-21.1.6-default_h746c552_0.conda#f5b64315835b284c7eb5332202b1e14b
-https://conda.anaconda.org/conda-forge/noarch/memory_profiler-0.61.0-pyhd8ed1ab_1.conda#71abbefb6f3b95e1668cd5e0af3affb9
+https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.12.1-default_hafda6a7_1003.conda#4fe840c6d6b3719b4231ed89d389bb17
+https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.7-hf7376ad_0.conda#27dc1a582b442f24979f2a28641fe478
+https://conda.anaconda.org/conda-forge/linux-64/libpq-18.1-h5c52fec_2.conda#a8ac9a6342569d1714ae1b53ae2fcadb
+https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda#ef1910918dd895516a769ed36b5b3a4e
+https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.1-hca5e8e5_0.conda#2bca1fbb221d9c3c8e3a155784bbc2e9
+https://conda.anaconda.org/conda-forge/noarch/memory_profiler-0.61.0-pyhcf101f3_1.conda#e1bccffd88819e75729412799824e270
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh8b19718_0.conda#c55515ca43c6444d2572e0f0d93cb6b9
https://conda.anaconda.org/conda-forge/noarch/plotly-5.18.0-pyhd8ed1ab_0.conda#9f6a8664f1fe752f79473eeb9bf33a60
-https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-h9a6aba3_3.conda#b8ea447fdf62e3597cb8d2fae4eb1a90
https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda#5b8d21249ff20967101ffa321cab24e8
https://conda.anaconda.org/conda-forge/linux-64/sip-6.10.0-py311h1ddb823_1.conda#8012258dbc1728a96a7a72a2b3daf2ad
-https://conda.anaconda.org/conda-forge/linux-64/tbb-2022.3.0-h8d10470_1.conda#e3259be3341da4bc06c5b7a78c8bf1bd
https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda#edd329d7d3a4ab45dcf905899a7a6115
-https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.14.2-pyha770c72_0.conda#749ebebabc2cae99b2e5b3edd04c6ca2
-https://conda.anaconda.org/conda-forge/linux-64/compilers-1.11.0-ha770c72_0.conda#fdcf2e31dd960ef7c5daa9f2c95eff0e
+https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.14.3-pyha770c72_0.conda#5267bef8efea4127aacd1f4e1f149b6e
+https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-h3394656_0.conda#09262e66b19567aff4f592fb53b28760
+https://conda.anaconda.org/conda-forge/linux-64/gcc-14.3.0-h0dff253_15.conda#893d79ba69d21198012ff8212a8c563a
+https://conda.anaconda.org/conda-forge/linux-64/gfortran_linux-64-14.3.0-h1e4d427_14.conda#5d81121caf70d8799d90dabbf98e5d3d
https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.24.11-hc37bda9_0.conda#056d86cacf2b48c79c6a562a2486eb8c
-https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda#b8690f53007e9b5ee2c2178dd4ac778c
+https://conda.anaconda.org/conda-forge/linux-64/gxx_linux-64-14.3.0-hcfe7c2f_14.conda#c4fd428cfc444609ff7dbceed7f9b3ef
https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.5.2-pyhd8ed1ab_0.conda#e376ea42e9ae40f3278b0f79c9bf9826
https://conda.anaconda.org/conda-forge/noarch/lazy-loader-0.4-pyhd8ed1ab_2.conda#d10d9393680734a8febc4b362a4c94f2
+https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.7-default_h99862b1_1.conda#d3042ebdaacc689fd1daa701885fc96c
+https://conda.anaconda.org/conda-forge/linux-64/libclang13-21.1.7-default_h746c552_1.conda#66508e5f84c3dc9af1a0a62694325ef2
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
-https://conda.anaconda.org/conda-forge/linux-64/mkl-2025.3.0-h0e700b2_462.conda#a2e8e73f7132ea5ea70fda6f3cf05578
+https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-h9a6aba3_3.conda#b8ea447fdf62e3597cb8d2fae4eb1a90
https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.17.0-py311h1ddb823_2.conda#4f296d802e51e7a6889955c7f1bd10be
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
-https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py311haee01d2_1.conda#ca45bfd4871af957aaa5035593d5efd2
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
+https://conda.anaconda.org/conda-forge/linux-64/tbb-2022.3.0-h8d10470_1.conda#e3259be3341da4bc06c5b7a78c8bf1bd
+https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.0-pyhd8ed1ab_0.conda#de7372f43e63ff0876b4023b79b55e95
+https://conda.anaconda.org/conda-forge/linux-64/c-compiler-1.11.0-h4d9bdce_0.conda#abd85120de1187b0d1ec305c2173c71b
+https://conda.anaconda.org/conda-forge/linux-64/gfortran-14.3.0-h76987e4_15.conda#2cad53f60b22fba4693d6c67ee8e0cb7
https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.24.11-h651a532_0.conda#d8d8894f8ced2c9be76dc9ad1ae531ce
+https://conda.anaconda.org/conda-forge/linux-64/gxx-14.3.0-h76987e4_15.conda#0b1faa0b6a877261a8b4ec692d41b7c4
+https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda#b8690f53007e9b5ee2c2178dd4ac778c
https://conda.anaconda.org/conda-forge/noarch/lazy_loader-0.4-pyhd8ed1ab_2.conda#bb0230917e2473c77d615104dbe8a49d
-https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-2_h5875eb1_mkl.conda#6a1a4ec47263069b2dae3cfba106320c
-https://conda.anaconda.org/conda-forge/linux-64/mkl-devel-2025.3.0-ha770c72_462.conda#619188d87dc94ed199e790d906d74bc3
+https://conda.anaconda.org/conda-forge/linux-64/mkl-2025.3.0-h0e700b2_462.conda#a2e8e73f7132ea5ea70fda6f3cf05578
https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda#8375cfbda7c57fbceeda18229be10417
-https://conda.anaconda.org/conda-forge/noarch/towncrier-24.8.0-pyhd8ed1ab_1.conda#820b6a1ddf590fba253f8204f7200d82
-https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda#436c165519e140cb08d246a4472a9d6a
-https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-2_hfef963f_mkl.conda#62ffd188ee5c953c2d6ac54662c158a7
-https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-2_h5e43f62_mkl.conda#4f33d79eda3c82c95a54e8c2981adddb
-https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.15-h3c3fd16_6.conda#5aab84b9d164509b5bbe3af660518606
https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda#db0c6b99149880c8ba515cf4abe93ee4
-https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.11.0-2_hdba1596_mkl.conda#96dea51ff1435bd823020e25fd02da59
-https://conda.anaconda.org/conda-forge/linux-64/numpy-1.24.1-py311h8e6699e_0.conda#bd7c9bf413aa9478ea5f68123e796ab1
+https://conda.anaconda.org/conda-forge/noarch/towncrier-24.8.0-pyhd8ed1ab_1.conda#820b6a1ddf590fba253f8204f7200d82
+https://conda.anaconda.org/conda-forge/linux-64/cxx-compiler-1.11.0-hfcd1e18_0.conda#5da8c935dca9186673987f79cef0b2a5
+https://conda.anaconda.org/conda-forge/linux-64/fortran-compiler-1.11.0-h9bea470_0.conda#d5596f445a1273ddc5ea68864c01b69f
+https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-4_h5875eb1_mkl.conda#bd1a86e560c3b26961279ef6b6e8d45f
+https://conda.anaconda.org/conda-forge/linux-64/mkl-devel-2025.3.0-ha770c72_462.conda#619188d87dc94ed199e790d906d74bc3
https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.0-pyhd8ed1ab_0.conda#134b2b57b7865d2316a7cce1915a51ed
+https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.15-h3c3fd16_6.conda#5aab84b9d164509b5bbe3af660518606
+https://conda.anaconda.org/conda-forge/linux-64/compilers-1.11.0-ha770c72_0.conda#fdcf2e31dd960ef7c5daa9f2c95eff0e
+https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-4_hfef963f_mkl.conda#41f4f9428b9d92b1b06f1fff80a2674d
+https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-4_h5e43f62_mkl.conda#f647e3368af2453546812658b5393901
https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.11-py311h0580839_2.conda#59ae5d8d4bcb1371d61ec49dfb985c70
-https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.11.0-2_hcf00494_mkl.conda#77b464e7c3b853268dec4c82b21dca5a
+https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.11.0-4_hdba1596_mkl.conda#f0b31cc6189ebd85a2e16b15de09850b
+https://conda.anaconda.org/conda-forge/linux-64/numpy-1.24.1-py311h8e6699e_0.conda#bd7c9bf413aa9478ea5f68123e796ab1
+https://conda.anaconda.org/conda-forge/linux-64/blas-devel-3.11.0-4_hcf00494_mkl.conda#7f7c616ec25c252749fa4945ea1db3fd
https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.2-py311hd18a35c_0.conda#f8e440efa026c394461a45a46cea49fc
-https://conda.anaconda.org/conda-forge/linux-64/imagecodecs-2025.11.11-py311h99464e2_0.conda#ef3de0e69e6b286b5ff5539c07a5c7d4
+https://conda.anaconda.org/conda-forge/linux-64/imagecodecs-2025.11.11-py311hd2c663a_1.conda#6cbb8004493da9989e6c94c36151e4c3
https://conda.anaconda.org/conda-forge/noarch/imageio-2.37.0-pyhfb79c49_0.conda#b5577bc2212219566578fd5af9993af6
https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.3-py311h7db5c69_1.conda#643f8cb35133eb1be4919fb953f0a25f
https://conda.anaconda.org/conda-forge/noarch/patsy-1.0.2-pyhcf101f3_0.conda#8678577a52161cc4e1c93fcc18e8a646
https://conda.anaconda.org/conda-forge/linux-64/polars-0.20.30-py311h00856b1_0.conda#5113e0013db6b28be897218ddf9835f9
https://conda.anaconda.org/conda-forge/linux-64/pywavelets-1.8.0-py311h9f3472d_0.conda#17334e5c12abdf2db6b25bd4187cd3e4
https://conda.anaconda.org/conda-forge/linux-64/scipy-1.10.0-py311h8e6699e_2.conda#29e7558b75488b2d5c7d1458be2b3b11
-https://conda.anaconda.org/conda-forge/linux-64/blas-2.302-mkl.conda#9c83adee9e1069446e6cc92b8ea19797
+https://conda.anaconda.org/conda-forge/linux-64/blas-2.304-mkl.conda#adbc1b7f2e7acf80f45bd6592f88f0ae
https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.6.1-py311he728205_1.tar.bz2#88af4d7dc89608bfb7665a9685578800
https://conda.anaconda.org/conda-forge/linux-64/pyamg-5.0.0-py311hcb41070_0.conda#af2d6818c526791fb81686c554ab262b
-https://conda.anaconda.org/conda-forge/linux-64/statsmodels-0.14.5-py311h0372a8f_1.conda#9db66ee103839915d80e7573b522d084
+https://conda.anaconda.org/conda-forge/linux-64/statsmodels-0.14.6-py311h0372a8f_0.conda#dd92402db25b74b98489a4c144f14b62
https://conda.anaconda.org/conda-forge/noarch/tifffile-2025.10.16-pyhd8ed1ab_0.conda#f5b9f02d19761f79c564900a2a399984
https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.6.1-py311h38be061_1.tar.bz2#37d18a25f4f7fcef45ba4fb31cbe30af
https://conda.anaconda.org/conda-forge/linux-64/scikit-image-0.22.0-py311h320fe9a_2.conda#e94b7f09b52628b89e66cdbd8c3029dd
diff --git a/build_tools/get_comment.py b/build_tools/get_comment.py
index 2c25ae9da8605..1725865e6dba5 100644
--- a/build_tools/get_comment.py
+++ b/build_tools/get_comment.py
@@ -1,11 +1,10 @@
# This script is used to generate a comment for a PR when linting issues are
# detected. It is used by the `Comment on failed linting` GitHub Action.
-# This script fails if there are not comments to be posted.
import os
import re
-import requests
+from github import Auth, Github, GithubException
def get_versions(versions_file):
@@ -67,15 +66,15 @@ def get_step_message(log, start, end, title, message, details):
return res
-def get_message(log_file, repo, pr_number, sha, run_id, details, versions):
+def get_message(log_file, repo_str, pr_number, sha, run_id, details, versions):
with open(log_file, "r") as f:
log = f.read()
sub_text = (
"\n\n _Generated for commit:"
- f" [{sha[:7]}](https://github.com/{repo}/pull/{pr_number}/commits/{sha}). "
+ f" [{sha[:7]}](https://github.com/{repo_str}/pull/{pr_number}/commits/{sha}). "
"Link to the linter CI: [here]"
- f"(https://github.com/{repo}/actions/runs/{run_id})_ "
+ f"(https://github.com/{repo_str}/actions/runs/{run_id})_ "
)
if "### Linting completed ###" not in log:
@@ -189,12 +188,8 @@ def get_message(log_file, repo, pr_number, sha, run_id, details, versions):
)
if not message:
- # no issues detected, so this script "fails"
- return (
- "## ✔️ Linting Passed\n"
- "All linting checks passed. Your pull request is in excellent shape! ☀️"
- + sub_text
- )
+ # no issues detected, the linting succeeded
+ return None
if not details:
# This happens if posting the log fails, which happens if the log is too
@@ -216,7 +211,7 @@ def get_message(log_file, repo, pr_number, sha, run_id, details, versions):
+ "https://scikit-learn.org/dev/developers/development_setup.html#set-up-pre-commit)"
+ ".\n\n"
+ "You can see the details of the linting issues under the `lint` job [here]"
- + f"(https://github.com/{repo}/actions/runs/{run_id})\n\n"
+ + f"(https://github.com/{repo_str}/actions/runs/{run_id})\n\n"
+ message
+ sub_text
)
@@ -224,96 +219,50 @@ def get_message(log_file, repo, pr_number, sha, run_id, details, versions):
return message
-def get_headers(token):
- """Get the headers for the GitHub API."""
- return {
- "Accept": "application/vnd.github+json",
- "Authorization": f"Bearer {token}",
- "X-GitHub-Api-Version": "2022-11-28",
- }
-
-
-def find_lint_bot_comments(repo, token, pr_number):
+def find_lint_bot_comments(issue):
"""Get the comment from the linting bot."""
- # repo is in the form of "org/repo"
- # API doc: https://docs.github.com/en/rest/issues/comments?apiVersion=2022-11-28#list-issue-comments
- response = requests.get(
- f"https://api.github.com/repos/{repo}/issues/{pr_number}/comments",
- headers=get_headers(token),
- )
- response.raise_for_status()
- all_comments = response.json()
failed_comment = "❌ Linting issues"
- success_comment = "✔️ Linting Passed"
-
- # Find all comments that match the linting bot, and return the first one.
- # There should always be only one such comment, or none, if the PR is
- # just created.
- comments = [
- comment
- for comment in all_comments
- if comment["user"]["login"] == "github-actions[bot]"
- and (failed_comment in comment["body"] or success_comment in comment["body"])
- ]
-
- if len(all_comments) > 25 and not comments:
- # By default the API returns the first 30 comments. If we can't find the
- # comment created by the bot in those, then we raise and we skip creating
- # a comment in the first place.
- raise RuntimeError("Comment not found in the first 30 comments.")
-
- return comments[0] if comments else None
-
-
-def create_or_update_comment(comment, message, repo, pr_number, token):
- """Create a new comment or update existing one."""
- # repo is in the form of "org/repo"
+
+ for comment in issue.get_comments():
+ if comment.user.login == "github-actions[bot]":
+ if failed_comment in comment.body:
+ return comment
+
+ return None
+
+
+def create_or_update_comment(comment, message, issue):
+ """Create a new comment or update the existing linting comment."""
+
if comment is not None:
- print("updating existing comment")
- # API doc: https://docs.github.com/en/rest/issues/comments?apiVersion=2022-11-28#update-an-issue-comment
- response = requests.patch(
- f"https://api.github.com/repos/{repo}/issues/comments/{comment['id']}",
- headers=get_headers(token),
- json={"body": message},
- )
+ print("Updating existing comment")
+ comment.edit(message)
else:
- print("creating new comment")
- # API doc: https://docs.github.com/en/rest/issues/comments?apiVersion=2022-11-28#create-an-issue-comment
- response = requests.post(
- f"https://api.github.com/repos/{repo}/issues/{pr_number}/comments",
- headers=get_headers(token),
- json={"body": message},
- )
+ print("Creating new comment")
+ issue.create_comment(message)
- response.raise_for_status()
+def update_linter_fails_label(linting_failed, issue):
+ """Add or remove the label indicating that the linting has failed."""
-def update_linter_fails_label(message, repo, pr_number, token):
- """ "Add or remove the label indicating that the linting has failed."""
+ label = "CI:Linter failure"
+
+ if linting_failed:
+ issue.add_to_labels(label)
- if "❌ Linting issues" in message:
- # API doc: https://docs.github.com/en/rest/issues/labels?apiVersion=2022-11-28#add-labels-to-an-issue
- response = requests.post(
- f"https://api.github.com/repos/{repo}/issues/{pr_number}/labels",
- headers=get_headers(token),
- json={"labels": ["CI:Linter failure"]},
- )
- response.raise_for_status()
else:
- # API doc: https://docs.github.com/en/rest/issues/labels?apiVersion=2022-11-28#remove-a-label-from-an-issue
- response = requests.delete(
- f"https://api.github.com/repos/{repo}/issues/{pr_number}/labels/CI:Linter"
- " failure",
- headers=get_headers(token),
- )
- # If the label was not set, trying to remove it returns a 404 error
- if response.status_code != 404:
- response.raise_for_status()
+ try:
+ issue.remove_from_labels(label)
+ except GithubException as exception:
+ # The exception is ignored if raised because the issue did not have the
+ # label already
+ if not exception.message == "Label does not exist":
+ raise
if __name__ == "__main__":
- repo = os.environ["GITHUB_REPOSITORY"]
+ repo_str = os.environ["GITHUB_REPOSITORY"]
token = os.environ["GITHUB_TOKEN"]
pr_number = os.environ["PR_NUMBER"]
sha = os.environ["BRANCH_SHA"]
@@ -323,58 +272,60 @@ def update_linter_fails_label(message, repo, pr_number, token):
versions = get_versions(versions_file)
- if not repo or not token or not pr_number or not log_file or not run_id:
- raise ValueError(
- "One of the following environment variables is not set: "
- "GITHUB_REPOSITORY, GITHUB_TOKEN, PR_NUMBER, LOG_FILE, RUN_ID"
- )
+ for var, val in [
+ ("GITHUB_REPOSITORY", repo_str),
+ ("GITHUB_TOKEN", token),
+ ("PR_NUMBER", pr_number),
+ ("LOG_FILE", log_file),
+ ("RUN_ID", run_id),
+ ]:
+ if not val:
+ raise ValueError(f"The following environment variable is not set: {var}")
if not re.match(r"\d+$", pr_number):
raise ValueError(f"PR_NUMBER should be a number, got {pr_number!r} instead")
+ pr_number = int(pr_number)
+
+ gh = Github(auth=Auth.Token(token))
+ repo = gh.get_repo(repo_str)
+ issue = repo.get_issue(number=pr_number)
+
+ message = get_message(
+ log_file,
+ repo_str=repo_str,
+ pr_number=pr_number,
+ sha=sha,
+ run_id=run_id,
+ details=True,
+ versions=versions,
+ )
- try:
- comment = find_lint_bot_comments(repo, token, pr_number)
- except RuntimeError:
- print("Comment not found in the first 30 comments. Skipping!")
- exit(0)
-
- try:
- message = get_message(
- log_file,
- repo=repo,
- pr_number=pr_number,
- sha=sha,
- run_id=run_id,
- details=True,
- versions=versions,
- )
- create_or_update_comment(
- comment=comment,
- message=message,
- repo=repo,
- pr_number=pr_number,
- token=token,
- )
- print(message)
- except requests.HTTPError:
- # The above fails if the message is too long. In that case, we
- # try again without the details.
- message = get_message(
- log_file,
- repo=repo,
- pr_number=pr_number,
- sha=sha,
- run_id=run_id,
- details=False,
- versions=versions,
- )
- create_or_update_comment(
- comment=comment,
- message=message,
- repo=repo,
- pr_number=pr_number,
- token=token,
- )
- print(message)
+ update_linter_fails_label(
+ linting_failed=message is not None,
+ issue=issue,
+ )
+
+ comment = find_lint_bot_comments(issue)
- update_linter_fails_label(message, repo, pr_number, token)
+ if message is None: # linting succeeded
+ if comment is not None:
+ print("Deleting existing comment.")
+ comment.delete()
+ else:
+ try:
+ create_or_update_comment(comment, message, issue)
+ print(message)
+ except GithubException:
+ # The above fails if the message is too long. In that case, we
+ # try again without the details.
+ message = get_message(
+ log_file,
+ repo=repo,
+ pr_number=pr_number,
+ sha=sha,
+ run_id=run_id,
+ details=False,
+ versions=versions,
+ )
+ create_or_update_comment(comment, message, issue)
+ print(message)
diff --git a/build_tools/github/pylatest_conda_forge_cuda_array-api_linux-64_conda.lock b/build_tools/github/pylatest_conda_forge_cuda_array-api_linux-64_conda.lock
index d3a632653ce31..130e53ea4b032 100644
--- a/build_tools/github/pylatest_conda_forge_cuda_array-api_linux-64_conda.lock
+++ b/build_tools/github/pylatest_conda_forge_cuda_array-api_linux-64_conda.lock
@@ -15,15 +15,14 @@ https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda#9430
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda#f0991f0f84902f6b6009b4d2350a83aa
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda#a7970cd949a077b7cb9696379d338681
-https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-bootstrap_ha15bf96_3.conda#3036ca5b895b7f5146c5a25486234a68
https://conda.anaconda.org/conda-forge/linux-64/libglvnd-1.7.0-ha4b6fd6_2.conda#434ca7e50e40f4918ab701e3facd59a0
-https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-21.1.6-h4922eb0_0.conda#7a0b9ce502e0ed62195e02891dfcd704
+https://conda.anaconda.org/conda-forge/linux-64/llvm-openmp-21.1.7-h4922eb0_0.conda#ec29f865968a81e1961b3c2f2765eebb
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-6_kmp_llvm.conda#197811678264cb9da0d2ea0726a70661
+https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-7_kmp_llvm.conda#887b70e1d607fba7957aa02f9ee0d939
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2#fee5683a3f04bd15cbd8318b096a27ab
https://conda.anaconda.org/conda-forge/linux-64/libegl-1.7.0-ha4b6fd6_2.conda#c151d5eb730e9b7480e6d48c0fc44048
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.2.0-h767d61c_7.conda#c0374badb3a5d4b1372db28d19462c53
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_15.conda#a5d86b0496174a412d531eac03af9174
https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.14-hb9d3cd8_0.conda#76df83c2a9035c54df5d04ff81bcc02d
https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.12.0-hb9d3cd8_0.conda#f65c946f28f0518f41ced702f44c52b7
https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda#51a19bba1b8ebfb60df25cde030b7ebc
@@ -33,17 +32,17 @@ https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hb03c661_4
https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda#6c77a605a7a689d17d4819c0f8ac9a00
https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda#8b09ae86839581147ef2e5c5e229d164
https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h9ec8514_0.conda#35f29eec58405aaf55e01cb470d8c26a
-https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda#280ea6eee9e2ddefde25ff799c4f0363
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_7.conda#f116940d825ffc9104400f0d7f1a4551
+https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_15.conda#7b742943660c5173bb6a5c823021c9a0
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_15.conda#356b7358fcd6df32ad50d07cdfadd27d
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.2-hb03c661_0.conda#8397539e3a0bbd1695584fb4f927485a
https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda#1a580f7796c7bf6393fddb8bbbde58dc
https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda#c7e925f37e3b40d893459e625f6a53f1
https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda#7c7927b404672409d9917d49bff5f2d6
https://conda.anaconda.org/conda-forge/linux-64/libpciaccess-0.18-hb9d3cd8_0.conda#70e3400cbbfa03e96dcde7fc13e38c7b
-https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda#5b767048b1b3ee9a954b06f4084f93dc
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_15.conda#fccfb26375ec5e4a2192dee6604b6d02
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.2-he9a06e4_0.conda#80c07c68d2f6870250959dcc95b209d1
+https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-h5347b49_1.conda#41f5c09a211985c3ce642d60721e7c3e
https://conda.anaconda.org/conda-forge/linux-64/libuv-1.51.0-hb03c661_1.conda#0f03292cc56bf91a077a134ea8747118
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
@@ -68,10 +67,11 @@ https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.125-hb03c661_1.conda#
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/libgfortran-15.2.0-h69a702a_7.conda#8621a450add4e231f676646880703f49
-https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.51-h421ea60_0.conda#d8b81203d08435eb999baa249427884e
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_15.conda#7deffdc77cda3d2bbc9c558efa33d3ed
+https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.53-h421ea60_0.conda#00d4e66b1f746cb14944cad23fffb405
+https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.1-h0c1763c_0.conda#2e1b84d273b01835256e53fd938de355
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.2.0-h4852527_7.conda#f627678cf829bd70bccf141a19c3ad3e
+https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_15.conda#20a8584ff8677ac9d724345b9d4eb757
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/lz4-c-1.10.0-h5888daf_1.conda#9de5350a85c4a20c685259b889aa6393
@@ -86,8 +86,8 @@ https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.con
https://conda.anaconda.org/conda-forge/linux-64/wayland-1.24.0-hd6090a7_1.conda#035da2e4f5770f036ff704fa17aace24
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/zlib-1.3.1-hb9d3cd8_2.conda#c9f075ab2f33b3bbee9e62d4ad0a6cd8
-https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.2.5-hde8ca8f_0.conda#1920c3502e7f6688d650ab81cd3775fd
-https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda#6432cb5d4ac0046c3ac0a8a0f95842f9
+https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.3.2-h54a6638_0.conda#0faadd01896315ceea58bcc3479b1d21
+https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda#4a13eeac0b5c8e5b8ab496e6c4ddd829
https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.17.0-h3dad3f2_6.conda#3a127d28266cdc0da93384d1f59fe8df
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/cudatoolkit-11.8.0-h4ba93d1_13.conda#eb43f5f1f16e2fad2eba22219c3e499b
@@ -95,9 +95,10 @@ https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.1-hbabe93e_0.conda#ff86
https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-hac33072_2.conda#c94a5994ef49749880a8139cf9afcbe1
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/ld_impl_linux-64-2.45-default_hbd61a6d_104.conda#a6abd2796fc332536735f68ba23f7901
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/libfreetype6-2.14.1-h73754d4_0.conda#8e7251989bca326a28f4a5ffbd74557a
-https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_7.conda#beeb74a6fe5ff118451cf0581bfe2642
+https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-15.2.0-h69a702a_15.conda#83c3e3937b2715e9919bc1ca27a7f684
https://conda.anaconda.org/conda-forge/linux-64/libglib-2.86.2-h32235b2_0.conda#0cb0612bc9cb30c62baf41f9d600611b
https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda#b499ce4b026493a13774bcf0f4c33849
https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-5.28.3-h6128344_1.conda#d8703f1ffe5a06356f06467f1d0b9464
@@ -115,7 +116,7 @@ https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.5.4-h04a3f9
https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.9.4-hb9b18c6_4.conda#773c99d0dbe2b3704af165f97ff399e5
https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hb03c661_4.conda#eaf3fbd2aa97c212336de38a51fe404e
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/dbus-1.16.2-h3c4dab8_0.conda#679616eb5ad4e521c83da4650860aba7
+https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h24cb091_1.conda#ce96f2f470d39bd96ce03945af92e280
https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.17-h717163a_0.conda#000e85703f0fd9594c81710dd5066471
https://conda.anaconda.org/conda-forge/linux-64/libcudnn-9.10.1.4-h7d33bf5_0.conda#93fe78190bc6fe40d5e7a737c8065286
https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-hb8b1518_5.conda#d4a250da4737ee127fb1fa6452a9002e
@@ -123,11 +124,11 @@ https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.17.0-h4e3cde8_0.conda#
https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.1-ha770c72_0.conda#f4084e4e6577797150f9b04a4560ceb0
https://conda.anaconda.org/conda-forge/linux-64/libglx-1.7.0-ha4b6fd6_2.conda#c8013e438185f33b13814c5c488acd5c
https://conda.anaconda.org/conda-forge/linux-64/libhiredis-1.0.2-h2cc385e_0.tar.bz2#b34907d3a81a3cd8095ee83d174c074a
-https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.0-hee844dc_0.conda#729a572a3ebb8c43933b30edcc628ceb
https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.13.9-h04c0eec_0.conda#35eeb0a2add53b1e50218ed230fa6a02
https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h90cbb55_3.conda#2eeb50cab6652538eee8fc0bc3340c81
https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.4-h55fea9a_0.conda#11b3379b191f63139e29c0d19dee24cd
https://conda.anaconda.org/conda-forge/linux-64/orc-2.1.1-h2271f48_0.conda#67075ef2cb33079efee3abfe58127a3b
+https://conda.anaconda.org/conda-forge/linux-64/python-3.13.11-hc97d973_100_cp313.conda#0cbb0010f1d8ecb64a428a8d4214609e
https://conda.anaconda.org/conda-forge/linux-64/re2-2024.07.02-h9925aae_2.conda#e84ddf12bde691e8ec894b00ea829ddf
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-hb711507_2.conda#a0901183f08b6c7107aab109733a3c91
https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.46-hb03c661_0.conda#71ae752a748962161b4740eaff510258
@@ -138,7 +139,17 @@ https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.8.6-hd08a7f5_4.cond
https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.12.2-h108da3e_2.conda#90e07c8bac8da6378ee1882ef0a9374a
https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.14.0-h5cfcd09_0.conda#0a8838771cc2e985cd295e01ae83baf1
https://conda.anaconda.org/conda-forge/linux-64/ccache-4.11.3-h80c52d3_0.conda#eb517c6a2b960c3ccb6f1db1005f063a
+https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
+https://conda.anaconda.org/conda-forge/noarch/cpython-3.13.11-py313hd8ed1ab_100.conda#5bf347916a543bcb290c780fa449bf73
+https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhcf101f3_2.conda#4c2a8fef270f6c69591889b93f9f55c1
+https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.2-py313hc80a56d_0.conda#a14fa0e1f58e2fce8d6fddf8f54ed500
+https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
+https://conda.anaconda.org/conda-forge/linux-64/fastrlock-0.8.3-py313h5d5ffb9_2.conda#9bcbd351966dc56a24fc0c368da5ad99
+https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda#66b8b26023b8efdf8fcb23bac4b6325d
https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.1-ha770c72_0.conda#4afc585cd97ba8a23809406cd8a9eda8
+https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.12.0-pyhd8ed1ab_0.conda#a3b9510e2491c20c7fc0f5e730227fbb
+https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
+https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py313hc8edb43_2.conda#3e0e65595330e26515e31b7fc6d933c7
https://conda.anaconda.org/conda-forge/linux-64/libcudnn-dev-9.10.1.4-h0fdc2d1_0.conda#a0c0b44d26a4710e6ea577fcddbe09d1
https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda#928b8be80851f5d8ffb016f9c81dae7a
https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.67.1-h25350d4_2.conda#bfcedaf5f9b003029cc6abe9431f66bf
@@ -146,10 +157,29 @@ https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.12.1-default_h3d81e11
https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.0-hecd9e04_0.conda#9ad637a7ac380c442be142dfb0b1b955
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/linux-64/markupsafe-3.0.3-py313h3dea7bd_0.conda#c14389156310b8ed3520d84f854be1ee
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/linux-64/mpc-1.3.1-h24ddda3_1.conda#aa14b9a5196a6d8dd364164b7ce56acf
+https://conda.anaconda.org/conda-forge/noarch/mpmath-1.3.0-pyhd8ed1ab_1.conda#3585aa87c43ab15b167b574cd73b057b
+https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
+https://conda.anaconda.org/conda-forge/noarch/networkx-3.6-pyhcf101f3_0.conda#6725bfdf8ea7a8bf6415f096f3f1ffa5
https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda#2e5bf4f1da39c0b32778561c3c4e5878
+https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
+https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py313h80991f8_2.conda#37ca27d2f726f29a068230d8f6917ce4
+https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf47878473e5ab9fdb4115735230e191
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
https://conda.anaconda.org/conda-forge/linux-64/prometheus-cpp-1.3.0-ha5d0236_0.conda#a83f6a2fdc079e643237887a37460668
-https://conda.anaconda.org/conda-forge/linux-64/python-3.13.9-hc97d973_101_cp313.conda#4780fe896e961722d0623fa91d0d3378
+https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
+https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda#6c8979be6d7a17692793114fa26916e8
+https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2025.2-pyhd8ed1ab_0.conda#88476ae6ebd24f39261e0854ac244f33
+https://conda.anaconda.org/conda-forge/noarch/pytz-2025.2-pyhd8ed1ab_0.conda#bc8e3267d44011051f2eb14d22fb0960
+https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
+https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
+https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
+https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda#d0fc809fa4c4d85e959ce4ab6e1de800
+https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
+https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py313h07c4f96_2.conda#7824f18e343d1f846dcde7b23c9bf31a
+https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
https://conda.anaconda.org/conda-forge/linux-64/xcb-util-cursor-0.1.6-hb03c661_0.conda#4d1fc190b99912ed557a8236e958c559
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.6-hb9d3cd8_2.conda#d3c295b50f092ab525ffe3c2aa4b7413
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcursor-1.2.3-hb9d3cd8_0.conda#2ccd714aa2242315acaf0a67faea780b
@@ -160,81 +190,51 @@ https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.6-hb9d3cd8_0
https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.7.13-h822ba82_2.conda#9cf2c3c13468f2209ee814be2c88655f
https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.10.0-h113e628_0.conda#73f73f60854f325a55f1d31459f2ab73
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/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/noarch/cpython-3.13.9-py313hd8ed1ab_101.conda#367133808e89325690562099851529c8
+https://conda.anaconda.org/conda-forge/linux-64/coverage-7.12.0-py313h3dea7bd_0.conda#8ef99d298907bfd688a95cc714662ae7
https://conda.anaconda.org/conda-forge/linux-64/cudnn-9.10.1.4-haad7af6_0.conda#8382d957333e0d3280dcbf5691516dc1
-https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833
-https://conda.anaconda.org/conda-forge/linux-64/cython-3.2.1-py313hc80a56d_0.conda#1617960e1d8164f837ed5d0996603b88
-https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
-https://conda.anaconda.org/conda-forge/linux-64/fastrlock-0.8.3-py313h5d5ffb9_2.conda#9bcbd351966dc56a24fc0c368da5ad99
-https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda#66b8b26023b8efdf8fcb23bac4b6325d
+https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda#8f5b0b297b59e1ac160ad4beec99dbee
-https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.10.0-pyhd8ed1ab_0.conda#d18004c37182f83b9818b714825a7627
+https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.61.0-py313h3dea7bd_0.conda#92f09729a821c52943d4b0b3749a2380
https://conda.anaconda.org/conda-forge/linux-64/gmpy2-2.2.1-py313h86d8783_2.conda#d904f240d2d2500d4906361c67569217
-https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
-https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py313hc8edb43_2.conda#3e0e65595330e26515e31b7fc6d933c7
+https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda#04558c96691bed63104678757beb4f8d
+https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp21.1-21.1.0-default_h99862b1_1.conda#d599b346638b9216c1e8f9146713df05
https://conda.anaconda.org/conda-forge/linux-64/libclang13-21.1.0-default_h746c552_1.conda#327c78a8ce710782425a89df851392f7
https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.36.0-h2b5623c_0.conda#c96ca58ad3352a964bfcb85de6cd1496
https://conda.anaconda.org/conda-forge/linux-64/libopentelemetry-cpp-1.18.0-hfcad708_1.conda#1f5a5d66e77a39dc5bd639ec953705cf
https://conda.anaconda.org/conda-forge/linux-64/libpq-17.7-h5c52fec_1.conda#a4769024afeab4b32ac8167c2f92c7ac
-https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py313h3dea7bd_0.conda#c14389156310b8ed3520d84f854be1ee
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
-https://conda.anaconda.org/conda-forge/noarch/mpmath-1.3.0-pyhd8ed1ab_1.conda#3585aa87c43ab15b167b574cd73b057b
-https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
-https://conda.anaconda.org/conda-forge/noarch/networkx-3.5-pyhe01879c_0.conda#16bff3d37a4f99e3aa089c36c2b8d650
-https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
-https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py313h50355cd_0.conda#8a96eab78687362de3e102a15c4747a8
-https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh145f28c_0.conda#bf47878473e5ab9fdb4115735230e191
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
-https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
-https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda#6c8979be6d7a17692793114fa26916e8
-https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2025.2-pyhd8ed1ab_0.conda#88476ae6ebd24f39261e0854ac244f33
-https://conda.anaconda.org/conda-forge/noarch/pytz-2025.2-pyhd8ed1ab_0.conda#bc8e3267d44011051f2eb14d22fb0960
-https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
-https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
+https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
+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.11-h4df99d1_100.conda#d1461b2e63b1909f4f5b41c823bd90ae
https://conda.anaconda.org/conda-forge/linux-64/tbb-2021.13.0-h8d10470_4.conda#e6d46d70c68d0eb69b9a040ebe3acddf
-https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
-https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda#00d80af3a7bf27729484e786a68aafff
-https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
-https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py313h07c4f96_2.conda#7824f18e343d1f846dcde7b23c9bf31a
-https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
https://conda.anaconda.org/conda-forge/linux-64/xorg-libxtst-1.2.5-hb9d3cd8_3.conda#7bbe9a0cc0df0ac5f5a8ad6d6a11af2f
+https://conda.anaconda.org/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda#aaa2a381ccc56eac91d63b6c1240312f
https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.31.0-h55f77e1_4.conda#0627af705ed70681f5bede31e72348e5
https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.13.0-h3cf044e_1.conda#7eb66060455c7a47d9dcdbfa9f46579b
https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-h3394656_0.conda#09262e66b19567aff4f592fb53b28760
-https://conda.anaconda.org/conda-forge/linux-64/coverage-7.12.0-py313h3dea7bd_0.conda#8ef99d298907bfd688a95cc714662ae7
-https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
-https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.60.1-py313h3dea7bd_0.conda#904860fc0d57532d28e9c6c4501f19a9
-https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhd8ed1ab_0.conda#446bd6c8cb26050d528881df495ce646
-https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.36.0-h0121fbd_0.conda#fc5efe1833a4d709953964037985bb72
+https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
https://conda.anaconda.org/conda-forge/linux-64/mkl-2024.2.2-ha770c72_17.conda#e4ab075598123e783b788b995afbdad0
-https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
-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.9-h4df99d1_101.conda#f41e3c1125e292e6bfcea8392a3de3d8
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
https://conda.anaconda.org/conda-forge/noarch/sympy-1.14.0-pyh2585a3b_105.conda#8c09fac3785696e1c477156192d64b91
-https://conda.anaconda.org/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda#aaa2a381ccc56eac91d63b6c1240312f
https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.510-h37a5c72_3.conda#beb8577571033140c6897d257acc7724
https://conda.anaconda.org/conda-forge/linux-64/azure-storage-files-datalake-cpp-12.12.0-ha633028_1.conda#7c1980f89dd41b097549782121a73490
https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda#b8690f53007e9b5ee2c2178dd4ac778c
https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-37_h5875eb1_mkl.conda#888c2ae634bce09709dffd739ba9f1bc
-https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
https://conda.anaconda.org/conda-forge/linux-64/mkl-devel-2024.2.2-ha770c72_17.conda#e67269e07e58be5672f06441316f05f2
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
-https://conda.anaconda.org/conda-forge/linux-64/libarrow-19.0.1-hc7b3859_3_cpu.conda#9ed3ded6da29dec8417f2e1db68798f2
-https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-37_hfef963f_mkl.conda#f66eb9a9396715013772b8a3ef7396be
-https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-37_h5e43f62_mkl.conda#0c4af651539e79160cd3f0783391e918
https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-32-1.35.2-py310hffdcd12_0.conda#2b90c3aaf73a5b6028b068cf3c76e0b7
https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda#50d191b852fccb4bf9ab7b59b030c99d
https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda#8375cfbda7c57fbceeda18229be10417
+https://conda.anaconda.org/conda-forge/linux-64/libarrow-19.0.1-hc7b3859_3_cpu.conda#9ed3ded6da29dec8417f2e1db68798f2
+https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-37_hfef963f_mkl.conda#f66eb9a9396715013772b8a3ef7396be
+https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-37_h5e43f62_mkl.conda#0c4af651539e79160cd3f0783391e918
+https://conda.anaconda.org/conda-forge/noarch/polars-1.35.2-pyh6a1acc5_0.conda#24e8f78d79881b3c035f89f4b83c565c
https://conda.anaconda.org/conda-forge/linux-64/qt6-main-6.9.2-h5bd77bc_1.conda#f7bfe5b8e7641ce7d11ea10cfd9f33cc
https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-19.0.1-hcb10f89_3_cpu.conda#8f8dc214d89e06933f1bc1dcd2310b9c
https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.9.0-37_hdba1596_mkl.conda#4e76080972d13c913f178c90726b21ce
https://conda.anaconda.org/conda-forge/linux-64/libmagma-2.9.0-h45b15fe_0.conda#703a1ab01e36111d8bb40bc7517e900b
https://conda.anaconda.org/conda-forge/linux-64/libparquet-19.0.1-h081d1f1_3_cpu.conda#1d04307cdb1d8aeb5f55b047d5d403ea
https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py313hf6604e3_0.conda#15f43bcd12c90186e78801fafc53d89b
-https://conda.anaconda.org/conda-forge/noarch/polars-1.35.2-pyh6a1acc5_0.conda#24e8f78d79881b3c035f89f4b83c565c
https://conda.anaconda.org/conda-forge/linux-64/pyarrow-core-19.0.1-py313he5f92c8_0_cpu.conda#7d8649531c807b24295c8f9a0a396a78
https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.9.2-py313ha3f37dd_1.conda#e2ec46ec4c607b97623e7b691ad31c54
https://conda.anaconda.org/conda-forge/noarch/array-api-strict-2.4.1-pyhe01879c_0.conda#648e253c455718227c61e26f4a4ce701
@@ -243,7 +243,7 @@ https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.3-py313h7037e92_3.
https://conda.anaconda.org/conda-forge/linux-64/cupy-core-13.6.0-py313hc2a895b_2.conda#1b3207acc9af23dcfbccb4647df0838e
https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-19.0.1-hcb10f89_3_cpu.conda#a28f04b6e68a1c76de76783108ad729d
https://conda.anaconda.org/conda-forge/linux-64/libmagma_sparse-2.9.0-h45b15fe_0.conda#beac0a5bbe0af75db6b16d3d8fd24f7e
-https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py313h08cd8bf_1.conda#9e87d4bda0c2711161d765332fa38781
+https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py313h08cd8bf_2.conda#8a69ea71fdd37bfe42a28f0967dbb75a
https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py313h11c21cd_1.conda#26b089b9e5fcdcdca714b01f8008d808
https://conda.anaconda.org/conda-forge/linux-64/blas-2.137-mkl.conda#9deb2d32720cc73c9991dbd9e24b499e
https://conda.anaconda.org/conda-forge/linux-64/cupy-13.6.0-py313h66a2ee2_2.conda#9d83bdb568a47daf7fc38117db17fe4e
diff --git a/build_tools/github/pymin_conda_forge_arm_linux-aarch64_conda.lock b/build_tools/github/pymin_conda_forge_arm_linux-aarch64_conda.lock
index dda4f7d48cf80..97930fcc38716 100644
--- a/build_tools/github/pymin_conda_forge_arm_linux-aarch64_conda.lock
+++ b/build_tools/github/pymin_conda_forge_arm_linux-aarch64_conda.lock
@@ -7,7 +7,7 @@ https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed3
https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2#4d59c254e01d9cde7957100457e2d5fb
https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.conda#49023d73832ef61042f6a237cb2687e7
https://conda.anaconda.org/conda-forge/linux-aarch64/libglvnd-1.7.0-hd24410f_2.conda#9e115653741810778c9a915a2f8439e7
-https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-he277a41_7.conda#34cef4753287c36441f907d5fdd78d42
+https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_15.conda#0719da240fd6086c34c4c30080329806
https://conda.anaconda.org/conda-forge/noarch/python_abi-3.11-8_cp311.conda#8fcb6b0e2161850556231336dae58358
https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda#4222072737ccff51314b5ece9c7d6f5a
https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-2_gnu.tar.bz2#6168d71addc746e8f2b8d57dfd2edcea
@@ -16,23 +16,23 @@ https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.con
https://conda.anaconda.org/conda-forge/linux-aarch64/libegl-1.7.0-hd24410f_2.conda#cf105bce884e4ef8c8ccdca9fe6695e7
https://conda.anaconda.org/conda-forge/linux-aarch64/libopengl-1.7.0-hd24410f_2.conda#cf9d12bfab305e48d095a4c79002c922
https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2#fee5683a3f04bd15cbd8318b096a27ab
-https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-he277a41_7.conda#afa05d91f8d57dd30985827a09c21464
+https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_15.conda#cfdf8700e69902a113f2611e3cc09b55
https://conda.anaconda.org/conda-forge/linux-aarch64/alsa-lib-1.2.14-h86ecc28_0.conda#a696b24c1b473ecc4774bcb5a6ac6337
https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_8.conda#2921ac0b541bf37c69e66bd6d9a43bca
https://conda.anaconda.org/conda-forge/linux-aarch64/keyutils-1.6.3-h86ecc28_0.conda#e7df0aab10b9cbb73ab2a467ebfaf8c7
-https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlicommon-1.2.0-hd4db518_0.conda#ede431bf5eb917815cd62dc3bf2703a4
+https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlicommon-1.2.0-he30d5cf_1.conda#8ec1d03f3000108899d1799d9964f281
https://conda.anaconda.org/conda-forge/linux-aarch64/libdeflate-1.25-h1af38f5_0.conda#a9138815598fe6b91a1d6782ca657b0c
https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.3-hfae3067_0.conda#b414e36fbb7ca122030276c75fa9c34a
https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-hd65408f_0.conda#0c5ad486dcfb188885e3cf8ba209b97b
-https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_7.conda#a5ce1f0a32f02c75c11580c5b2f9258a
-https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran5-15.2.0-h87db57e_7.conda#dd7233e2874ea59e92f7d24d26bb341b
+https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_15.conda#ad92990dc6f608f412a01540a7c9510e
+https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran5-15.2.0-h1b7bec0_15.conda#77fa819fd8e8ae4b54c3fd5c7b666c5b
https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda#5a86bf847b9b926f3a4f203339748d78
https://conda.anaconda.org/conda-forge/linux-aarch64/libjpeg-turbo-3.1.2-he30d5cf_0.conda#5109d7f837a3dfdf5c60f60e311b041f
https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.1-h86ecc28_2.conda#7d362346a479256857ab338588190da0
https://conda.anaconda.org/conda-forge/linux-aarch64/libnsl-2.0.1-h86ecc28_1.conda#d5d58b2dc3e57073fe22303f5fed4db7
https://conda.anaconda.org/conda-forge/linux-aarch64/libpciaccess-0.18-h86ecc28_0.conda#5044e160c5306968d956c2a0a2a440d6
-https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-h3f4de04_7.conda#6a2f0ee17851251a85fbebafbe707d2d
-https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.41.2-h3e4203c_0.conda#3a68e44fdf2a2811672520fdd62996bd
+https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_15.conda#2873f805cdabcf33b880b19077cf6180
+https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.41.2-h1022ec0_1.conda#15b2cc72b9b05bcb141810b1bada654f
https://conda.anaconda.org/conda-forge/linux-aarch64/libwebp-base-1.6.0-ha2e29f5_0.conda#24e92d0942c799db387f5c9d7b81f1af
https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.1-h86ecc28_2.conda#08aad7cbe9f5a6b460d0976076b6ae64
https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda#182afabe009dc78d8b73100255ee6868
@@ -44,15 +44,15 @@ https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxdmcp-1.1.5-he30d5c
https://conda.anaconda.org/conda-forge/linux-aarch64/double-conversion-3.3.1-h5ad3122_0.conda#399959d889e1a73fc99f12ce480e77e1
https://conda.anaconda.org/conda-forge/linux-aarch64/graphite2-1.3.14-hfae3067_2.conda#4aa540e9541cc9d6581ab23ff2043f13
https://conda.anaconda.org/conda-forge/linux-aarch64/lerc-4.0.0-hfdc4d58_1.conda#60dceb7e876f4d74a9cbd42bbbc6b9cf
-https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlidec-1.2.0-hb159aeb_0.conda#05d5e1d976c0b5cb0885a654a368ee8a
-https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlienc-1.2.0-ha5a240b_0.conda#09ea194ce9f89f7664a8a6d8baa63d88
+https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlidec-1.2.0-he30d5cf_1.conda#47e5b71b77bb8b47b4ecf9659492977f
+https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlienc-1.2.0-he30d5cf_1.conda#6553a5d017fe14859ea8a4e6ea5def8f
https://conda.anaconda.org/conda-forge/linux-aarch64/libdrm-2.4.125-he30d5cf_1.conda#2079727b538f6dd16f3fa579d4c3c53f
https://conda.anaconda.org/conda-forge/linux-aarch64/libedit-3.1.20250104-pl5321h976ea20_0.conda#fb640d776fc92b682a14e001980825b1
-https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran-15.2.0-he9431aa_7.conda#ffe6ad135bd85bb594a6da1d78768f7c
+https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran-15.2.0-he9431aa_15.conda#3ec85135541290a2ebd907f1e2d439d3
https://conda.anaconda.org/conda-forge/linux-aarch64/libntlm-1.4-hf897c2e_1002.tar.bz2#835c7c4137821de5c309f4266a51ba89
-https://conda.anaconda.org/conda-forge/linux-aarch64/libpng-1.6.51-h1abf092_0.conda#913b1a53ee5f71ce323a15593597be0b
-https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.51.0-h022381a_0.conda#8920ce2226463a3815e2183c8b5008b8
-https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-ng-15.2.0-hf1166c9_7.conda#9e5deec886ad32f3c6791b3b75c78681
+https://conda.anaconda.org/conda-forge/linux-aarch64/libpng-1.6.53-h1abf092_0.conda#7591d867dbcba9eb7fb5e88a5f756591
+https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.51.1-h022381a_0.conda#233efdd411317d2dc5fde72464b3df7a
+https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-ng-15.2.0-hdbbeba8_15.conda#7a99de7c14096347968d1fd574b46bb2
https://conda.anaconda.org/conda-forge/linux-aarch64/libxcb-1.17.0-h262b8f6_0.conda#cd14ee5cca2464a425b1dbfc24d90db2
https://conda.anaconda.org/conda-forge/linux-aarch64/libxcrypt-4.4.36-h31becfc_1.conda#b4df5d7d4b63579d081fd3a4cf99740e
https://conda.anaconda.org/conda-forge/linux-aarch64/ninja-1.13.2-hdc560ac_0.conda#8b5222a41b5d51fb1a5a2c514e770218
@@ -62,14 +62,14 @@ https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.2-h8382b9d_2.con
https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h561c983_103.conda#631db4799bc2bfe4daccf80bb3cbc433
https://conda.anaconda.org/conda-forge/linux-aarch64/wayland-1.24.0-h4f8a99f_1.conda#f6966cb1f000c230359ae98c29e37d87
https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libsm-1.2.6-h0808dbd_0.conda#2d1409c50882819cb1af2de82e2b7208
-https://conda.anaconda.org/conda-forge/linux-aarch64/zlib-ng-2.2.5-h92288e7_0.conda#ffbcf78fd47999748154300e9f2a6f39
-https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-hbcf94c1_2.conda#5be90c5a3e4b43c53e38f50a85e11527
-https://conda.anaconda.org/conda-forge/linux-aarch64/brotli-bin-1.2.0-hf3d421d_0.conda#c43264ebd8b93281d09d3a9ad145f753
+https://conda.anaconda.org/conda-forge/linux-aarch64/zlib-ng-2.3.2-h7ac5ae9_0.conda#a51d8a3d4a928bbfacb9ae37991dde63
+https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda#c3655f82dcea2aa179b291e7099c1fcc
+https://conda.anaconda.org/conda-forge/linux-aarch64/brotli-bin-1.2.0-he30d5cf_1.conda#b31f6f3a888c3f8f4c5a9dafc2575187
https://conda.anaconda.org/conda-forge/linux-aarch64/icu-75.1-hf9b3779_0.conda#268203e8b983fddb6412b36f2024e75c
https://conda.anaconda.org/conda-forge/linux-aarch64/krb5-1.21.3-h50a48e9_0.conda#29c10432a2ca1472b53f299ffb2ffa37
-https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45-default_1234567_3.conda#cafa05c86759c42f9eb1e8398b41a1a3
+https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45-default_h1979696_104.conda#28035705fe0c977ea33963489cd008ad
https://conda.anaconda.org/conda-forge/linux-aarch64/libfreetype6-2.14.1-hdae7a39_0.conda#9c2f56b6e011c6d8010ff43b796aab2f
-https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran-ng-15.2.0-he9431aa_7.conda#e810efad68f395154237c4dce83aa482
+https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran-ng-15.2.0-he9431aa_15.conda#2dfbf3e5dcef40592ea337342a3592e7
https://conda.anaconda.org/conda-forge/linux-aarch64/libglib-2.86.2-he84ff74_0.conda#d184d68eaa57125062786e10440ff461
https://conda.anaconda.org/conda-forge/linux-aarch64/libopenblas-0.3.30-pthreads_h9d3fd7e_4.conda#11d7d57b7bdd01da745bbf2b67020b2e
https://conda.anaconda.org/conda-forge/linux-aarch64/libtiff-4.7.1-hdb009f0_1.conda#8c6fd84f9c87ac00636007c6131e457d
@@ -79,11 +79,11 @@ https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-keysyms-0.4.1-h5c7
https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-renderutil-0.3.10-h5c728e9_0.conda#7beeda4223c5484ef72d89fb66b7e8c1
https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-wm-0.4.2-h5c728e9_0.conda#f14dcda6894722e421da2b7dcffb0b78
https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libx11-1.8.12-hca56bd8_0.conda#3df132f0048b9639bc091ef22937c111
-https://conda.anaconda.org/conda-forge/linux-aarch64/brotli-1.2.0-hec30622_0.conda#5005bf1c06def246408b73d65f0d3de9
+https://conda.anaconda.org/conda-forge/linux-aarch64/brotli-1.2.0-hd651790_1.conda#5c933384d588a06cd8dac78ca2864aab
https://conda.anaconda.org/conda-forge/linux-aarch64/cyrus-sasl-2.1.28-h6c5dea3_0.conda#b6d06b46e791add99cc39fbbc34530d5
-https://conda.anaconda.org/conda-forge/linux-aarch64/dbus-1.16.2-heda779d_0.conda#9203b74bb1f3fa0d6f308094b3b44c1e
+https://conda.anaconda.org/conda-forge/linux-aarch64/dbus-1.16.2-h70963c4_1.conda#a4b6b82427d15f0489cef0df2d82f926
https://conda.anaconda.org/conda-forge/linux-aarch64/lcms2-2.17-hc88f144_0.conda#b87b1abd2542cf65a00ad2e2461a3083
-https://conda.anaconda.org/conda-forge/linux-aarch64/libblas-3.11.0-2_haddc8a3_openblas.conda#1a4b8fba71eb980ac7fb0f2ab86f295d
+https://conda.anaconda.org/conda-forge/linux-aarch64/libblas-3.11.0-4_haddc8a3_openblas.conda#10471558ac2b0c1b4dcd5e620fd65bfe
https://conda.anaconda.org/conda-forge/linux-aarch64/libcups-2.3.3-h5cdc715_5.conda#ac0333d338076ef19170938bbaf97582
https://conda.anaconda.org/conda-forge/linux-aarch64/libfreetype-2.14.1-h8af1aa0_0.conda#1e61fb236ccd3d6ccaf9e91cb2d7e12d
https://conda.anaconda.org/conda-forge/linux-aarch64/libglx-1.7.0-hd24410f_2.conda#1d4269e233636148696a67e2d30dad2a
@@ -99,28 +99,28 @@ https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxfixes-6.0.2-he30d5
https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxrender-0.9.12-h86ecc28_0.conda#ae2c2dd0e2d38d249887727db2af960e
https://conda.anaconda.org/conda-forge/linux-aarch64/ccache-4.11.3-h4889ad1_0.conda#e0b9e519da2bf0fb8c48381daf87a194
https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7
-https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda#44600c4667a319d67dbe0681fc0bc833
-https://conda.anaconda.org/conda-forge/linux-aarch64/cython-3.2.1-py311hdc11669_0.conda#4e9072696f84a95df4aa562e2732d332
+https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhcf101f3_2.conda#4c2a8fef270f6c69591889b93f9f55c1
+https://conda.anaconda.org/conda-forge/linux-aarch64/cython-3.2.2-py311hdc11669_0.conda#324e329aea785abb32429a383f1f151d
https://conda.anaconda.org/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda#a57b4be42619213a94f31d2c69c5dda7
https://conda.anaconda.org/conda-forge/linux-aarch64/freetype-2.14.1-h8af1aa0_0.conda#0c8f36ebd3678eed1685f0fc93fc2175
https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda#9614359868482abba1bd15ce465e3c42
https://conda.anaconda.org/conda-forge/linux-aarch64/kiwisolver-1.4.9-py311h229e7f7_2.conda#18358d47ebdc1f936003b7d407c9e16f
-https://conda.anaconda.org/conda-forge/linux-aarch64/libcblas-3.11.0-2_hd72aa62_openblas.conda#a074a14e43abb50d4a38fff28a791259
+https://conda.anaconda.org/conda-forge/linux-aarch64/libcblas-3.11.0-4_hd72aa62_openblas.conda#0a9f6e328c9255fd829e5e775bb0696b
https://conda.anaconda.org/conda-forge/linux-aarch64/libgl-1.7.0-hd24410f_2.conda#0d00176464ebb25af83d40736a2cd3bb
-https://conda.anaconda.org/conda-forge/linux-aarch64/liblapack-3.11.0-2_h88aeb00_openblas.conda#c73b83da5563196bdfd021579c45d54c
+https://conda.anaconda.org/conda-forge/linux-aarch64/liblapack-3.11.0-4_h88aeb00_openblas.conda#f4930dcf31fbe6327215b6e6122f73af
https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.1-h788dabe_0.conda#a0e7779b7625b88e37df9bd73f0638dc
-https://conda.anaconda.org/conda-forge/noarch/meson-1.9.1-pyhcf101f3_0.conda#ef2b132f3e216b5bf6c2f3c36cfd4c89
+https://conda.anaconda.org/conda-forge/noarch/meson-1.9.2-pyhcf101f3_0.conda#7920269f1b2d2f49c49616ac5b507aae
https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyhd8ed1ab_1.conda#37293a85a0f4f77bbd9cf7aaefc62609
https://conda.anaconda.org/conda-forge/linux-aarch64/openldap-2.6.10-h30c48ee_0.conda#48f31a61be512ec1929f4b4a9cedf4bd
https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda#58335b26c38bf4a20f399384c33cbcf9
-https://conda.anaconda.org/conda-forge/linux-aarch64/pillow-12.0.0-py311h9a6517a_0.conda#2dcc43f9f47cb65f1ebcbdc96183f6d2
-https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda#7da7ccd349dbf6487a7778579d2bb971
+https://conda.anaconda.org/conda-forge/linux-aarch64/pillow-12.0.0-py311h8e17b9e_2.conda#b86d6e26631d730f43732ade7e510a3f
+https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda#d7585b6550ad04c8c5e21097ada2888e
https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda#6b6ece66ebcae2d5f326c77ef2c5a066
https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda#6c8979be6d7a17692793114fa26916e8
https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda#4de79c071274a53dcaf2a8c749d1499e
https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda#3339e3b65d58accf4ca4fb8748ab16b3
https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.6.0-pyhecae5ae_0.conda#9d64911b31d57ca443e9f1e36b04385f
-https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda#00d80af3a7bf27729484e786a68aafff
+https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda#d0fc809fa4c4d85e959ce4ab6e1de800
https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda#d2732eb636c264dc9aa4cbee404b1a53
https://conda.anaconda.org/conda-forge/linux-aarch64/tornado-6.5.2-py311hb9158a3_2.conda#6d68a78b162d9823e5abe63001c6df36
https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda#0caa1af407ecff61170c9437a808404d
@@ -136,28 +136,28 @@ https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxxf86vm-1.1.6-h86ec
https://conda.anaconda.org/conda-forge/linux-aarch64/coverage-7.12.0-py311h2dad8b0_0.conda#ddb3e5a915ecebd167f576268083c50b
https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda#8e662bd460bda79b1ea39194e3c4c9ab
https://conda.anaconda.org/conda-forge/linux-aarch64/fontconfig-2.15.0-h8dda3cd_1.conda#112b71b6af28b47c624bcbeefeea685b
-https://conda.anaconda.org/conda-forge/linux-aarch64/fonttools-4.60.1-py311h164a683_0.conda#e15201d7a1ed08ce5b85beca0d4a0131
+https://conda.anaconda.org/conda-forge/linux-aarch64/fonttools-4.61.0-py311h164a683_0.conda#3c533754d7ceb31f50f1f9bea8f2cb8f
https://conda.anaconda.org/conda-forge/noarch/joblib-1.5.2-pyhd8ed1ab_0.conda#4e717929cfa0d49cef92d911e31d0e90
-https://conda.anaconda.org/conda-forge/linux-aarch64/liblapacke-3.11.0-2_hb558247_openblas.conda#498aa2a8940c8c26c141dd4ce99e7843
-https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm21-21.1.6-hfd2ba90_0.conda#54e87a913eeaa2b27f2e7b491860f612
-https://conda.anaconda.org/conda-forge/linux-aarch64/libpq-18.1-haf03d9f_1.conda#11a55df5dc2234fcd4135e73fb5737d7
+https://conda.anaconda.org/conda-forge/linux-aarch64/liblapacke-3.11.0-4_hb558247_openblas.conda#447716292a5606947e25f0a8ffda7947
+https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm21-21.1.7-hfd2ba90_0.conda#6627fdee03b7c7d943f70fd74a7c2ab0
+https://conda.anaconda.org/conda-forge/linux-aarch64/libpq-18.1-haf03d9f_2.conda#8b0d66c4db91b3ef64daad7f61a569d0
https://conda.anaconda.org/conda-forge/linux-aarch64/libvulkan-loader-1.4.328.1-h8b8848b_0.conda#e5a3ff3a266b68398bd28ed1d4363e65
-https://conda.anaconda.org/conda-forge/linux-aarch64/libxkbcommon-1.13.0-h3c6a4c8_0.conda#a7c78be36bf59b4ba44ad2f2f8b92b37
+https://conda.anaconda.org/conda-forge/linux-aarch64/libxkbcommon-1.13.1-h3c6a4c8_0.conda#22c1ce28d481e490f3635c1b6a2bb23f
https://conda.anaconda.org/conda-forge/linux-aarch64/libxslt-1.1.43-h6700d25_1.conda#0f31501ccd51a40f0a91381080ae7368
https://conda.anaconda.org/conda-forge/linux-aarch64/numpy-2.3.5-py311h669026d_0.conda#5ca3db64e7fe0c00685b97104def7953
https://conda.anaconda.org/conda-forge/noarch/pip-25.3-pyh8b19718_0.conda#c55515ca43c6444d2572e0f0d93cb6b9
https://conda.anaconda.org/conda-forge/noarch/pyproject-metadata-0.10.0-pyhd8ed1ab_0.conda#d9998bf52ced268eb83749ad65a2e061
https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda#5b8d21249ff20967101ffa321cab24e8
https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxtst-1.2.5-h57736b2_3.conda#c05698071b5c8e0da82a282085845860
-https://conda.anaconda.org/conda-forge/linux-aarch64/blas-devel-3.11.0-2_h9678261_openblas.conda#c6f09be2e4ba1626ed277430111cb494
+https://conda.anaconda.org/conda-forge/linux-aarch64/blas-devel-3.11.0-4_h9678261_openblas.conda#bae5d65bab207969c4c37a1afb149f45
https://conda.anaconda.org/conda-forge/linux-aarch64/cairo-1.18.4-h83712da_0.conda#cd55953a67ec727db5dc32b167201aa6
https://conda.anaconda.org/conda-forge/linux-aarch64/contourpy-1.3.3-py311hfca10b7_3.conda#47c305536dbf44cd3e629b6851605a50
-https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp21.1-21.1.6-default_he95a3c9_0.conda#6457ea18e8c2a534017aa7c7c88768eb
-https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-21.1.6-default_h94a09a5_0.conda#9cf3f6e2f743eac1cd85b4e9e55ba8a5
+https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp21.1-21.1.7-default_he95a3c9_1.conda#6e80b4cf4d469505f168c0a16bb30ed8
+https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-21.1.7-default_h94a09a5_1.conda#d1124b3f50bd5e1b86033033fbd747c6
https://conda.anaconda.org/conda-forge/noarch/meson-python-0.18.0-pyh70fd9c4_0.conda#576c04b9d9f8e45285fb4d9452c26133
-https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.1-pyhcf101f3_0.conda#fa7f71faa234947d9c520f89b4bda1a2
+https://conda.anaconda.org/conda-forge/noarch/pytest-9.0.2-pyhcf101f3_0.conda#2b694bad8a50dc2f712f5368de866480
https://conda.anaconda.org/conda-forge/linux-aarch64/scipy-1.16.3-py311h33b5a33_1.conda#3d97f428e5e2f3d0f07f579d97e9fe70
-https://conda.anaconda.org/conda-forge/linux-aarch64/blas-2.302-openblas.conda#642f10de8032f498538c64494fcc3db8
+https://conda.anaconda.org/conda-forge/linux-aarch64/blas-2.304-openblas.conda#7987a64f37d8c509efc241968771f171
https://conda.anaconda.org/conda-forge/linux-aarch64/harfbuzz-12.2.0-he4899c9_0.conda#1437bf9690976948f90175a65407b65f
https://conda.anaconda.org/conda-forge/linux-aarch64/matplotlib-base-3.10.8-py311hb9c6b48_0.conda#4c9c9538c5a0a581b2dac04e2ea8c305
https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda#50d191b852fccb4bf9ab7b59b030c99d
diff --git a/build_tools/shared.sh b/build_tools/shared.sh
index 65e6d1946d33e..cc754738f53ff 100644
--- a/build_tools/shared.sh
+++ b/build_tools/shared.sh
@@ -65,6 +65,6 @@ create_conda_environment_from_lock_file() {
conda create --quiet --name $ENV_NAME --file $LOCK_FILE
else
python -m pip install "$(get_dep conda-lock min)"
- conda-lock install --log-level WARNING --name $ENV_NAME $LOCK_FILE
+ conda-lock install --name $ENV_NAME $LOCK_FILE
fi
}
diff --git a/doc/computing/computational_performance.rst b/doc/computing/computational_performance.rst
index 6aa0865b54c35..d1df34551e157 100644
--- a/doc/computing/computational_performance.rst
+++ b/doc/computing/computational_performance.rst
@@ -178,7 +178,7 @@ non-zero coefficients.
For the :mod:`sklearn.svm` family of algorithms with a non-linear kernel,
the latency is tied to the number of support vectors (the fewer the faster).
Latency and throughput should (asymptotically) grow linearly with the number
-of support vectors in a SVC or SVR model. The kernel will also influence the
+of support vectors in an SVC or SVR model. The kernel will also influence the
latency as it is used to compute the projection of the input vector once per
support vector. In the following graph the ``nu`` parameter of
:class:`~svm.NuSVR` was used to influence the number of
diff --git a/doc/developers/contributing.rst b/doc/developers/contributing.rst
index 1d582255f6c11..7e79b6bc19d33 100644
--- a/doc/developers/contributing.rst
+++ b/doc/developers/contributing.rst
@@ -24,15 +24,16 @@ Contributing
.. currentmodule:: sklearn
-This project is a community effort, and everyone is welcome to
-contribute. It is hosted on https://github.com/scikit-learn/scikit-learn.
+This project is a community effort, shaped by a large number of contributors from
+across the world. For more information on the history and people behind scikit-learn
+see :ref:`about`. It is hosted on https://github.com/scikit-learn/scikit-learn.
The decision making process and governance structure of scikit-learn is laid
out in :ref:`governance`.
Scikit-learn is :ref:`selective ` when it comes to
adding new algorithms and features. This means the best way to contribute
and help the project is to start working on known issues.
-See :ref:`new_contributors` to get started.
+See :ref:`ways_to_contribute` to learn how to make meaningful contributions.
.. topic:: **Our community, our values**
@@ -54,49 +55,33 @@ See :ref:`new_contributors` to get started.
Communications on all channels should respect our `Code of Conduct
`_.
-
-
-In case you experience issues using this package, do not hesitate to submit a
-ticket to the
-`GitHub issue tracker
-`_. You are also
-welcome to post feature requests or pull requests.
-
.. _ways_to_contribute:
Ways to contribute
==================
-There are many ways to contribute to scikit-learn. Improving the
-documentation is no less important than improving the code of the library
-itself. If you find a typo in the documentation, or have made improvements, do
-not hesitate to create a GitHub issue or preferably submit a GitHub pull request.
-
-There are many ways to help. In particular helping to
-:ref:`improve, triage, and investigate issues ` and
-:ref:`reviewing other developers' pull requests ` are very
-valuable contributions that move the project forward.
-
-Another way to contribute is to report issues you are facing, and give a "thumbs
-up" on issues that others reported and that are relevant to you. It also helps
-us if you spread the word: reference the project from your blog and articles,
-link to it from your website, or simply star to say "I use it":
-
-.. raw:: html
-
-
-
-
-
-In case a contribution/issue involves changes to the API principles
-or changes to dependencies or supported versions, it must be backed by a
-:ref:`slep`, where a SLEP must be submitted as a pull-request to
-`enhancement proposals `_
-using the `SLEP template `_
-and follows the decision-making process outlined in :ref:`governance`.
+There are many ways to contribute to scikit-learn. These include:
+
+* referencing scikit-learn from your blog and articles, linking to it from your website,
+ or simply
+ `staring it `__
+ to say "I use it"; this helps us promote the project
+* :ref:`improving and investigating issues `
+* :ref:`reviewing other developers' pull requests `
+* reporting difficulties when using this package by submitting an
+ `issue `__, and giving a
+ "thumbs up" on issues that others reported and that are relevant to you (see
+ :ref:`submitting_bug_feature` for details)
+* improving the :ref:`contribute_documentation`
+* making a code contribution
+
+There are many ways to contribute without writing code, and we value these
+contributions just as highly as code contributions. If you are interested in making
+a code contribution, please keep in mind that scikit-learn has evolved into a mature
+and complex project since its inception in 2007. Contributing to the project code
+generally requires advanced skills, and it may not be the best place to begin if you
+are new to open source contribution. In this case we suggest you follow the suggestions
+in :ref:`new_contributors`.
.. dropdown:: Contributing to related projects
@@ -125,16 +110,32 @@ New Contributors
----------------
We recommend new contributors start by reading this contributing guide, in
-particular :ref:`ways_to_contribute`, :ref:`automated_contributions_policy`
-and :ref:`pr_checklist`. For expected etiquette around which issues and stalled PRs
+particular :ref:`ways_to_contribute`, :ref:`automated_contributions_policy`.
+
+Next, we advise new contributors gain foundational knowledge on
+scikit-learn and open source by:
+
+* :ref:`improving and investigating issues `
+
+ * confirming that a problem reported can be reproduced and providing a
+ :ref:`minimal reproducible code ` (if missing), can help you
+ learn about different use cases and user needs
+ * investigating the root cause of an issue will aid you in familiarising yourself
+ with the scikit-learn codebase
+
+* :ref:`reviewing other developers' pull requests ` will help you
+ develop an understanding of the requirements and quality expected of contributions
+* improving the :ref:`contribute_documentation` can help deepen your knowledge
+ of the statistical concepts behind models and functions, and scikit-learn API
+
+If you wish to make code contributions after building your foundational knowledge, we
+recommend you start by looking for an issue that is of interest to you, in an area you
+are already familiar with as a user or have background knowledge of. We recommend
+starting with smaller pull requests and following our :ref:`pr_checklist`.
+For expected etiquette around which issues and stalled PRs
to work on, please read :ref:`stalled_pull_request`, :ref:`stalled_unclaimed_issues`
and :ref:`issues_tagged_needs_triage`.
-We understand that everyone has different interests and backgrounds, thus we recommend
-you start by looking for an issue that is of interest to you, in an area you are
-already familiar with as a user or have background knowledge of. We recommend starting
-with smaller pull requests, to get used to the contribution process.
-
We rarely use the "good first issue" label because it is difficult to make
assumptions about new contributors and these issues often prove more complex
than originally anticipated. It is still useful to check if there are
@@ -152,22 +153,28 @@ look.
Automated Contributions Policy
==============================
+Contributing to scikit-learn requires human judgment, contextual understanding, and
+familiarity with scikit-learn's structure and goals. It is not suitable for
+automatic processing by AI tools.
+
Please refrain from submitting issues or pull requests generated by
fully-automated tools. Maintainers reserve the right, at their sole discretion,
to close such submissions and to block any account responsible for them.
-Ideally, contributions should follow from a human-to-human discussion in the
-form of an issue. In particular, please do not paste AI generated text in the
-description of issues, PRs or in comments as it makes it significantly harder for
-reviewers to assess the relevance of your contribution and the potential value it
-brings to future end-users of the library. Note that it's fine to use AI tools
-to proofread or improve your draft text if you are not a native English speaker,
-but reviewers are not interested in unknowingly interacting back and forth with
-automated chatbots that fundamentally do not care about the value of our open
-source project.
+Review all code or documentation changes made by AI tools and
+make sure you understand all changes and can explain them on request, before
+submitting them under your name. Do not submit any AI-generated code that you haven't
+personally reviewed, understood and tested, as this wastes maintainers' time.
+
+Please do not paste AI generated text in the description of issues, PRs or in comments
+as this makes it harder for reviewers to assess your contribution. We are happy for it
+to be used to improve grammar or if you are not a native English speaker.
-Please self review all code or documentation changes made by AI tools before
-submitting them under your name.
+If you used AI tools, please state so in your PR description.
+
+PRs that appear to violate this policy will be closed without review.
+
+.. _submitting_bug_feature:
Submitting a bug report or a feature request
============================================
@@ -195,6 +202,13 @@ following rules before submitting:
- If you are submitting a bug report, we strongly encourage you to follow the guidelines in
:ref:`filing_bugs`.
+When a feature request involves changes to the API principles
+or changes to dependencies or supported versions, it must be backed by a
+:ref:`SLEP `, which must be submitted as a pull-request to
+`enhancement proposals `_
+using the `SLEP template `_
+and follows the decision-making process outlined in :ref:`governance`.
+
.. _filing_bugs:
How to make a good bug report
diff --git a/doc/developers/tips.rst b/doc/developers/tips.rst
index e4f67a08a08c8..52c8ad682572b 100644
--- a/doc/developers/tips.rst
+++ b/doc/developers/tips.rst
@@ -339,14 +339,14 @@ tutorials and documentation on the `valgrind web site `_.
.. _arm64_dev_env:
-Building and testing for the ARM64 platform on a x86_64 machine
-===============================================================
+Building and testing for the ARM64 platform on an x86_64 machine
+================================================================
ARM-based machines are a popular target for mobile, edge or other low-energy
deployments (including in the cloud, for instance on Scaleway or AWS Graviton).
Here are instructions to setup a local dev environment to reproduce
-ARM-specific bugs or test failures on a x86_64 host laptop or workstation. This
+ARM-specific bugs or test failures on an x86_64 host laptop or workstation. This
is based on QEMU user mode emulation using docker for convenience (see
https://github.com/multiarch/qemu-user-static).
diff --git a/doc/faq.rst b/doc/faq.rst
index bcf4b6145b2fb..271e2c9e73938 100644
--- a/doc/faq.rst
+++ b/doc/faq.rst
@@ -300,6 +300,32 @@ reviewers are busy. We ask for your understanding and request that you
not close your pull request or discontinue your work solely because of
this reason.
+For tips on how to make your pull request easier to review and more likely to be
+reviewed quickly, see :ref:`improve_issue_pr`.
+
+.. _improve_issue_pr:
+
+How do I improve my issue or pull request?
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+To help your issue receive attention or improve the likelihood of your pull request
+being reviewed, you can try:
+
+* follow our :ref:`contribution guidelines `, in particular
+ :ref:`automated_contributions_policy`, :ref:`filing_bugs`,
+ :ref:`stalled_pull_request` and :ref:`stalled_unclaimed_issues`.
+* complete the provided issue and pull request templates, including a clear and
+ concise description of the issue or motivation for the pull request.
+* ensure the title clearly describes the issue or pull request and does not include
+ an issue number.
+
+For your pull requests specifically, the following will make it easier to review:
+
+* ensure your PR satisfies all items in the
+ :ref:`Pull request checklist `.
+* ensure your PR addresses an issue for which there is clear consensus on the solution.
+* ensure the changes are minimal and directly relevant to the described issue.
+
What does the "spam" label for issues or pull requests mean?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -313,19 +339,9 @@ is final. A common reason for this happening is when people open a PR for an
issue that is still under discussion. Please wait for the discussion to
converge before opening a PR.
-If your issue or PR was labeled as spam and not closed the following steps
-can increase the chances of the label being removed:
-
-- follow the :ref:`contribution guidelines ` and use the provided
- issue and pull request templates
-- improve the formatting and grammar of the text of the title and description of the issue/PR
-- improve the diff to remove noise and unrelated changes
-- improve the issue or pull request title to be more descriptive
-- self review your code, especially if :ref:`you used AI tools to generate it `
-- refrain from opening PRs that paraphrase existing code or documentation
- without actually improving the correctness, clarity or educational
- value of the existing code or documentation.
-
+If your issue or PR was labeled as spam and not closed, see :ref:`improve_issue_pr`
+for tips on improving your issue or pull request and increasing the likelihood
+of the label being removed.
.. _new_algorithms_inclusion_criteria:
diff --git a/doc/glossary.rst b/doc/glossary.rst
index 9ff1eb001c8e5..1f214a11b7320 100644
--- a/doc/glossary.rst
+++ b/doc/glossary.rst
@@ -63,6 +63,12 @@ General Concepts
* a :class:`pandas.DataFrame` with all columns numeric
* a numeric :class:`pandas.Series`
+ Other array API inputs, but see :ref:`array_api` for the preferred way of
+ using these:
+
+ * a `PyTorch `_ tensor on 'cpu' device
+ * a `JAX `_ array
+
It excludes:
* a :term:`sparse matrix`
diff --git a/doc/jupyter-lite.json b/doc/jupyter-lite.json
index 9ad29615decb6..63a4ad485b310 100644
--- a/doc/jupyter-lite.json
+++ b/doc/jupyter-lite.json
@@ -3,7 +3,7 @@
"jupyter-config-data": {
"litePluginSettings": {
"@jupyterlite/pyodide-kernel-extension:kernel": {
- "pyodideUrl": "https://cdn.jsdelivr.net/pyodide/v0.27.2/full/pyodide.js"
+ "pyodideUrl": "https://cdn.jsdelivr.net/pyodide/v0.29.0/full/pyodide.js"
}
}
}
diff --git a/doc/modules/array_api.rst b/doc/modules/array_api.rst
index b9b46f99f3cae..7771cc92f338c 100644
--- a/doc/modules/array_api.rst
+++ b/doc/modules/array_api.rst
@@ -42,15 +42,26 @@ and how it facilitates interoperability between array libraries:
- `Scikit-learn on GPUs with Array API `_
by :user:`Thomas Fan ` at PyData NYC 2023.
-Example usage
-=============
+Enabling array API support
+==========================
The configuration `array_api_dispatch=True` needs to be set to `True` to enable array
API support. We recommend setting this configuration globally to ensure consistent
behaviour and prevent accidental mixing of array namespaces.
-Note that we set it with :func:`config_context` below to avoid having to call
-:func:`set_config(array_api_dispatch=False)` at the end of every code snippet
-that uses the array API.
+Note that in the examples below, we use a context manager (:func:`config_context`)
+to avoid having to reset it to `False` at the end of every code snippet, so as to
+not affect the rest of the documentation.
+
+Scikit-learn accepts :term:`array-like` inputs for all :mod:`metrics`
+and some estimators. When `array_api_dispatch=False`, these inputs are converted
+into NumPy arrays using :func:`numpy.asarray` (or :func:`numpy.array`).
+While this will successfully convert some array API inputs (e.g., JAX array),
+we generally recommend setting `array_api_dispatch=True` when using array API inputs.
+This is because NumPy conversion can often fail, e.g., torch tensor allocated on GPU.
+
+Example usage
+=============
+
The example code snippet below demonstrates how to use `CuPy
`_ to run
:class:`~discriminant_analysis.LinearDiscriminantAnalysis` on a GPU::
@@ -76,7 +87,7 @@ After the model is trained, fitted attributes that are arrays will also be
from the same Array API namespace as the training data. For example, if CuPy's
Array API namespace was used for training, then fitted attributes will be on the
GPU. We provide an experimental `_estimator_with_converted_arrays` utility that
-transfers an estimator attributes from Array API to a ndarray::
+transfers an estimator attributes from Array API to an ndarray::
>>> from sklearn.utils._array_api import _estimator_with_converted_arrays
>>> cupy_to_ndarray = lambda array : array.get()
@@ -122,6 +133,7 @@ Estimators
- :class:`naive_bayes.GaussianNB`
- :class:`preprocessing.Binarizer`
- :class:`preprocessing.KernelCenterer`
+- :class:`preprocessing.LabelBinarizer` (with `sparse_output=False`)
- :class:`preprocessing.LabelEncoder`
- :class:`preprocessing.MaxAbsScaler`
- :class:`preprocessing.MinMaxScaler`
@@ -201,6 +213,7 @@ Metrics
Tools
-----
+- :func:`preprocessing.label_binarize` (with `sparse_output=False`)
- :func:`model_selection.cross_val_predict`
- :func:`model_selection.train_test_split`
- :func:`utils.check_consistent_length`
diff --git a/doc/modules/model_evaluation.rst b/doc/modules/model_evaluation.rst
index c86fae1b6688b..a5e32336da38c 100644
--- a/doc/modules/model_evaluation.rst
+++ b/doc/modules/model_evaluation.rst
@@ -1302,7 +1302,7 @@ is defined by:
- w_{i, y_i}, 0\right\}
Here is a small example demonstrating the use of the :func:`hinge_loss` function
-with a svm classifier in a binary class problem::
+with an svm classifier in a binary class problem::
>>> from sklearn import svm
>>> from sklearn.metrics import hinge_loss
@@ -1318,7 +1318,7 @@ with a svm classifier in a binary class problem::
0.3
Here is an example demonstrating the use of the :func:`hinge_loss` function
-with a svm classifier in a multiclass problem::
+with an svm classifier in a multiclass problem::
>>> X = np.array([[0], [1], [2], [3]])
>>> Y = np.array([0, 1, 2, 3])
diff --git a/doc/templates/index.html b/doc/templates/index.html
index 08abde9895ea0..a7669f9b911b9 100644
--- a/doc/templates/index.html
+++ b/doc/templates/index.html
@@ -206,15 +206,13 @@
diff --git a/doc/whats_new/upcoming_changes/array-api/27113.feature.rst b/doc/whats_new/upcoming_changes/array-api/27113.feature.rst
deleted file mode 100644
index 5e044c82cd568..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/27113.feature.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :class:`sklearn.preprocessing.StandardScaler` now supports Array API compliant inputs.
- By :user:`Alexander Fabisch `, :user:`Edoardo Abati `,
- :user:`Olivier Grisel ` and :user:`Charles Hill `.
diff --git a/doc/whats_new/upcoming_changes/array-api/27961.feature.rst b/doc/whats_new/upcoming_changes/array-api/27961.feature.rst
deleted file mode 100644
index 3dbea99e0f749..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/27961.feature.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :class:`linear_model.RidgeCV`, :class:`linear_model.RidgeClassifier` and
- :class:`linear_model.RidgeClassifierCV` now support array API compatible
- inputs with `solver="svd"`.
- By :user:`Jérôme Dockès `.
diff --git a/doc/whats_new/upcoming_changes/array-api/29822.feature.rst b/doc/whats_new/upcoming_changes/array-api/29822.feature.rst
deleted file mode 100644
index 4cd3dc8d300cb..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/29822.feature.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-- :func:`metrics.pairwise.pairwise_kernels` for any kernel except
- "laplacian" and
- :func:`metrics.pairwise_distances` for metrics "cosine",
- "euclidean" and "l2" now support array API inputs.
- By :user:`Emily Chen ` and :user:`Lucy Liu `
diff --git a/doc/whats_new/upcoming_changes/array-api/30562.feature.rst b/doc/whats_new/upcoming_changes/array-api/30562.feature.rst
deleted file mode 100644
index 3c1a58d90bfe5..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/30562.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.metrics.confusion_matrix` now supports Array API compatible inputs.
- By :user:`Stefanie Senger `
diff --git a/doc/whats_new/upcoming_changes/array-api/30777.feature.rst b/doc/whats_new/upcoming_changes/array-api/30777.feature.rst
deleted file mode 100644
index aec9bb4da1e71..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/30777.feature.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :class:`sklearn.mixture.GaussianMixture` with
- `init_params="random"` or `init_params="random_from_data"` and
- `warm_start=False` now supports Array API compatible inputs.
- By :user:`Stefanie Senger ` and :user:`Loïc Estève `
diff --git a/doc/whats_new/upcoming_changes/array-api/30878.feature.rst b/doc/whats_new/upcoming_changes/array-api/30878.feature.rst
deleted file mode 100644
index fabb4c80f5713..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/30878.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.metrics.roc_curve` now supports Array API compatible inputs.
- By :user:`Thomas Li `
diff --git a/doc/whats_new/upcoming_changes/array-api/31580.feature.rst b/doc/whats_new/upcoming_changes/array-api/31580.feature.rst
deleted file mode 100644
index 3d7aaa4372109..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/31580.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :class:`preprocessing.PolynomialFeatures` now supports array API compatible inputs.
- By :user:`Omar Salman `
diff --git a/doc/whats_new/upcoming_changes/array-api/32246.feature.rst b/doc/whats_new/upcoming_changes/array-api/32246.feature.rst
deleted file mode 100644
index aaf015fd3ff79..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32246.feature.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :class:`calibration.CalibratedClassifierCV` now supports array API compatible
- inputs with `method="temperature"` and when the underlying `estimator` also
- supports the array API.
- By :user:`Omar Salman `
diff --git a/doc/whats_new/upcoming_changes/array-api/32249.feature.rst b/doc/whats_new/upcoming_changes/array-api/32249.feature.rst
deleted file mode 100644
index f8102a540328f..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32249.feature.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :func:`sklearn.metrics.precision_recall_curve` now supports array API compatible
- inputs.
- By :user:`Lucy Liu `
diff --git a/doc/whats_new/upcoming_changes/array-api/32270.feature.rst b/doc/whats_new/upcoming_changes/array-api/32270.feature.rst
deleted file mode 100644
index 1b2e4ce05090d..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32270.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.model_selection.cross_val_predict` now supports array API compatible inputs.
- By :user:`Omar Salman `
diff --git a/doc/whats_new/upcoming_changes/array-api/32422.feature.rst b/doc/whats_new/upcoming_changes/array-api/32422.feature.rst
deleted file mode 100644
index fa0cfe503d7f7..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32422.feature.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :func:`sklearn.metrics.brier_score_loss`, :func:`sklearn.metrics.log_loss`,
- :func:`sklearn.metrics.d2_brier_score` and :func:`sklearn.metrics.d2_log_loss_score`
- now support array API compatible inputs.
- By :user:`Omar Salman `
diff --git a/doc/whats_new/upcoming_changes/array-api/32497.feature.rst b/doc/whats_new/upcoming_changes/array-api/32497.feature.rst
deleted file mode 100644
index 1b02c72f043af..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32497.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :class:`naive_bayes.GaussianNB` now supports array API compatible inputs.
- By :user:`Omar Salman `
diff --git a/doc/whats_new/upcoming_changes/array-api/32586.feature.rst b/doc/whats_new/upcoming_changes/array-api/32586.feature.rst
deleted file mode 100644
index 8770a2422140b..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32586.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.metrics.det_curve` now supports Array API compliant inputs.
- By :user:`Josef Affourtit `.
diff --git a/doc/whats_new/upcoming_changes/array-api/32597.feature.rst b/doc/whats_new/upcoming_changes/array-api/32597.feature.rst
deleted file mode 100644
index 2d22190b4a052..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32597.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.metrics.pairwise.manhattan_distances` now supports array API compatible inputs.
- By :user:`Omar Salman `.
diff --git a/doc/whats_new/upcoming_changes/array-api/32600.feature.rst b/doc/whats_new/upcoming_changes/array-api/32600.feature.rst
deleted file mode 100644
index f39aa06a6cb70..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32600.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.metrics.calinski_harabasz_score` now supports Array API compliant inputs.
- By :user:`Josef Affourtit `.
diff --git a/doc/whats_new/upcoming_changes/array-api/32604.feature.rst b/doc/whats_new/upcoming_changes/array-api/32604.feature.rst
deleted file mode 100644
index 752ea5b9cb3b5..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32604.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.metrics.balanced_accuracy_score` now supports array API compatible inputs.
- By :user:`Omar Salman `.
diff --git a/doc/whats_new/upcoming_changes/array-api/32613.feature.rst b/doc/whats_new/upcoming_changes/array-api/32613.feature.rst
deleted file mode 100644
index 34c73b653f475..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32613.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.metrics.pairwise.laplacian_kernel` now supports array API compatible inputs.
- By :user:`Zubair Shakoor `.
diff --git a/doc/whats_new/upcoming_changes/array-api/32619.feature.rst b/doc/whats_new/upcoming_changes/array-api/32619.feature.rst
deleted file mode 100644
index ba3928cea8bce..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32619.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.metrics.cohen_kappa_score` now supports array API compatible inputs.
- By :user:`Omar Salman `.
diff --git a/doc/whats_new/upcoming_changes/array-api/32693.feature.rst b/doc/whats_new/upcoming_changes/array-api/32693.feature.rst
deleted file mode 100644
index 466ae99f4e360..0000000000000
--- a/doc/whats_new/upcoming_changes/array-api/32693.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`sklearn.metrics.cluster.davies_bouldin_score` now supports Array API compliant inputs.
- By :user:`Josef Affourtit `.
diff --git a/doc/whats_new/upcoming_changes/custom-top-level/custom-top-level-32079.other.rst b/doc/whats_new/upcoming_changes/custom-top-level/custom-top-level-32079.other.rst
deleted file mode 100644
index 0ac966843c075..0000000000000
--- a/doc/whats_new/upcoming_changes/custom-top-level/custom-top-level-32079.other.rst
+++ /dev/null
@@ -1,23 +0,0 @@
-Free-threaded CPython 3.14 support
-----------------------------------
-
-scikit-learn has support for free-threaded CPython, in particular
-free-threaded wheels are available for all of our supported platforms on Python
-3.14.
-
-Free-threaded (also known as nogil) CPython is a version of CPython that aims at
-enabling efficient multi-threaded use cases by removing the Global Interpreter
-Lock (GIL).
-
-If you want to try out free-threaded Python, the recommendation is to use
-Python 3.14, that has fixed a number of issues compared to Python 3.13. Feel
-free to try free-threaded on your use case and report any issues!
-
-For more details about free-threaded CPython see `py-free-threading doc `_,
-in particular `how to install a free-threaded CPython `_
-and `Ecosystem compatibility tracking `_.
-
-By :user:`Loïc Estève ` and :user:`Olivier Grisel ` and many
-other people in the wider Scientific Python and CPython ecosystem, for example
-:user:`Nathan Goldbaum `, :user:`Ralf Gommers `,
-:user:`Edgar Andrés Margffoy Tuay `.
diff --git a/doc/whats_new/upcoming_changes/many-modules/31775.efficiency.rst b/doc/whats_new/upcoming_changes/many-modules/31775.efficiency.rst
deleted file mode 100644
index 5aa067aeeb7cf..0000000000000
--- a/doc/whats_new/upcoming_changes/many-modules/31775.efficiency.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- Improved CPU and memory usage in estimators and metric functions that rely on
- weighted percentiles and better match NumPy and Scipy (un-weighted) implementations
- of percentiles.
- By :user:`Lucy Liu `
diff --git a/doc/whats_new/upcoming_changes/metadata-routing/31898.fix.rst b/doc/whats_new/upcoming_changes/metadata-routing/31898.fix.rst
deleted file mode 100644
index bb4b71974ca60..0000000000000
--- a/doc/whats_new/upcoming_changes/metadata-routing/31898.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- Fixed an issue where passing `sample_weight` to a :class:`Pipeline` inside a
- :class:`GridSearchCV` would raise an error with metadata routing enabled.
- By `Adrin Jalali`_.
diff --git a/doc/whats_new/upcoming_changes/sklearn.base/31928.feature.rst b/doc/whats_new/upcoming_changes/sklearn.base/31928.feature.rst
deleted file mode 100644
index 65b94b580f3de..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.base/31928.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- Refactored :meth:`dir` in :class:`BaseEstimator` to recognize condition check in :meth:`available_if`.
- By :user:`John Hendricks ` and :user:`Miguel Parece `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.base/32341.fix.rst b/doc/whats_new/upcoming_changes/sklearn.base/32341.fix.rst
deleted file mode 100644
index d5437f8273d37..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.base/32341.fix.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- Fixed the handling of pandas missing values in HTML display of all estimators.
- By :user: `Dea María Léon `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.calibration/31068.feature.rst b/doc/whats_new/upcoming_changes/sklearn.calibration/31068.feature.rst
deleted file mode 100644
index 4201db9ad0e59..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.calibration/31068.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- Added temperature scaling method in :class:`calibration.CalibratedClassifierCV`.
- By :user:`Virgil Chan ` and :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.cluster/31973.fix.rst b/doc/whats_new/upcoming_changes/sklearn.cluster/31973.fix.rst
deleted file mode 100644
index f04abbb889f7d..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.cluster/31973.fix.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- The default value of the `copy` parameter in :class:`cluster.HDBSCAN`
- will change from `False` to `True` in 1.10 to avoid data modification
- and maintain consistency with other estimators.
- By :user:`Sarthak Puri `.
\ No newline at end of file
diff --git a/doc/whats_new/upcoming_changes/sklearn.cluster/31991.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.cluster/31991.efficiency.rst
deleted file mode 100644
index 955b8b9ef4c14..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.cluster/31991.efficiency.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :func:`cluster.kmeans_plusplus` now uses `np.cumsum` directly without extra
- numerical stability checks and without casting to `np.float64`.
- By :user:`Tiziano Zito `
diff --git a/doc/whats_new/upcoming_changes/sklearn.compose/32188.fix.rst b/doc/whats_new/upcoming_changes/sklearn.compose/32188.fix.rst
deleted file mode 100644
index 1bd73934a426c..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.compose/32188.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- The :class:`compose.ColumnTransformer` now correctly fits on data provided as a
- `polars.DataFrame` when any transformer has a sparse output.
- By :user:`Phillipp Gnan `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.covariance/31987.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.covariance/31987.efficiency.rst
deleted file mode 100644
index a05849fd84ad8..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.covariance/31987.efficiency.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-- :class:`sklearn.covariance.GraphicalLasso`,
- :class:`sklearn.covariance.GraphicalLassoCV` and
- :func:`sklearn.covariance.graphical_lasso` with `mode="cd"` profit from the
- fit time performance improvement of :class:`sklearn.linear_model.Lasso` by means of
- gap safe screening rules.
- By :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.covariance/31987.fix.rst b/doc/whats_new/upcoming_changes/sklearn.covariance/31987.fix.rst
deleted file mode 100644
index 1728c7f9ead6e..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.covariance/31987.fix.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-- Fixed uncontrollable randomness in :class:`sklearn.covariance.GraphicalLasso`,
- :class:`sklearn.covariance.GraphicalLassoCV` and
- :func:`sklearn.covariance.graphical_lasso`. For `mode="cd"`, they now use cyclic
- coordinate descent. Before, it was random coordinate descent with uncontrollable
- random number seeding.
- By :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.covariance/32117.fix.rst b/doc/whats_new/upcoming_changes/sklearn.covariance/32117.fix.rst
deleted file mode 100644
index fb8145e22e5ed..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.covariance/32117.fix.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- Added correction to :class:`covariance.MinCovDet` to adjust for
- consistency at the normal distribution. This reduces the bias present
- when applying this method to data that is normally distributed.
- By :user:`Daniel Herrera-Esposito `
diff --git a/doc/whats_new/upcoming_changes/sklearn.decomposition/29310.fix.rst b/doc/whats_new/upcoming_changes/sklearn.decomposition/29310.fix.rst
deleted file mode 100644
index a6ff94cdac6ab..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.decomposition/29310.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- Add input checks to the `inverse_transform` method of :class:`decomposition.PCA`
- and :class:`decomposition.IncrementalPCA`.
- :pr:`29310` by :user:`Ian Faust `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.decomposition/31987.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.decomposition/31987.efficiency.rst
deleted file mode 100644
index 8edfdfcb74d31..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.decomposition/31987.efficiency.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-- :class:`sklearn.decomposition.DictionaryLearning` and
- :class:`sklearn.decomposition.MiniBatchDictionaryLearning` with `fit_algorithm="cd"`,
- :class:`sklearn.decomposition.SparseCoder` with `transform_algorithm="lasso_cd"`,
- :class:`sklearn.decomposition.MiniBatchSparsePCA`,
- :class:`sklearn.decomposition.SparsePCA`,
- :func:`sklearn.decomposition.dict_learning` and
- :func:`sklearn.decomposition.dict_learning_online` with `method="cd"`,
- :func:`sklearn.decomposition.sparse_encode` with `algorithm="lasso_cd"`
- all profit from the fit time performance improvement of
- :class:`sklearn.linear_model.Lasso` by means of gap safe screening rules.
- By :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.decomposition/32077.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.decomposition/32077.enhancement.rst
deleted file mode 100644
index aacff8ae1b76c..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.decomposition/32077.enhancement.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :class:`decomposition.SparseCoder` now follows the transformer API of scikit-learn.
- In addition, the :meth:`fit` method now validates the input and parameters.
- By :user:`François Paugam `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.discriminant_analysis/32108.feature.rst b/doc/whats_new/upcoming_changes/sklearn.discriminant_analysis/32108.feature.rst
deleted file mode 100644
index 1379a834c63a4..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.discriminant_analysis/32108.feature.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-- Added `solver`, `covariance_estimator` and `shrinkage` in
- :class:`discriminant_analysis.QuadraticDiscriminantAnalysis`.
- The resulting class is more similar to
- :class:`discriminant_analysis.LinearDiscriminantAnalysis`
- and allows for more flexibility in the estimation of the covariance matrices.
- By :user:`Daniel Herrera-Esposito `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.ensemble/31414.fix.rst b/doc/whats_new/upcoming_changes/sklearn.ensemble/31414.fix.rst
deleted file mode 100644
index 17c2f765d4b7c..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.ensemble/31414.fix.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-- :class:`ensemble.BaggingClassifier`, :class:`ensemble.BaggingRegressor`
- and :class:`ensemble.IsolationForest` now use `sample_weight` to draw
- the samples instead of forwarding them multiplied by a uniformly sampled
- mask to the underlying estimators. Furthermore, `max_samples` is now
- interpreted as a fraction of `sample_weight.sum()` instead of `X.shape[0]`
- when passed as a float.
- By :user:`Antoine Baker `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.feature_selection/31939.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.feature_selection/31939.enhancement.rst
deleted file mode 100644
index 8c038c35389ed..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.feature_selection/31939.enhancement.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :class:`feature_selection.SelectFromModel` now does not force `max_features` to be
- less than or equal to the number of input features.
- By :user:`Thibault `
diff --git a/doc/whats_new/upcoming_changes/sklearn.gaussian_process/31431.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.gaussian_process/31431.efficiency.rst
deleted file mode 100644
index 798f2ebb6bd2f..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.gaussian_process/31431.efficiency.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- make :class:`GaussianProcessRegressor.predict` faster when `return_cov` and
- `return_std` are both `False`.
- By :user:`Rafael Ayllón Gavilán `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/29097.api.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/29097.api.rst
deleted file mode 100644
index 8cb6265a607a5..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/29097.api.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-- :class:`linear_model.PassiveAggressiveClassifier` and
- :class:`linear_model.PassiveAggressiveRegressor` are deprecated and will be removed
- in 1.10. Equivalent estimators are available with :class:`linear_model.SGDClassifier`
- and :class:`SGDRegressor`, both of which expose the options `learning_rate="pa1"` and
- `"pa2"`. The parameter `eta0` can be used to specify the aggressiveness parameter of
- the Passive-Aggressive-Algorithms, called C in the reference paper.
- By :user:`Christian Lorentzen ` :pr:`31932` and
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/31474.api.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/31474.api.rst
deleted file mode 100644
index 845b9b502b9f1..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/31474.api.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-- :class:`linear_model.SGDClassifier`, :class:`linear_model.SGDRegressor`, and
- :class:`linear_model.SGDOneClassSVM` now deprecate negative values for the
- `power_t` parameter. Using a negative value will raise a warning in version 1.8
- and will raise an error in version 1.10. A value in the range [0.0, inf) must be used
- instead.
- By :user:`Ritvi Alagusankar `
\ No newline at end of file
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/31665.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/31665.efficiency.rst
deleted file mode 100644
index 24a8d53f80b23..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/31665.efficiency.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :class:`linear_model.ElasticNet` and :class:`linear_model.Lasso` with
- `precompute=False` use less memory for dense `X` and are a bit faster.
- Previously, they used twice the memory of `X` even for Fortran-contiguous `X`.
- By :user:`Christian Lorentzen `
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/31848.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/31848.efficiency.rst
deleted file mode 100644
index b76b7cacc8328..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/31848.efficiency.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :class:`linear_model.ElasticNet` and :class:`linear_model.Lasso` avoid
- double input checking and are therefore a bit faster.
- By :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/31856.fix.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/31856.fix.rst
deleted file mode 100644
index 8d9138d2b449a..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/31856.fix.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-- Fix the convergence criteria for SGD models, to avoid premature convergence when
- `tol != None`. This primarily impacts :class:`SGDOneClassSVM` but also affects
- :class:`SGDClassifier` and :class:`SGDRegressor`. Before this fix, only the loss
- function without penalty was used as the convergence check, whereas now, the full
- objective with regularization is used.
- By :user:`Guillaume Lemaitre ` and :user:`kostayScr `
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/31880.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/31880.efficiency.rst
deleted file mode 100644
index 195eb42d907eb..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/31880.efficiency.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-- :class:`linear_model.ElasticNet`, :class:`linear_model.ElasticNetCV`,
- :class:`linear_model.Lasso`, :class:`linear_model.LassoCV`,
- :class:`linear_model.MultiTaskElasticNet`,
- :class:`linear_model.MultiTaskElasticNetCV`,
- :class:`linear_model.MultiTaskLasso` and :class:`linear_model.MultiTaskLassoCV`
- are faster to fit by avoiding a BLAS level 1 (axpy) call in the innermost loop.
- Same for functions :func:`linear_model.enet_path` and
- :func:`linear_model.lasso_path`.
- By :user:`Christian Lorentzen ` :pr:`31956` and
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/31888.api.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/31888.api.rst
deleted file mode 100644
index a1ac21999bb09..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/31888.api.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- Raising error in :class:`sklearn.linear_model.LogisticRegression` when
- liblinear solver is used and input X values are larger than 1e30,
- the liblinear solver freezes otherwise.
- By :user:`Shruti Nath `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/31906.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/31906.enhancement.rst
deleted file mode 100644
index 8417c3dd2ac29..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/31906.enhancement.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-- :class:`linear_model.ElasticNet`, :class:`linear_model.ElasticNetCV`,
- :class:`linear_model.Lasso`, :class:`linear_model.LassoCV`,
- :class:`MultiTaskElasticNet`, :class:`MultiTaskElasticNetCV`,
- :class:`MultiTaskLasso`, :class:`MultiTaskLassoCV`, as well as
- :func:`linear_model.enet_path` and :func:`linear_model.lasso_path`
- now use `dual gap <= tol` instead of `dual gap < tol` as stopping criterion.
- The resulting coefficients might differ to previous versions of scikit-learn in
- rare cases.
- By :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/31933.fix.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/31933.fix.rst
deleted file mode 100644
index b4995b3908c35..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/31933.fix.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-- The allowed parameter range for the initial learning rate `eta0` in
- :class:`linear_model.SGDClassifier`, :class:`linear_model.SGDOneClassSVM`,
- :class:`linear_model.SGDRegressor` and :class:`linear_model.Perceptron`
- changed from non-negative numbers to strictly positive numbers.
- As a consequence, the default `eta0` of :class:`linear_model.SGDClassifier`
- and :class:`linear_model.SGDOneClassSVM` changed from 0 to 0.01. But note that
- `eta0` is not used by the default learning rate "optimal" of those two estimators.
- By :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/31946.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/31946.efficiency.rst
deleted file mode 100644
index 0a4fc0bccf2a6..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/31946.efficiency.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :class:`linear_model.ElasticNetCV`, :class:`linear_model.LassoCV`,
- :class:`linear_model.MultiTaskElasticNetCV` and :class:`linear_model.MultiTaskLassoCV`
- avoid an additional copy of `X` with default `copy_X=True`.
- By :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/32014.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/32014.efficiency.rst
deleted file mode 100644
index 6aab24b0854c5..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/32014.efficiency.rst
+++ /dev/null
@@ -1,13 +0,0 @@
-- :class:`linear_model.ElasticNet`, :class:`linear_model.ElasticNetCV`,
- :class:`linear_model.Lasso`, :class:`linear_model.LassoCV`,
- :class:`linear_model.MultiTaskElasticNetCV`, :class:`linear_model.MultiTaskLassoCV`
- as well as
- :func:`linear_model.lasso_path` and :func:`linear_model.enet_path` now implement
- gap safe screening rules in the coordinate descent solver for dense and sparse `X`.
- The speedup of fitting time is particularly pronounced (10-times is possible) when
- computing regularization paths like the \*CV-variants of the above estimators do.
- There is now an additional check of the stopping criterion before entering the main
- loop of descent steps. As the stopping criterion requires the computation of the dual
- gap, the screening happens whenever the dual gap is computed.
- By :user:`Christian Lorentzen ` :pr:`31882`, :pr:`31986`,
- :pr:`31987` and
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/32114.api.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/32114.api.rst
deleted file mode 100644
index 7b6768464cf81..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/32114.api.rst
+++ /dev/null
@@ -1,16 +0,0 @@
-- :class:`linear_model.LogisticRegressionCV` got a new parameter
- `use_legacy_attributes` to control the types and shapes of the fitted attributes
- `C_`, `l1_ratio_`, `coefs_paths_`, `scores_` and `n_iter_`.
- The current default value `True` keeps the legacy behaviour. If `False` then:
-
- - ``C_`` is a float.
- - ``l1_ratio_`` is a float.
- - ``coefs_paths_`` is an ndarray of shape
- (n_folds, n_l1_ratios, n_cs, n_classes, n_features).
- For binary problems (n_classes=2), the 2nd last dimension is 1.
- - ``scores_`` is an ndarray of shape (n_folds, n_l1_ratios, n_cs).
- - ``n_iter_`` is an ndarray of shape (n_folds, n_l1_ratios, n_cs).
-
- In version 1.10, the default will change to `False` and `use_legacy_attributes` will
- be deprecated. In 1.12 `use_legacy_attributes` will be removed.
- By :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/32659.api.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/32659.api.rst
deleted file mode 100644
index 00b3cd23a7de3..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/32659.api.rst
+++ /dev/null
@@ -1,27 +0,0 @@
-- Parameter `penalty` of :class:`linear_model.LogisticRegression` and
- :class:`linear_model.LogisticRegressionCV` is deprecated and will be removed in
- version 1.10. The equivalent behaviour can be obtained as follows:
-
- - for :class:`linear_model.LogisticRegression`
-
- - use `l1_ratio=0` instead of `penalty="l2"`
- - use `l1_ratio=1` instead of `penalty="l1"`
- - use `0`.
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/32742.api.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/32742.api.rst
deleted file mode 100644
index 0fd15ccf7371e..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/32742.api.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- The `n_jobs` parameter of :class:`linear_model.LogisticRegression` is deprecated and
- will be removed in 1.10. It has no effect since 1.8.
- By :user:`Loïc Estève `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.linear_model/32747.fix.rst b/doc/whats_new/upcoming_changes/sklearn.linear_model/32747.fix.rst
deleted file mode 100644
index 38e560d6f6f75..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.linear_model/32747.fix.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :class:`linear_model.LogisticRegressionCV` is able to handle CV splits where
- some class labels are missing in some folds. Before, it raised an error whenever a
- class label were missing in a fold.
- By :user:`Christian Lorentzen
diff --git a/doc/whats_new/upcoming_changes/sklearn.manifold/31322.major-feature.rst b/doc/whats_new/upcoming_changes/sklearn.manifold/31322.major-feature.rst
deleted file mode 100644
index 0d1610d69747f..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.manifold/31322.major-feature.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :class:`manifold.ClassicalMDS` was implemented to perform classical MDS
- (eigendecomposition of the double-centered distance matrix).
- By :user:`Dmitry Kobak ` and :user:`Meekail Zain `
diff --git a/doc/whats_new/upcoming_changes/sklearn.manifold/32229.feature.rst b/doc/whats_new/upcoming_changes/sklearn.manifold/32229.feature.rst
deleted file mode 100644
index b1af155f5a1c3..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.manifold/32229.feature.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-- :class:`manifold.MDS` now supports arbitrary distance metrics
- (via `metric` and `metric_params` parameters) and
- initialization via classical MDS (via `init` parameter).
- The `dissimilarity` parameter was deprecated. The old `metric` parameter
- was renamed into `metric_mds`.
- By :user:`Dmitry Kobak `
diff --git a/doc/whats_new/upcoming_changes/sklearn.manifold/32433.feature.rst b/doc/whats_new/upcoming_changes/sklearn.manifold/32433.feature.rst
deleted file mode 100644
index 6a65dd1ad56d9..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.manifold/32433.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :class:`manifold.TSNE` now supports PCA initialization with sparse input matrices.
- By :user:`Arturo Amor `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/28971.feature.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/28971.feature.rst
deleted file mode 100644
index 9a2379bc31114..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/28971.feature.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`metrics.d2_brier_score` has been added which calculates the D^2 for the Brier score.
- By :user:`Omar Salman `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/30134.feature.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/30134.feature.rst
deleted file mode 100644
index 09f0c99501395..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/30134.feature.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- Add :func:`metrics.confusion_matrix_at_thresholds` function that returns the number of
- true negatives, false positives, false negatives and true positives per threshold.
- By :user:`Success Moses `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/30787.fix.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/30787.fix.rst
deleted file mode 100644
index 13edbdfc7874d..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/30787.fix.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-- :func:`metrics.median_absolute_error` now uses `_averaged_weighted_percentile`
- instead of `_weighted_percentile` to calculate median when `sample_weight` is not
- `None`. This is equivalent to using the "averaged_inverted_cdf" instead of
- the "inverted_cdf" quantile method, which gives results equivalent to `numpy.median`
- if equal weights used.
- By :user:`Lucy Liu `
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/31294.api.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/31294.api.rst
deleted file mode 100644
index d5afd1d46e6e0..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/31294.api.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`metrics.cluster.entropy` is deprecated and will be removed in v1.10.
- By :user:`Lucy Liu `
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/31406.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/31406.enhancement.rst
deleted file mode 100644
index 4736c67c80132..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/31406.enhancement.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :func:`metrics.median_absolute_error` now supports Array API compatible inputs.
- By :user:`Lucy Liu `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/31701.fix.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/31701.fix.rst
deleted file mode 100644
index 646cdb544f496..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/31701.fix.rst
+++ /dev/null
@@ -1,21 +0,0 @@
-- Additional `sample_weight` checking has been added to
- :func:`metrics.accuracy_score`,
- :func:`metrics.balanced_accuracy_score`,
- :func:`metrics.brier_score_loss`,
- :func:`metrics.class_likelihood_ratios`,
- :func:`metrics.classification_report`,
- :func:`metrics.cohen_kappa_score`,
- :func:`metrics.confusion_matrix`,
- :func:`metrics.f1_score`,
- :func:`metrics.fbeta_score`,
- :func:`metrics.hamming_loss`,
- :func:`metrics.jaccard_score`,
- :func:`metrics.matthews_corrcoef`,
- :func:`metrics.multilabel_confusion_matrix`,
- :func:`metrics.precision_recall_fscore_support`,
- :func:`metrics.precision_score`,
- :func:`metrics.recall_score` and
- :func:`metrics.zero_one_loss`.
- `sample_weight` can only be 1D, consistent to `y_true` and `y_pred` in length,and
- all values must be finite and not complex.
- By :user:`Lucy Liu `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/31764.fix.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/31764.fix.rst
deleted file mode 100644
index 8dab2fc772563..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/31764.fix.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-- `y_pred` is deprecated in favour of `y_score` in
- :func:`metrics.DetCurveDisplay.from_predictions` and
- :func:`metrics.PrecisionRecallDisplay.from_predictions`. `y_pred` will be removed in
- v1.10.
- By :user:`Luis `
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/31891.fix.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/31891.fix.rst
deleted file mode 100644
index f1f280859a1e5..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/31891.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- `repr` on a scorer which has been created with a `partial` `score_func` now correctly
- works and uses the `repr` of the given `partial` object.
- By `Adrin Jalali`_.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/32047.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/32047.enhancement.rst
deleted file mode 100644
index 7fcad9a062ce7..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/32047.enhancement.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-- Improved the error message for sparse inputs for the following metrics:
- :func:`metrics.accuracy_score`,
- :func:`metrics.multilabel_confusion_matrix`, :func:`metrics.jaccard_score`,
- :func:`metrics.zero_one_loss`, :func:`metrics.f1_score`,
- :func:`metrics.fbeta_score`, :func:`metrics.precision_recall_fscore_support`,
- :func:`metrics.class_likelihood_ratios`, :func:`metrics.precision_score`,
- :func:`metrics.recall_score`, :func:`metrics.classification_report`,
- :func:`metrics.hamming_loss`.
- By :user:`Lucy Liu `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/32310.api.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/32310.api.rst
deleted file mode 100644
index ae7fc385b3bcc..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/32310.api.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- The `estimator_name` parameter is deprecated in favour of `name` in
- :class:`metrics.PrecisionRecallDisplay` and will be removed in 1.10.
- By :user:`Lucy Liu `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/32313.fix.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/32313.fix.rst
deleted file mode 100644
index b8f0fc21660da..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/32313.fix.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-- kwargs specified in the `curve_kwargs` parameter of
- :meth:`metrics.RocCurveDisplay.from_cv_results` now only overwrite their corresponding
- default value before being passed to Matplotlib's `plot`. Previously, passing any
- `curve_kwargs` would overwrite all default kwargs.
- By :user:`Lucy Liu `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/32356.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/32356.efficiency.rst
deleted file mode 100644
index 03b3e41f67911..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/32356.efficiency.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- Avoid redundant input validation in :func:`metrics.d2_log_loss_score`
- leading to a 1.2x speedup in large scale benchmarks.
- By :user:`Olivier Grisel ` and :user:`Omar Salman `
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/32356.fix.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/32356.fix.rst
deleted file mode 100644
index ac611096234b6..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/32356.fix.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- Registered named scorer objects for :func:`metrics.d2_brier_score` and
- :func:`metrics.d2_log_loss_score` and updated their input validation to be
- consistent with related metric functions.
- By :user:`Olivier Grisel ` and :user:`Omar Salman `
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/32372.fix.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/32372.fix.rst
deleted file mode 100644
index 5fa8d2204b312..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/32372.fix.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :meth:`metrics.RocCurveDisplay.from_cv_results` will now infer `pos_label` as
- `estimator.classes_[-1]`, using the estimator from `cv_results`, when
- `pos_label=None`. Previously, an error was raised when `pos_label=None`.
- By :user:`Lucy Liu `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.metrics/32549.fix.rst b/doc/whats_new/upcoming_changes/sklearn.metrics/32549.fix.rst
deleted file mode 100644
index 070e3d1e7fefe..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.metrics/32549.fix.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-- All classification metrics now raise a `ValueError` when required input arrays
- (`y_pred`, `y_true`, `y1`, `y2`, `pred_decision`, or `y_proba`) are empty.
- Previously, `accuracy_score`, `class_likelihood_ratios`, `classification_report`,
- `confusion_matrix`, `hamming_loss`, `jaccard_score`, `matthews_corrcoef`,
- `multilabel_confusion_matrix`, and `precision_recall_fscore_support` did not raise
- this error consistently.
- By :user:`Stefanie Senger `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.model_selection/32265.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.model_selection/32265.enhancement.rst
deleted file mode 100644
index b9c87bfec19d9..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.model_selection/32265.enhancement.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :class:`model_selection.StratifiedShuffleSplit` will now specify which classes
- have too few members when raising a ``ValueError`` if any class has less than 2 members.
- This is useful to identify which classes are causing the error.
- By :user:`Marc Bresson `
diff --git a/doc/whats_new/upcoming_changes/sklearn.model_selection/32540.fix.rst b/doc/whats_new/upcoming_changes/sklearn.model_selection/32540.fix.rst
deleted file mode 100644
index ec15ecccee161..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.model_selection/32540.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- Fix shuffle behaviour in :class:`model_selection.StratifiedGroupKFold`. Now
- stratification among folds is also preserved when `shuffle=True`.
- By :user:`Pau Folch `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.multiclass/15504.fix.rst b/doc/whats_new/upcoming_changes/sklearn.multiclass/15504.fix.rst
deleted file mode 100644
index 177a7309ae3f3..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.multiclass/15504.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- Fix tie-breaking behavior in :class:`multiclass.OneVsRestClassifier` to match
- `np.argmax` tie-breaking behavior.
- By :user:`Lakshmi Krishnan `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.naive_bayes/32497.fix.rst b/doc/whats_new/upcoming_changes/sklearn.naive_bayes/32497.fix.rst
deleted file mode 100644
index 855dd8c238f4a..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.naive_bayes/32497.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :class:`naive_bayes.GaussianNB` preserves the dtype of the fitted attributes
- according to the dtype of `X`.
- By :user:`Omar Salman `
diff --git a/doc/whats_new/upcoming_changes/sklearn.preprocessing/28043.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.preprocessing/28043.enhancement.rst
deleted file mode 100644
index 8195352292539..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.preprocessing/28043.enhancement.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- :class:`preprocessing.SplineTransformer` can now handle missing values with the
- parameter `handle_missing`. By :user:`Stefanie Senger `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.preprocessing/29307.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.preprocessing/29307.enhancement.rst
deleted file mode 100644
index aa9b02400a0c0..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.preprocessing/29307.enhancement.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- The :class:`preprocessing.PowerTransformer` now returns a warning
- when NaN values are encountered in the inverse transform, `inverse_transform`, typically
- caused by extremely skewed data.
- By :user:`Roberto Mourao `
\ No newline at end of file
diff --git a/doc/whats_new/upcoming_changes/sklearn.preprocessing/31790.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.preprocessing/31790.enhancement.rst
deleted file mode 100644
index caabc96b626fd..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.preprocessing/31790.enhancement.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :class:`preprocessing.MaxAbsScaler` can now clip out-of-range values in held-out data
- with the parameter `clip`.
- By :user:`Hleb Levitski `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.semi_supervised/31924.fix.rst b/doc/whats_new/upcoming_changes/sklearn.semi_supervised/31924.fix.rst
deleted file mode 100644
index fe21593d99680..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.semi_supervised/31924.fix.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- User written kernel results are now normalized in
- :class:`semi_supervised.LabelPropagation`
- so all row sums equal 1 even if kernel gives asymmetric or non-uniform row sums.
- By :user:`Dan Schult `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.tree/30041.fix.rst b/doc/whats_new/upcoming_changes/sklearn.tree/30041.fix.rst
deleted file mode 100644
index 98c90e31f36eb..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.tree/30041.fix.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- Make :func:`tree.export_text` thread-safe.
- By :user:`Olivier Grisel `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.tree/31036.fix.rst b/doc/whats_new/upcoming_changes/sklearn.tree/31036.fix.rst
deleted file mode 100644
index 32e26e180595d..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.tree/31036.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :func:`~sklearn.tree.export_graphviz` now raises a `ValueError` if given feature
- names are not all strings.
- By :user:`Guilherme Peixoto `
diff --git a/doc/whats_new/upcoming_changes/sklearn.tree/32100.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.tree/32100.efficiency.rst
deleted file mode 100644
index 0df37311f22ce..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.tree/32100.efficiency.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :class:`tree.DecisionTreeRegressor` with `criterion="absolute_error"`
- now runs much faster: O(n log n) complexity against previous O(n^2)
- allowing to scale to millions of data points, even hundred of millions.
- By :user:`Arthur Lacote `
diff --git a/doc/whats_new/upcoming_changes/sklearn.tree/32100.fix.rst b/doc/whats_new/upcoming_changes/sklearn.tree/32100.fix.rst
deleted file mode 100644
index 7d337131c25e6..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.tree/32100.fix.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-- :class:`tree.DecisionTreeRegressor` with `criterion="absolute_error"`
- would sometimes make sub-optimal splits
- (i.e. splits that don't minimize the absolute error).
- Now it's fixed. Hence retraining trees might gives slightly different
- results.
- By :user:`Arthur Lacote `
diff --git a/doc/whats_new/upcoming_changes/sklearn.tree/32259.fix.rst b/doc/whats_new/upcoming_changes/sklearn.tree/32259.fix.rst
deleted file mode 100644
index f25f0f2eec483..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.tree/32259.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- Fixed a regression in :ref:`decision trees ` where almost constant features were
- not handled properly.
- By :user:`Sercan Turkmen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.tree/32274.fix.rst b/doc/whats_new/upcoming_changes/sklearn.tree/32274.fix.rst
deleted file mode 100644
index 84c1123cf26c8..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.tree/32274.fix.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-- Fixed splitting logic during training in :class:`tree.DecisionTree*`
- (and consequently in :class:`ensemble.RandomForest*`)
- for nodes containing near-constant feature values and missing values.
- Beforehand, trees were cut short if a constant feature was found,
- even if there was more splitting that could be done on the basis of missing values.
- By :user:`Arthur Lacote `
diff --git a/doc/whats_new/upcoming_changes/sklearn.tree/32280.fix.rst b/doc/whats_new/upcoming_changes/sklearn.tree/32280.fix.rst
deleted file mode 100644
index 5ff0a9b453e77..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.tree/32280.fix.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- Fix handling of missing values in method :func:`decision_path` of trees
- (:class:`tree.DecisionTreeClassifier`, :class:`tree.DecisionTreeRegressor`,
- :class:`tree.ExtraTreeClassifier` and :class:`tree.ExtraTreeRegressor`)
- By :user:`Arthur Lacote `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.tree/32351.fix.rst b/doc/whats_new/upcoming_changes/sklearn.tree/32351.fix.rst
deleted file mode 100644
index 0c422d7a9e14c..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.tree/32351.fix.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- Fix decision tree splitting with missing values present in some features. In some cases the last
- non-missing sample would not be partitioned correctly.
- By :user:`Tim Head ` and :user:`Arthur Lacote `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.utils/31564.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.utils/31564.enhancement.rst
deleted file mode 100644
index 6b9ef89fdd01f..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.utils/31564.enhancement.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-- The parameter table in the HTML representation of all scikit-learn estimators and
- more generally of estimators inheriting from :class:`base.BaseEstimator`
- now displays the parameter description as a tooltip and has a link to the online
- documentation for each parameter.
- By :user:`Dea María Léon `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.utils/31873.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.utils/31873.enhancement.rst
deleted file mode 100644
index 6e82ce3713f5a..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.utils/31873.enhancement.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- ``sklearn.utils._check_sample_weight`` now raises a clearer error message when the
- provided weights are neither a scalar nor a 1-D array-like of the same size as the
- input data.
- By :user:`Kapil Parekh `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.utils/31951.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.utils/31951.enhancement.rst
deleted file mode 100644
index 556c406bff7b8..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.utils/31951.enhancement.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-- :func:`sklearn.utils.estimator_checks.parametrize_with_checks` now lets you configure
- strict mode for xfailing checks. Tests that unexpectedly pass will lead to a test
- failure. The default behaviour is unchanged.
- By :user:`Tim Head `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.utils/31952.efficiency.rst b/doc/whats_new/upcoming_changes/sklearn.utils/31952.efficiency.rst
deleted file mode 100644
index f334bfd81c8dd..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.utils/31952.efficiency.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-- The function :func:`sklearn.utils.extmath.safe_sparse_dot` was improved by a dedicated
- Cython routine for the case of `a @ b` with sparse 2-dimensional `a` and `b` and when
- a dense output is required, i.e., `dense_output=True`. This improves several
- algorithms in scikit-learn when dealing with sparse arrays (or matrices).
- By :user:`Christian Lorentzen `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.utils/31969.enhancement.rst b/doc/whats_new/upcoming_changes/sklearn.utils/31969.enhancement.rst
deleted file mode 100644
index 079b9c589bc91..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.utils/31969.enhancement.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- Fixed the alignment of the "?" and "i" symbols and improved the color style of the
- HTML representation of estimators.
- By :user:`Guillaume Lemaitre `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.utils/32258.api.rst b/doc/whats_new/upcoming_changes/sklearn.utils/32258.api.rst
deleted file mode 100644
index a8ab5744ddf87..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.utils/32258.api.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-- :func:`utils.extmath.stable_cumsum` is deprecated and will be removed
- in v1.10. Use `np.cumulative_sum` with the desired dtype directly instead.
- By :user:`Tiziano Zito `.
diff --git a/doc/whats_new/upcoming_changes/sklearn.utils/32330.fix.rst b/doc/whats_new/upcoming_changes/sklearn.utils/32330.fix.rst
deleted file mode 100644
index c2243ad2f7c3b..0000000000000
--- a/doc/whats_new/upcoming_changes/sklearn.utils/32330.fix.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-- Changes the way color are chosen when displaying an estimator as an HTML representation. Colors are not adapted anymore to the user's theme, but chosen based on theme declared color scheme (light or dark) for VSCode and JupyterLab. If theme does not declare a color scheme, scheme is chosen according to default text color of the page, if it fails fallbacks to a media query.
- By :user:`Matt J. `.
diff --git a/doc/whats_new/v1.8.rst b/doc/whats_new/v1.8.rst
index 603373824d395..fa39c6f1fed43 100644
--- a/doc/whats_new/v1.8.rst
+++ b/doc/whats_new/v1.8.rst
@@ -26,9 +26,680 @@ Version 1.8
.. towncrier release notes start
+.. _changes_1_8_0:
+
+Version 1.8.0
+=============
+
+**December 2025**
+
+Changes impacting many modules
+------------------------------
+
+- |Efficiency| Improved CPU and memory usage in estimators and metric functions that rely on
+ weighted percentiles and better match NumPy and Scipy (un-weighted) implementations
+ of percentiles.
+ By :user:`Lucy Liu ` :pr:`31775`
+
+Support for Array API
+---------------------
+
+Additional estimators and functions have been updated to include support for all
+`Array API `_ compliant inputs.
+
+See :ref:`array_api` for more details.
+
+- |Feature| :class:`sklearn.preprocessing.StandardScaler` now supports Array API compliant inputs.
+ By :user:`Alexander Fabisch `, :user:`Edoardo Abati `,
+ :user:`Olivier Grisel ` and :user:`Charles Hill `. :pr:`27113`
+
+- |Feature| :class:`linear_model.RidgeCV`, :class:`linear_model.RidgeClassifier` and
+ :class:`linear_model.RidgeClassifierCV` now support array API compatible
+ inputs with `solver="svd"`.
+ By :user:`Jérôme Dockès `. :pr:`27961`
+
+- |Feature| :func:`metrics.pairwise.pairwise_kernels` for any kernel except
+ "laplacian" and
+ :func:`metrics.pairwise_distances` for metrics "cosine",
+ "euclidean" and "l2" now support array API inputs.
+ By :user:`Emily Chen ` and :user:`Lucy Liu ` :pr:`29822`
+
+- |Feature| :func:`sklearn.metrics.confusion_matrix` now supports Array API compatible inputs.
+ By :user:`Stefanie Senger ` :pr:`30562`
+
+- |Feature| :class:`sklearn.mixture.GaussianMixture` with
+ `init_params="random"` or `init_params="random_from_data"` and
+ `warm_start=False` now supports Array API compatible inputs.
+ By :user:`Stefanie Senger ` and :user:`Loïc Estève ` :pr:`30777`
+
+- |Feature| :func:`sklearn.metrics.roc_curve` now supports Array API compatible inputs.
+ By :user:`Thomas Li ` :pr:`30878`
+
+- |Feature| :class:`preprocessing.PolynomialFeatures` now supports array API compatible inputs.
+ By :user:`Omar Salman ` :pr:`31580`
+
+- |Feature| :class:`calibration.CalibratedClassifierCV` now supports array API compatible
+ inputs with `method="temperature"` and when the underlying `estimator` also
+ supports the array API.
+ By :user:`Omar Salman ` :pr:`32246`
+
+- |Feature| :func:`sklearn.metrics.precision_recall_curve` now supports array API compatible
+ inputs.
+ By :user:`Lucy Liu ` :pr:`32249`
+
+- |Feature| :func:`sklearn.model_selection.cross_val_predict` now supports array API compatible inputs.
+ By :user:`Omar Salman ` :pr:`32270`
+
+- |Feature| :func:`sklearn.metrics.brier_score_loss`, :func:`sklearn.metrics.log_loss`,
+ :func:`sklearn.metrics.d2_brier_score` and :func:`sklearn.metrics.d2_log_loss_score`
+ now support array API compatible inputs.
+ By :user:`Omar Salman ` :pr:`32422`
+
+- |Feature| :class:`naive_bayes.GaussianNB` now supports array API compatible inputs.
+ By :user:`Omar Salman ` :pr:`32497`
+
+- |Feature| :class:`preprocessing.LabelBinarizer` and :func:`preprocessing.label_binarize` now
+ support numeric array API compatible inputs with `sparse_output=False`.
+ By :user:`Virgil Chan `. :pr:`32582`
+
+- |Feature| :func:`sklearn.metrics.det_curve` now supports Array API compliant inputs.
+ By :user:`Josef Affourtit `. :pr:`32586`
+
+- |Feature| :func:`sklearn.metrics.pairwise.manhattan_distances` now supports array API compatible inputs.
+ By :user:`Omar Salman `. :pr:`32597`
+
+- |Feature| :func:`sklearn.metrics.calinski_harabasz_score` now supports Array API compliant inputs.
+ By :user:`Josef Affourtit `. :pr:`32600`
+
+- |Feature| :func:`sklearn.metrics.balanced_accuracy_score` now supports array API compatible inputs.
+ By :user:`Omar Salman `. :pr:`32604`
+
+- |Feature| :func:`sklearn.metrics.pairwise.laplacian_kernel` now supports array API compatible inputs.
+ By :user:`Zubair Shakoor `. :pr:`32613`
+
+- |Feature| :func:`sklearn.metrics.cohen_kappa_score` now supports array API compatible inputs.
+ By :user:`Omar Salman `. :pr:`32619`
+
+- |Feature| :func:`sklearn.metrics.cluster.davies_bouldin_score` now supports Array API compliant inputs.
+ By :user:`Josef Affourtit `. :pr:`32693`
+
+- |Fix| Estimators with array API support no longer reject dataframe inputs when array API support is enabled.
+ By :user:`Tim Head ` :pr:`32838`
+
+Metadata routing
+----------------
+
+Refer to the :ref:`Metadata Routing User Guide ` for
+more details.
+
+- |Fix| Fixed an issue where passing `sample_weight` to a :class:`Pipeline` inside a
+ :class:`GridSearchCV` would raise an error with metadata routing enabled.
+ By `Adrin Jalali`_. :pr:`31898`
+
+Free-threaded CPython 3.14 support
+----------------------------------
+
+scikit-learn has support for free-threaded CPython, in particular
+free-threaded wheels are available for all of our supported platforms on Python
+3.14.
+
+Free-threaded (also known as nogil) CPython is a version of CPython that aims at
+enabling efficient multi-threaded use cases by removing the Global Interpreter
+Lock (GIL).
+
+If you want to try out free-threaded Python, the recommendation is to use
+Python 3.14, that has fixed a number of issues compared to Python 3.13. Feel
+free to try free-threaded on your use case and report any issues!
+
+For more details about free-threaded CPython see `py-free-threading doc `_,
+in particular `how to install a free-threaded CPython `_
+and `Ecosystem compatibility tracking `_.
+
+By :user:`Loïc Estève ` and :user:`Olivier Grisel ` and many
+other people in the wider Scientific Python and CPython ecosystem, for example
+:user:`Nathan Goldbaum `, :user:`Ralf Gommers `,
+:user:`Edgar Andrés Margffoy Tuay `. :pr:`32079`
+
+:mod:`sklearn.base`
+-------------------
+
+- |Feature| Refactored :meth:`dir` in :class:`BaseEstimator` to recognize condition check in :meth:`available_if`.
+ By :user:`John Hendricks ` and :user:`Miguel Parece `. :pr:`31928`
+
+- |Fix| Fixed the handling of pandas missing values in HTML display of all estimators.
+ By :user:`Dea María Léon `. :pr:`32341`
+
+:mod:`sklearn.calibration`
+--------------------------
+
+- |Feature| Added temperature scaling method in :class:`calibration.CalibratedClassifierCV`.
+ By :user:`Virgil Chan ` and :user:`Christian Lorentzen `. :pr:`31068`
+
+:mod:`sklearn.cluster`
+----------------------
+
+- |Efficiency| :func:`cluster.kmeans_plusplus` now uses `np.cumsum` directly without extra
+ numerical stability checks and without casting to `np.float64`.
+ By :user:`Tiziano Zito ` :pr:`31991`
+
+- |Fix| The default value of the `copy` parameter in :class:`cluster.HDBSCAN`
+ will change from `False` to `True` in 1.10 to avoid data modification
+ and maintain consistency with other estimators.
+ By :user:`Sarthak Puri `. :pr:`31973`
+
+:mod:`sklearn.compose`
+----------------------
+
+- |Fix| The :class:`compose.ColumnTransformer` now correctly fits on data provided as a
+ `polars.DataFrame` when any transformer has a sparse output.
+ By :user:`Phillipp Gnan `. :pr:`32188`
+
+:mod:`sklearn.covariance`
+-------------------------
+
+- |Efficiency| :class:`sklearn.covariance.GraphicalLasso`,
+ :class:`sklearn.covariance.GraphicalLassoCV` and
+ :func:`sklearn.covariance.graphical_lasso` with `mode="cd"` profit from the
+ fit time performance improvement of :class:`sklearn.linear_model.Lasso` by means of
+ gap safe screening rules.
+ By :user:`Christian Lorentzen `. :pr:`31987`
+
+- |Fix| Fixed uncontrollable randomness in :class:`sklearn.covariance.GraphicalLasso`,
+ :class:`sklearn.covariance.GraphicalLassoCV` and
+ :func:`sklearn.covariance.graphical_lasso`. For `mode="cd"`, they now use cyclic
+ coordinate descent. Before, it was random coordinate descent with uncontrollable
+ random number seeding.
+ By :user:`Christian Lorentzen `. :pr:`31987`
+
+- |Fix| Added correction to :class:`covariance.MinCovDet` to adjust for
+ consistency at the normal distribution. This reduces the bias present
+ when applying this method to data that is normally distributed.
+ By :user:`Daniel Herrera-Esposito ` :pr:`32117`
+
+:mod:`sklearn.decomposition`
+----------------------------
+
+- |Efficiency| :class:`sklearn.decomposition.DictionaryLearning` and
+ :class:`sklearn.decomposition.MiniBatchDictionaryLearning` with `fit_algorithm="cd"`,
+ :class:`sklearn.decomposition.SparseCoder` with `transform_algorithm="lasso_cd"`,
+ :class:`sklearn.decomposition.MiniBatchSparsePCA`,
+ :class:`sklearn.decomposition.SparsePCA`,
+ :func:`sklearn.decomposition.dict_learning` and
+ :func:`sklearn.decomposition.dict_learning_online` with `method="cd"`,
+ :func:`sklearn.decomposition.sparse_encode` with `algorithm="lasso_cd"`
+ all profit from the fit time performance improvement of
+ :class:`sklearn.linear_model.Lasso` by means of gap safe screening rules.
+ By :user:`Christian Lorentzen `. :pr:`31987`
+
+- |Enhancement| :class:`decomposition.SparseCoder` now follows the transformer API of scikit-learn.
+ In addition, the :meth:`fit` method now validates the input and parameters.
+ By :user:`François Paugam `. :pr:`32077`
+
+- |Fix| Add input checks to the `inverse_transform` method of :class:`decomposition.PCA`
+ and :class:`decomposition.IncrementalPCA`.
+ :pr:`29310` by :user:`Ian Faust `. :pr:`29310`
+
+:mod:`sklearn.discriminant_analysis`
+------------------------------------
+
+- |Feature| Added `solver`, `covariance_estimator` and `shrinkage` in
+ :class:`discriminant_analysis.QuadraticDiscriminantAnalysis`.
+ The resulting class is more similar to
+ :class:`discriminant_analysis.LinearDiscriminantAnalysis`
+ and allows for more flexibility in the estimation of the covariance matrices.
+ By :user:`Daniel Herrera-Esposito `. :pr:`32108`
+
+:mod:`sklearn.ensemble`
+-----------------------
+
+- |Fix| :class:`ensemble.BaggingClassifier`, :class:`ensemble.BaggingRegressor` and
+ :class:`ensemble.IsolationForest` now use `sample_weight` to draw the samples
+ instead of forwarding them multiplied by a uniformly sampled mask to the
+ underlying estimators. Furthermore, when `max_samples` is a float, it is now
+ interpreted as a fraction of `sample_weight.sum()` instead of `X.shape[0]`.
+ The new default `max_samples=None` draws `X.shape[0]` samples, irrespective
+ of `sample_weight`.
+ By :user:`Antoine Baker `. :pr:`31414` and :pr:`32825`
+
+:mod:`sklearn.feature_selection`
+--------------------------------
+
+- |Enhancement| :class:`feature_selection.SelectFromModel` now does not force `max_features` to be
+ less than or equal to the number of input features.
+ By :user:`Thibault ` :pr:`31939`
+
+:mod:`sklearn.gaussian_process`
+-------------------------------
+
+- |Efficiency| make :class:`GaussianProcessRegressor.predict` faster when `return_cov` and
+ `return_std` are both `False`.
+ By :user:`Rafael Ayllón Gavilán `. :pr:`31431`
+
+:mod:`sklearn.linear_model`
+---------------------------
+
+- |Efficiency| :class:`linear_model.ElasticNet` and :class:`linear_model.Lasso` with
+ `precompute=False` use less memory for dense `X` and are a bit faster.
+ Previously, they used twice the memory of `X` even for Fortran-contiguous `X`.
+ By :user:`Christian Lorentzen ` :pr:`31665`
+
+- |Efficiency| :class:`linear_model.ElasticNet` and :class:`linear_model.Lasso` avoid
+ double input checking and are therefore a bit faster.
+ By :user:`Christian Lorentzen `. :pr:`31848`
+
+- |Efficiency| :class:`linear_model.ElasticNet`, :class:`linear_model.ElasticNetCV`,
+ :class:`linear_model.Lasso`, :class:`linear_model.LassoCV`,
+ :class:`linear_model.MultiTaskElasticNet`,
+ :class:`linear_model.MultiTaskElasticNetCV`,
+ :class:`linear_model.MultiTaskLasso` and :class:`linear_model.MultiTaskLassoCV`
+ are faster to fit by avoiding a BLAS level 1 (axpy) call in the innermost loop.
+ Same for functions :func:`linear_model.enet_path` and
+ :func:`linear_model.lasso_path`.
+ By :user:`Christian Lorentzen ` :pr:`31956` and :pr:`31880`
+
+- |Efficiency| :class:`linear_model.ElasticNetCV`, :class:`linear_model.LassoCV`,
+ :class:`linear_model.MultiTaskElasticNetCV` and :class:`linear_model.MultiTaskLassoCV`
+ avoid an additional copy of `X` with default `copy_X=True`.
+ By :user:`Christian Lorentzen `. :pr:`31946`
+
+- |Efficiency| :class:`linear_model.ElasticNet`, :class:`linear_model.ElasticNetCV`,
+ :class:`linear_model.Lasso`, :class:`linear_model.LassoCV`,
+ :class:`linear_model.MultiTaskElasticNet`, :class:`linear_model.MultiTaskElasticNetCV`
+ :class:`linear_model.MultiTaskLasso`, :class:`linear_model.MultiTaskLassoCV`
+ as well as
+ :func:`linear_model.lasso_path` and :func:`linear_model.enet_path` now implement
+ gap safe screening rules in the coordinate descent solver for dense and sparse `X`.
+ The speedup of fitting time is particularly pronounced (10-times is possible) when
+ computing regularization paths like the \*CV-variants of the above estimators do.
+ There is now an additional check of the stopping criterion before entering the main
+ loop of descent steps. As the stopping criterion requires the computation of the dual
+ gap, the screening happens whenever the dual gap is computed.
+ By :user:`Christian Lorentzen ` :pr:`31882`, :pr:`31986`,
+ :pr:`31987` and :pr:`32014`
+
+- |Enhancement| :class:`linear_model.ElasticNet`, :class:`linear_model.ElasticNetCV`,
+ :class:`linear_model.Lasso`, :class:`linear_model.LassoCV`,
+ :class:`MultiTaskElasticNet`, :class:`MultiTaskElasticNetCV`,
+ :class:`MultiTaskLasso`, :class:`MultiTaskLassoCV`, as well as
+ :func:`linear_model.enet_path` and :func:`linear_model.lasso_path`
+ now use `dual gap <= tol` instead of `dual gap < tol` as stopping criterion.
+ The resulting coefficients might differ to previous versions of scikit-learn in
+ rare cases.
+ By :user:`Christian Lorentzen `. :pr:`31906`
+
+- |Fix| Fix the convergence criteria for SGD models, to avoid premature convergence when
+ `tol != None`. This primarily impacts :class:`SGDOneClassSVM` but also affects
+ :class:`SGDClassifier` and :class:`SGDRegressor`. Before this fix, only the loss
+ function without penalty was used as the convergence check, whereas now, the full
+ objective with regularization is used.
+ By :user:`Guillaume Lemaitre ` and :user:`kostayScr ` :pr:`31856`
+
+- |Fix| The allowed parameter range for the initial learning rate `eta0` in
+ :class:`linear_model.SGDClassifier`, :class:`linear_model.SGDOneClassSVM`,
+ :class:`linear_model.SGDRegressor` and :class:`linear_model.Perceptron`
+ changed from non-negative numbers to strictly positive numbers.
+ As a consequence, the default `eta0` of :class:`linear_model.SGDClassifier`
+ and :class:`linear_model.SGDOneClassSVM` changed from 0 to 0.01. But note that
+ `eta0` is not used by the default learning rate "optimal" of those two estimators.
+ By :user:`Christian Lorentzen `. :pr:`31933`
+
+- |Fix| :class:`linear_model.LogisticRegressionCV` is able to handle CV splits where
+ some class labels are missing in some folds. Before, it raised an error whenever a
+ class label were missing in a fold.
+ By :user:`Christian Lorentzen `. :pr:`32747`
+
+- |API| :class:`linear_model.PassiveAggressiveClassifier` and
+ :class:`linear_model.PassiveAggressiveRegressor` are deprecated and will be removed
+ in 1.10. Equivalent estimators are available with :class:`linear_model.SGDClassifier`
+ and :class:`SGDRegressor`, both of which expose the options `learning_rate="pa1"` and
+ `"pa2"`. The parameter `eta0` can be used to specify the aggressiveness parameter of
+ the Passive-Aggressive-Algorithms, called C in the reference paper.
+ By :user:`Christian Lorentzen ` :pr:`31932` and :pr:`29097`
+
+- |API| :class:`linear_model.SGDClassifier`, :class:`linear_model.SGDRegressor`, and
+ :class:`linear_model.SGDOneClassSVM` now deprecate negative values for the
+ `power_t` parameter. Using a negative value will raise a warning in version 1.8
+ and will raise an error in version 1.10. A value in the range [0.0, inf) must be used
+ instead.
+ By :user:`Ritvi Alagusankar ` :pr:`31474`
+
+- |API| Raising error in :class:`sklearn.linear_model.LogisticRegression` when
+ liblinear solver is used and input X values are larger than 1e30,
+ the liblinear solver freezes otherwise.
+ By :user:`Shruti Nath `. :pr:`31888`
+
+- |API| :class:`linear_model.LogisticRegressionCV` got a new parameter
+ `use_legacy_attributes` to control the types and shapes of the fitted attributes
+ `C_`, `l1_ratio_`, `coefs_paths_`, `scores_` and `n_iter_`.
+ The current default value `True` keeps the legacy behaviour. If `False` then:
+
+ - ``C_`` is a float.
+ - ``l1_ratio_`` is a float.
+ - ``coefs_paths_`` is an ndarray of shape
+ (n_folds, n_l1_ratios, n_cs, n_classes, n_features).
+ For binary problems (n_classes=2), the 2nd last dimension is 1.
+ - ``scores_`` is an ndarray of shape (n_folds, n_l1_ratios, n_cs).
+ - ``n_iter_`` is an ndarray of shape (n_folds, n_l1_ratios, n_cs).
+
+ In version 1.10, the default will change to `False` and `use_legacy_attributes` will
+ be deprecated. In 1.12 `use_legacy_attributes` will be removed.
+ By :user:`Christian Lorentzen `. :pr:`32114`
+
+- |API| Parameter `penalty` of :class:`linear_model.LogisticRegression` and
+ :class:`linear_model.LogisticRegressionCV` is deprecated and will be removed in
+ version 1.10. The equivalent behaviour can be obtained as follows:
+
+ - for :class:`linear_model.LogisticRegression`
+
+ - use `l1_ratio=0` instead of `penalty="l2"`
+ - use `l1_ratio=1` instead of `penalty="l1"`
+ - use `0`. :pr:`32659`
+
+- |API| The `n_jobs` parameter of :class:`linear_model.LogisticRegression` is deprecated and
+ will be removed in 1.10. It has no effect since 1.8.
+ By :user:`Loïc Estève `. :pr:`32742`
+
+:mod:`sklearn.manifold`
+-----------------------
+
+- |MajorFeature| :class:`manifold.ClassicalMDS` was implemented to perform classical MDS
+ (eigendecomposition of the double-centered distance matrix).
+ By :user:`Dmitry Kobak ` and :user:`Meekail Zain ` :pr:`31322`
+
+- |Feature| :class:`manifold.MDS` now supports arbitrary distance metrics
+ (via `metric` and `metric_params` parameters) and
+ initialization via classical MDS (via `init` parameter).
+ The `dissimilarity` parameter was deprecated. The old `metric` parameter
+ was renamed into `metric_mds`.
+ By :user:`Dmitry Kobak ` :pr:`32229`
+
+- |Feature| :class:`manifold.TSNE` now supports PCA initialization with sparse input matrices.
+ By :user:`Arturo Amor `. :pr:`32433`
+
+:mod:`sklearn.metrics`
+----------------------
+
+- |Feature| :func:`metrics.d2_brier_score` has been added which calculates the D^2 for the Brier score.
+ By :user:`Omar Salman `. :pr:`28971`
+
+- |Feature| Add :func:`metrics.confusion_matrix_at_thresholds` function that returns the number of
+ true negatives, false positives, false negatives and true positives per threshold.
+ By :user:`Success Moses `. :pr:`30134`
+
+- |Efficiency| Avoid redundant input validation in :func:`metrics.d2_log_loss_score`
+ leading to a 1.2x speedup in large scale benchmarks.
+ By :user:`Olivier Grisel ` and :user:`Omar Salman ` :pr:`32356`
+
+- |Enhancement| :func:`metrics.median_absolute_error` now supports Array API compatible inputs.
+ By :user:`Lucy Liu `. :pr:`31406`
+
+- |Enhancement| Improved the error message for sparse inputs for the following metrics:
+ :func:`metrics.accuracy_score`,
+ :func:`metrics.multilabel_confusion_matrix`, :func:`metrics.jaccard_score`,
+ :func:`metrics.zero_one_loss`, :func:`metrics.f1_score`,
+ :func:`metrics.fbeta_score`, :func:`metrics.precision_recall_fscore_support`,
+ :func:`metrics.class_likelihood_ratios`, :func:`metrics.precision_score`,
+ :func:`metrics.recall_score`, :func:`metrics.classification_report`,
+ :func:`metrics.hamming_loss`.
+ By :user:`Lucy Liu `. :pr:`32047`
+
+- |Fix| :func:`metrics.median_absolute_error` now uses `_averaged_weighted_percentile`
+ instead of `_weighted_percentile` to calculate median when `sample_weight` is not
+ `None`. This is equivalent to using the "averaged_inverted_cdf" instead of
+ the "inverted_cdf" quantile method, which gives results equivalent to `numpy.median`
+ if equal weights used.
+ By :user:`Lucy Liu ` :pr:`30787`
+
+- |Fix| Additional `sample_weight` checking has been added to
+ :func:`metrics.accuracy_score`,
+ :func:`metrics.balanced_accuracy_score`,
+ :func:`metrics.brier_score_loss`,
+ :func:`metrics.class_likelihood_ratios`,
+ :func:`metrics.classification_report`,
+ :func:`metrics.cohen_kappa_score`,
+ :func:`metrics.confusion_matrix`,
+ :func:`metrics.f1_score`,
+ :func:`metrics.fbeta_score`,
+ :func:`metrics.hamming_loss`,
+ :func:`metrics.jaccard_score`,
+ :func:`metrics.matthews_corrcoef`,
+ :func:`metrics.multilabel_confusion_matrix`,
+ :func:`metrics.precision_recall_fscore_support`,
+ :func:`metrics.precision_score`,
+ :func:`metrics.recall_score` and
+ :func:`metrics.zero_one_loss`.
+ `sample_weight` can only be 1D, consistent to `y_true` and `y_pred` in length,and
+ all values must be finite and not complex.
+ By :user:`Lucy Liu `. :pr:`31701`
+
+- |Fix| `y_pred` is deprecated in favour of `y_score` in
+ :func:`metrics.DetCurveDisplay.from_predictions` and
+ :func:`metrics.PrecisionRecallDisplay.from_predictions`. `y_pred` will be removed in
+ v1.10.
+ By :user:`Luis ` :pr:`31764`
+
+- |Fix| `repr` on a scorer which has been created with a `partial` `score_func` now correctly
+ works and uses the `repr` of the given `partial` object.
+ By `Adrin Jalali`_. :pr:`31891`
+
+- |Fix| kwargs specified in the `curve_kwargs` parameter of
+ :meth:`metrics.RocCurveDisplay.from_cv_results` now only overwrite their corresponding
+ default value before being passed to Matplotlib's `plot`. Previously, passing any
+ `curve_kwargs` would overwrite all default kwargs.
+ By :user:`Lucy Liu `. :pr:`32313`
+
+- |Fix| Registered named scorer objects for :func:`metrics.d2_brier_score` and
+ :func:`metrics.d2_log_loss_score` and updated their input validation to be
+ consistent with related metric functions.
+ By :user:`Olivier Grisel ` and :user:`Omar Salman ` :pr:`32356`
+
+- |Fix| :meth:`metrics.RocCurveDisplay.from_cv_results` will now infer `pos_label` as
+ `estimator.classes_[-1]`, using the estimator from `cv_results`, when
+ `pos_label=None`. Previously, an error was raised when `pos_label=None`.
+ By :user:`Lucy Liu `. :pr:`32372`
+
+- |Fix| All classification metrics now raise a `ValueError` when required input arrays
+ (`y_pred`, `y_true`, `y1`, `y2`, `pred_decision`, or `y_proba`) are empty.
+ Previously, `accuracy_score`, `class_likelihood_ratios`, `classification_report`,
+ `confusion_matrix`, `hamming_loss`, `jaccard_score`, `matthews_corrcoef`,
+ `multilabel_confusion_matrix`, and `precision_recall_fscore_support` did not raise
+ this error consistently.
+ By :user:`Stefanie Senger `. :pr:`32549`
+
+- |API| :func:`metrics.cluster.entropy` is deprecated and will be removed in v1.10.
+ By :user:`Lucy Liu ` :pr:`31294`
+
+- |API| The `estimator_name` parameter is deprecated in favour of `name` in
+ :class:`metrics.PrecisionRecallDisplay` and will be removed in 1.10.
+ By :user:`Lucy Liu `. :pr:`32310`
+
+:mod:`sklearn.model_selection`
+------------------------------
+
+- |Enhancement| :class:`model_selection.StratifiedShuffleSplit` will now specify which classes
+ have too few members when raising a ``ValueError`` if any class has less than 2 members.
+ This is useful to identify which classes are causing the error.
+ By :user:`Marc Bresson ` :pr:`32265`
+
+- |Fix| Fix shuffle behaviour in :class:`model_selection.StratifiedGroupKFold`. Now
+ stratification among folds is also preserved when `shuffle=True`.
+ By :user:`Pau Folch `. :pr:`32540`
+
+:mod:`sklearn.multiclass`
+-------------------------
+
+- |Fix| Fix tie-breaking behavior in :class:`multiclass.OneVsRestClassifier` to match
+ `np.argmax` tie-breaking behavior.
+ By :user:`Lakshmi Krishnan `. :pr:`15504`
+
+:mod:`sklearn.naive_bayes`
+--------------------------
+
+- |Fix| :class:`naive_bayes.GaussianNB` preserves the dtype of the fitted attributes
+ according to the dtype of `X`.
+ By :user:`Omar Salman ` :pr:`32497`
+
+:mod:`sklearn.preprocessing`
+----------------------------
+
+- |Enhancement| :class:`preprocessing.SplineTransformer` can now handle missing values with the
+ parameter `handle_missing`. By :user:`Stefanie Senger `. :pr:`28043`
+
+- |Enhancement| The :class:`preprocessing.PowerTransformer` now returns a warning
+ when NaN values are encountered in the inverse transform, `inverse_transform`, typically
+ caused by extremely skewed data.
+ By :user:`Roberto Mourao ` :pr:`29307`
+
+- |Enhancement| :class:`preprocessing.MaxAbsScaler` can now clip out-of-range values in held-out data
+ with the parameter `clip`.
+ By :user:`Hleb Levitski `. :pr:`31790`
+
+- |Fix| Fixed a bug in :class:`preprocessing.OneHotEncoder` where `handle_unknown='warn'` incorrectly behaved like `'ignore'` instead of `'infrequent_if_exist'`.
+ By :user:`Nithurshen ` :pr:`32592`
+
+:mod:`sklearn.semi_supervised`
+------------------------------
+
+- |Fix| User written kernel results are now normalized in
+ :class:`semi_supervised.LabelPropagation`
+ so all row sums equal 1 even if kernel gives asymmetric or non-uniform row sums.
+ By :user:`Dan Schult `. :pr:`31924`
+
+:mod:`sklearn.tree`
+-------------------
+
+- |Efficiency| :class:`tree.DecisionTreeRegressor` with `criterion="absolute_error"`
+ now runs much faster: O(n log n) complexity against previous O(n^2)
+ allowing to scale to millions of data points, even hundred of millions.
+ By :user:`Arthur Lacote ` :pr:`32100`
+
+- |Fix| Make :func:`tree.export_text` thread-safe.
+ By :user:`Olivier Grisel `. :pr:`30041`
+
+- |Fix| :func:`~sklearn.tree.export_graphviz` now raises a `ValueError` if given feature
+ names are not all strings.
+ By :user:`Guilherme Peixoto ` :pr:`31036`
+
+- |Fix| :class:`tree.DecisionTreeRegressor` with `criterion="absolute_error"`
+ would sometimes make sub-optimal splits
+ (i.e. splits that don't minimize the absolute error).
+ Now it's fixed. Hence retraining trees might gives slightly different
+ results.
+ By :user:`Arthur Lacote ` :pr:`32100`
+
+- |Fix| Fixed a regression in :ref:`decision trees ` where almost constant features were
+ not handled properly.
+ By :user:`Sercan Turkmen `. :pr:`32259`
+
+- |Fix| Fixed splitting logic during training in :class:`tree.DecisionTree*`
+ (and consequently in :class:`ensemble.RandomForest*`)
+ for nodes containing near-constant feature values and missing values.
+ Beforehand, trees were cut short if a constant feature was found,
+ even if there was more splitting that could be done on the basis of missing values.
+ By :user:`Arthur Lacote ` :pr:`32274`
+
+- |Fix| Fix handling of missing values in method :func:`decision_path` of trees
+ (:class:`tree.DecisionTreeClassifier`, :class:`tree.DecisionTreeRegressor`,
+ :class:`tree.ExtraTreeClassifier` and :class:`tree.ExtraTreeRegressor`)
+ By :user:`Arthur Lacote `. :pr:`32280`
+
+- |Fix| Fix decision tree splitting with missing values present in some features. In some cases the last
+ non-missing sample would not be partitioned correctly.
+ By :user:`Tim Head ` and :user:`Arthur Lacote `. :pr:`32351`
+
+:mod:`sklearn.utils`
+--------------------
+
+- |Efficiency| The function :func:`sklearn.utils.extmath.safe_sparse_dot` was improved by a dedicated
+ Cython routine for the case of `a @ b` with sparse 2-dimensional `a` and `b` and when
+ a dense output is required, i.e., `dense_output=True`. This improves several
+ algorithms in scikit-learn when dealing with sparse arrays (or matrices).
+ By :user:`Christian Lorentzen `. :pr:`31952`
+
+- |Enhancement| The parameter table in the HTML representation of all scikit-learn estimators and
+ more generally of estimators inheriting from :class:`base.BaseEstimator`
+ now displays the parameter description as a tooltip and has a link to the online
+ documentation for each parameter.
+ By :user:`Dea María Léon `. :pr:`31564`
+
+- |Enhancement| ``sklearn.utils._check_sample_weight`` now raises a clearer error message when the
+ provided weights are neither a scalar nor a 1-D array-like of the same size as the
+ input data.
+ By :user:`Kapil Parekh `. :pr:`31873`
+
+- |Enhancement| :func:`sklearn.utils.estimator_checks.parametrize_with_checks` now lets you configure
+ strict mode for xfailing checks. Tests that unexpectedly pass will lead to a test
+ failure. The default behaviour is unchanged.
+ By :user:`Tim Head `. :pr:`31951`
+
+- |Enhancement| Fixed the alignment of the "?" and "i" symbols and improved the color style of the
+ HTML representation of estimators.
+ By :user:`Guillaume Lemaitre `. :pr:`31969`
+
+- |Fix| Changes the way color are chosen when displaying an estimator as an HTML representation. Colors are not adapted anymore to the user's theme, but chosen based on theme declared color scheme (light or dark) for VSCode and JupyterLab. If theme does not declare a color scheme, scheme is chosen according to default text color of the page, if it fails fallbacks to a media query.
+ By :user:`Matt J. `. :pr:`32330`
+
+- |API| :func:`utils.extmath.stable_cumsum` is deprecated and will be removed
+ in v1.10. Use `np.cumulative_sum` with the desired dtype directly instead.
+ By :user:`Tiziano Zito `. :pr:`32258`
+
.. rubric:: Code and documentation contributors
Thanks to everyone who has contributed to the maintenance and improvement of
the project since version 1.7, including:
-TODO: update at the time of the release.
+$id, 4hm3d, Acciaro Gennaro Daniele, achyuthan.s, Adam J. Stewart, Adriano
+Leão, Adrien Linares, Adrin Jalali, Aitsaid Azzedine Idir, Alexander Fabisch,
+Alexandre Abraham, Andrés H. Zapke, Anne Beyer, Anthony Gitter, AnthonyPrudent,
+antoinebaker, Arpan Mukherjee, Arthur, Arthur Lacote, Arturo Amor,
+ayoub.agouzoul, Ayrat, Ayush, Ayush Tanwar, Basile Jezequel, Bhavya Patwa,
+BRYANT MUSI BABILA, Casey Heath, Chems Ben, Christian Lorentzen, Christian
+Veenhuis, Christine P. Chai, cstec, C. Titus Brown, Daniel Herrera-Esposito,
+Dan Schult, dbXD320, Dea María Léon, Deepyaman Datta, dependabot[bot], Dhyey
+Findoriya, Dimitri Papadopoulos Orfanos, Dipak Dhangar, Dmitry Kobak,
+elenafillo, Elham Babaei, EmilyXinyi, Emily (Xinyi) Chen, Eugen-Bleck, Evgeni
+Burovski, fabarca, Fabrizio Damicelli, Faizan-Ul Huda, François Goupil,
+François Paugam, Gaetan, GaetandeCast, Gesa Loof, Gonçalo Guiomar, Gordon Grey,
+Gowtham Kumar K., Guilherme Peixoto, Guillaume Lemaitre, hakan çanakçı, Harshil
+Sanghvi, Henri Bonamy, Hleb Levitski, HulusiOzy, hvtruong, Ian Faust, Imad
+Saddik, Jérémie du Boisberranger, Jérôme Dockès, John Hendricks, Joris Van den
+Bossche, Josef Affourtit, Josh, jshn9515, Junaid, KALLA GANASEKHAR, Kapil
+Parekh, Kenneth Enevoldsen, Kian Eliasi, kostayScr, Krishnan Vignesh, kryggird,
+Kyle S, Lakshmi Krishnan, Leomax, Loic Esteve, Luca Bittarello, Lucas Colley,
+Lucy Liu, Luigi Giugliano, Luis, Mahdi Abid, Mahi Dhiman, Maitrey Talware,
+Mamduh Zabidi, Manikandan Gobalakrishnan, Marc Bresson, Marco Edward Gorelli,
+Marek Pokropiński, Maren Westermann, Marie Sacksick, Marija Vlajic, Matt J.,
+Mayank Raj, Michael Burkhart, Michael Šimáček, Miguel Fernandes, Miro Hrončok,
+Mohamed DHIFALLAH, Muhammad Waseem, MUHAMMED SINAN D, Natalia Mokeeva, Nicholas
+Farr, Nicolas Bolle, Nicolas Hug, nithish-74, Nithurshen, Nitin Pratap Singh,
+NotAceNinja, Olivier Grisel, omahs, Omar Salman, Patrick Walsh, Peter Holzer,
+pfolch, ph-ll-pp, Prashant Bansal, Quan H. Nguyen, Radovenchyk, Rafael Ayllón
+Gavilán, Raghvender, Ranjodh Singh, Ravichandranayakar, Remi Gau, Reshama
+Shaikh, Richard Harris, RishiP2006, Ritvi Alagusankar, Roberto Mourao, Robert
+Pollak, Roshangoli, roychan, R Sagar Shresti, Sarthak Puri, saskra,
+scikit-learn-bot, Scott Huberty, Sercan Turkmen, Sergio P, Shashank S, Shaurya
+Bisht, Shivam, Shruti Nath, SIKAI ZHANG, sisird864, SiyuJin-1, S. M. Mohiuddin
+Khan Shiam, Somdutta Banerjee, sotagg, Sota Goto, Spencer Bradkin, Stefan,
+Stefanie Senger, Steffen Rehberg, Steven Hur, Success Moses, Sylvain Combettes,
+ThibaultDECO, Thomas J. Fan, Thomas Li, Thomas S., Tim Head, Tingwei Zhu,
+Tiziano Zito, TJ Norred, Username46786, Utsab Dahal, Vasanth K, Veghit,
+VirenPassi, Virgil Chan, Vivaan Nanavati, Xiao Yuan, xuzhang0327, Yaroslav
+Halchenko, Yaswanth Kumar, Zijun yi, zodchi94, Zubair Shakoor
diff --git a/examples/applications/plot_face_recognition.py b/examples/applications/plot_face_recognition.py
index add219aed1610..e14c2686514ef 100644
--- a/examples/applications/plot_face_recognition.py
+++ b/examples/applications/plot_face_recognition.py
@@ -83,7 +83,7 @@
# %%
-# Train a SVM classification model
+# Train an SVM classification model
print("Fitting the classifier to the training set")
t0 = time()
diff --git a/examples/compose/plot_column_transformer.py b/examples/compose/plot_column_transformer.py
index 8f779d085614a..f61b3b04b0195 100644
--- a/examples/compose/plot_column_transformer.py
+++ b/examples/compose/plot_column_transformer.py
@@ -171,7 +171,7 @@ def text_stats(posts):
},
),
),
- # Use a SVC classifier on the combined features
+ # Use an SVC classifier on the combined features
("svc", LinearSVC(dual=False)),
],
verbose=True,
diff --git a/examples/miscellaneous/plot_roc_curve_visualization_api.py b/examples/miscellaneous/plot_roc_curve_visualization_api.py
index 1aacbd9de3631..2a9b14fdeabcf 100644
--- a/examples/miscellaneous/plot_roc_curve_visualization_api.py
+++ b/examples/miscellaneous/plot_roc_curve_visualization_api.py
@@ -13,8 +13,8 @@
# SPDX-License-Identifier: BSD-3-Clause
# %%
-# Load Data and Train a SVC
-# -------------------------
+# Load Data and Train an SVC
+# --------------------------
# First, we load the wine dataset and convert it to a binary classification
# problem. Then, we train a support vector classifier on a training dataset.
import matplotlib.pyplot as plt
diff --git a/examples/model_selection/plot_learning_curve.py b/examples/model_selection/plot_learning_curve.py
index d8060c67cbe15..876c70c0d901e 100644
--- a/examples/model_selection/plot_learning_curve.py
+++ b/examples/model_selection/plot_learning_curve.py
@@ -24,8 +24,8 @@
# process. The effect is depicted by checking the statistical performance of
# the model in terms of training score and testing score.
#
-# Here, we compute the learning curve of a naive Bayes classifier and a SVM
-# classifier with a RBF kernel using the digits dataset.
+# Here, we compute the learning curve of a naive Bayes classifier and an SVM
+# classifier with an RBF kernel using the digits dataset.
from sklearn.datasets import load_digits
from sklearn.naive_bayes import GaussianNB
from sklearn.svm import SVC
diff --git a/examples/release_highlights/plot_release_highlights_1_8_0.py b/examples/release_highlights/plot_release_highlights_1_8_0.py
new file mode 100644
index 0000000000000..3414a512724f4
--- /dev/null
+++ b/examples/release_highlights/plot_release_highlights_1_8_0.py
@@ -0,0 +1,288 @@
+# ruff: noqa: CPY001
+"""
+=======================================
+Release Highlights for scikit-learn 1.8
+=======================================
+
+.. currentmodule:: sklearn
+
+We are pleased to announce the release of scikit-learn 1.8! Many bug fixes
+and improvements were added, as well as some key new features. Below we
+detail the highlights of this release. **For an exhaustive list of
+all the changes**, please refer to the :ref:`release notes `.
+
+To install the latest version (with pip)::
+
+ pip install --upgrade scikit-learn
+
+or with conda::
+
+ conda install -c conda-forge scikit-learn
+
+"""
+
+# %%
+# Array API support (enables GPU computations)
+# --------------------------------------------
+# The progressive adoption of the Python array API standard in
+# scikit-learn means that PyTorch and CuPy input arrays
+# are used directly. This means that in scikit-learn estimators
+# and functions non-CPU devices, such as GPUs, can be used
+# to perform the computation. As a result performance is improved
+# and integration with these libraries is easier.
+#
+# In scikit-learn 1.8, several estimators and functions have been updated to
+# support array API compatible inputs, for example PyTorch tensors and CuPy
+# arrays.
+#
+# Array API support was added to the following estimators:
+# :class:`preprocessing.StandardScaler`,
+# :class:`preprocessing.PolynomialFeatures`, :class:`linear_model.RidgeCV`,
+# :class:`linear_model.RidgeClassifierCV`, :class:`mixture.GaussianMixture` and
+# :class:`calibration.CalibratedClassifierCV`.
+#
+# Array API support was also added to several metrics in :mod:`sklearn.metrics`
+# module, see :ref:`array_api_supported` for more details.
+#
+# Please refer to the :ref:`array API support` page for instructions
+# to use scikit-learn with array API compatible libraries such as PyTorch or CuPy.
+# Note: Array API support is experimental and must be explicitly enabled both
+# in SciPy and scikit-learn.
+#
+# Here is an excerpt of using a feature engineering preprocessor on the CPU,
+# followed by :class:`calibration.CalibratedClassifierCV`
+# and :class:`linear_model.RidgeCV` together on a GPU with the help of PyTorch:
+#
+# .. code-block:: python
+#
+# ridge_pipeline_gpu = make_pipeline(
+# # Ensure that all features (including categorical features) are preprocessed
+# # on the CPU and mapped to a numerical representation.
+# feature_preprocessor,
+# # Move the results to the GPU and perform computations there
+# FunctionTransformer(
+# lambda x: torch.tensor(x.to_numpy().astype(np.float32), device="cuda"))
+# ,
+# CalibratedClassifierCV(
+# RidgeClassifierCV(alphas=alphas), method="temperature"
+# ),
+# )
+# with sklearn.config_context(array_api_dispatch=True):
+# cv_results = cross_validate(ridge_pipeline_gpu, features, target)
+#
+#
+# See the `full notebook on Google Colab
+# `_
+# for more details. On this particular example, using the Colab GPU vs using a
+# single CPU core leads to a 10x speedup which is quite typical for such workloads.
+
+# %%
+# Free-threaded CPython 3.14 support
+# ----------------------------------
+#
+# scikit-learn has support for free-threaded CPython, in particular
+# free-threaded wheels are available for all of our supported platforms on Python
+# 3.14.
+#
+# We would be very interested by user feedback. Here are a few things you can
+# try:
+#
+# - install free-threaded CPython 3.14, run your favourite
+# scikit-learn script and check that nothing breaks unexpectedly.
+# Note that CPython 3.14 (rather than 3.13) is strongly advised because a
+# number of free-threaded bugs have been fixed since CPython 3.13.
+# - if you use some estimators with a `n_jobs` parameter, try changing the
+# default backend to threading with `joblib.parallel_config` as in the
+# snippet below. This could potentially speed-up your code because the
+# default joblib backend is process-based and incurs more overhead than
+# threads.
+#
+# .. code-block:: python
+#
+# grid_search = GridSearchCV(clf, param_grid=param_grid, n_jobs=4)
+# with joblib.parallel_config(backend="threading"):
+# grid_search.fit(X, y)
+#
+# - don't hesitate to report any issue or unexpected performance behaviour by
+# opening a `GitHub issue `_!
+#
+# Free-threaded (also known as nogil) CPython is a version of CPython that aims
+# to enable efficient multi-threaded use cases by removing the Global
+# Interpreter Lock (GIL).
+#
+# For more details about free-threaded CPython see `py-free-threading doc
+#