| name: CI | |
| on: | |
| push: | |
| branches: [ main ] | |
| pull_request: | |
| branches: [ main ] | |
| jobs: | |
| build-test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.10' | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r requirements.txt | |
| pip install ruff==0.6.8 black==24.8.0 mypy==1.10.0 | |
| - name: Lint (ruff) | |
| run: ruff check . | |
| - name: Format check (black) | |
| run: black --check . | |
| - name: Type check (mypy) | |
| run: mypy --install-types --non-interactive inference examples training scripts tests || true | |
| - name: Run tests | |
| run: | | |
| python -m pytest -q | |