refactor: no need to compile a regex used once #1
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0 | |
# For details: https://github.com/nedbat/coveragepy/blob/master/NOTICE.txt | |
name: "Quality" | |
on: | |
push: | |
branches: | |
- master | |
- nedbat/* | |
pull_request: | |
workflow_dispatch: | |
defaults: | |
run: | |
shell: bash | |
env: | |
PIP_DISABLE_PIP_VERSION_CHECK: 1 | |
permissions: | |
contents: read | |
concurrency: | |
group: "${{ github.workflow }}-${{ github.ref }}" | |
cancel-in-progress: true | |
jobs: | |
lint: | |
name: "Pylint etc" | |
# Because pylint can report different things on different OS's (!) | |
# (https://github.com/PyCQA/pylint/issues/3489), run this on Mac where local | |
# pylint gets run. | |
# GitHub is rolling out macos 14, but it doesn't have Python 3.8 or 3.9. | |
# https://mastodon.social/@hugovk/112320493602782374 | |
runs-on: macos-13 | |
steps: | |
- name: "Check out the repo" | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 | |
- name: "Install Python" | |
uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1 | |
with: | |
python-version: "3.8" # Minimum of PYVERSIONS | |
cache: pip | |
cache-dependency-path: 'requirements/*.pip' | |
- name: "Install dependencies" | |
run: | | |
python -m pip install -r requirements/tox.pip | |
- name: "Tox lint" | |
run: | | |
python -m tox -e lint | |
mypy: | |
name: "Check types" | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Check out the repo" | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 | |
- name: "Install Python" | |
uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1 | |
with: | |
python-version: "3.8" # Minimum of PYVERSIONS, but at least 3.8 | |
cache: pip | |
cache-dependency-path: 'requirements/*.pip' | |
- name: "Install dependencies" | |
run: | | |
python -m pip install -r requirements/tox.pip | |
- name: "Tox mypy" | |
run: | | |
python -m tox -e mypy | |
doc: | |
name: "Build docs" | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Check out the repo" | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 | |
- name: "Install Python" | |
uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1 | |
with: | |
python-version: "3.11" # Doc version from PYVERSIONS | |
cache: pip | |
cache-dependency-path: 'requirements/*.pip' | |
- name: "Show environment" | |
run: | | |
set -xe | |
python -VV | |
python -m site | |
env | sort | |
- name: "Install dependencies" | |
run: | | |
set -xe | |
python -m pip install -r requirements/tox.pip | |
- name: "Tox doc" | |
run: | | |
python -m tox -e doc |