[PATCH 02/11] tox: Update versions of Django to be tested

Damien Lespiau damien.lespiau at intel.com
Wed Aug 19 21:25:43 AEST 2015


On Tue, Jun 30, 2015 at 09:52:00AM +0100, Stephen Finucane wrote:
> Since patchwork now supports Django 1.8 and no longer support 1.5, we
> should update the tox targets to validate this new subset of supported
> Django versions.
> 
> In addition, the paths to the requirements.txt files were not updated
> as part of a rebase. Correct this oversight.
> 
> Signed-off-by: Stephen Finucane <stephen.finucane at intel.com>

A few comments based on the latest tree and the tries to make it work
for me locally:

- Because patchwork is now using migrations, we should restrict django
  to 1.7+?
  I appreciate that people may still have django 1.6 around, but that
  means will need to maintain both manual SQL statements and the django
  1.7+ migrations. Sounds like a good idea to have a cut off?

- "By default tox will only pass the PATH environment variable"
  https://testrun.org/tox/latest/example/basic.html#passing-down-environment-variables

  Given that the dev settings using env variables for the dev db
  user/password, we want to be able to setup those variables and then
  call tox:

+passenv =
+    PW_TEST_DB_USER
+    PW_TEST_DB_PASS

- I'd also argue "django 1.7.x" is better expressed as >=1.7,<1.8 :)

> ---
>  docs/requirements-base.txt |  2 +-
>  docs/requirements-prod.txt |  2 +-
>  tox.ini                    | 38 ++++++++++++++++++--------------------
>  3 files changed, 20 insertions(+), 22 deletions(-)
> 
> diff --git a/docs/requirements-base.txt b/docs/requirements-base.txt
> index 77dc829..58b34ec 100644
> --- a/docs/requirements-base.txt
> +++ b/docs/requirements-base.txt
> @@ -1,2 +1,2 @@
> +MySQL-python==1.2.5
>  python-dateutil==1.5
> -Django<1.8,>=1.7
> diff --git a/docs/requirements-prod.txt b/docs/requirements-prod.txt
> index 24f97ce..f2c440a 100644/
> --- a/docs/requirements-prod.txt
> +++ b/docs/requirements-prod.txt
> @@ -1,2 +1,2 @@
> -MySQL-python==1.2.5
> +Django<1.9,>=1.8
>  -r requirements-base.txt
> diff --git a/tox.ini b/tox.ini
> index 485f7c7..11d8b67 100644
> --- a/tox.ini
> +++ b/tox.ini
> @@ -1,9 +1,23 @@
>  [tox]
> -envlist = {py27}-django{15,16,17}, pep8
> +envlist = {py27}-django{16,17,18}
>  skipsdist = True
>  
> +[testenv]
> +basepython =
> +    py27: python2.7
> +deps =
> +    -r{toxinidir}/docs/requirements-dev.txt
> +    django16: django<1.7,>=1.6
> +    django17: django<1.8,>=1.7
> +    django18: django<1.9,>=1.8
> +setenv =
> +    DJANGO_SETTINGS_MODULE = patchwork.settings.dev
> +commands =
> +    {toxinidir}/manage.py test '{posargs:patchwork}'
> +
>  [testenv:pep8]
> -deps = flake8
> +basepython = python2.7
> +deps = flake
>  commands = flake8 {posargs}
>  
>  [flake8]
> @@ -14,33 +28,17 @@ exclude = ./patchwork/tests
>  basepython = python2.7
>  deps =
>      pylint
> -    -r{toxinidir}/docs/requirements-django-1.7-mysql.txt
> +    -r{toxinidir}/docs/requirements-prod.txt
>  commands = pylint patchwork --rcfile=pylint.rc
>  
>  [testenv:coverage]
>  basepython = python2.7
>  deps =
>      coverage
> -    -r{toxinidir}/docs/requirements-django-1.6-mysql.txt
> +    -r{toxinidir}/docs/requirements-prod.txt
>  setenv =
>      DJANGO_SETTINGS_MODULE = patchwork.settings.dev
>  commands =
>      coverage erase
> -    {toxinidir}/manage.py syncdb
>      coverage run --omit=*tox* --branch {toxinidir}/manage.py test patchwork
>      coverage report -m
> -
> -[testenv]
> -basepython =
> -    py27: python2.7
> -commands =
> -    {toxinidir}/manage.py syncdb
> -    {toxinidir}/manage.py test patchwork
> -deps =
> -    python-dateutil==1.5
> -    MySQL-python==1.2.5
> -    django15: django<1.6,>=1.5
> -    django16: django<1.7,>=1.6
> -    django17: django<1.8,>=1.7
> -setenv =
> -    DJANGO_SETTINGS_MODULE = patchwork.settings.dev
> -- 
> 2.0.0
> 
> _______________________________________________
> Patchwork mailing list
> Patchwork at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/patchwork


More information about the Patchwork mailing list