# CI name: CI on: push: branches: [main] pull_request: branches: [main] jobs: test: name: Test (Python ${{ matrix.python-version }}) runs-on: ubuntu-latest strategy: fail-fast: false matrix: python-version: ["3.13"] steps: - uses: actions/checkout@v4 - name: Install uv uses: astral-sh/setup-uv@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: uv sync --extra dev --extra all - name: Run lint (ruff) run: uv run ruff check src/ tests/ - name: Run type check (mypy) run: uv run mypy src/ --ignore-missing-imports - name: Run tests with coverage run: | uv run pytest tests/ \ --cov=src \ --cov-report=term-missing \ --cov-report=xml \ -v - name: Upload coverage to Codecov uses: codecov/codecov-action@v5 with: files: ./coverage.xml fail_ci_if_error: false