# Workflow to run mypy on select parts of the CPython repo name: mypy on: push: branches: - main pull_request: paths: - "Tools/clinic/**" - "Tools/requirements-dev.txt" - ".github/workflows/mypy.yml" workflow_dispatch: permissions: {} env: PIP_DISABLE_PIP_VERSION_CHECK: 1 FORCE_COLOR: 1 TERM: xterm-256color # needed for FORCE_COLOR to work on mypy on Ubuntu, see https://github.com/python/mypy/issues/13817 concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true jobs: mypy: name: Run mypy on Tools/clinic/ runs-on: ubuntu-latest timeout-minutes: 10 steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: persist-credentials: false - uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 with: python-version: "3.x" cache: pip cache-dependency-path: Tools/requirements-dev.txt - run: pip install -r Tools/requirements-dev.txt - run: mypy --config-file Tools/clinic/mypy.ini