Skip to content

Commit

Permalink
chore(tox): Use uv_resolution to run minimum tests
Browse files Browse the repository at this point in the history
  • Loading branch information
effigies committed Dec 7, 2024
1 parent b99ad93 commit ee09135
Showing 1 changed file with 29 additions and 29 deletions.
58 changes: 29 additions & 29 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
[tox]
requires =
tox>=4
tox-uv
envlist =
# No preinstallations
py3{9,10,11,12,13,13t}-none
Expand Down Expand Up @@ -71,41 +72,40 @@ set_env =
dev: PIP_ONLY_BINARY=numpy,scipy,h5py
!dev: PIP_ONLY_BINARY=numpy,scipy,h5py,pillow,matplotlib
pre,dev: PIP_EXTRA_INDEX_URL=https://pypi.anaconda.org/scientific-python-nightly-wheels/simple
pre,dev: UV_INDEX=https://pypi.anaconda.org/scientific-python-nightly-wheels/simple
extras = test
pre,dev: UV_EXTRA_INDEX_URL=https://pypi.anaconda.org/scientific-python-nightly-wheels/simple
py313t: PYTHONGIL=0
extras =
test

# Simple, thanks pillow
!none: dicomfs
!none: indexed_gzip

# Matplotlib has wheels for everything except win32 (x86)
{min,full,pre,dev}-{x,arm}64: viewers

# Nightly, but not released cp313t wheels for: scipy
# When released, remove the py3* line and add min/full to the pre,dev line
py3{9,10,11,12,13}-{min,full}-{x,arm}64: spm
{pre,dev}-{x,arm}64: spm

# No cp313t wheels for: h5py, pyzstd
py3{9,10,11,12,13}-{min,full,pre-dev}-{x,arm}64: minc2
py3{9,10,11,12,13}-{min,full,pre-dev}-{x,arm}64: zstd

# No win32 wheels for scipy/matplotlib after py39
py39-full-x86: spm
py39-full-x86: viewers

deps =
# General minimum dependencies: pin based on API usage
# matplotlib 3.5 requires packaging 20
min: packaging ==20
min: importlib_resources ==5.12; python_version < '3.12'
min: typing_extensions ==4.6; python_version < '3.13'
# NEP29/SPEC0 + 1yr: Test on minor release series within the last 3 years
# We're extending this to all optional dependencies
# This only affects the range that we test on; numpy is the only non-optional
# dependency, and will be the only one to affect pip environment resolution.
min: numpy ==1.22
min: h5py ==3.5
min: indexed_gzip ==1.6
min: matplotlib ==3.5
min: pillow ==8.4
min: pydicom ==2.3
min: pyzstd ==0.15.2
min: scipy ==1.8
# Numpy 2.0 is a major breaking release; we cannot put much effort into
# supporting until it's at least RC stable
dev: numpy >=2.1.dev0
# Scipy stopped producing win32 wheels at py310
py39-full-x86,x64,arm64: scipy >=1.8
# Matplotlib depends on scipy, so cannot be built for py310 on x86
py39-full-x86,x64,arm64: matplotlib >=3.5
# h5py stopped producing win32 wheels at py39
{full,pre}-{x64,arm64}: h5py >=3.5
full,pre,dev: pillow >=8.4
full,pre: indexed_gzip >=1.6
full,pre,dev: pyzstd >=0.15.2
full,pre: pydicom >=2.3
dev: pydicom @ git+https://github.com/pydicom/pydicom.git@main

uv_resolution =
min: lowest-direct

commands =
pytest --doctest-modules --doctest-plus \
--cov nibabel --cov-report xml:cov.xml \
Expand Down

0 comments on commit ee09135

Please sign in to comment.