diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 57ed758a..96a315d6 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -57,6 +57,10 @@ jobs: secrets: inherit needs: unit-tests + testing-install: + uses: './.github/workflows/testing-install.yaml' + secrets: inherit + package: name: Check packaging runs-on: ubuntu-latest diff --git a/.github/workflows/testing-install.yaml b/.github/workflows/testing-install.yaml index 1afb21b2..4b051ca1 100644 --- a/.github/workflows/testing-install.yaml +++ b/.github/workflows/testing-install.yaml @@ -2,18 +2,22 @@ name: Installation Tests on: workflow_call: + workflow_dispatch: permissions: contents: read pull-requests: write jobs: - test-install: + install: runs-on: ${{ matrix.os }} strategy: + max-parallel: 3 + fail-fast: true matrix: - os: [ubuntu-latest, windows-latest] - python: [3.9] + os: [ubuntu-latest, macos-latest] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] + steps: - name: Checkout code @@ -32,8 +36,8 @@ jobs: run: python -m build --sdist --wheel - name: Install from built artifacts + shell: bash run: | - # Use the wheel if it's pure-python; fallback to sdist otherwise pip install dist/*.whl || pip install dist/*.tar.gz - name: Verify import & version @@ -41,4 +45,81 @@ jobs: python - <