Skip to content

Commit

Permalink
Merge pull request #1339 from effigies/ci/py313
Browse files Browse the repository at this point in the history
CI: Add 3.13-nogil build
  • Loading branch information
effigies authored Jul 12, 2024
2 parents 08f5c44 + 880e13e commit beb4f7b
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 8 deletions.
13 changes: 10 additions & 3 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -125,9 +125,9 @@ jobs:
- os: ubuntu-latest
python-version: 3.8
dependencies: 'min'
# NumPy 2.0
# NoGIL
- os: ubuntu-latest
python-version: '3.12'
python-version: '3.13-dev'
dependencies: 'dev'
exclude:
# x86 for Windows + Python<3.12
Expand Down Expand Up @@ -168,11 +168,18 @@ jobs:
submodules: recursive
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }}
if: "!endsWith(matrix.python-version, '-dev')"
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
architecture: ${{ matrix.architecture }}
allow-prereleases: true
- name: Set up Python ${{ matrix.python-version }}
if: endsWith(matrix.python-version, '-dev')
uses: deadsnakes/action@v3.1.0
with:
python-version: ${{ matrix.python-version }}
nogil: true
- name: Display Python version
run: python -c "import sys; print(sys.version)"
- name: Install tox
Expand All @@ -182,7 +189,7 @@ jobs:
- name: Show tox config
run: tox c
- name: Run tox
run: tox -v --exit-and-dump-after 1200
run: tox -vv --exit-and-dump-after 1200
- uses: codecov/codecov-action@v4
if: ${{ always() }}
with:
Expand Down
14 changes: 9 additions & 5 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ envlist =
# x64-only range
py312-{full,pre}-x64
# Special environment for numpy 2.0-dev testing
py312-dev-x64
py313-dev-x64
install
doctest
style
Expand All @@ -31,6 +31,7 @@ python =
3.10: py310
3.11: py311
3.12: py312
3.13: py313

[gh-actions:env]
DEPENDS =
Expand All @@ -50,7 +51,8 @@ description = Pytest with coverage
labels = test
install_command =
python -I -m pip install -v \
--only-binary numpy,scipy,h5py,pillow,matplotlib \
dev: --only-binary numpy,scipy,h5py \
!dev: --only-binary numpy,scipy,h5py,pillow,matplotlib \
pre,dev: --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple \
{opts} {packages}
pip_pre =
Expand All @@ -69,6 +71,8 @@ pass_env =
NO_COLOR
CLICOLOR
CLICOLOR_FORCE
set_env =
py313: PYTHON_GIL=0
extras = test
deps =
# General minimum dependencies: pin based on API usage
Expand All @@ -89,15 +93,15 @@ deps =
# Numpy 2.0 is a major breaking release; we cannot put much effort into
# supporting until it's at least RC stable
pre: numpy <2.0.dev0
dev: numpy >=2.0.dev0
dev: numpy >=2.1.dev0
# Scipy stopped producing win32 wheels at py310
py3{8,9}-full-x86,x64,arm64: scipy >=1.6
# Matplotlib depends on scipy, so cannot be built for py310 on x86
py3{8,9}-full-x86,x64,arm64: matplotlib >=3.4
# h5py stopped producing win32 wheels at py39
py38-full-x86,x64,arm64: h5py >=2.10
py38-full-x86,{full,pre}-{x64,arm64}: h5py >=2.10
full,pre,dev: pillow >=8.1
full,pre,dev: indexed_gzip >=1.4
full,pre: indexed_gzip >=1.4
full,pre,dev: pyzstd >=0.14.3
full,pre: pydicom >=2.1
dev: pydicom @ git+https://github.com/pydicom/pydicom.git@main
Expand Down

0 comments on commit beb4f7b

Please sign in to comment.