name: Lint

on: [pull_request]

jobs:
  misspell:
    name: Check spelling with misspell
    runs-on: ubuntu-latest
    steps:
      - name: Check Out
        uses: actions/checkout@v3
      - name: Install
        run: wget -O - -q https://git.io/misspell | sh -s -- -b .
      - name: Run misspell
        run: git ls-files --empty-directory | xargs ./misspell -error
  pre-commit:
    name: Run pre-commit
    runs-on: ubuntu-latest
    steps:
      - name: Check Out
        uses: actions/checkout@v3
      - name: Install
        run: |
          python -m pip install --upgrade pip
          pip install pre-commit
      - name: Set PY
        run: echo "PY=$(python -VV | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV
      - uses: actions/cache@v3
        with:
          path: ~/.cache/pre-commit
          key: pre-commit|${{ env.PY }}|${{ hashFiles('.pre-commit-config.yaml') }}
      - name: Run pre-commit
        run: pre-commit run --all-files
