From 7dfe58bb10442546fa65b7b0e1d47f49360ebd72 Mon Sep 17 00:00:00 2001 From: Charlie Denton Date: Fri, 14 Apr 2017 00:49:35 +0100 Subject: [PATCH 1/7] Remove duplicate line in tox config --- tox.ini | 1 - 1 file changed, 1 deletion(-) diff --git a/tox.ini b/tox.ini index ee02b1b..c4abcf5 100644 --- a/tox.ini +++ b/tox.ini @@ -5,7 +5,6 @@ envlist= py32-django{15,16,17,18}, py33-django{15,16,17,18}, py34-django{15,16,17,18,19,110,111}, - py35-django{18,19,110,111} py35-django{18,19,110,111}, py36-django{111}, # py33-django-dev, From 24d7509879ae95ec4dc7e0339fe11095b8283cc8 Mon Sep 17 00:00:00 2001 From: Charlie Denton Date: Fri, 14 Apr 2017 00:53:17 +0100 Subject: [PATCH 2/7] Run django master in tox tests --- tox.ini | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/tox.ini b/tox.ini index c4abcf5..32508e2 100644 --- a/tox.ini +++ b/tox.ini @@ -5,9 +5,8 @@ envlist= py32-django{15,16,17,18}, py33-django{15,16,17,18}, py34-django{15,16,17,18,19,110,111}, - py35-django{18,19,110,111}, - py36-django{111}, - # py33-django-dev, + py35-django{18,19,110,111,dev}, + py36-django{111,dev}, docs, [testenv] @@ -20,7 +19,7 @@ deps = django19: Django >= 1.9, < 1.10 django110: Django >= 1.10, < 1.11 django111: Django >= 1.11, < 1.12 - django-dev: https://github.com/django/django/tarball/master + djangodev: https://github.com/django/django/tarball/master commands= python runtests.py From c6e58db73e95e479c5e0298ff3fab9726c422739 Mon Sep 17 00:00:00 2001 From: Charlie Denton Date: Fri, 14 Apr 2017 01:03:11 +0100 Subject: [PATCH 3/7] Use tox for travis builds This paves the way for more complex tox configs that don't need duplicated config. --- .travis.yml | 154 ++++++++++++++++++++++++++-------------------------- tox.ini | 3 +- 2 files changed, 78 insertions(+), 79 deletions(-) diff --git a/.travis.yml b/.travis.yml index be2fa59..9da22ac 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,97 +10,95 @@ python: - "3.5" - "3.6" env: - - DJANGO="Django>=1.4,<1.5" - - DJANGO="Django>=1.5,<1.6" - - DJANGO="Django>=1.6,<1.7" - - DJANGO="Django>=1.7,<1.8" - - DJANGO="Django>=1.8,<1.9" - - DJANGO="Django>=1.9,<1.10" - - DJANGO="Django>=1.10,<1.11" - - DJANGO="Django>=1.11,<1.12" - - DJANGO="https://github.com/django/django/tarball/master" + - TOX_ENV="django14" + - TOX_ENV="django15" + - TOX_ENV="django16" + - TOX_ENV="django17" + - TOX_ENV="django18" + - TOX_ENV="django19" + - TOX_ENV="django110" + - TOX_ENV="django111" + - TOX_ENV="djangodev" matrix: exclude: - - python: "3.6" - env: DJANGO="Django>=1.4,<1.5" - - python: "3.6" - env: DJANGO="Django>=1.5,<1.6" - - python: "3.6" - env: DJANGO="Django>=1.6,<1.7" - - python: "3.6" - env: DJANGO="Django>=1.7,<1.8" - - python: "3.6" - env: DJANGO="Django>=1.8,<1.9" - - python: "3.6" - env: DJANGO="Django>=1.9,<1.10" - - python: "3.6" - env: DJANGO="Django>=1.10,<1.11" + - python: "3.6" + env: TOX_ENV="django14" + - python: "3.6" + env: TOX_ENV="django15" + - python: "3.6" + env: TOX_ENV="django16" + - python: "3.6" + env: TOX_ENV="django17" + - python: "3.6" + env: TOX_ENV="django18" + - python: "3.6" + env: TOX_ENV="django19" + - python: "3.6" + env: TOX_ENV="django110" - - python: "3.5" - env: DJANGO="Django>=1.4,<1.5" - - python: "3.5" - env: DJANGO="Django>=1.5,<1.6" - - python: "3.5" - env: DJANGO="Django>=1.6,<1.7" - - python: "3.5" - env: DJANGO="Django>=1.7,<1.8" + - python: "3.5" + env: TOX_ENV="django14" + - python: "3.5" + env: TOX_ENV="django15" + - python: "3.5" + env: TOX_ENV="django16" + - python: "3.5" + env: TOX_ENV="django17" - - python: "3.4" - env: DJANGO="Django>=1.4,<1.5" - - python: "3.4" - env: DJANGO="Django>=1.9,<1.10" - - python: "3.4" - env: DJANGO="Django>=1.10,<1.11" - - python: "3.4" - env: DJANGO="Django>=1.11,<1.12" + - python: "3.4" + env: TOX_ENV="django14" + - python: "3.4" + env: TOX_ENV="django19" + - python: "3.4" + env: TOX_ENV="django110" + - python: "3.4" + env: TOX_ENV="django111" - - python: "3.3" - env: DJANGO="Django>=1.4,<1.5" - - python: "3.3" - env: DJANGO="Django>=1.9,<1.10" - - python: "3.3" - env: DJANGO="Django>=1.10,<1.11" - - python: "3.3" - env: DJANGO="Django>=1.11,<1.12" - - python: "3.3" - env: DJANGO="https://github.com/django/django/tarball/master" + - python: "3.3" + env: TOX_ENV="django14" + - python: "3.3" + env: TOX_ENV="django19" + - python: "3.3" + env: TOX_ENV="django110" + - python: "3.3" + env: TOX_ENV="django111" + - python: "3.3" + env: TOX_ENV="djangodev" - - python: "3.2" - env: DJANGO="Django>=1.4,<1.5" - - python: "3.2" - env: DJANGO="Django>=1.9,<1.10" - - python: "3.2" - env: DJANGO="Django>=1.10,<1.11" - - python: "3.2" - env: DJANGO="Django>=1.11,<1.12" - - python: "3.2" - env: DJANGO="https://github.com/django/django/tarball/master" + - python: "3.2" + env: TOX_ENV="django14" + - python: "3.2" + env: TOX_ENV="django19" + - python: "3.2" + env: TOX_ENV="django110" + - python: "3.2" + env: TOX_ENV="django111" + - python: "3.2" + env: TOX_ENV="djangodev" + + - python: "2.6" + env: TOX_ENV="django17" + - python: "2.6" + env: TOX_ENV="django18" + - python: "2.6" + env: TOX_ENV="django19" + - python: "2.6" + env: TOX_ENV="django110" + - python: "2.6" + env: TOX_ENV="django111" + - python: "2.6" + env: TOX_ENV="djangodev" - - python: "2.6" - env: DJANGO="Django>=1.7,<1.8" - - python: "2.6" - env: DJANGO="Django>=1.8,<1.9" - - python: "2.6" - env: DJANGO="Django>=1.9,<1.10" - - python: "2.6" - env: DJANGO="Django>=1.10,<1.11" - - python: "2.6" - env: DJANGO="Django>=1.11,<1.12" - - python: "2.6" - env: DJANGO="https://github.com/django/django/tarball/master" allow_failures: - - env: DJANGO="Django>=1.11,<1.12" - - env: DJANGO="https://github.com/django/django/tarball/master" + - env: TOX_ENV="django111" + - env: TOX_ENV="djangodev" before_install: -- pip install codecov - -install: - - pip install -q $DJANGO coverage==3.6 +- pip install codecov tox script: - - coverage run --source=polymorphic runtests.py + - tox -e py${TRAVIS_PYTHON_VERSION/./}-$TOX_ENV after_success: - codecov diff --git a/tox.ini b/tox.ini index 32508e2..cff1ea7 100644 --- a/tox.ini +++ b/tox.ini @@ -11,6 +11,7 @@ envlist= [testenv] deps = + coverage == 3.6 django14: Django >= 1.4, < 1.5 django15: Django >= 1.5, < 1.6 django16: Django >= 1.6, < 1.7 @@ -21,7 +22,7 @@ deps = django111: Django >= 1.11, < 1.12 djangodev: https://github.com/django/django/tarball/master commands= - python runtests.py + coverage run --source polymorphic runtests.py [testenv:docs] deps=Sphinx From d5886387d4f641e665348926b55b0a309b6080e7 Mon Sep 17 00:00:00 2001 From: Charlie Denton Date: Fri, 14 Apr 2017 01:10:59 +0100 Subject: [PATCH 4/7] Allow travis builds to report failure early --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 9da22ac..d4329d0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,6 +21,7 @@ env: - TOX_ENV="djangodev" matrix: + fast_finish: true exclude: - python: "3.6" env: TOX_ENV="django14" From a57b067b425a40678238a88cf5cc330cc44b44aa Mon Sep 17 00:00:00 2001 From: Charlie Denton Date: Fri, 14 Apr 2017 01:26:24 +0100 Subject: [PATCH 5/7] Compile coverage for coveralls command on travis --- .gitignore | 1 + tox.ini | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index e63dffc..8699683 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ *.egg-info/ *.egg/ .coverage +coverage.xml .project .idea/ .pydevproject diff --git a/tox.ini b/tox.ini index cff1ea7..0b79eca 100644 --- a/tox.ini +++ b/tox.ini @@ -23,6 +23,7 @@ deps = djangodev: https://github.com/django/django/tarball/master commands= coverage run --source polymorphic runtests.py + coverage xml -i [testenv:docs] deps=Sphinx From 1481891733d727dc4a69902d24c2d4b1902457bb Mon Sep 17 00:00:00 2001 From: Charlie Denton Date: Sat, 15 Apr 2017 00:07:57 +0100 Subject: [PATCH 6/7] Use TOXENV env var in travis config I had previously used TOX_ENV, but not realised that TOXENV has a special meaning for tox. We can now expect TOX to run the appropriate build on travis without having it explicitly passed into the tox command. --- .travis.yml | 86 ++++++++++++++++++++++++++--------------------------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/.travis.yml b/.travis.yml index d4329d0..0cfc81e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,96 +10,96 @@ python: - "3.5" - "3.6" env: - - TOX_ENV="django14" - - TOX_ENV="django15" - - TOX_ENV="django16" - - TOX_ENV="django17" - - TOX_ENV="django18" - - TOX_ENV="django19" - - TOX_ENV="django110" - - TOX_ENV="django111" - - TOX_ENV="djangodev" + - TOXENV="django14" + - TOXENV="django15" + - TOXENV="django16" + - TOXENV="django17" + - TOXENV="django18" + - TOXENV="django19" + - TOXENV="django110" + - TOXENV="django111" + - TOXENV="djangodev" matrix: fast_finish: true exclude: - python: "3.6" - env: TOX_ENV="django14" + env: TOXENV="django14" - python: "3.6" - env: TOX_ENV="django15" + env: TOXENV="django15" - python: "3.6" - env: TOX_ENV="django16" + env: TOXENV="django16" - python: "3.6" - env: TOX_ENV="django17" + env: TOXENV="django17" - python: "3.6" - env: TOX_ENV="django18" + env: TOXENV="django18" - python: "3.6" - env: TOX_ENV="django19" + env: TOXENV="django19" - python: "3.6" - env: TOX_ENV="django110" + env: TOXENV="django110" - python: "3.5" - env: TOX_ENV="django14" + env: TOXENV="django14" - python: "3.5" - env: TOX_ENV="django15" + env: TOXENV="django15" - python: "3.5" - env: TOX_ENV="django16" + env: TOXENV="django16" - python: "3.5" - env: TOX_ENV="django17" + env: TOXENV="django17" - python: "3.4" - env: TOX_ENV="django14" + env: TOXENV="django14" - python: "3.4" - env: TOX_ENV="django19" + env: TOXENV="django19" - python: "3.4" - env: TOX_ENV="django110" + env: TOXENV="django110" - python: "3.4" - env: TOX_ENV="django111" + env: TOXENV="django111" - python: "3.3" - env: TOX_ENV="django14" + env: TOXENV="django14" - python: "3.3" - env: TOX_ENV="django19" + env: TOXENV="django19" - python: "3.3" - env: TOX_ENV="django110" + env: TOXENV="django110" - python: "3.3" - env: TOX_ENV="django111" + env: TOXENV="django111" - python: "3.3" - env: TOX_ENV="djangodev" + env: TOXENV="djangodev" - python: "3.2" - env: TOX_ENV="django14" + env: TOXENV="django14" - python: "3.2" - env: TOX_ENV="django19" + env: TOXENV="django19" - python: "3.2" - env: TOX_ENV="django110" + env: TOXENV="django110" - python: "3.2" - env: TOX_ENV="django111" + env: TOXENV="django111" - python: "3.2" - env: TOX_ENV="djangodev" + env: TOXENV="djangodev" - python: "2.6" - env: TOX_ENV="django17" + env: TOXENV="django17" - python: "2.6" - env: TOX_ENV="django18" + env: TOXENV="django18" - python: "2.6" - env: TOX_ENV="django19" + env: TOXENV="django19" - python: "2.6" - env: TOX_ENV="django110" + env: TOXENV="django110" - python: "2.6" - env: TOX_ENV="django111" + env: TOXENV="django111" - python: "2.6" - env: TOX_ENV="djangodev" + env: TOXENV="djangodev" allow_failures: - - env: TOX_ENV="django111" - - env: TOX_ENV="djangodev" + - env: TOXENV="django111" + - env: TOXENV="djangodev" before_install: - pip install codecov tox script: - - tox -e py${TRAVIS_PYTHON_VERSION/./}-$TOX_ENV + - tox after_success: - codecov From fcbbbe52b30343d0bf2d7b21004ca6428a1fb185 Mon Sep 17 00:00:00 2001 From: Charlie Denton Date: Sat, 15 Apr 2017 00:11:33 +0100 Subject: [PATCH 7/7] Explicitly build coverage XML on travis, not tox --- .travis.yml | 3 ++- tox.ini | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0cfc81e..532655e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -96,12 +96,13 @@ matrix: - env: TOXENV="djangodev" before_install: -- pip install codecov tox +- pip install codecov coverage==3.6 tox script: - tox after_success: +- coverage xml -i - codecov branches: diff --git a/tox.ini b/tox.ini index 0b79eca..cff1ea7 100644 --- a/tox.ini +++ b/tox.ini @@ -23,7 +23,6 @@ deps = djangodev: https://github.com/django/django/tarball/master commands= coverage run --source polymorphic runtests.py - coverage xml -i [testenv:docs] deps=Sphinx