diff --git a/.travis.yml b/.travis.yml index f6c91c262..d88f10324 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,4 @@ -sudo: false +dist: xenial language: python cache: @@ -54,23 +54,23 @@ matrix: python: 3.5 env: TOX_ENV=py35,codecov TRIAL_FLAGS="-j 2" - - name: "py3.6 / sqlite" - python: 3.6 - env: TOX_ENV=py36,codecov TRIAL_FLAGS="-j 2" + - name: "py3.7 / sqlite" + python: 3.7 + env: TOX_ENV=py37,codecov TRIAL_FLAGS="-j 2" - - name: "py3.6 / postgres9.4" - python: 3.6 + - name: "py3.7 / postgres9.4" + python: 3.7 addons: postgresql: "9.4" - env: TOX_ENV=py36-postgres TRIAL_FLAGS="-j 4" + env: TOX_ENV=py37-postgres TRIAL_FLAGS="-j 4" services: - postgresql - - name: "py3.6 / postgres9.5" - python: 3.6 + - name: "py3.7 / postgres9.5" + python: 3.7 addons: postgresql: "9.5" - env: TOX_ENV=py36-postgres,codecov TRIAL_FLAGS="-j 4" + env: TOX_ENV=py37-postgres,codecov TRIAL_FLAGS="-j 4" services: - postgresql @@ -86,7 +86,7 @@ matrix: install: # this just logs the postgres version we will be testing against (if any) - - psql -At -U postgres -c 'select version();' + - psql -At -U postgres -c 'select version();' || true - pip install tox diff --git a/changelog.d/4677.misc b/changelog.d/4677.misc new file mode 100644 index 000000000..6f4596be4 --- /dev/null +++ b/changelog.d/4677.misc @@ -0,0 +1 @@ +Run unit tests against python 3.7. diff --git a/tox.ini b/tox.ini index 3e2dba292..14437e733 100644 --- a/tox.ini +++ b/tox.ini @@ -3,7 +3,6 @@ envlist = packaging, py27, py36, pep8, check_isort [base] deps = - Twisted>=17.1 mock python-subunit junitxml @@ -38,6 +37,7 @@ whitelist_externals = setenv = {[base]setenv} + postgres: SYNAPSE_POSTGRES = 1 passenv = * @@ -47,8 +47,6 @@ commands = sh -c 'echo "import coverage; coverage.process_startup()" > {envsitepackagesdir}/../sitecustomize.py' {envbindir}/coverage run "{envbindir}/trial" {env:TRIAL_FLAGS:} {posargs:tests} {env:TOXSUFFIX:} -[testenv:py27] - # As of twisted 16.4, trial tries to import the tests as a package (previously # it loaded the files explicitly), which means they need to be on the # pythonpath. Our sdist doesn't include the 'tests' package, so normally it @@ -72,14 +70,7 @@ commands = # ) usedevelop=true -[testenv:py27-postgres] -usedevelop=true -deps = - {[base]deps} - psycopg2 -setenv = - {[base]setenv} - SYNAPSE_POSTGRES = 1 + # A test suite for the oldest supported versions of Python libraries, to catch # any uses of APIs not available in them. @@ -101,22 +92,6 @@ commands = pip install -e . {envbindir}/trial {env:TRIAL_FLAGS:} {posargs:tests} {env:TOXSUFFIX:} -[testenv:py35] -usedevelop=true - -[testenv:py36] -usedevelop=true - -[testenv:py36-postgres] -usedevelop=true -deps = - {[base]deps} - psycopg2 -setenv = - {[base]setenv} - SYNAPSE_POSTGRES = 1 - - [testenv:packaging] skip_install=True deps =