Repository navigation
Stabilization: modernize deps and fix the instabilities that surfaced #39
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
| # This workflow will install Python dependencies, run tests and lint with a variety of Python versions | |
| # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python | |
| name: Python package | |
| on: | |
| push: | |
| branches: [ "master", "develop"] | |
| pull_request: | |
| branches: [ "master" ] | |
| jobs: | |
| build: | |
| name: Test (${{ matrix.os }}, Python ${{ matrix.python-version }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| # Linux carries the full Python sweep; Windows and macOS are added as a | |
| # single spot-check each via `include` (an include entry that would | |
| # overwrite `os` becomes a new job rather than extending existing ones). | |
| # Those two exist to catch platform divergence rather than version | |
| # divergence -- word size (`int` is int32 on Windows) and differences in | |
| # the compiled solver -- which one Python version exercises just as well | |
| # as five. A square os x python matrix would triple the job count to buy | |
| # very little. | |
| matrix: | |
| os: [ubuntu-latest] | |
| python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] | |
| include: | |
| - { os: windows-latest, python-version: "3.12" } | |
| - { os: macos-latest, python-version: "3.12" } | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install uv and set the python version | |
| uses: astral-sh/setup-uv@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| version: "0.11.8" | |
| - name: Install the project | |
| run: uv sync --all-extras --dev | |
| - name: Lint with ruff | |
| uses: astral-sh/ruff-action@v3 | |
| - name: Run tests | |
| run: uv run pytest |