Merge branch 'weblate-gnu-mailman-postorius' into 'master'
[mailman-postorious.git] / tox.ini
blob481e63550f564daab6edcf2ea08bad3a3c71e071
1 [tox]
2 envlist = py{39,310,311,312}-django{42,50,-latest},qa
4 [testenv]
5 usedevelop = True
6 changedir = {toxinidir}
7 deps =
8 beautifulsoup4
9 django-debug-toolbar
10 django-requests-debug-toolbar
11 importlib_resources<6.0
12 git: git+https://gitlab.com/mailman/mailmanclient@master
13 git: git+https://gitlab.com/mailman/mailman@master
14 git+https://gitlab.com/mailman/django-mailman3.git
15 mailman
16 mailmanclient
17 django-mailman3
18 pytest
19 pytest-django
20 dev: -e../mailmanclient
21 dev: -e../django-mailman3
22 dev: https://github.com/django/django/archive/main.tar.gz
23 django42: django>=4.2,<4.3
24 django50: django>=5.0,<5.1
25 django-latest: https://github.com/django/django/archive/main.tar.gz
26 commands =
27 pytest {posargs:src/}
28 setenv =
29 LC_ALL = C.UTF-8
30 LANG = C.UTF-8
32 [testenv:cov]
33 basepython = python3
34 deps =
35 {[testenv]deps}
36 Django>=4.2,<5.1
37 coverage
38 commands =
39 coverage run -m pytest {posargs:src/}
40 coverage html
41 coverage report -m
42 setenv =
43 LC_ALL = C.UTF-8
44 LANG = C.UTF-8
46 [testenv:qa]
47 basepython = python3
48 changedir = {toxinidir}
49 deps =
50 flake8 < 5
51 isort
52 blue
53 commands =
54 flake8 src/ {posargs}
55 isort --check-only src
56 blue --check .
58 [testenv:docs]
59 deps =
60 -r requirements-docs.txt
61 allowlist_externals =
62 mkdir
63 commands=
64 mkdir -p {toxinidir}/src/postorius/doc/_static
65 sphinx-build -t html src/postorius/doc build/
67 [testenv:format]
68 deps =
69 isort
70 blue
71 commands =
72 isort .
73 blue .
75 [flake8]
76 basepython = python3
77 ignore = E123, E133, W504, W503
78 show-source = True
79 exclude = .git,.tox,dist,*egg,src/postorius/doc,example_project
82 [isort]
83 line_length=79
84 # multi_line_output=4
85 balanced_wrapping=True
86 known_django=django
87 sections=FUTURE,STDLIB,DJANGO,THIRDPARTY,FIRSTPARTY,LOCALFOLDER
88 no_lines_before=LOCALFOLDER
89 lines_after_imports=2
90 use_parentheses=True
91 default_section=THIRDPARTY
92 known_first_party=postorius
93 profile=black
94 skip_gitignore=True
95 include_trailing_comma = true
96 indent = ' '
98 [blue]
99 extend-exclude =
100 src/postorius/migrations/*