name: lint_python on: pull_request: branches: [master] push: branches: [master] jobs: lint_python: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: "3.12" - run: pip install --upgrade pip ruff setuptools wheel - name: "Ruff: Show stopper (must-fix) issues" run: ruff check . --select=E9,F63,F7,F82,PLE,YTT --output-format=full - name: "Ruff: All issues" run: ruff check --exit-zero --select=ALL --statistics --target-version=py310 . - name: "Ruff: All fixable (ruff --fix) issues" run: ruff check --exit-zero --select=ALL --ignore=ANN204,COM812,ERA001,RSE102 --statistics --target-version=py310 . | grep "\[\*\]" || true - run: pip install black codespell mypy pytest - run: black --check . || true - run: codespell - run: pip install -r requirements.txt || true - run: mkdir --parents --verbose .mypy_cache - run: mypy --ignore-missing-imports --install-types --non-interactive . || true - run: pytest . || true