-
Notifications
You must be signed in to change notification settings - Fork 0
/
tox.ini
76 lines (67 loc) · 1.63 KB
/
tox.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
[tox]
envlist = py36, py37, py38, py39, pypy36, lint, mypy
usedevelop = true
passenv = *
skip_missing_interpreters = true
[testenv]
deps = -rtest-requirements.txt
commands = coverage run -m pytest -vv --cov=binobj {posargs:tests}
[testenv:lint]
basepython = python3.7
deps = -rlint-requirements.txt
commands = flake8
[testenv:mypy]
basepython = python3.7
deps = -rlint-requirements.txt
commands = mypy --show-error-codes binobj
[pytest]
filterwarnings =
always::DeprecationWarning
ignore:^.*__contains__.*$:DeprecationWarning:binobj.structures
[coverage:run]
branch = true
source = binobj
[coverage:report]
show_missing = true
skip_covered = true
[flake8]
extend_ignore = E203,E501,U101
exclude =
docs,
.git,
.mypy_cache,
.pytest_cache,
.tox,
build
max_line_length = 88
per_file_ignores =
__init__.py:F403,F401
unused_arguments_ignore_abstract_functions = true
unused_arguments_ignore_stub_functions = true
[isort]
combine_star = true
default_section = THIRDPARTY
force_single_line = true
from_first = false
known_first_party = binobj
line_length = 88
lines_after_imports = 2
order_by_type = false
use_parentheses = true
; See https://github.com/timothycrosley/isort#multi-line-output-modes
multi_line_output = 3
include_trailing_comma = true
[mypy]
strict_optional = true
disallow_any_decorated = true
disallow_any_generics = true
disallow_any_unimported = true
disallow_incomplete_defs = true
disallow_subclassing_any = true
disallow_untyped_calls = true
disallow_untyped_defs = true
ignore_missing_imports = false
warn_unreachable = true
warn_unused_ignores = true
warn_redundant_casts = true
warn_return_any = true