69 lines
1.5 KiB
INI
69 lines
1.5 KiB
INI
# Reference: https://github.com/ethereum/ethereum-python-project-template/blob/master/tox.ini
|
|
|
|
# TODO: consider pypy3 support
|
|
[tox]
|
|
envlist =
|
|
py36-test
|
|
py37-test
|
|
py37-interop
|
|
lint
|
|
docs
|
|
|
|
[isort]
|
|
combine_as_imports=False
|
|
force_sort_within_sections=True
|
|
include_trailing_comma=True
|
|
known_third_party=hypothesis,pytest,p2pclient,pexpect,factory
|
|
known_first_party=libp2p
|
|
line_length=88
|
|
multi_line_output=3
|
|
use_parentheses=True
|
|
force_grid_wrap=0
|
|
skip_glob=
|
|
*_pb2*.py
|
|
*.pyi
|
|
|
|
[flake8]
|
|
max-line-length = 100
|
|
exclude = venv*,.tox,docs,build,*_pb2*.py
|
|
ignore = E203, W503
|
|
max-complexity = 18
|
|
select = B,C,E,F,W,T4,B9
|
|
|
|
[testenv]
|
|
usedevelop=True
|
|
commands =
|
|
test: pytest {posargs:tests/}
|
|
docs: make build-docs
|
|
basepython =
|
|
docs: python
|
|
py37: python3.7
|
|
py36: python3.6
|
|
extras =
|
|
test
|
|
docs: doc
|
|
whitelist_externals = make
|
|
deps =
|
|
passenv = CI TRAVIS TRAVIS_*
|
|
|
|
[testenv:lint]
|
|
basepython = python3
|
|
extras = lint
|
|
commands =
|
|
mypy -p {toxinidir}/libp2p -p examples --config-file {toxinidir}/mypy.ini
|
|
flake8 {toxinidir}/libp2p {toxinidir}/tests tests_interop examples setup.py
|
|
black --check libp2p tests tests_interop examples setup.py
|
|
isort --recursive --check-only --diff {toxinidir}/libp2p {toxinidir}/tests tests_interop examples setup.py
|
|
docformatter --pre-summary-newline --check --recursive libp2p tests tests_interop examples setup.py
|
|
|
|
[testenv:py37-interop]
|
|
deps =
|
|
p2pclient
|
|
pexpect
|
|
passenv = CI TRAVIS TRAVIS_* GOPATH
|
|
extras = test
|
|
commands =
|
|
pytest tests_interop/
|
|
basepython =
|
|
py37: python3.7
|