Skip to content

Commit

Permalink
Add Python 3.7 to the test matrix
Browse files Browse the repository at this point in the history
Python 3.7 isn't supported in the standard Python containers yet. Use
the 'xenial' dist with sudo: required for Python 3.7 builds, and add
explicit services declarations for postgresql and mysql.
  • Loading branch information
jwhitlock committed Oct 3, 2018
1 parent 0bb5e9f commit 6abdfad
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 4 deletions.
54 changes: 54 additions & 0 deletions .travis.yml
Expand Up @@ -15,6 +15,10 @@ matrix:
python: "3.5"
- env: TOXENV=py36-django-21
python: "3.6"
- env: TOXENV=py37-django-21
python: "3.7"
sudo: required
dist: xenial
- env: TOXENV=py35-django-20
python: "3.5"
- env: TOXENV=py36-django-20
Expand All @@ -38,62 +42,112 @@ matrix:
# Test with PostgreSQL
- env: TOXENV=py35-django-21-postgres DATABASE_URL="postgres://postgres@localhost:5432/py35-django-21-postgres"
python: "3.5"
services: postgresql
- env: TOXENV=py36-django-21-postgres DATABASE_URL="postgres://postgres@localhost:5432/py36-django-21-postgres"
python: "3.6"
services: postgresql
- env: TOXENV=py37-django-21-postgres DATABASE_URL="postgres://postgres@localhost:5432/py37-django-21-postgres"
python: "3.7"
sudo: required
dist: xenial
services: postgresql
- env: TOXENV=py35-django-20-postgres DATABASE_URL="postgres://postgres@localhost:5432/py35-django-20-postgres"
python: "3.5"
services: postgresql
- env: TOXENV=py36-django-20-postgres DATABASE_URL="postgres://postgres@localhost:5432/py36-django-20-postgres"
python: "3.6"
services: postgresql
- env: TOXENV=py37-django-20-postgres DATABASE_URL="postgres://postgres@localhost:5432/py37-django-20-postgres"
python: "3.7"
sudo: required
dist: xenial
services: postgresql
- env: TOXENV=py27-django-111-postgres DATABASE_URL="postgres://postgres@localhost:5432/py27-django-111-postgres"
python: "2.7"
services: postgresql
- env: TOXENV=py36-django-111-postgres DATABASE_URL="postgres://postgres@localhost:5432/py36-django-111-postgres"
python: "3.6"
services: postgresql
- env: TOXENV=py27-django-110-postgres DATABASE_URL="postgres://postgres@localhost:5432/py27-django-110-postgres"
python: "2.7"
services: postgresql
- env: TOXENV=py35-django-110-postgres DATABASE_URL="postgres://postgres@localhost:5432/py35-django-110-postgres"
python: "3.5"
services: postgresql
- env: TOXENV=py27-django-19-postgres DATABASE_URL="postgres://postgres@localhost:5432/py27-django-19-postgres"
python: "2.7"
services: postgresql
- env: TOXENV=py35-django-19-postgres DATABASE_URL="postgres://postgres@localhost:5432/py35-django-19-postgres"
python: "3.5"
services: postgresql
- env: TOXENV=py27-django-18-postgres DATABASE_URL="postgres://postgres@localhost:5432/py27-django-18-postgres"
python: "2.7"
services: postgresql
# Test with MySQL
- env: TOXENV=py35-django-21-mysql DATABASE_URL="mysql://travis@localhost:3306/py35-django-21-mysql"
python: "3.5"
services: mysql
- env: TOXENV=py36-django-21-mysql DATABASE_URL="mysql://travis@localhost:3306/py36-django-21-mysql"
python: "3.6"
services: mysql
- env: TOXENV=py37-django-21-mysql DATABASE_URL="mysql://travis@localhost:3306/py37-django-21-mysql"
python: "3.7"
sudo: required
dist: xenial
services: mysql
- env: TOXENV=py35-django-20-mysql DATABASE_URL="mysql://travis@localhost:3306/py35-django-20-mysql"
python: "3.5"
services: mysql
- env: TOXENV=py36-django-20-mysql DATABASE_URL="mysql://travis@localhost:3306/py36-django-20-mysql"
python: "3.6"
services: mysql
- env: TOXENV=py37-django-20-mysql DATABASE_URL="mysql://travis@localhost:3306/py37-django-20-mysql"
python: "3.7"
sudo: required
dist: xenial
services: mysql
- env: TOXENV=py27-django-111-mysql DATABASE_URL="mysql://travis@localhost:3306/py27-django-111-mysql"
python: "2.7"
services: mysql
- env: TOXENV=py36-django-111-mysql DATABASE_URL="mysql://travis@localhost:3306/py36-django-111-mysql"
python: "3.6"
services: mysql
- env: TOXENV=py27-django-110-mysql DATABASE_URL="mysql://travis@localhost:3306/py27-django-110-mysql"
python: "2.7"
services: mysql
- env: TOXENV=py35-django-110-mysql DATABASE_URL="mysql://travis@localhost:3306/py35-django-110-mysql"
python: "3.5"
services: mysql
- env: TOXENV=py27-django-19-mysql DATABASE_URL="mysql://travis@localhost:3306/py27-django-19-mysql"
python: "2.7"
services: mysql
- env: TOXENV=py35-django-19-mysql DATABASE_URL="mysql://travis@localhost:3306/py35-django-19-mysql"
python: "3.5"
services: mysql
- env: TOXENV=py27-django-18-mysql DATABASE_URL="mysql://travis@localhost:3306/py27-django-18-mysql"
python: "2.7"
services: mysql
# Django master is allowed to fail
- env: TOXENV=py35-django-master
python: "3.5"
- env: TOXENV=py36-django-master
python: "3.6"
- env: TOXENV=py37-django-master
python: "3.7"
sudo: required
dist: xenial
- env: TOXENV=py35-django-master-mysql DATABASE_URL="mysql://travis@localhost:3306/py35-django-master-mysql"
python: "3.5"
language: pyth
services: mysql
- env: TOXENV=py36-django-master-postgres DATABASE_URL="postgres://postgres@localhost:5432/py36-django-master-postgres"
python: "3.6"
services: postgresql
allow_failures:
# Master is allowed to fail
- env: TOXENV=py35-django-master
- env: TOXENV=py36-django-master
- env: TOXENV=py37-django-master
- env: TOXENV=py35-django-master-mysql DATABASE_URL="mysql://travis@localhost:3306/py35-django-master-mysql"
- env: TOXENV=py36-django-master-postgres DATABASE_URL="postgres://postgres@localhost:5432/py36-django-master-postgres"

Expand Down
6 changes: 2 additions & 4 deletions README.rst
Expand Up @@ -46,10 +46,8 @@ recommended. It follows the `Django's support policy`_, supporting:
* Django 1.9 with Python 2.7, 3.4, or 3.5
* Django 1.10 with Python 2.7, 3.4, or 3.5
* Django 1.11 (LTS) with Python 2.7, 3.4, 3.5, or 3.6
* Django 2.0 with Python 3.4, 3.5 or 3.6
* Django 2.1 with Python 3.5 or 3.6

Python 3.7 should work, but is untested in TravisCI.
* Django 2.0 with Python 3.4, 3.5, 3.6, or 3.7
* Django 2.1 with Python 3.5, 3.6, or 3.7

.. _latest release: https://pypi.python.org/pypi/nose
.. _Django's support policy: https://docs.djangoproject.com/en/1.8/internals/release-process/#supported-versions
Expand Down
1 change: 1 addition & 0 deletions setup.py
Expand Up @@ -83,6 +83,7 @@ def get_long_description(title):
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Topic :: Software Development :: Testing'
]
)

0 comments on commit 6abdfad

Please sign in to comment.