From 867195877b3a104ffb5442007b0665cc2c90065b Mon Sep 17 00:00:00 2001 From: "Ralf W. Grosse-Kunstleve" Date: Fri, 23 Oct 2026 11:35:52 -0700 Subject: [PATCH 1/2] ci: refresh Python runners and Pyodide build tooling --- .github/workflows/ci.yml | 4 ++-- .github/workflows/pip.yml | 4 ++-- .github/workflows/tests-cibw.yml | 6 +++--- tests/pyproject.toml | 1 + 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 607f612a68..3aeac3e959 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -113,7 +113,7 @@ jobs: fail-fast: false matrix: include: - - runs-on: ubuntu-latest + - runs-on: ubuntu-24.04 python-version: '3.9' cmake-args: -DPYBIND11_FINDPYTHON=ON -DCMAKE_CXX_STANDARD=17 - runs-on: ubuntu-latest @@ -200,7 +200,7 @@ jobs: fail-fast: false matrix: include: - - runs-on: ubuntu-latest + - runs-on: ubuntu-24.04 python-version: '3.9' - runs-on: macos-latest python-version: '3.12' diff --git a/.github/workflows/pip.yml b/.github/workflows/pip.yml index 8defd5c61e..329247da5c 100644 --- a/.github/workflows/pip.yml +++ b/.github/workflows/pip.yml @@ -43,8 +43,8 @@ jobs: # This runs the packaging tests and also builds and saves the packages as # artifacts. packaging: - name: 🐍 3.9 • 📦 & 📦 tests • ubuntu-latest - runs-on: ubuntu-latest + name: 🐍 3.9 • 📦 & 📦 tests • ubuntu-24.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v7 diff --git a/.github/workflows/tests-cibw.yml b/.github/workflows/tests-cibw.yml index 470d34aad2..a845a4c157 100644 --- a/.github/workflows/tests-cibw.yml +++ b/.github/workflows/tests-cibw.yml @@ -25,7 +25,7 @@ jobs: submodules: true fetch-depth: 0 - - uses: pypa/cibuildwheel@v4.2 + - uses: pypa/cibuildwheel@v4.3.4 env: PYODIDE_BUILD_EXPORTS: whole_archive with: @@ -48,7 +48,7 @@ jobs: # We have to uninstall first because GH is now using a local tap to build cmake<4, iOS needs cmake>=4 - run: brew uninstall cmake && brew install cmake - - uses: pypa/cibuildwheel@v4.2 + - uses: pypa/cibuildwheel@v4.3.4 env: CIBW_PLATFORM: ios with: @@ -72,7 +72,7 @@ jobs: if: contains(matrix.runs-on, 'macos') run: echo "CIBW_TEST_COMMAND=" >> "$GITHUB_ENV" - - uses: pypa/cibuildwheel@v4.2 + - uses: pypa/cibuildwheel@v4.3.4 env: CIBW_PLATFORM: android with: diff --git a/tests/pyproject.toml b/tests/pyproject.toml index 8821ea3f34..0402c8dee5 100644 --- a/tests/pyproject.toml +++ b/tests/pyproject.toml @@ -35,6 +35,7 @@ environment.PIP_PREFER_BINARY = "1" android.environment.ANDROID_API_LEVEL = "24" # Needed to include libc++ in the wheel. pyodide.test-groups = ["numpy", "scipy"] +pyodide.config-settings = { "cmake.define.PYBIND11_USE_CROSSCOMPILING" = "ON" } ios.test-groups = ["numpy"] ios.xbuild-tools = ["cmake", "ninja"] ios.environment.PIP_EXTRA_INDEX_URL = "https://pypi.anaconda.org/beeware/simple" From 9269bb7be4e84b2ef5968f13a006333d0e69be13 Mon Sep 17 00:00:00 2001 From: "Ralf W. Grosse-Kunstleve" Date: Fri, 23 Oct 2026 13:01:17 -0700 Subject: [PATCH 2/2] ci: pin Debian i386 job to Ubuntu 24.04 --- .github/workflows/ci.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3aeac3e959..60e6fd5c52 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -761,7 +761,9 @@ jobs: install-classic: if: github.event.pull_request.draft == false name: "🐍 3.11 • Debian • x86 • Install" - runs-on: ubuntu-latest + # Ubuntu 26.04's Docker 29.4.2 breaks i386 networking: + # https://github.com/actions/runner-images/issues/14790 + runs-on: ubuntu-24.04 container: i386/debian:bookworm timeout-minutes: 90