Skip to content

Commit c482a7e

Browse files
committed
Bump minimum versions for dependencies
Close 9363
1 parent 2783255 commit c482a7e

File tree

6 files changed

+34
-22
lines changed

6 files changed

+34
-22
lines changed

ci/requirements/bare-minimum.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@ dependencies:
1111
- pytest-env
1212
- pytest-xdist
1313
- pytest-timeout
14-
- numpy=1.23
14+
- numpy=1.24
1515
- packaging=23.1
16-
- pandas=2.0
16+
- pandas=2.1

ci/requirements/min-all-deps.yml

+12-12
Original file line numberDiff line numberDiff line change
@@ -9,37 +9,37 @@ dependencies:
99
# doc/user-guide/installing.rst, doc/user-guide/plotting.rst and setup.py.
1010
- python=3.10
1111
- array-api-strict=1.0 # dependency for testing the array api compat
12-
- boto3=1.26
12+
- boto3=1.28
1313
- bottleneck=1.3
14-
- cartopy=0.21
14+
- cartopy=0.22
1515
- cftime=1.6
1616
- coveralls
17-
- dask-core=2023.4
18-
- distributed=2023.4
17+
- dask-core=2023.9
18+
- distributed=2023.9
1919
# Flox > 0.8 has a bug with numbagg versions
2020
# It will require numbagg > 0.6
2121
# so we should just skip that series eventually
2222
# or keep flox pinned for longer than necessary
2323
- flox=0.7
24-
- h5netcdf=1.1
24+
- h5netcdf=1.2
2525
# h5py and hdf5 tend to cause conflicts
2626
# for e.g. hdf5 1.12 conflicts with h5py=3.1
2727
# prioritize bumping other packages instead
2828
- h5py=3.8
2929
- hdf5=1.12
3030
- hypothesis
31-
- iris=3.4
31+
- iris=3.7
3232
- lxml=4.9 # Optional dep of pydap
3333
- matplotlib-base=3.7
3434
- nc-time-axis=1.4
3535
# netcdf follows a 1.major.minor[.patch] convention
3636
# (see https://github.com/Unidata/netcdf4-python/issues/1090)
3737
- netcdf4=1.6.0
38-
- numba=0.56
38+
- numba=0.57
3939
- numbagg=0.2.1
40-
- numpy=1.23
40+
- numpy=1.24
4141
- packaging=23.1
42-
- pandas=2.0
42+
- pandas=2.1
4343
- pint=0.22
4444
- pip
4545
- pydap=3.4
@@ -49,9 +49,9 @@ dependencies:
4949
- pytest-xdist
5050
- pytest-timeout
5151
- rasterio=1.3
52-
- scipy=1.10
52+
- scipy=1.11
5353
- seaborn=0.12
5454
- sparse=0.14
5555
- toolz=0.12
56-
- typing_extensions=4.5
57-
- zarr=2.14
56+
- typing_extensions=4.7
57+
- zarr=2.16

doc/whats-new.rst

+18
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,24 @@ New Features
3535
Breaking changes
3636
~~~~~~~~~~~~~~~~
3737
- Support for ``python 3.9`` has been dropped (:pull:`8937`)
38+
- The minimum versions of some dependencies were changed, in particular our minimum supported pandas version is now Pandas 2.
39+
40+
===================== ========= =======
41+
Package Old New
42+
===================== ========= =======
43+
boto3 1.26 1.28
44+
cartopy 0.21 0.22
45+
dask-core 2023.4 2023.9
46+
distributed 2023.4 2023.9
47+
h5netcdf 1.1 1.2
48+
iris 3.4 3.7
49+
numba 0.56 0.57
50+
numpy 1.23 1.24
51+
pandas 2.0 2.1
52+
scipy 1.10 1.11
53+
typing_extensions 4.5 4.7
54+
zarr 2.14 2.16
55+
===================== ========= =======
3856

3957

4058
Deprecations

pyproject.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ readme = "README.md"
2222
requires-python = ">=3.10"
2323

2424
dependencies = [
25-
"numpy>=1.23",
25+
"numpy>=1.24",
2626
"packaging>=23.1",
27-
"pandas>=2.0",
27+
"pandas>=2.1",
2828
]
2929

3030
[project.optional-dependencies]

xarray/tests/__init__.py

-1
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,6 @@ def _importorskip(
134134
has_pint, requires_pint = _importorskip("pint")
135135
has_numexpr, requires_numexpr = _importorskip("numexpr")
136136
has_flox, requires_flox = _importorskip("flox")
137-
has_pandas_ge_2_1, __ = _importorskip("pandas", "2.1")
138137
has_pandas_ge_2_2, __ = _importorskip("pandas", "2.2")
139138
has_pandas_3, requires_pandas_3 = _importorskip("pandas", "3.0.0.dev0")
140139

xarray/tests/test_groupby.py

-5
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
create_test_data,
3030
has_cftime,
3131
has_flox,
32-
has_pandas_ge_2_1,
3332
requires_cftime,
3433
requires_dask,
3534
requires_flox,
@@ -135,10 +134,6 @@ def test_multi_index_groupby_sum() -> None:
135134
)
136135
assert_equal(expected, ds)
137136

138-
if not has_pandas_ge_2_1:
139-
# the next line triggers a mysterious multiindex error on pandas 2.0
140-
return
141-
142137
actual = ds.stack(space=["x", "y"]).groupby("space").sum(...).unstack("space")
143138
assert_equal(expected, actual)
144139

0 commit comments

Comments
 (0)