chore: update test workflow and dependencies for Python 3.8 compatibi… #216
This file contains hidden or 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: Run tests | |
| on: | |
| push: | |
| branches: | |
| - master | |
| pull_request: | |
| branches: | |
| - master | |
| # https://docs.djangoproject.com/en/dev/faq/install/#what-python-version-can-i-use-with-django | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: [ "3.10", "3.11", "3.12" ] | |
| django-version: [ "5.0", "5.1", "5.2" ] | |
| include: | |
| # Django 4.2 supports Python 3.8, 3.9, 3.10, 3.11, 3.12 | |
| - python-version: "3.8" | |
| django-version: "4.2" | |
| - python-version: "3.9" | |
| django-version: "4.2" | |
| - python-version: "3.10" | |
| django-version: "4.2" | |
| - python-version: "3.11" | |
| django-version: "4.2" | |
| - python-version: "3.12" | |
| django-version: "4.2" | |
| # Python 3.13 only supported in Django 5.1+ | |
| - python-version: "3.13" | |
| django-version: "5.1" | |
| - python-version: "3.13" | |
| django-version: "5.2" | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| # Run tests without Hatch: Hatch's env layer pulls virtualenv in a way that breaks on | |
| # Python 3.8 (virtualenv.discovery.builtin has no attribute propose_interpreters). | |
| - name: Install dependencies and run tests | |
| run: | | |
| pip install -U pip setuptools wheel | |
| pip install -q django==${{ matrix.django-version }} | |
| pip install pytest pytest-django | |
| pip install -e . | |
| python runtests.py |