File: tox.ini

package info (click to toggle)
python-webargs 8.7.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 696 kB
  • sloc: python: 4,907; makefile: 149
file content (64 lines) | stat: -rw-r--r-- 1,924 bytes parent folder | download
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
[tox]
envlist=
    lint
    py{39,310,311,312,313}-marshmallow3
    py313-marshmallowdev
    py39-lowest
    docs

[testenv]
extras = tests
deps =
    marshmallow3: marshmallow>=3.0.0,<4.0.0
    marshmallowdev: https://github.com/marshmallow-code/marshmallow/archive/dev.tar.gz

# for 'mindeps', pin flask to 1.1.3 and markupsafe to 1.1.1
# because flask 1.x does not set upper bounds on the versions of its dependencies
# generally, we can't install just any version from 1.x -- only 1.1.3 and 1.1.4
# markupsafe is a second-order dependency of flask (flask -> jinja2 -> markupsafe)
# and must be pinned explicitly because jinja2 does not pin its dependencies in any
# versions in its 2.x line
# see:
#   https://github.com/marshmallow-code/webargs/pull/694
#   https://github.com/pallets/flask/pull/4047
#   https://github.com/pallets/flask/issues/4455
    lowest: flask==1.1.3
    lowest: markupsafe==1.1.1
# all non-flask frameworks
    lowest: Django==2.2.0
    lowest: bottle==0.12.13
    lowest: tornado==4.5.2
    lowest: pyramid==1.9.1
    lowest: falcon==2.0.0
    lowest: aiohttp==3.0.8
commands = pytest {posargs}

[testenv:lint]
deps = pre-commit~=3.5
skip_install = true
commands = pre-commit run --all-files

# a separate `mypy` target which runs `mypy` in an environment with
# `webargs` and `marshmallow` both installed is a valuable safeguard against
# issues in which `mypy` running on every file standalone won't catch things
[testenv:mypy]
deps = mypy==1.11.0
extras = frameworks
commands = mypy src/ {posargs}

[testenv:docs]
extras = docs
commands = sphinx-build docs/ docs/_build {posargs}

; Below tasks are for development only (not run in CI)

[testenv:watch-docs]
deps =
  sphinx-autobuild
extras = docs
commands = sphinx-autobuild --open-browser docs/ docs/_build {posargs} --watch src/webargs --delay 2

[testenv:watch-readme]
deps = restview
skip_install = true
commands = restview README.rst