diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a925e82..eba1b15 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,6 +1,6 @@ name: CI -on: [push, pull_request] +on: [push, pull_request, workflow_dispatch] jobs: Windows: @@ -9,7 +9,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13', '3.14', '3.14t'] + python: ['3.10', '3.11', '3.12', '3.13', '3.14', '3.14t'] steps: - name: Checkout @@ -35,7 +35,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13', '3.14', '3.14t'] + python: ['3.10', '3.11', '3.12', '3.13', '3.14', '3.14t'] check_formatting: ['0'] extra_name: [''] include: @@ -47,16 +47,11 @@ jobs: uses: actions/checkout@v6 - name: Setup Python uses: actions/setup-python@v6 - if: "!endsWith(matrix.python, '-dev')" with: python-version: ${{ matrix.python }} + allow-prereleases: true cache: pip cache-dependency-path: test-requirements.txt - - name: Setup Python (dev) - uses: deadsnakes/action@v3.0.1 - if: endsWith(matrix.python, '-dev') - with: - python-version: '${{ matrix.python }}' - name: Run tests run: ./ci.sh env: @@ -71,7 +66,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13', '3.14', '3.14t'] + python: ['3.10', '3.11', '3.12', '3.13', '3.14', '3.14t'] steps: - name: Checkout uses: actions/checkout@v6 @@ -82,8 +77,25 @@ jobs: allow-prereleases: true cache: pip cache-dependency-path: test-requirements.txt + - name: Set PYTHON_GIL + if: endsWith(matrix.python-version, 't') + run: | + echo "PYTHON_GIL=0" >> "$GITHUB_ENV" - name: Run tests run: ./ci.sh env: # Should match 'name:' up above JOB_NAME: 'macOS (${{ matrix.python }})' + + alls-green: + if: always() + needs: + - Windows + - Ubuntu + - macOS + runs-on: ubuntu-latest + steps: + - name: Decide whether all jobs succeeded or not + uses: re-actors/alls-green@release/v1 + with: + jobs: ${{ toJSON(needs) }} diff --git a/pyproject.toml b/pyproject.toml index beaa378..a054095 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -26,7 +26,7 @@ classifiers = [ "Intended Audience :: Developers", "Development Status :: 5 - Production/Stable", ] -requires-python = ">= 3.7" +requires-python = ">= 3.10" dynamic = ["version"] [project.urls]