Skip to content

Commit

Permalink
run CI on python=3.13 (#9681)
Browse files Browse the repository at this point in the history
* don't install `dask`

reason: `dask-expr` depends on `pyarrow`, which doesn't support python
3.13 yet

* don't install `pydap`

reason: depends on `webob`, which makes use of `cgi`, a stdlib that got
removed in python 3.13

* run CI on python 3.13

* same for windows

* classifier

* whats-new

* fix bad merge

* try installing `dask` + `distributed`

* move the whats-new entry

* Update .github/workflows/ci.yaml

* explicitly install `pyarrow`

* install `numba` and packages depending on it

* More to 3.13, prep for 3.14, bump all-but-dask to 3.12

* comment out sparse

* fix whats-new

---------

Co-authored-by: Deepak Cherian <dcherian@users.noreply.github.com>
Co-authored-by: Deepak Cherian <deepak@cherian.net>
  • Loading branch information
3 people authored Feb 12, 2025
1 parent 1189240 commit 414b6b2
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 9 deletions.
17 changes: 8 additions & 9 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
matrix:
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
# Bookend python versions
python-version: ["3.10", "3.12"]
python-version: ["3.10", "3.13"]
env: [""]
include:
# Minimum python version:
Expand All @@ -59,14 +59,13 @@ jobs:
os: ubuntu-latest
# Latest python version:
- env: "all-but-numba"
python-version: "3.12"
python-version: "3.13"
os: ubuntu-latest
- env: "all-but-dask"
# Not 3.12 because of pint
python-version: "3.11"
python-version: "3.12"
os: ubuntu-latest
- env: "flaky"
python-version: "3.12"
python-version: "3.13"
os: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -78,10 +77,10 @@ jobs:
if [[ ${{ matrix.os }} == windows* ]] ;
then
if [[ ${{ matrix.python-version }} != "3.13" ]]; then
if [[ ${{ matrix.python-version }} != "3.14" ]]; then
echo "CONDA_ENV_FILE=ci/requirements/environment-windows.yml" >> $GITHUB_ENV
else
echo "CONDA_ENV_FILE=ci/requirements/environment-windows-3.13.yml" >> $GITHUB_ENV
echo "CONDA_ENV_FILE=ci/requirements/environment-windows-3.14.yml" >> $GITHUB_ENV
fi
elif [[ "${{ matrix.env }}" != "" ]] ;
then
Expand All @@ -98,10 +97,10 @@ jobs:
echo "PYTEST_ADDOPTS=-W default" >> $GITHUB_ENV
fi
else
if [[ ${{ matrix.python-version }} != "3.13" ]]; then
if [[ ${{ matrix.python-version }} != "3.14" ]]; then
echo "CONDA_ENV_FILE=ci/requirements/environment.yml" >> $GITHUB_ENV
else
echo "CONDA_ENV_FILE=ci/requirements/environment-3.13.yml" >> $GITHUB_ENV
echo "CONDA_ENV_FILE=ci/requirements/environment-3.14.yml" >> $GITHUB_ENV
fi
fi
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ dependencies:
- pip
- pooch
- pre-commit
- pyarrow # pandas raises a deprecation warning without this, breaking doctests
- pydap
- pytest
- pytest-cov
Expand Down
2 changes: 2 additions & 0 deletions doc/whats-new.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ New Features
~~~~~~~~~~~~
- Allow kwargs in :py:meth:`DataTree.map_over_datasets` and :py:func:`map_over_datasets` (:issue:`10009`, :pull:`10012`).
By `Kai Mühlbauer <https://github.com/kmuehlbauer>`_.
- support python 3.13 (no free-threading) (:issue:`9664`, :pull:`9681`)
By `Justus Magin <https://github.com/keewis>`_.

Breaking changes
~~~~~~~~~~~~~~~~
Expand Down
1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ classifiers = [
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Topic :: Scientific/Engineering",
]
description = "N-D labeled arrays and datasets in Python"
Expand Down

0 comments on commit 414b6b2

Please sign in to comment.