-
Notifications
You must be signed in to change notification settings - Fork 0
/
tox.ini
133 lines (120 loc) · 2.68 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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
[tox]
envlist = lint, type
isolated_build = True
#[testenv]
#deps =
#commands =
# safety check
[testenv:pylint]
deps =
pylint
commands =
pylint -s n {toxinidir}/src/pyffstream
[testenv:flake8]
deps =
flake8
flake8-black
; flake8-isort
flake8-bugbear
; flake8-bandit
flake8-comprehensions
flake8-docstrings
flake8-rst-docstrings
flake8-simplify
darglint
commands =
flake8
[testenv:isort]
deps =
isort
commands =
isort --check --diff {toxinidir}/src/pyffstream
[testenv:lint]
deps =
{[testenv:pylint]deps}
{[testenv:flake8]deps}
{[testenv:isort]deps}
commands =
{[testenv:pylint]commands}
{[testenv:flake8]commands}
{[testenv:isort]commands}
[testenv:mypy]
deps =
mypy
types-requests
commands =
mypy --strict {toxinidir}
[testenv:pyright]
deps =
pyright
commands =
pyright
[testenv:type]
deps =
{[testenv:mypy]deps}
{[testenv:pyright]deps}
commands =
{[testenv:mypy]commands}
{[testenv:pyright]commands}
[testenv:docs]
extras = docs
commands =
sphinx-build docs docs/_build
[testenv:package]
deps =
flit
commands =
flit build
[testenv:pex]
deps =
pex
commands =
pex . "pex>=2.1.35" --console-script pyffstream --compile --output-file build/pyffstream.pex
[testenv:nuitka-win]
deps =
nuitka
zstandard
commands =
python -m nuitka \
--assume-yes-for-downloads \
--onefile \
--include-module=platformdirs.windows \
--python-flag=no_warnings,no_asserts,nosite,no_docstrings \
--python-flag=-OO \
-o pyffstream.exe \
--windows-icon-from-ico=icon\icon.ico \
--windows-product-version=0.0.0.1 \
--windows-company-name=aphysically \
--windows-file-description="A simple app to facilitate streaming via ffmpeg." \
--output-dir=build \
--enable-plugin=anti-bloat \
--mingw64 \
--lto=yes \
--disable-ccache \
src\pyffstream
#--nofollow-import-to=setuptools \
#--follow-stdlib \
[flake8]
extend-ignore =
# this conflicts Black
E203,
# I know I'm using subprocess, this project is a wrapper for a process
S101, S603, S404,
# missing docstrings
D100, D101, D102, D103, D104, D105, D106, D107,
# pydocstyle doesn't follow google style guide fully yet
# https://github.com/PyCQA/pydocstyle/issues/449
D417,
# Google Python style is not RST until after processed by Napoleon
# See https://github.com/peterjc/flake8-rst-docstrings/issues/17
RST201, RST203, RST301,
# https://github.com/peterjc/flake8-rst-docstrings/issues/18
RST213,
# error cases first, dataclass
SIM106, SIM119,
max-line-length = 88
#max-complexity = 10
application-import-names = pyffstream
#import-order-style = google
docstring-convention = google
strictness=long