From 62c8a2ea655e8f506e84ad45495e8924037ff194 Mon Sep 17 00:00:00 2001 From: Cowork Supervisor Date: Sun, 12 Jul 2026 13:02:09 -0400 Subject: [PATCH] ci: use host py launcher for Windows tests (runner blocks setup-python) The self-hosted Windows runner's PowerShell execution policy rejects setup-python's install script, so Windows mirrors release.yml: py -3.12 + venv (the version the release binaries ship with). Linux keeps the full 3.10/3.12/3.13 setup-python matrix. Co-Authored-By: Claude Fable 5 --- .github/workflows/ci.yml | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e5ee857..e9b0b8c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,17 +34,32 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, windows-latest] + os: [ubuntu-latest] python: ["3.10", "3.12", "3.13"] + include: + # Windows tests on 3.12 only — the version the release binaries ship + # with. The self-hosted Windows runner blocks setup-python's install + # script (PowerShell execution policy), so it uses the host's `py` + # launcher + venv, same as release.yml. + - os: windows-latest + python: "3.12" steps: - name: Checkout uses: actions/checkout@v4 - - name: Set up Python ${{ matrix.python }} + - name: Set up Python ${{ matrix.python }} (Linux) + if: runner.os == 'Linux' uses: actions/setup-python@v5 with: python-version: ${{ matrix.python }} + - name: Set up Python venv (Windows) + if: runner.os == 'Windows' + shell: pwsh + run: | + py -${{ matrix.python }} -m venv .venv + Add-Content -Path $env:GITHUB_PATH -Value "$env:GITHUB_WORKSPACE\.venv\Scripts" + # bcc_core has no GUI imports, so the test suite needs no PySide6 — # keeps CI fast and avoids Qt system-library headaches on the runner. - name: Install test dependencies