| name: Lint | |
| on: | |
| pull_request: | |
| env: | |
| PYTHON_VERSION: "3.8" | |
| defaults: | |
| run: | |
| shell: bash -l -eo pipefail {0} | |
| jobs: | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out repo | |
| uses: actions/checkout@v3 | |
| - name: Setup python | |
| uses: actions/setup-python@v4 | |
| with: | |
| python-version: ${{ env.PYTHON_VERSION }} | |
| - name: Update pip | |
| run: python -m pip install --upgrade pip | |
| - name: Install lint utilities | |
| run: | | |
| python -m pip install pre-commit | |
| pre-commit install-hooks | |
| - id: file_changes | |
| uses: trilom/file-changes-action@v1.2.4 | |
| with: | |
| prNumber: ${{ github.event.number }} | |
| output: ' ' | |
| - name: Lint modified files | |
| run: pre-commit run --files ${{ steps.file_changes.outputs.files }} | |
| type_checking: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out repo | |
| uses: actions/checkout@v3 | |
| - name: Setup conda env | |
| uses: conda-incubator/setup-miniconda@v2 | |
| with: | |
| auto-update-conda: true | |
| miniconda-version: "latest" | |
| activate-environment: lint | |
| python-version: ${{ env.PYTHON_VERSION }} | |
| - name: Install dependencies | |
| run: | | |
| conda install pytorch torchvision torchaudio cpuonly -c pytorch-nightly | |
| pip install -e ".[dev]" | |
| - name: Type check all files | |
| run: python -m mypy --install-types --non-interactive --config-file mypy.ini | |