Skip to content

Commit ee09135

Browse files
committed
chore(tox): Use uv_resolution to run minimum tests
1 parent b99ad93 commit ee09135

File tree

1 file changed

+29
-29
lines changed

1 file changed

+29
-29
lines changed

tox.ini

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
[tox]
66
requires =
77
tox>=4
8+
tox-uv
89
envlist =
910
# No preinstallations
1011
py3{9,10,11,12,13,13t}-none
@@ -71,41 +72,40 @@ set_env =
7172
dev: PIP_ONLY_BINARY=numpy,scipy,h5py
7273
!dev: PIP_ONLY_BINARY=numpy,scipy,h5py,pillow,matplotlib
7374
pre,dev: PIP_EXTRA_INDEX_URL=https://pypi.anaconda.org/scientific-python-nightly-wheels/simple
74-
pre,dev: UV_INDEX=https://pypi.anaconda.org/scientific-python-nightly-wheels/simple
75-
extras = test
75+
pre,dev: UV_EXTRA_INDEX_URL=https://pypi.anaconda.org/scientific-python-nightly-wheels/simple
76+
py313t: PYTHONGIL=0
77+
extras =
78+
test
79+
80+
# Simple, thanks pillow
81+
!none: dicomfs
82+
!none: indexed_gzip
83+
84+
# Matplotlib has wheels for everything except win32 (x86)
85+
{min,full,pre,dev}-{x,arm}64: viewers
86+
87+
# Nightly, but not released cp313t wheels for: scipy
88+
# When released, remove the py3* line and add min/full to the pre,dev line
89+
py3{9,10,11,12,13}-{min,full}-{x,arm}64: spm
90+
{pre,dev}-{x,arm}64: spm
91+
92+
# No cp313t wheels for: h5py, pyzstd
93+
py3{9,10,11,12,13}-{min,full,pre-dev}-{x,arm}64: minc2
94+
py3{9,10,11,12,13}-{min,full,pre-dev}-{x,arm}64: zstd
95+
96+
# No win32 wheels for scipy/matplotlib after py39
97+
py39-full-x86: spm
98+
py39-full-x86: viewers
99+
76100
deps =
77-
# General minimum dependencies: pin based on API usage
78-
# matplotlib 3.5 requires packaging 20
79-
min: packaging ==20
80-
min: importlib_resources ==5.12; python_version < '3.12'
81-
min: typing_extensions ==4.6; python_version < '3.13'
82-
# NEP29/SPEC0 + 1yr: Test on minor release series within the last 3 years
83-
# We're extending this to all optional dependencies
84-
# This only affects the range that we test on; numpy is the only non-optional
85-
# dependency, and will be the only one to affect pip environment resolution.
86-
min: numpy ==1.22
87-
min: h5py ==3.5
88-
min: indexed_gzip ==1.6
89-
min: matplotlib ==3.5
90-
min: pillow ==8.4
91-
min: pydicom ==2.3
92-
min: pyzstd ==0.15.2
93-
min: scipy ==1.8
94101
# Numpy 2.0 is a major breaking release; we cannot put much effort into
95102
# supporting until it's at least RC stable
96103
dev: numpy >=2.1.dev0
97-
# Scipy stopped producing win32 wheels at py310
98-
py39-full-x86,x64,arm64: scipy >=1.8
99-
# Matplotlib depends on scipy, so cannot be built for py310 on x86
100-
py39-full-x86,x64,arm64: matplotlib >=3.5
101-
# h5py stopped producing win32 wheels at py39
102-
{full,pre}-{x64,arm64}: h5py >=3.5
103-
full,pre,dev: pillow >=8.4
104-
full,pre: indexed_gzip >=1.6
105-
full,pre,dev: pyzstd >=0.15.2
106-
full,pre: pydicom >=2.3
107104
dev: pydicom @ git+https://github.com/pydicom/pydicom.git@main
108105

106+
uv_resolution =
107+
min: lowest-direct
108+
109109
commands =
110110
pytest --doctest-modules --doctest-plus \
111111
--cov nibabel --cov-report xml:cov.xml \

0 commit comments

Comments
 (0)