name: test on: [workflow_dispatch, push, pull_request] concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: default: runs-on: ${{ matrix.os }}-latest strategy: matrix: os: [ubuntu, macos, windows] python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13", "3.14-dev", "pypy-3.9", "pypy-3.10", ] steps: - uses: actions/checkout@v5 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} cache: "pip" - name: Install dependencies run: | python -m pip install --upgrade pip spin python -m pip install ".[test]" - name: Test run: | spin test