From 5f3afde39fb84bd6079431f17f211695280f31ec Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 22:12:48 -0400 Subject: [PATCH 01/10] Test DRF versions up to DRF 3.6 This is the last DRF version to support Django 1.8, which is the latest Django version which is included in the test matrix. --- tox.ini | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index b8056b8..2c2da64 100644 --- a/tox.ini +++ b/tox.ini @@ -1,7 +1,9 @@ [tox] envlist = py27-{flake8,docs}, - {py27,py33,py34}-django{1.6,1.7,1.8}-drf{2.4,3.0,3.1} + {py27,py33,py34}-django1.6-drf{2.4,3.0,3.1,3.2} + {py27,py33,py34}-django1.7-drf{2.4,3.0,3.1,3.2,3.3} + {py27,py33,py34}-django1.8-drf{2.4,3.0,3.1,3.2,3.3,3.4,3.5,3.6} [testenv] commands = ./runtests.py --fast @@ -14,6 +16,11 @@ deps = drf2.4: djangorestframework==2.4.4 drf3.0: djangorestframework==3.0.5 drf3.1: djangorestframework==3.1.3 + drf3.2: djangorestframework==3.2.* + drf3.3: djangorestframework==3.3.* + drf3.4: djangorestframework==3.4.* + drf3.5: djangorestframework==3.5.* + drf3.6: djangorestframework==3.6.* pytest-django==2.8.0 [testenv:py27-flake8] From 3aff85e52da17b2450222658021a740766f4a07f Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 22:19:01 -0400 Subject: [PATCH 02/10] Added Travis testing up to DRF 3.6 This adjusts Travis to match the testing matrix set up within Tox. --- .travis.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/.travis.yml b/.travis.yml index 75b2e28..b671ec7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,30 +8,54 @@ env: - TOX_ENV=py27-django1.6-drf2.4 - TOX_ENV=py27-django1.6-drf3.0 - TOX_ENV=py27-django1.6-drf3.1 + - TOX_ENV=py27-django1.6-drf3.2 - TOX_ENV=py27-django1.7-drf2.4 - TOX_ENV=py27-django1.7-drf3.0 - TOX_ENV=py27-django1.7-drf3.1 + - TOX_ENV=py27-django1.7-drf3.2 + - TOX_ENV=py27-django1.7-drf3.3 - TOX_ENV=py27-django1.8-drf2.4 - TOX_ENV=py27-django1.8-drf3.0 - TOX_ENV=py27-django1.8-drf3.1 + - TOX_ENV=py27-django1.8-drf3.2 + - TOX_ENV=py27-django1.8-drf3.3 + - TOX_ENV=py27-django1.8-drf3.4 + - TOX_ENV=py27-django1.8-drf3.5 + - TOX_ENV=py27-django1.8-drf3.6 - TOX_ENV=py33-django1.6-drf2.4 - TOX_ENV=py33-django1.6-drf3.0 - TOX_ENV=py33-django1.6-drf3.1 + - TOX_ENV=py33-django1.6-drf3.2 - TOX_ENV=py33-django1.7-drf2.4 - TOX_ENV=py33-django1.7-drf3.0 - TOX_ENV=py33-django1.7-drf3.1 + - TOX_ENV=py33-django1.7-drf3.2 + - TOX_ENV=py33-django1.7-drf3.3 - TOX_ENV=py33-django1.8-drf2.4 - TOX_ENV=py33-django1.8-drf3.0 - TOX_ENV=py33-django1.8-drf3.1 + - TOX_ENV=py33-django1.8-drf3.2 + - TOX_ENV=py33-django1.8-drf3.3 + - TOX_ENV=py33-django1.8-drf3.4 + - TOX_ENV=py33-django1.8-drf3.5 + - TOX_ENV=py33-django1.8-drf3.6 - TOX_ENV=py34-django1.6-drf2.4 - TOX_ENV=py34-django1.6-drf3.0 - TOX_ENV=py34-django1.6-drf3.1 + - TOX_ENV=py34-django1.6-drf3.2 - TOX_ENV=py34-django1.7-drf2.4 - TOX_ENV=py34-django1.7-drf3.0 - TOX_ENV=py34-django1.7-drf3.1 + - TOX_ENV=py34-django1.7-drf3.2 + - TOX_ENV=py34-django1.7-drf3.3 - TOX_ENV=py34-django1.8-drf2.4 - TOX_ENV=py34-django1.8-drf3.0 - TOX_ENV=py34-django1.8-drf3.1 + - TOX_ENV=py34-django1.8-drf3.2 + - TOX_ENV=py34-django1.8-drf3.3 + - TOX_ENV=py34-django1.8-drf3.4 + - TOX_ENV=py34-django1.8-drf3.5 + - TOX_ENV=py34-django1.8-drf3.6 matrix: fast_finish: true From fdb383bb910c766a95c2b0e076a444897f37f69f Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 22:23:09 -0400 Subject: [PATCH 03/10] Switch to more open DRF and Django testing ranges This adjusts the Tox requirements to use the `.*` format to pick up the latest version in the range, so we don't need to worry about pinning to a specific version and having a newer patch release come out later down the line. --- tox.ini | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tox.ini b/tox.ini index 2c2da64..78c6696 100644 --- a/tox.ini +++ b/tox.ini @@ -10,12 +10,12 @@ commands = ./runtests.py --fast setenv = PYTHONDONTWRITEBYTECODE=1 deps = - django1.6: Django==1.6.11 - django1.7: Django==1.7.8 - django1.8: Django==1.8 - drf2.4: djangorestframework==2.4.4 - drf3.0: djangorestframework==3.0.5 - drf3.1: djangorestframework==3.1.3 + django1.6: Django==1.6.* + django1.7: Django==1.7.* + django1.8: Django==1.8.* + drf2.4: djangorestframework==2.4.* + drf3.0: djangorestframework==3.0.* + drf3.1: djangorestframework==3.1.* drf3.2: djangorestframework==3.2.* drf3.3: djangorestframework==3.3.* drf3.4: djangorestframework==3.4.* From 6f94fe6b9da9d24b9577eeb98bcfbb4dff5e6022 Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 22:30:43 -0400 Subject: [PATCH 04/10] Added Django 1.9, 1.10, 1.11 to Tox matrix While these supports versions past DRF 3.6, this commit is only adding matrix support up to 3.6 for now to minimize overall changes. --- tox.ini | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tox.ini b/tox.ini index 78c6696..0814cb2 100644 --- a/tox.ini +++ b/tox.ini @@ -4,6 +4,9 @@ envlist = {py27,py33,py34}-django1.6-drf{2.4,3.0,3.1,3.2} {py27,py33,py34}-django1.7-drf{2.4,3.0,3.1,3.2,3.3} {py27,py33,py34}-django1.8-drf{2.4,3.0,3.1,3.2,3.3,3.4,3.5,3.6} + {py27,py33,py34}-django1.9-drf{3.3,3.4,3.5,3.6} + {py27,py33,py34}-django1.10-drf{3.4,3.5,3.6} + {py27,py33,py34}-django1.11-drf{3.5,3.6} [testenv] commands = ./runtests.py --fast @@ -13,6 +16,9 @@ deps = django1.6: Django==1.6.* django1.7: Django==1.7.* django1.8: Django==1.8.* + django1.9: Django==1.9.* + django1.10: Django==1.10.* + django1.11: Django==1.11.* drf2.4: djangorestframework==2.4.* drf3.0: djangorestframework==3.0.* drf3.1: djangorestframework==3.1.* From d084e358b1e1756ebcd41264798bbdd6ac4583dd Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 22:35:36 -0400 Subject: [PATCH 05/10] Added Django 1.9, 1.10, 1.11 to Travis testing matrix At this point the testing matrix is massive, somewhere in the range of 80 different builds. This should probably get cut down at some point, but that would likely warrant breaking changes or a stable version support policy (which doesn't currently appear to exist). --- .travis.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/.travis.yml b/.travis.yml index b671ec7..9f77060 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,6 +22,15 @@ env: - TOX_ENV=py27-django1.8-drf3.4 - TOX_ENV=py27-django1.8-drf3.5 - TOX_ENV=py27-django1.8-drf3.6 + - TOX_ENV=py27-django1.9-drf3.3 + - TOX_ENV=py27-django1.9-drf3.4 + - TOX_ENV=py27-django1.9-drf3.5 + - TOX_ENV=py27-django1.9-drf3.6 + - TOX_ENV=py27-django1.10-drf3.4 + - TOX_ENV=py27-django1.10-drf3.5 + - TOX_ENV=py27-django1.10-drf3.6 + - TOX_ENV=py27-django1.11-drf3.5 + - TOX_ENV=py27-django1.11-drf3.6 - TOX_ENV=py33-django1.6-drf2.4 - TOX_ENV=py33-django1.6-drf3.0 - TOX_ENV=py33-django1.6-drf3.1 @@ -39,6 +48,15 @@ env: - TOX_ENV=py33-django1.8-drf3.4 - TOX_ENV=py33-django1.8-drf3.5 - TOX_ENV=py33-django1.8-drf3.6 + - TOX_ENV=py33-django1.9-drf3.3 + - TOX_ENV=py33-django1.9-drf3.4 + - TOX_ENV=py33-django1.9-drf3.5 + - TOX_ENV=py33-django1.9-drf3.6 + - TOX_ENV=py33-django1.10-drf3.4 + - TOX_ENV=py33-django1.10-drf3.5 + - TOX_ENV=py33-django1.10-drf3.6 + - TOX_ENV=py33-django1.11-drf3.5 + - TOX_ENV=py33-django1.11-drf3.6 - TOX_ENV=py34-django1.6-drf2.4 - TOX_ENV=py34-django1.6-drf3.0 - TOX_ENV=py34-django1.6-drf3.1 @@ -56,6 +74,16 @@ env: - TOX_ENV=py34-django1.8-drf3.4 - TOX_ENV=py34-django1.8-drf3.5 - TOX_ENV=py34-django1.8-drf3.6 + - TOX_ENV=py34-django1.9-drf3.3 + - TOX_ENV=py34-django1.9-drf3.4 + - TOX_ENV=py34-django1.9-drf3.5 + - TOX_ENV=py34-django1.9-drf3.6 + - TOX_ENV=py34-django1.10-drf3.4 + - TOX_ENV=py34-django1.10-drf3.5 + - TOX_ENV=py34-django1.10-drf3.6 + - TOX_ENV=py34-django1.11-drf3.5 + - TOX_ENV=py34-django1.11-drf3.6 + matrix: fast_finish: true From adc4d48e87005410617b54d95f2fc34ed4fa613f Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 22:39:37 -0400 Subject: [PATCH 06/10] Added Tox testing up to DRF 3.8 These two versions only support Django 1.10 and Django 1.11, so that makes testing a bit easier and reduces the number of new matrix combinations. --- tox.ini | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tox.ini b/tox.ini index 0814cb2..fd6bda2 100644 --- a/tox.ini +++ b/tox.ini @@ -5,8 +5,8 @@ envlist = {py27,py33,py34}-django1.7-drf{2.4,3.0,3.1,3.2,3.3} {py27,py33,py34}-django1.8-drf{2.4,3.0,3.1,3.2,3.3,3.4,3.5,3.6} {py27,py33,py34}-django1.9-drf{3.3,3.4,3.5,3.6} - {py27,py33,py34}-django1.10-drf{3.4,3.5,3.6} - {py27,py33,py34}-django1.11-drf{3.5,3.6} + {py27,py33,py34}-django1.10-drf{3.4,3.5,3.6,3.7,3.8} + {py27,py33,py34}-django1.11-drf{3.5,3.6,3.7,3.8} [testenv] commands = ./runtests.py --fast @@ -27,6 +27,8 @@ deps = drf3.4: djangorestframework==3.4.* drf3.5: djangorestframework==3.5.* drf3.6: djangorestframework==3.6.* + drf3.7: djangorestframework==3.7.* + drf3.8: djangorestframework==3.8.* pytest-django==2.8.0 [testenv:py27-flake8] From 16a7eab10af1c6818ffa93ed90ce54a77b14ef81 Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 22:41:31 -0400 Subject: [PATCH 07/10] Add Travis testing up to DRF 3.8 --- .travis.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.travis.yml b/.travis.yml index 9f77060..d4dc6d4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,8 +29,12 @@ env: - TOX_ENV=py27-django1.10-drf3.4 - TOX_ENV=py27-django1.10-drf3.5 - TOX_ENV=py27-django1.10-drf3.6 + - TOX_ENV=py27-django1.10-drf3.7 + - TOX_ENV=py27-django1.10-drf3.8 - TOX_ENV=py27-django1.11-drf3.5 - TOX_ENV=py27-django1.11-drf3.6 + - TOX_ENV=py27-django1.11-drf3.7 + - TOX_ENV=py27-django1.11-drf3.8 - TOX_ENV=py33-django1.6-drf2.4 - TOX_ENV=py33-django1.6-drf3.0 - TOX_ENV=py33-django1.6-drf3.1 @@ -55,8 +59,12 @@ env: - TOX_ENV=py33-django1.10-drf3.4 - TOX_ENV=py33-django1.10-drf3.5 - TOX_ENV=py33-django1.10-drf3.6 + - TOX_ENV=py33-django1.10-drf3.7 + - TOX_ENV=py33-django1.10-drf3.8 - TOX_ENV=py33-django1.11-drf3.5 - TOX_ENV=py33-django1.11-drf3.6 + - TOX_ENV=py33-django1.11-drf3.7 + - TOX_ENV=py33-django1.11-drf3.8 - TOX_ENV=py34-django1.6-drf2.4 - TOX_ENV=py34-django1.6-drf3.0 - TOX_ENV=py34-django1.6-drf3.1 @@ -81,8 +89,12 @@ env: - TOX_ENV=py34-django1.10-drf3.4 - TOX_ENV=py34-django1.10-drf3.5 - TOX_ENV=py34-django1.10-drf3.6 + - TOX_ENV=py34-django1.10-drf3.7 + - TOX_ENV=py34-django1.10-drf3.8 - TOX_ENV=py34-django1.11-drf3.5 - TOX_ENV=py34-django1.11-drf3.6 + - TOX_ENV=py34-django1.11-drf3.7 + - TOX_ENV=py34-django1.11-drf3.8 matrix: From 7eec151682d931865c7a0f0afa4126e6ffc52d3f Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 22:43:16 -0400 Subject: [PATCH 08/10] Added Tox testing for Django 2.0 This is only supported by two versions of Django REST framework, since it's a relatively recent release. --- tox.ini | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tox.ini b/tox.ini index fd6bda2..848a8f0 100644 --- a/tox.ini +++ b/tox.ini @@ -7,6 +7,7 @@ envlist = {py27,py33,py34}-django1.9-drf{3.3,3.4,3.5,3.6} {py27,py33,py34}-django1.10-drf{3.4,3.5,3.6,3.7,3.8} {py27,py33,py34}-django1.11-drf{3.5,3.6,3.7,3.8} + {py27,py33,py34}-django2.0-drf{3.7,3.8} [testenv] commands = ./runtests.py --fast @@ -19,6 +20,7 @@ deps = django1.9: Django==1.9.* django1.10: Django==1.10.* django1.11: Django==1.11.* + django2.0: Django==2.0.* drf2.4: djangorestframework==2.4.* drf3.0: djangorestframework==3.0.* drf3.1: djangorestframework==3.1.* From 60e53bbfb5dce5420ca0e592231bbda0956164c8 Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 22:44:34 -0400 Subject: [PATCH 09/10] Add Travis testing for Django 2.0 Django 2.0 does not support Python 2.7 and Python 3.3, so it is not tested on those combinations. It's only tested on Python 3.4. We are now almost at 100 combinations on Travis... --- .travis.yml | 2 ++ tox.ini | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index d4dc6d4..4c2bfcd 100644 --- a/.travis.yml +++ b/.travis.yml @@ -95,6 +95,8 @@ env: - TOX_ENV=py34-django1.11-drf3.6 - TOX_ENV=py34-django1.11-drf3.7 - TOX_ENV=py34-django1.11-drf3.8 + - TOX_ENV=py34-django2.0-drf3.7 + - TOX_ENV=py34-django2.0-drf3.8 matrix: diff --git a/tox.ini b/tox.ini index 848a8f0..f98e578 100644 --- a/tox.ini +++ b/tox.ini @@ -7,7 +7,7 @@ envlist = {py27,py33,py34}-django1.9-drf{3.3,3.4,3.5,3.6} {py27,py33,py34}-django1.10-drf{3.4,3.5,3.6,3.7,3.8} {py27,py33,py34}-django1.11-drf{3.5,3.6,3.7,3.8} - {py27,py33,py34}-django2.0-drf{3.7,3.8} + {py34}-django2.0-drf{3.7,3.8} [testenv] commands = ./runtests.py --fast From d34cf4ae11f86cad5bf81d403961c91d71e95601 Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 16 May 2018 23:03:22 -0400 Subject: [PATCH 10/10] Adjusted documentation for supported versions --- README.md | 6 ++++-- docs/index.md | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 8df664c..4bc5ddb 100644 --- a/README.md +++ b/README.md @@ -16,8 +16,10 @@ XML support extracted as a third party package directly from the official Django ## Requirements * Python (2.7, 3.3, 3.4) -* Django (1.6, 1.7) -* Django REST Framework (2.4.4, 3.0, 3.1) +* Django (1.6 - 1.11, 2.0) +* Django REST Framework (2.4, 3.0 - 3.8) + +This project is tested on the combinations of Python and Django that are supported by each version of Django REST Framework. ## Installation diff --git a/docs/index.md b/docs/index.md index 4e56389..b6e22b9 100644 --- a/docs/index.md +++ b/docs/index.md @@ -24,8 +24,10 @@ XML support extracted as a third party package directly from the official Django ## Requirements * Python (2.7, 3.3, 3.4) -* Django (1.6, 1.7) -* Django REST Framework (2.4.4, 3.0, 3.1) +* Django (1.6 - 1.11, 2.0) +* Django REST Framework (2.4, 3.0 - 3.8) + +This project is tested on the combinations of Python and Django that are supported by each version of Django REST Framework. ## Installation