-
Notifications
You must be signed in to change notification settings - Fork 17
/
tox.ini
85 lines (69 loc) · 2.04 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
[tox]
envlist = {py311, py312}-{wiki, unit, linting}
# other: doc
[testenv]
deps =
poetry
doc: pdoc
vreg: pyglet
allowlist_externals =
./scripts/title
wiki: ./scripts/test_*
vreg: ./tests/vreg/**
commands =
# Install main dependencies
poetry install -v --only main
doc: pdoc --docformat google ./pyprland
wiki: ./scripts/test_wiki_coverage.sh
vreg: ./tests/vreg/run_tests.sh
# Install test dependencies
unit: poetry install --only test
unit: pytest tests
# Install everything
deadcode,linting,coverage: poetry install -v
deadcode: ./scripts/title VULTURE
deadcode: poetry run vulture --ignore-names 'event_*,run_*,fromtop,frombottom,fromleft,fromright,instance' pyprland scripts/v_whitelist.py
linting: ./scripts/title MYPY
linting: poetry run pip install types-aiofiles
linting: poetry run mypy --install-types --check-untyped-defs pyprland
linting: ./scripts/title RUFF FORMAT
linting: poetry run ruff format pyprland
linting: ./scripts/title RUFF CHECK
linting: poetry run ruff check pyprland --fix
linting: ./scripts/title PYLINT
linting: poetry run pylint pyprland
linting: ./scripts/title FLAKE8
linting: poetry run flake8 pyprland
coverage: ./scripts/title PYTEST
coverage: poetry run coverage run -m pytest tests
coverage: ./scripts/title COVERAGE
coverage: poetry run coverage report
;[testenv:standalone]
;deps =
; poetry
; pyinstaller
;
;commands =
; poetry install -v --only main
; pyinstaller -n pypr -Fy --collect-all pyprland.plugins pyprland/command.py
;
; [testenv:shellgen]
; deps =
; shtab
;
; allowlist_externals = bash
; setenv =
; PYTHONPATH=scripts
; commands =
; bash -c "shtab -u --shell=bash pypr.get_parser | tee scripts/completions/pypr.bash"
; bash -c "shtab -u --shell=zsh pypr.get_parser | tee scripts/completions/pypr.zsh"
# Tools
[flake8]
max-line-length = 140
ignore = E203,W503
[pycodestyle]
ignore = E203,W503
max-line-length = 140
statistics = True
[pydocstyle]
add-ignore = D105,D107,D203