diff --git a/.flake8 b/.flake8 index 2d028b2dbc1..2ea739519c1 100644 --- a/.flake8 +++ b/.flake8 @@ -1,7 +1,6 @@ [flake8] filename = - *.py, - *.pys + *.py max-line-length = 120 extend-exclude = venv/ diff --git a/.github/workflows/python-flake8.yml b/.github/workflows/python-flake8.yml index 61e23f741b7..6077a9579d2 100644 --- a/.github/workflows/python-flake8.yml +++ b/.github/workflows/python-flake8.yml @@ -26,13 +26,37 @@ jobs: - name: Set up Python uses: actions/setup-python@v5 # https://github.com/actions/setup-python with: - python-version: '3.10' + python-version: '3.12' - name: Install dependencies run: | - # pin flake8 before v6.0.0 due to removal of support for type comments (required for Python 2.7 type hints) - python -m pip install --upgrade pip setuptools "flake8<6" + python -m pip install --upgrade \ + pip \ + setuptools \ + wheel \ + flake8 \ + nb-clean \ + nbqa[toolchain] - name: Test with flake8 run: | - python -m flake8 --verbose + python -m flake8 \ + --color=always \ + --verbose + + - name: Test with nbqa + run: | + python -m nbqa flake8 \ + --color=always \ + --verbose \ + . + + - name: Test with nb-clean + run: | + output=$(find . -name '*.ipynb' -exec nb-clean check {} \;) + + # fail if there are any issues + if [ -n "$output" ]; then + echo "$output" + exit 1 + fi