diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index aca64f3509c..d71de3b9ded 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -189,3 +189,19 @@ jobs: run: | sudo apt-get install pandoc tox -e publish-gh-release-notes + + mypy-diff: + if: github.event_name == 'pull_request' + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Set up Python + uses: actions/setup-python@v1 + with: + python-version: "3.8" + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install --upgrade wheel setuptools tox + - name: tox -e mypy-diff + run: "tox -e mypy-diff" diff --git a/tox.ini b/tox.ini index cf50945fbd7..91c50ececf0 100644 --- a/tox.ini +++ b/tox.ini @@ -59,6 +59,15 @@ commands = pre-commit run --all-files --show-diff-on-failure {posargs:} extras = checkqa-mypy, testing commands = mypy {posargs:src testing} +[testenv:mypy-diff] +extras = checkqa-mypy, testing +deps = + lxml + diff-cover +commands = + -mypy --cobertura-xml-report {envtmpdir} {posargs:src testing} + diff-cover --fail-under=100 --compare-branch={env:DIFF_BRANCH:origin/{env:GITHUB_BASE_REF:master}} {envtmpdir}/cobertura.xml + [testenv:docs] basepython = python3 usedevelop = True