From ae948f84fc30b0cc7906439796ee984541c825d6 Mon Sep 17 00:00:00 2001 From: Priya Sundaram Date: Fri, 11 Sep 2026 17:39:42 +0000 Subject: [PATCH] =?UTF-8?q?ci:=20prep=20for=203.15t=20=E2=80=94=20install?= =?UTF-8?q?=20libhdf5-dev=20on=20pre-release=20Python;=20pin=20scikit-lear?= =?UTF-8?q?n>=3D1.9.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Land the non-3.15t-gated pieces of #15105 ahead of GA: - build.yml/sphinx.yml: install libhdf5-dev only when running a pre-release interpreter (keras needs hdf5 there); guarded so it is a no-op on final builds. - pyproject.toml: pin scikit-learn>=1.9.1, the first release with cp315t free-threaded wheels, so uv resolves a wheel instead of building from source. The .python-version bump to 3.15t stays in #15105 as a draft until 3.15 GA. --- .github/workflows/build.yml | 6 ++++++ .github/workflows/sphinx.yml | 6 ++++++ pyproject.toml | 2 +- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2257bad8d618..4519c18019e9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,6 +20,12 @@ jobs: with: python-version-file: .python-version allow-prereleases: true + # keras needs hdf5 on pre-release Python. + - run: | + if [ "$(python -c 'import sys; print(sys.version_info.releaselevel)')" != "final" ]; then + sudo apt-get update -qq + sudo apt-get install --yes libhdf5-dev + fi - run: uv sync --group=test - name: Run tests # opencv-python is gated out on 3.14t (no cp314t wheel yet), so skip the diff --git a/.github/workflows/sphinx.yml b/.github/workflows/sphinx.yml index 1672bf69407f..905e0c1ebee3 100644 --- a/.github/workflows/sphinx.yml +++ b/.github/workflows/sphinx.yml @@ -33,6 +33,12 @@ jobs: with: python-version-file: .python-version allow-prereleases: true + # keras needs hdf5 on pre-release Python. + - run: | + if [ "$(python -c 'import sys; print(sys.version_info.releaselevel)')" != "final" ]; then + sudo apt-get update -qq + sudo apt-get install --yes libhdf5-dev + fi - run: uv sync --group=docs - uses: actions/configure-pages@v6 - run: uv run sphinx-build -c docs . docs/_build/html diff --git a/pyproject.toml b/pyproject.toml index 3d0dbdd05018..a8d37abac664 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,7 +23,7 @@ dependencies = [ "pandas>=2.3.3", "pillow>=11.3", "rich>=13.9.4", - "scikit-learn>=1.9", + "scikit-learn>=1.9.1", "scipy>=1.18.1", "statsmodels>=0.14.4", "sympy>=1.13.3",