test #7
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
name: test | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
workflow_dispatch: | |
schedule: | |
# 15:41 UTC every day | |
- cron: "41 15 * * *" | |
permissions: | |
contents: read | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
mypy-self-check: | |
timeout-minutes: 10 | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
pip install -U pip setuptools wheel | |
SETUPTOOLS_ENABLE_FEATURES=legacy-editable pip install -r ./requirements.txt | |
- name: Run mypy on plugin code | |
run: mypy --strict mypy_drf_plugin | |
- name: Run mypy on scripts and utils | |
run: mypy --strict scripts | |
- name: Run mypy on stubs | |
run: mypy --cache-dir=/dev/null --no-incremental rest_framework-stubs | |
test: | |
timeout-minutes: 10 | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup system dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install binutils libproj-dev gdal-bin | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
pip install -U pip setuptools wheel | |
SETUPTOOLS_ENABLE_FEATURES=legacy-editable pip install -r ./requirements.txt | |
- name: Run tests | |
# Suppress errors from other packages due to https://github.com/typeddjango/pytest-mypy-plugins/issues/134 | |
run: pytest --mypy-only-local-stub | |
stubtest: | |
timeout-minutes: 10 | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ['3.12'] | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup system dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install binutils libproj-dev gdal-bin | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
pip install -U pip setuptools wheel | |
SETUPTOOLS_ENABLE_FEATURES=legacy-editable pip install -r ./requirements.txt | |
- name: Run stubtest | |
run: bash ./scripts/stubtest.sh |