Skip to content

Backport PR #31831 on branch v3.11.x (DOC: Use warnings instead of exceptions in gallery order) #4062

Backport PR #31831 on branch v3.11.x (DOC: Use warnings instead of exceptions in gallery order)

Backport PR #31831 on branch v3.11.x (DOC: Use warnings instead of exceptions in gallery order) #4062

Workflow file for this run

---
name: Linting
on: [pull_request]
permissions: {}
jobs:
pre-commit:
name: precommit
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.x"
- uses: j178/prek-action@6ad80277337ad479fe43bd70701c3f7f8aa74db3 # v2.0.3
with:
extra-args: --hook-stage manual --all-files
ruff:
name: ruff
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Set up Python 3
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: '3.11'
- name: Install ruff
run: pip3 install ruff
- name: Set up reviewdog
uses: reviewdog/action-setup@d8a7baabd7f3e8544ee4dbde3ee41d0011c3a93f # v1.5.0
- name: Run ruff
env:
REVIEWDOG_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
set -o pipefail
ruff check --output-format rdjson | \
reviewdog -f=rdjson \
-tee -reporter=github-check -filter-mode nofilter
mypy:
name: mypy
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Set up Python 3
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: '3.11'
- name: Install mypy
run: pip3 install --group build --group typing
- name: Set up reviewdog
uses: reviewdog/action-setup@d8a7baabd7f3e8544ee4dbde3ee41d0011c3a93f # v1.5.0
- name: Run mypy
env:
REVIEWDOG_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
set -o pipefail
mypy --config pyproject.toml | \
reviewdog -f=mypy -name=mypy \
-tee -reporter=github-check -filter-mode nofilter
clang-tidy:
name: clang-tidy (macOS / Objective-C)
runs-on: macos-latest # run on macOS so we can lint the objectiveC file
permissions:
contents: read
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Set up Python 3
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: '3.14'
- name: Install OS dependencies
run: brew install llvm
- name: Install build dependencies
run: pip3 install meson ninja pybind11 setuptools-scm
- name: Run clang-tidy
run: |
set -o pipefail
LLVM_PREFIX=$(brew --prefix llvm)
export CC=$LLVM_PREFIX/bin/clang
export CXX=$LLVM_PREFIX/bin/clang++
export OBJC=$LLVM_PREFIX/bin/clang
export PATH=$LLVM_PREFIX/bin:$PATH
python tools/run_clang_tidy.py
eslint:
name: eslint
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: eslint
uses: reviewdog/action-eslint@556a3fdaf8b4201d4d74d406013386aa4f7dab96 # v1.34.0
with:
filter_mode: nofilter
github_token: ${{ secrets.GITHUB_TOKEN }}
reporter: github-check
workdir: 'lib/matplotlib/backends/web_backend/'