diff --git a/.appveyor.yml b/.appveyor.yml index ed073a94e7..e983faa021 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -17,6 +17,12 @@ environment: PYTHON_VERSION: "3.8.x" PYTHON_ARCH: "64" + - TOXENV: py39-no-ext + PYTHON: "C:\\Python39-x64\\python" + PYTHONPATH: "C:\\Python39-x64" + PYTHON_VERSION: "3.9.x" + PYTHON_ARCH: "64" + init: SET "PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%" install: diff --git a/.travis.yml b/.travis.yml index f0ac40d8f1..ac5770116f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -31,6 +31,16 @@ matrix: dist: xenial sudo: true name: "Python 3.8 without Extensions" + - env: TOX_ENV=py39 + python: 3.9 + dist: bionic + sudo: true + name: "Python 3.9 with Extensions" + - env: TOX_ENV=py39-no-ext + python: 3.9 + dist: bionic + sudo: true + name: "Python 3.9 without Extensions" - env: TOX_ENV=type-checking python: 3.6 name: "Python 3.6 Type checks" @@ -40,6 +50,10 @@ matrix: - env: TOX_ENV=type-checking python: 3.8 name: "Python 3.8 Type checks" + - env: TOX_ENV=type-checking + python: 3.9 + dist: bionic + name: "Python 3.9 Type checks" - env: TOX_ENV=lint python: 3.6 name: "Python 3.6 Linter checks" @@ -61,23 +75,28 @@ matrix: dist: xenial sudo: true name: "Python 3.8 Bandit security scan" + - env: TOX_ENV=security + python: 3.9 + dist: bionic + sudo: true + name: "Python 3.9 Bandit security scan" - env: TOX_ENV=docs python: 3.7 dist: xenial sudo: true name: "Python 3.7 Documentation tests" - env: TOX_ENV=pyNightly - python: 'nightly' + python: "nightly" name: "Python nightly with Extensions" - env: TOX_ENV=pyNightly-no-ext - python: 'nightly' + python: "nightly" name: "Python nightly without Extensions" allow_failures: - env: TOX_ENV=pyNightly - python: 'nightly' + python: "nightly" name: "Python nightly with Extensions" - env: TOX_ENV=pyNightly-no-ext - python: 'nightly' + python: "nightly" name: "Python nightly without Extensions" install: - pip install -U tox diff --git a/setup.py b/setup.py index f467721577..a0e4bf1e55 100644 --- a/setup.py +++ b/setup.py @@ -67,6 +67,7 @@ def open_local(paths, mode="r", encoding="utf8"): "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", ], "entry_points": {"console_scripts": ["sanic = sanic.__main__:main"]}, } diff --git a/tox.ini b/tox.ini index 487ce1ae46..908f45c857 100644 --- a/tox.ini +++ b/tox.ini @@ -1,11 +1,11 @@ [tox] -envlist = py36, py37, py38, pyNightly, {py36,py37,py38,pyNightly}-no-ext, lint, check, security, docs +envlist = py36, py37, py38, py39, pyNightly, {py36,py37,py38,py39,pyNightly}-no-ext, lint, check, security, docs [testenv] usedevelop = True setenv = - {py36,py37,py38,pyNightly}-no-ext: SANIC_NO_UJSON=1 - {py36,py37,py38,pyNightly}-no-ext: SANIC_NO_UVLOOP=1 + {py36,py37,py38,py39,pyNightly}-no-ext: SANIC_NO_UJSON=1 + {py36,py37,py38,py39,pyNightly}-no-ext: SANIC_NO_UVLOOP=1 deps = coverage pytest==5.2.1