name: build on: [push, pull_request] jobs: build: runs-on: ubuntu-latest if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name strategy: matrix: python-version: ["3.13"] steps: - uses: actions/checkout@v6 - name: Install uv & set Python uses: astral-sh/setup-uv@v7 with: python-version: ${{ matrix.python-version }} enable-cache: true cache-python: true - name: Ensure Python ${{ matrix.python-version }} run: uv python install ${{ matrix.python-version }} - name: Sync dependencies run: | uv sync --frozen --extra document uv run pre-commit install - name: Run style checks run: uv run make check - name: Run tests run: uv run make test