forked from biolab/orange3
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tox.ini
133 lines (126 loc) · 3.79 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 =
py-orange-{latest, released}
pylint-ci
build_doc
add-ons
skip_missing_interpreters = true
isolated_build = true
[testenv]
# https://tox.wiki/en/latest/config.html#download
download = true
passenv = *
# we MUST changedir to avoid installed being shadowed by working dir
# https://github.com/tox-dev/tox/issues/54
# https://github.com/tox-dev/tox/issues/514
changedir =
{envsitepackagesdir}
setenv =
# Raise deprecations as errors in our tests
ORANGE_DEPRECATIONS_ERROR=y
# Need this otherwise unittest installs a warning filter that overrides
# our desire to have OrangeDeprecationWarnings raised
PYTHONWARNINGS=module
# set coverage output and project config
COVERAGE_FILE = {toxinidir}/.coverage
COVERAGE_RCFILE = {toxinidir}/.coveragerc
deps =
pyqt5==5.12.*;platform_system=="Windows" and python_version<'3.10'
pyqt5==5.15.*;platform_system!="Windows" or python_version>='3.10'
pyqtwebengine==5.12.*;platform_system=="Windows" and python_version<'3.10'
pyqtwebengine==5.15.*;platform_system!="Windows" or python_version>='3.10'
# https://github.com/catboost/catboost/issues/2371#issuecomment-1536253780
# todo: remove when issue resolved
catboost<1.2;platform_system=="Darwin" and python_version=="3.8"
-r {toxinidir}/requirements-opt.txt
coverage
psycopg2-binary
# no wheels for mac
pymssql<3.0;platform_system!='Darwin' and python_version<'3.8'
latest: https://github.com/pyqtgraph/pyqtgraph/archive/refs/heads/master.zip#egg=pyqtgraph
latest: https://github.com/biolab/orange-canvas-core/archive/refs/heads/master.zip#egg=orange-canvas-core
latest: https://github.com/biolab/orange-widget-base/archive/refs/heads/master.zip#egg=orange-widget-base
oldest: orange-canvas-core==0.1.30
oldest: orange-widget-base==4.20.0
oldest: AnyQt==0.2.0
oldest: pyqtgraph>=0.13.1
oldest: matplotlib==3.2.0
oldest: qtconsole==4.7.2
oldest: pygments==2.8.0
oldest: pip==18.0
oldest: numpy==1.20
oldest: scipy==1.9
oldest: scikit-learn==1.1.0
oldest: bottleneck==1.3.4
oldest: xlrd==1.2.0
# oldest: xlsxwriter
oldest: chardet==3.0.2
oldest: joblib==1.0.0
# oldest: keyring
# oldest: keyrings.alt
oldest: setuptools==41.0.0
# oldest: serverfiles
# oldest: networkx
oldest: python-louvain==0.13
# oldest: requests
oldest: openTSNE==0.6.1
oldest: baycomp==1.0.2
oldest: pandas==1.4.0
# oldest: pyyaml
# oldest: openpyxl
oldest: httpx==0.21.0
oldest: xgboost==1.5.0
oldest: catboost==1.0.1
commands_pre =
# Verify installed packages have compatible dependencies
pip check
# freeze environment
pip freeze
commands =
coverage run -m unittest -v Orange.tests Orange.widgets.tests
coverage combine
coverage report
# codecov-actions wants xml report
coverage xml -o {toxinidir}/coverage.xml
[testenv:pyqt6]
changedir =
{envsitepackagesdir}
setenv =
QT_API=PyQt6
ANYQT_HOOK_DENY=pyqt5
deps =
PyQt6==6.5.*
PyQt6-Qt6==6.5.*
PyQt6-WebEngine==6.5.*
PyQt6-WebEngine-Qt6==6.5.*
commands =
python -m unittest -v Orange.widgets.tests
[testenv:add-ons]
deps =
{[testenv]deps}
Orange3-Educational
Orange3-Geo
Orange3-ImageAnalytics
Orange3-Text
commands =
python -m unittest discover --verbose --start-directory {envsitepackagesdir}/orangecontrib
[testenv:pylint-ci]
changedir = {toxinidir}
skip_install = true
allowlist_externals = bash
deps =
orange-widget-base
anyqt
PyQt5==5.12.*
pylint
commands =
bash .github/workflows/check_pylint_diff.sh
[testenv:build_doc]
changedir = {toxinidir}
usedevelop = true
allowlist_externals = bash
deps =
{[testenv]deps}
-r {toxinidir}/requirements-doc.txt
commands =
bash doc/build_doc.sh