Separate GitHub Actions into 3 separate workflows: Quality, Test, TypeCheck and add testing on Windows and MacOs in addition to Linux #1
Workflow file for this run
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
| # For documentation on GitHub Actions Workflows, see: | |
| # https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions | |
| # This workflow runs mypy type checking on push and pull requests to the main branch. | |
| # It tests against multiple Python versions to ensure compatibility. | |
| name: TypeCheck | |
| on: | |
| pull_request: | |
| types: [opened, synchronize, reopened] | |
| push: | |
| branches: [main] | |
| permissions: | |
| contents: read | |
| jobs: | |
| type-check: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] | |
| fail-fast: false | |
| defaults: | |
| run: | |
| shell: bash | |
| steps: | |
| - name: Check out | |
| uses: actions/checkout@v6.0.2 | |
| with: | |
| fetch-depth: 0 | |
| - name: Install uv and set the python version | |
| uses: astral-sh/setup-uv@v7 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Type Checking | |
| run: | | |
| uv run mypy --strict src/ --platform win32 | |
| uv run mypy --strict src/ --platform linux | |
| uv run mypy --strict src/ --platform darwin |