-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtox.ini
More file actions
111 lines (97 loc) · 2.72 KB
/
Copy pathtox.ini
File metadata and controls
111 lines (97 loc) · 2.72 KB
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
[tox]
envlist = clean, clean-coverage, test, py3.7, py3.8, pypy, build, docs, lint, lint-manual, flake8, report
skipsdist = true
[travis]
python =
3.8: py3.8
3.7: py3.7
[testenv:docs]
basepython=python
changedir=docs
deps=--group docs
commands=
sphinx-build -b html -d {envtmpdir}/doctrees . {envtmpdir}/html
[testenv:flake8]
basepython = python
deps = flake8
commands = flake8 here_qgis tests
ignore_outcome = true
[testenv]
setenv =
PYTHONPATH = {toxinidir}
passenv =
HERE_*
deps=--group test
commands_pre =
# python -m pip install --upgrade pip
python -m pip install --prefer-binary -e .
commands =
pytest --cov=here_qgis --cov-config=.coveragerc --cov-report=html --html=reports/pytest.html --self-contained-html {posargs}
depends =
py{3.8,3.9,3.10,3.11,3.12}: clean
report: py{3.8,3.9,3.10,3.11,3.12}
# not needed
[testenv:report]
deps = coverage
skip_install = true
commands =
coverage report -i
coverage html -i
coverage xml -i
[testenv:clean-coverage]
deps = coverage
skip_install = true
commands = coverage erase
[testenv:{build,clean}]
description =
build: Build the package in isolation according to PEP517, see https://github.com/pypa/build
clean: Remove old distribution files and temporary build artifacts (./build and ./dist)
# https://setuptools.pypa.io/en/stable/build_meta.html#how-to-use-it
skip_install = True
changedir = {toxinidir}
deps =
build: build[virtualenv]
passenv =
SETUPTOOLS_*
commands =
clean: python -c 'import shutil; [shutil.rmtree(p, True) for p in ("build", "dist", "docs/_build")]'
clean: python -c 'import pathlib, shutil; [shutil.rmtree(p, True) for p in pathlib.Path(".").glob("*.egg-info")]'
build: python -m build {posargs}
# By default, both `sdist` and `wheel` are built. If your sdist is too big or you don't want
# to make it available, consider running: `tox -e build -- --wheel`
[testenv:publish]
# specify Python 3 to use platform's default Python 3
basepython = python3
deps =
twine
depends =
build
passenv =
TWINE_*
commands =
python -m twine upload dist/*.whl
# To run `tox -e lint` you need to make sure you have a
# `.pre-commit-config.yaml` file. See https://pre-commit.com
[testenv:{lint,lint-manual}]
description = Perform static analysis and style checks
skip_install = True
deps = pre-commit
passenv =
HOMEPATH
PROGRAMDATA
SETUPTOOLS_*
commands =
lint-manual: pre-commit run --all-files --hook-stage manual -vv {posargs}
lint: pre-commit run --all-files -vv {posargs}
commands_pre =
[testenv:install-git-pre-commit]
description = Instal pre-commit hooks
skip_install = True
deps = pre-commit
passenv =
HOMEPATH
PROGRAMDATA
SETUPTOOLS_*
commands =
pre-commit install
commands_pre =