-
-
Notifications
You must be signed in to change notification settings - Fork 101
/
requirements.txt
58 lines (57 loc) · 2.74 KB
/
requirements.txt
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
# NB: Any lines marked with 'append_to_freeze' will be copied over to `requirements-freeze.txt` when creating SCT's
# stable releases. We do this because `pip freeze` will not capture options (e.g. --extra-index-url) or
# platform-specific requirements (e.g. sys.platform == 'win32')
# Avoid 1.6 and 1.7 due to method=restore bug: https://github.com/spinalcordtoolbox/spinalcordtoolbox/issues/4209#issuecomment-1739644328
dipy!=1.6.*,!=1.7.*,<1.9.0
# PyTorch's Linux distribution is very large due to its GPU support,
# but we only need that for training models. Our users only need CPU.
--extra-index-url https://download.pytorch.org/whl/cpu # append_to_freeze
ivadomed
matplotlib
monai[nibabel]
# Fresh Windows installations may be missing the C++ runtime library required by scikit-image.
# Installing "Microsoft Visual C++ Redistributable for Visual Studio" will fix this too, but
# we'd prefer not to burden users with another prerequisite.
# NB: It's possible this fix gets included upstream in a future skimage release, see:
# https://github.com/scikit-image/scikit-image/issues/4780#issuecomment-824678872
# (The version is pinned because this line gets copied to requirements-freeze.txt when preparing a release, not because we're avoiding bugs with a specific version. Feel free to update it to the latest version.)
msvc-runtime==14.29.30133; sys.platform == 'win32' # append_to_freeze
nibabel
nilearn
nnunetv2
numpy
# 1.7.0>onnxruntime>=1.5.1 required `brew install libomp` on macOS.
# So, pin to >=1.7.0 to avoid having to ask users to install libomp.
# Avoid version 1.16.0 due to: https://github.com/spinalcordtoolbox/spinalcordtoolbox/issues/4225
onnxruntime>=1.7.0,!=1.16.0
pandas
portalocker
psutil
# pyqt5=5.11.X causes https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3916#discussion_r997435037
# pyqt5=5.15.X causes https://github.com/spinalcordtoolbox/spinalcordtoolbox/issues/3925
# Additionally, for versions between 5.12-5.14, the only release to have Python 3.9 wheels is 5.12.3. So, we pin it.
# See: https://github.com/spinalcordtoolbox/spinalcordtoolbox/issues/3367#issuecomment-1533181462
pyqt5==5.12.3
# PyQt5-sip should be updated when PyQt5 is updated: https://github.com/spinalcordtoolbox/spinalcordtoolbox/issues/4354
pyqt5-sip<12.13.0
# pystrum==0.2 is incompatible with newer versions of numpy (installed via voxelmorph -> neurite -> pystrum)
# See also: https://github.com/adalca/pystrum/issues/9
pystrum>=0.3
pytest
pytest-cov
requests
requirements-parser
scipy
scikit-image
scikit-learn
xlwt
tqdm
transforms3d
urllib3
pytest_console_scripts
pyyaml
voxelmorph
wquantiles
# XlxsWriter is needed to write `.xlsx` files, since pandas removed support for the `xlwt` engine
# Source: https://github.com/pandas-dev/pandas/pull/49296
xlsxwriter