Merge pull request #3401 from Jamim/feature/python-3.8

Declare support for Python 3.8
This commit is contained in:
David Lord 2019-11-18 19:05:01 -08:00 committed by GitHub
commit af5743f6bd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 34 additions and 33 deletions

View file

@ -5,39 +5,38 @@ trigger:
jobs:
- job: Flask
variables:
vmImage: ubuntu-latest
python.version: '3.7'
python.architecture: 'x64'
vmImage: 'ubuntu-latest'
python.version: '3.8'
TOXENV: 'py,coverage-ci'
publish.test.results: 'true'
hasTestResults: 'true'
strategy:
matrix:
Python37Linux:
python.version: '3.7'
Python37Windows:
python.version: '3.7'
Python 3.8 Linux:
vmImage: 'ubuntu-latest'
Python 3.8 Windows:
vmImage: 'windows-latest'
Python37Mac:
python.version: '3.7'
Python 3.8 Mac:
vmImage: 'macos-latest'
Pypy3Linux:
PyPy 3 Linux:
python.version: 'pypy3'
Python36Linux:
Python 3.7 Linux:
python.version: '3.7'
Python 3.6 Linux:
python.version: '3.6'
Python35Linux:
Python 3.5 Linux:
python.version: '3.5'
Python27Linux:
Python 2.7 Linux:
python.version: '2.7'
Python27Windows:
Python 2.7 Windows:
python.version: '2.7'
vmImage: 'windows-latest'
DocsHtml:
TOXENV: 'docs-html'
publish.test.results: 'false'
Docs:
TOXENV: 'docs'
hasTestResults: 'false'
Style:
TOXENV: stylecheck
publish.test.results: 'false'
TOXENV: 'style'
hasTestResults: 'false'
VersionRange:
TOXENV: 'devel,lowest,coverage-ci'
@ -48,27 +47,26 @@ jobs:
- task: UsePythonVersion@0
inputs:
versionSpec: $(python.version)
architecture: $(python.architecture)
displayName: Use Python $(python.version)
- script: pip --disable-pip-version-check install -U tox
displayName: Install tox
- script: tox -- --junitxml=test-results.xml tests examples
- script: tox -s false -- --junitxml=test-results.xml tests examples
displayName: Run tox
- task: PublishTestResults@2
inputs:
testResultsFiles: test-results.xml
testRunTitle: $(Agent.JobName)
condition: eq(variables['publish.test.results'], 'true')
condition: eq(variables['hasTestResults'], 'true')
displayName: Publish test results
- task: PublishCodeCoverageResults@1
inputs:
codeCoverageTool: Cobertura
summaryFileLocation: coverage.xml
condition: eq(variables['publish.test.results'], 'true')
condition: eq(variables['hasTestResults'], 'true')
displayName: Publish coverage results
# Test on the nightly version of Python.

View file

@ -164,6 +164,7 @@ Building the docs
Build the docs in the ``docs`` directory using Sphinx::
cd docs
pip install -r requirements.txt
make html
Open ``_build/html/index.html`` in your browser to view the docs.

View file

@ -40,6 +40,9 @@ setup(
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
"Topic :: Internet :: WWW/HTTP :: Dynamic Content",
"Topic :: Internet :: WWW/HTTP :: WSGI :: Application",
"Topic :: Software Development :: Libraries :: Application Frameworks",

17
tox.ini
View file

@ -1,9 +1,10 @@
[tox]
envlist =
py{37,36,35,27,py3,py}
py37-{simplejson,devel,lowest}
docs-html
py{38,37,36,35,27,py3,py}
py38-{simplejson,devel,lowest}
docs
coverage
skip_missing_interpreters = true
[testenv]
passenv = LANG
@ -14,7 +15,7 @@ deps =
blinker
python-dotenv
lowest: Werkzeug==0.15
lowest: Werkzeug==0.15.5
lowest: Jinja2==2.10
lowest: itsdangerous==0.24
lowest: Click==5.1
@ -39,16 +40,14 @@ commands =
# courtesy Python nightly test, don't fail the build in CI
ignore_outcome = true
commands =
pip install -q -e examples/tutorial[test]
pip install -q -e examples/javascript[test]
coverage run -p -m pytest --tb=short -Werror --junitxml=test-results.xml {posargs:tests examples}
coverage run -p -m pytest --tb=short -Werror --junitxml=test-results.xml tests
[testenv:stylecheck]
[testenv:style]
deps = pre-commit
skip_install = true
commands = pre-commit run --all-files --show-diff-on-failure
[testenv:docs-html]
[testenv:docs]
deps =
-r docs/requirements.txt
commands = sphinx-build -W -b html -d {envtmpdir}/doctrees docs {envtmpdir}/html