File: tox.ini

package info (click to toggle)
orange3 3.40.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 15,908 kB
  • sloc: python: 162,745; ansic: 622; makefile: 322; sh: 93; cpp: 77
file content (149 lines) | stat: -rw-r--r-- 4,139 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
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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
[tox]
envlist =
    orange-{oldest, 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.15.*
    pyqtwebengine==5.15.*
    coverage
    psycopg2-binary; platform_system=="Linux" # we only test this on Linux
    pymssql; platform_system=="Linux" # we only test this on Linux
    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
    # GUI requirements
    oldest: orange-canvas-core==0.2.5
    oldest: orange-widget-base==4.25.0
    oldest: AnyQt==0.2.0
    oldest: matplotlib==3.6.0
    oldest: pygments==2.8.0
    oldest: pyqtgraph>=0.13.1
    oldest: qtconsole==4.7.2
    # core requirements
    oldest: baycomp==1.0.2
    oldest: bottleneck==1.3.7
    oldest: catboost==1.2.2
    oldest: chardet==3.0.2
    oldest: httpx==0.21.0
    oldest: joblib==1.2.0
    # oldest: keyring
    # oldest: keyrings.alt
    # oldest: networkx
    oldest: numpy==1.23.2
    oldest: openpyxl==3.1.3
    oldest: openTSNE==1.0.0
    oldest: pandas==2.0.1
    oldest: python-louvain==0.13
    # oldest: pyyaml
    # oldest: requests
    oldest: scikit-learn==1.5.1
    oldest: scipy==1.10
    # oldest: serverfiles
    oldest: xgboost==2.1.0
    oldest: xlrd==1.2.0
    # oldest: xlsxwriter

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:beta]
changedir =
    {envsitepackagesdir}
setenv =
    QT_API=PyQt6
    ANYQT_HOOK_DENY=pyqt5
    PIP_EXTRA_INDEX_URL=https://pypi.anaconda.org/scientific-python-nightly-wheels/simple
    PIP_PRE=1
deps =
    https://github.com/pyqtgraph/pyqtgraph/archive/refs/heads/master.zip#egg=pyqtgraph
    https://github.com/biolab/orange-canvas-core/archive/refs/heads/master.zip#egg=orange-canvas-core
    https://github.com/biolab/orange-widget-base/archive/refs/heads/master.zip#egg=orange-widget-base
    PyQt6==6.8.*
    PyQt6-Qt6==6.8.*
    PyQt6-WebEngine==6.8.*
    PyQt6-WebEngine-Qt6==6.8.*
commands_pre =
    # Verify installed packages have compatible dependencies
    pip check
    # freeze environment
    pip freeze
commands =
    python -m unittest -v Orange.tests Orange.widgets.tests

[testenv:pyqt6]
changedir =
    {envsitepackagesdir}
setenv =
    QT_API=PyQt6
    ANYQT_HOOK_DENY=pyqt5
deps =
    PyQt6==6.8.*
    PyQt6-Qt6==6.8.*
    PyQt6-WebEngine==6.8.*
    PyQt6-WebEngine-Qt6==6.8.*

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