Test against Django 3.2 prerelease

* Omit default_app_config under Django 3.2 and later
  to avoid DeprecationWarning
* Also adds testing on Python 3.9, 3.10-alpha
* Also updates test matrix to include all supported
  Python versions (some older Django versions expanded
  Python support in patch releases)
This commit is contained in:
medmunds
2021-01-25 11:32:02 -08:00
committed by Mike Edmunds
parent fb5912f0e7
commit f039366bf0
5 changed files with 173 additions and 33 deletions

View File

@@ -18,7 +18,7 @@ jobs:
fail-fast: false
matrix:
config:
- { tox: "lint,docs", python: 3.8 }
- { tox: "lint,docs", python: "3.8" }
# Anymail supports the same Python versions as Django, plus PyPy.
# https://docs.djangoproject.com/en/dev/faq/install/#what-python-version-can-i-use-with-django
@@ -27,36 +27,49 @@ jobs:
# combinations, to avoid rapidly consuming the testing accounts' entire send allotments.
# Django 2.0: Python 3.5+
- { tox: django20-py35-all, python: 3.5 }
- { tox: django20-py36-all, python: 3.6 }
- { tox: django20-pypy3-all, python: pypy3 }
- { tox: django20-py35-all, python: "3.5" }
- { tox: django20-py36-all, python: "3.6" }
- { tox: django20-pypy3-all, python: "pypy3" }
# Django 2.1: Python 3.5, 3.6, or 3.7
- { tox: django21-py35-all, python: 3.5 }
- { tox: django21-py36-all, python: 3.6 }
- { tox: django21-py37-all, python: 3.7 }
- { tox: django21-py35-all, python: "3.5" }
- { tox: django21-py36-all, python: "3.6" }
- { tox: django21-py37-all, python: "3.7" }
- { tox: django21-pypy3-all, python: pypy3 }
# Django 2.2: Python 3.5, 3.6, or 3.7
- { tox: django22-py35-all, python: 3.5 }
- { tox: django22-py36-all, python: 3.6 }
- { tox: django22-py37-all, python: 3.7 }
- { tox: django22-pypy3-all, python: pypy3 }
# Django 3.0: Python 3.6, 3.7, or 3.8
- { tox: django30-py36-all, python: 3.6 }
- { tox: django30-py37-all, python: 3.7 }
- { tox: django30-py38-all, python: 3.8 }
- { tox: django30-pypy3-all, python: pypy3 }
# Django 3.1: Python 3.6, 3.7, or 3.8
- { tox: django31-py36-all, python: 3.6 }
- { tox: django31-py37-all, python: 3.7 }
- { tox: django31-py38-all, python: 3.8, options: run-live-tests }
- { tox: django31-pypy3-all, python: pypy3 }
# Django 2.2: Python 3.5, 3.6, 3.7, 3.8 (added in 2.2.8), 3.9 (added in 2.2.17)
- { tox: django22-py35-all, python: "3.5" }
- { tox: django22-py36-all, python: "3.6" }
- { tox: django22-py37-all, python: "3.7" }
- { tox: django22-py38-all, python: "3.8" }
- { tox: django22-py39-all, python: "3.9" }
- { tox: django22-pypy3-all, python: "pypy3" }
# Django 3.0: Python 3.6, 3.7, 3.8, 3.9 (added in 3.0.11)
- { tox: django30-py36-all, python: "3.6" }
- { tox: django30-py37-all, python: "3.7" }
- { tox: django30-py38-all, python: "3.8" }
- { tox: django30-py39-all, python: "3.9" }
- { tox: django30-pypy3-all, python: "pypy3" }
# Django 3.1: Python 3.6, 3.7, 3.8, 3.9 (added in 3.1.3)
- { tox: django31-py36-all, python: "3.6" }
- { tox: django31-py37-all, python: "3.7" }
- { tox: django31-py38-all, python: "3.8", options: run-live-tests }
- { tox: django31-py39-all, python: "3.9" }
- { tox: django31-pypy3-all, python: "pypy3" }
# Django 3.2: Python 3.6, 3.7, 3.8, 3.9
- { tox: django32-py36-all, python: "3.6" }
- { tox: django32-py37-all, python: "3.7" }
- { tox: django32-py38-all, python: "3.8" }
- { tox: django32-py39-all, python: "3.9" }
- { tox: django32-pypy3-all, python: "pypy3" }
# Django 4.0: Python 3.8, 3.9, 3.10
# Django current development (direct from GitHub source)
- { tox: djangoDev-py37-all, python: 3.7, options: allow-failures }
- { tox: djangoDev-py38-all, python: "3.8", options: allow-failures }
- { tox: djangoDev-py39-all, python: "3.9", options: allow-failures }
- { tox: djangoDev-py310-all, python: "3.10.0-alpha - 3.10", options: allow-failures }
# Install without optional extras (don't need to cover entire matrix)
- { tox: django31-py37-none, python: 3.7 }
- { tox: django31-py37-amazon_ses, python: 3.7 }
- { tox: django31-py37-none, python: "3.7" }
- { tox: django31-py37-amazon_ses, python: "3.7" }
# Test some specific older package versions
- { tox: django22-py37-all-old_urllib3, python: 3.7 }
- { tox: django22-py37-all-old_urllib3, python: "3.7" }
steps:
- name: Get code