From cd6862b2323c60bb2ae9f5de257d4f3a399b6e42 Mon Sep 17 00:00:00 2001 From: Deepak Cherian Date: Fri, 5 Jan 2024 09:13:14 -0700 Subject: [PATCH] Bump min deps. (#8586) * Bump min deps. Closes #8581 * Fix scipy * Update bare-minimum * Consolidate CI jobs * Fix flox * Flox 0.7 0.8 enforces 0numbagg > 0.6 * Update packaging * update whats-new list --- .github/workflows/ci-additional.yaml | 13 +++++------ ci/requirements/bare-minimum.yml | 6 ++--- ci/requirements/min-all-deps.yml | 35 +++++++++++++++------------- doc/whats-new.rst | 20 ++++++++++++++++ pyproject.toml | 6 ++--- 5 files changed, 51 insertions(+), 29 deletions(-) diff --git a/.github/workflows/ci-additional.yaml b/.github/workflows/ci-additional.yaml index d88ee73ba2f..c11816bc658 100644 --- a/.github/workflows/ci-additional.yaml +++ b/.github/workflows/ci-additional.yaml @@ -320,11 +320,6 @@ jobs: run: shell: bash -l {0} - strategy: - matrix: - environment-file: ["bare-minimum", "min-all-deps"] - fail-fast: false - steps: - uses: actions/checkout@v4 with: @@ -340,6 +335,10 @@ jobs: conda python-dateutil - - name: minimum versions policy + - name: All-deps minimum versions policy + run: | + python ci/min_deps_check.py ci/requirements/min-all-deps.yml + + - name: Bare minimum versions policy run: | - python ci/min_deps_check.py ci/requirements/${{ matrix.environment-file }}.yml + python ci/min_deps_check.py ci/requirements/bare-minimum.yml diff --git a/ci/requirements/bare-minimum.yml b/ci/requirements/bare-minimum.yml index e8a80fdba99..56af319f0bb 100644 --- a/ci/requirements/bare-minimum.yml +++ b/ci/requirements/bare-minimum.yml @@ -11,6 +11,6 @@ dependencies: - pytest-env - pytest-xdist - pytest-timeout - - numpy=1.22 - - packaging=21.3 - - pandas=1.4 + - numpy=1.23 + - packaging=22.0 + - pandas=1.5 diff --git a/ci/requirements/min-all-deps.yml b/ci/requirements/min-all-deps.yml index 22076f88854..775c98b83b7 100644 --- a/ci/requirements/min-all-deps.yml +++ b/ci/requirements/min-all-deps.yml @@ -10,12 +10,16 @@ dependencies: - python=3.9 - boto3=1.24 - bottleneck=1.3 - - cartopy=0.20 + - cartopy=0.21 - cftime=1.6 - coveralls - - dask-core=2022.7 - - distributed=2022.7 - - flox=0.5 + - dask-core=2022.12 + - distributed=2022.12 + # Flox > 0.8 has a bug with numbagg versions + # It will require numbagg > 0.6 + # so we should just skip that series eventually + # or keep flox pinned for longer than necessary + - flox=0.7 - h5netcdf=1.1 # h5py and hdf5 tend to cause conflicts # for e.g. hdf5 1.12 conflicts with h5py=3.1 @@ -23,17 +27,18 @@ dependencies: - h5py=3.7 - hdf5=1.12 - hypothesis - - iris=3.2 + - iris=3.4 - lxml=4.9 # Optional dep of pydap - - matplotlib-base=3.5 + - matplotlib-base=3.6 - nc-time-axis=1.4 # netcdf follows a 1.major.minor[.patch] convention # (see https://github.com/Unidata/netcdf4-python/issues/1090) - netcdf4=1.6.0 - - numba=0.55 - - numpy=1.22 - - packaging=21.3 - - pandas=1.4 + - numba=0.56 + - numbagg=0.2.1 + - numpy=1.23 + - packaging=22.0 + - pandas=1.5 - pint=0.22 - pip - pydap=3.3 @@ -43,11 +48,9 @@ dependencies: - pytest-xdist - pytest-timeout - rasterio=1.3 - - scipy=1.8 - - seaborn=0.11 + - scipy=1.10 + - seaborn=0.12 - sparse=0.13 - toolz=0.12 - - typing_extensions=4.3 - - zarr=2.12 - - pip: - - numbagg==0.2.1 + - typing_extensions=4.4 + - zarr=2.13 diff --git a/doc/whats-new.rst b/doc/whats-new.rst index 94b85ea224e..fbb5848c960 100644 --- a/doc/whats-new.rst +++ b/doc/whats-new.rst @@ -34,6 +34,26 @@ New Features Breaking changes ~~~~~~~~~~~~~~~~ +- The minimum versions of some dependencies were changed (:pull:`8586`): + + ===================== ========= ======== + Package Old New + ===================== ========= ======== + cartopy 0.20 0.21 + dask-core 2022.7 2022.12 + distributed 2022.7 2022.12 + flox 0.5 0.7 + iris 3.2 3.4 + matplotlib-base 3.5 3.6 + numpy 1.22 1.23 + numba 0.55 0.56 + packaging 21.3 22.0 + seaborn 0.11 0.12 + scipy 1.8 1.10 + typing_extensions 4.3 4.4 + zarr 2.12 2.13 + ===================== ========= ======== + Deprecations ~~~~~~~~~~~~ diff --git a/pyproject.toml b/pyproject.toml index 014dec7a6e7..a9ed847e7e6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -22,9 +22,9 @@ readme = "README.md" requires-python = ">=3.9" dependencies = [ - "numpy>=1.22", - "packaging>=21.3", - "pandas>=1.4", + "numpy>=1.23", + "packaging>=22", + "pandas>=1.5", ] [project.urls]