Skip to content

ci(lint): add Ruff lint, coverage gate & Python 3.13 support #37

ci(lint): add Ruff lint, coverage gate & Python 3.13 support

ci(lint): add Ruff lint, coverage gate & Python 3.13 support #37

Workflow file for this run

name: CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.10", "3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry twine
poetry install --with dev
- name: Lint with Ruff
run: poetry run ruff check .
- name: Run tests with coverage
run: |
poetry run pytest --cov=tfsumpy --cov-report=term
poetry run coverage report --fail-under=75
- name: Coverage reminder
if: success()
run: echo "::notice ::Current threshold is 75%. PRs that raise coverage are welcome!"
- name: Build package
run: poetry build