More type hints and stricter checking #198
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: Check and test | |
on: [push, pull_request] | |
env: | |
FORCE_COLOR: 1 | |
jobs: | |
build: | |
strategy: | |
matrix: | |
os: ["ubuntu-latest"] | |
python-version: | |
- "3.8" # minimum required | |
- "3.12" # latest | |
- "3.13-dev" # next | |
include: | |
- python-version: 3.8 | |
os: windows-2022 | |
runs-on: ${{ matrix.os }} | |
continue-on-error: ${{ matrix.python-version == '3.13-dev' }} | |
steps: | |
- uses: actions/checkout@v4 | |
- run: pip install poetry | |
- uses: actions/setup-python@v5 | |
id: setup-python | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: poetry | |
- run: poetry env use ${{ steps.setup-python.outputs.python-path }} | |
- run: poetry install | |
- run: poetry run ruff format --check | |
- run: poetry run ruff check | |
- run: poetry run pyright --warnings | |
- run: poetry run pytest | |
- run: poetry run coverage xml | |
- uses: coverallsapp/github-action@v2 | |
if: > | |
(github.event_name == 'pull_request' || github.ref_name == 'main') && | |
matrix.python-version == '3.8' && | |
matrix.os == 'ubuntu-latest' | |
with: | |
# Ignore .coverage, which has limited support from coveralls | |
file: coverage.xml | |
build-beets-versions: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
beets: | |
- "git+https://github.com/beetbox/beets#master" | |
- "beets==1.6.1" | |
steps: | |
- uses: actions/checkout@v4 | |
- run: pip install poetry | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: 3.8 | |
cache: poetry | |
- run: poetry env use $(which python) | |
- run: poetry install | |
- run: poetry add ${{ matrix.beets }} | |
- run: poetry run pyright --warnings | |
- run: poetry run pytest |