test_ok2/tox.ini

213 lines
5.9 KiB
INI
Raw Normal View History

[tox]
isolated_build = True
minversion = 3.20.0
2017-07-17 07:27:37 +08:00
distshare = {homedir}/.tox/distshare
envlist =
linting
2019-02-06 23:11:00 +08:00
py38
2020-05-07 20:26:55 +08:00
py39
2021-03-26 18:27:41 +08:00
py310
py311
py312
pypy3
2023-07-01 06:19:19 +08:00
py38-{pexpect,xdist,unittestextras,numpy,pluggymain,pylib}
2017-07-17 07:27:37 +08:00
doctesting
2023-08-20 02:18:17 +08:00
doctesting-coverage
plugins
2023-07-01 06:19:19 +08:00
py38-freeze
2017-07-17 07:27:37 +08:00
docs
2019-07-13 22:06:56 +08:00
docs-checklinks
fallback to native traceback when handling ExceptionGroup (take 2) [SQUASH] (#10209) * Squashed commit of the following: commit 41d339c46763bbe26123e1e6504b6e32290e33e1 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 17:01:04 2022 +0800 test in all py versions commit b3572a5a12672228c3276fc8c8e05980dfb7888a Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 16:41:06 2022 +0800 add test commit 7166a2a51e4f99046b028b663c193d8b558c7fd4 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 16:00:07 2022 +0800 update changelog commit b958c73d489157f0c0d4e46425083a5e2e2bc851 Author: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu Jun 23 07:50:52 2022 +0000 [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci commit ea7f376c6ca37c40c83df0e4a1cfaaedb34bae91 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 15:48:21 2022 +0800 Fix MyPy commit 97469beb1da40257e9a061a5e19548546c9312c4 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 15:03:48 2022 +0800 fix if ExceptionGroup not exist commit 84e553642cd69b4d499231d733df91ebfa84c7ad Author: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu Jun 23 03:43:27 2022 +0000 [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci commit 76bbef449b88bbd74fb5cca3b5293337a624ef03 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 11:40:41 2022 +0800 adding changelog commit db82bebc5a4969e2083adcd97bdfd2a63bb17d98 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 11:33:10 2022 +0800 fall back to native when handeling to exception groups * Typed ExceptionGroupTypes and changed to BaseExceptionGroup, fixed exceptionchain (excinfo->excinfo_, set reprcrash. Extended tests, though they're wip. * added exceptiongroup to pre-commit-config, moved away from tuple to directly defining BaseExceptionGroup, added block comment, added match line for inner exception, changked mark.skipif to importorskip to not need top-level import, changed tox.ini a bit - only uncovered should now be py37 without exceptiongroup, due to hypothesis * added py311-exceptiongroup to github CI, exceptiongroup is now a hard dependency on py<3.11, renamed bad variable names * added use_coverage to ubuntu-py311 * import BaseExceptionGroup with explicit version check instead of try/catch * removed from CI, added comments to tox and pre-commit
2022-08-18 00:16:32 +08:00
# checks that 3.11 native ExceptionGroup works with exceptiongroup
# not included in CI.
py311-exceptiongroup
2010-07-02 21:26:03 +08:00
[testenv]
commands =
{env:_PYTEST_TOX_COVERAGE_RUN:} pytest {posargs:{env:_PYTEST_TOX_DEFAULT_POSARGS:}}
doctesting: {env:_PYTEST_TOX_COVERAGE_RUN:} pytest --doctest-modules --pyargs _pytest
coverage: coverage combine
coverage: coverage report -m
passenv =
COVERAGE_*
PYTEST_ADDOPTS
TERM
SETUPTOOLS_SCM_PRETEND_VERSION_FOR_PYTEST
setenv =
_PYTEST_TOX_DEFAULT_POSARGS={env:_PYTEST_TOX_POSARGS_DOCTESTING:} {env:_PYTEST_TOX_POSARGS_LSOF:} {env:_PYTEST_TOX_POSARGS_XDIST:}
2019-02-27 16:15:04 +08:00
2023-06-20 19:55:39 +08:00
# See https://docs.python.org/3/library/io.html#io-encoding-warning
# If we don't enable this, neither can any of our downstream users!
PYTHONWARNDEFAULTENCODING=1
# Configuration to run with coverage similar to CI, e.g.
2023-07-01 06:19:19 +08:00
# "tox -e py38-coverage".
coverage: _PYTEST_TOX_COVERAGE_RUN=coverage run -m
coverage: _PYTEST_TOX_EXTRA_DEP=coverage-enable-subprocess
coverage: COVERAGE_FILE={toxinidir}/.coverage
coverage: COVERAGE_PROCESS_START={toxinidir}/.coveragerc
2019-02-27 16:15:04 +08:00
doctesting: _PYTEST_TOX_POSARGS_DOCTESTING=doc/en
nobyte: PYTHONDONTWRITEBYTECODE=1
lsof: _PYTEST_TOX_POSARGS_LSOF=--lsof
xdist: _PYTEST_TOX_POSARGS_XDIST=-n auto
extras = testing
2017-07-17 07:27:37 +08:00
deps =
doctesting: PyYAML
fallback to native traceback when handling ExceptionGroup (take 2) [SQUASH] (#10209) * Squashed commit of the following: commit 41d339c46763bbe26123e1e6504b6e32290e33e1 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 17:01:04 2022 +0800 test in all py versions commit b3572a5a12672228c3276fc8c8e05980dfb7888a Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 16:41:06 2022 +0800 add test commit 7166a2a51e4f99046b028b663c193d8b558c7fd4 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 16:00:07 2022 +0800 update changelog commit b958c73d489157f0c0d4e46425083a5e2e2bc851 Author: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu Jun 23 07:50:52 2022 +0000 [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci commit ea7f376c6ca37c40c83df0e4a1cfaaedb34bae91 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 15:48:21 2022 +0800 Fix MyPy commit 97469beb1da40257e9a061a5e19548546c9312c4 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 15:03:48 2022 +0800 fix if ExceptionGroup not exist commit 84e553642cd69b4d499231d733df91ebfa84c7ad Author: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu Jun 23 03:43:27 2022 +0000 [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci commit 76bbef449b88bbd74fb5cca3b5293337a624ef03 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 11:40:41 2022 +0800 adding changelog commit db82bebc5a4969e2083adcd97bdfd2a63bb17d98 Author: Cheukting <cheukting.ho@gmail.com> Date: Thu Jun 23 11:33:10 2022 +0800 fall back to native when handeling to exception groups * Typed ExceptionGroupTypes and changed to BaseExceptionGroup, fixed exceptionchain (excinfo->excinfo_, set reprcrash. Extended tests, though they're wip. * added exceptiongroup to pre-commit-config, moved away from tuple to directly defining BaseExceptionGroup, added block comment, added match line for inner exception, changked mark.skipif to importorskip to not need top-level import, changed tox.ini a bit - only uncovered should now be py37 without exceptiongroup, due to hypothesis * added py311-exceptiongroup to github CI, exceptiongroup is now a hard dependency on py<3.11, renamed bad variable names * added use_coverage to ubuntu-py311 * import BaseExceptionGroup with explicit version check instead of try/catch * removed from CI, added comments to tox and pre-commit
2022-08-18 00:16:32 +08:00
exceptiongroup: exceptiongroup>=1.0.0rc8
numpy: numpy>=1.19.4
pexpect: pexpect>=4.8.0
pluggymain: pluggy @ git+https://github.com/pytest-dev/pluggy.git
2022-10-21 05:15:57 +08:00
pylib: py>=1.8.2
unittestextras: twisted
unittestextras: asynctest
xdist: pytest-xdist>=2.1.0
xdist: -e .
{env:_PYTEST_TOX_EXTRA_DEP:}
[testenv:linting]
2018-08-26 07:48:01 +08:00
skip_install = True
basepython = python3
deps = pre-commit>=2.9.3
2020-01-13 03:09:51 +08:00
commands = pre-commit run --all-files --show-diff-on-failure {posargs:}
setenv =
# pre-commit and tools it launches are not clean of this warning.
PYTHONWARNDEFAULTENCODING=
[testenv:docs]
2018-12-20 04:12:12 +08:00
basepython = python3
usedevelop = True
deps =
-r{toxinidir}/doc/en/requirements.txt
# https://github.com/twisted/towncrier/issues/340
towncrier<21.3.0
2017-07-17 07:27:37 +08:00
commands =
python scripts/towncrier-draft-to-file.py
# the '-t changelog_towncrier_draft' tags makes sphinx include the draft
# changelog in the docs; this does not happen on ReadTheDocs because it uses
# the standard sphinx command so the 'changelog_towncrier_draft' is never set there
sphinx-build -W --keep-going -b html doc/en doc/en/_build/html -t changelog_towncrier_draft {posargs:}
setenv =
# Sphinx is not clean of this warning.
PYTHONWARNDEFAULTENCODING=
2019-07-13 22:06:56 +08:00
[testenv:docs-checklinks]
basepython = python3
usedevelop = True
changedir = doc/en
deps = -r{toxinidir}/doc/en/requirements.txt
commands =
2019-08-28 03:00:48 +08:00
sphinx-build -W -q --keep-going -b linkcheck . _build
setenv =
# Sphinx is not clean of this warning.
PYTHONWARNDEFAULTENCODING=
2019-07-13 22:06:56 +08:00
[testenv:regen]
2017-07-17 07:27:37 +08:00
changedir = doc/en
basepython = python3
passenv =
SETUPTOOLS_SCM_PRETEND_VERSION_FOR_PYTEST
2017-07-17 07:27:37 +08:00
deps =
PyYAML
regendoc>=0.8.1
sphinx
allowlist_externals =
make
2017-07-17 07:27:37 +08:00
commands =
make regen
setenv =
# We don't want this warning to reach regen output.
PYTHONWARNDEFAULTENCODING=
[testenv:plugins]
# use latest versions of all plugins, including pre-releases
pip_pre=true
# use latest pip to get new dependency resolver (#7783)
download=true
install_command=python -m pip install {opts} {packages}
changedir = testing/plugins_integration
deps = -rtesting/plugins_integration/requirements.txt
setenv =
PYTHONPATH=.
# Command temporarily removed until pytest-bdd is fixed:
# https://github.com/pytest-dev/pytest/pull/11785
# pytest bdd_wallet.py
commands =
pip check
pytest --cov=. simple_integration.py
pytest --ds=django_settings simple_integration.py
pytest --html=simple.html simple_integration.py
2020-09-28 02:25:04 +08:00
pytest --reruns 5 simple_integration.py
pytest pytest_anyio_integration.py
pytest pytest_asyncio_integration.py
pytest pytest_mock_integration.py
pytest pytest_trio_integration.py
pytest pytest_twisted_integration.py
pytest simple_integration.py --force-sugar --flakes
2023-07-01 06:19:19 +08:00
[testenv:py38-freeze]
2017-07-17 07:27:37 +08:00
changedir = testing/freeze
deps =
pyinstaller
2017-07-17 07:27:37 +08:00
commands =
{envpython} create_executable.py
{envpython} tox_run.py
2015-07-19 21:49:43 +08:00
[testenv:release]
2021-12-27 20:23:15 +08:00
description = do a release, required posarg of the version number
basepython = python3
usedevelop = True
passenv = *
deps =
colorama
github3.py
pre-commit>=2.9.3
wheel
# https://github.com/twisted/towncrier/issues/340
towncrier<21.3.0
commands = python scripts/release.py {posargs}
[testenv:prepare-release-pr]
2021-12-27 20:23:15 +08:00
description = prepare a release PR from a manual trigger in GitHub actions
usedevelop = {[testenv:release]usedevelop}
passenv = {[testenv:release]passenv}
deps = {[testenv:release]deps}
commands = python scripts/prepare-release-pr.py {posargs}
[testenv:generate-gh-release-notes]
description = generate release notes that can be published as GitHub Release
basepython = python3
usedevelop = True
deps =
pypandoc
commands = python scripts/generate-gh-release-notes.py {posargs}
[flake8]
2017-07-17 07:27:37 +08:00
max-line-length = 120
extend-ignore =
; whitespace before ':'
E203
; Missing Docstrings
D100,D101,D102,D103,D104,D105,D106,D107
; Whitespace Issues
D202,D203,D204,D205,D209,D213
; Quotes Issues
D302
; Docstring Content Issues
D400,D401,D401,D402,D405,D406,D407,D408,D409,D410,D411,D412,D413,D414,D415,D416,D417
; Unused imports
F401
2019-03-01 21:24:09 +08:00
2019-03-01 21:24:09 +08:00
[isort]
; This config mimics what reorder-python-imports does.
force_single_line = 1
known_localfolder = pytest,_pytest
known_third_party = test_source,test_excinfo
force_alphabetical_sort_within_sections = 1