Improve CI Python version coverage #124
Workflow file for this run
This file contains 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
name: PR checks | |
on: | |
push: | |
paths: | |
- pyproject.toml | |
- poetry.lock | |
- '**.py' | |
- '.github/**' | |
- 'resources/**' | |
- 'scripts/**' | |
- 'tests/**' | |
pull_request: | |
paths: | |
- pyproject.toml | |
- poetry.lock | |
- '**.py' | |
- '.github/**' | |
- 'resources/**' | |
- 'scripts/**' | |
- 'tests/**' | |
jobs: | |
lint: | |
name: 'ruff & mypy & pytest (Python ${{ matrix.python }})' | |
runs-on: ubuntu-latest | |
continue-on-error: ${{ matrix.experimental }} | |
strategy: | |
fail-fast: true | |
matrix: | |
python: | |
- '3.11' | |
- '3.12' | |
experimental: [false] | |
include: | |
- python: '3.13' | |
experimental: true | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Poetry | |
run: pipx install poetry | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python }} | |
cache: poetry | |
- name: Install deps | |
run: poetry install --with=dev | |
- name: Lint with ruff | |
run: poetry run ruff check | |
- name: Type-check with mypy | |
run: poetry run mypy | |
- name: Test with pytest | |
run: poetry run pytest | |
pylic: | |
name: license compatibility | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Poetry | |
run: pipx install poetry | |
- uses: actions/setup-python@v5 | |
with: | |
python-version-file: 'pyproject.toml' | |
cache: poetry | |
- name: Install runtime deps | |
run: poetry install --only=main | |
- name: Install pylic | |
run: poetry run pip install pylic | |
- name: List all licenses involved | |
run: poetry run pylic list | |
- name: Check license compatibility with pylic | |
run: poetry run pylic check |