build(deps): Bump actions/setup-python from 6 to 7 #140
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: | |
| - '**' | |
| workflow_dispatch: | |
| workflow_call: | |
| permissions: | |
| contents: read | |
| jobs: | |
| checks: | |
| strategy: | |
| matrix: | |
| os: | |
| - ubuntu-latest | |
| - macos-latest | |
| - windows-latest | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install Python versions | |
| uses: actions/setup-python@v7 | |
| with: | |
| python-version: | | |
| 3.11 | |
| 3.12 | |
| 3.13 | |
| - name: Set up PDM | |
| uses: pdm-project/setup-pdm@v4 | |
| with: | |
| cache: true | |
| cache-dependency-path: pyproject.toml | |
| - name: Install dependencies | |
| run: pdm install --no-default -dG maintenance -dG checks | |
| - name: Check code quality | |
| run: pdm checks quality | |
| - name: Check type annotations | |
| run: pdm checks types | |
| - name: Check vulnerabilities in dependencies | |
| run: pdm checks dependencies | |
| - name: Check security issues | |
| run: pdm checks security | |
| - name: Check docstring coverage | |
| run: pdm checks docs | |
| tests: | |
| strategy: | |
| matrix: | |
| os: | |
| - ubuntu-latest | |
| - macos-latest | |
| - windows-latest | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install Python versions | |
| uses: actions/setup-python@v7 | |
| with: | |
| python-version: | | |
| 3.11 | |
| 3.12 | |
| 3.13 | |
| - name: Set up PDM | |
| uses: pdm-project/setup-pdm@v4 | |
| with: | |
| cache: true | |
| cache-dependency-path: pyproject.toml | |
| - name: Install dependencies | |
| run: pdm install -dG maintenance -dG tests -G mcp -G execution | |
| - name: Install the browser the site-driven tests use | |
| run: pdm run python -m playwright install --with-deps --only-shell chromium | |
| - name: Run the test suite | |
| env: | |
| # Install numpy from its wheel, never a from-source MinGW build, which | |
| # segfaults on the Windows Python 3.13 runner. pdm resolves through uv. | |
| UV_NO_BUILD_PACKAGE: numpy | |
| run: pdm tests | |
| doc: | |
| if: ${{ github.ref != 'refs/heads/main' }} | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: ['3.11', '3.12', '3.13'] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up PDM | |
| uses: pdm-project/setup-pdm@v4 | |
| with: | |
| cache: true | |
| cache-dependency-path: pyproject.toml | |
| - name: Install dependencies | |
| run: pdm install -dG maintenance -dG docs | |
| - name: Build documentation with Python ${{ matrix.python-version }} | |
| run: pdm docs build |