name: test on: push: # any branch pull_request: branches: [master] jobs: test-ubuntu: runs-on: ubuntu-latest strategy: matrix: python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 - uses: astral-sh/setup-uv@v5 with: python-version: ${{ matrix.python-version }} - name: Type Checking run: | uvx --with . mypy src/ptpython/ uvx --with . mypy examples/ - name: Code formatting if: ${{ matrix.python-version == '3.13' }} run: | uvx ruff check . uvx ruff format --check . - name: Typos if: ${{ matrix.python-version == '3.13' }} run: | uvx typos . - name: Unit test run: | uvx --with . pytest tests/ - name: Validate README.md if: ${{ matrix.python-version == '3.13' }} # Ensure that the README renders correctly (required for uploading to PyPI). run: | uv pip install readme_renderer python -m readme_renderer README.rst > /dev/null