Skip to content

Commit 823676f

Browse files
seismanweiji14
andauthored
SPEC 0: Set minimum supported versions to pandas>=1.5 and xarray>=2022.03 (#3043)
Co-authored-by: Wei Ji <[email protected]>
1 parent 8cb614a commit 823676f

File tree

5 files changed

+75
-48
lines changed

5 files changed

+75
-48
lines changed

.github/workflows/ci_tests.yaml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,14 +62,19 @@ jobs:
6262
isDraft: true
6363
- os: windows-latest
6464
isDraft: true
65-
# Pair Python 3.10 with NumPy 1.23 and Python 3.12 with NumPy 1.26
66-
# Only install optional packages on Python 3.12/NumPy 1.26
65+
# Pair Python 3.10 with the minimum supported versions of NumPy/Pandas/Xarray
66+
# and Python 3.12 with the latest versions of NumPy/Pandas/Xarray
67+
# Only install optional packages on Python 3.12
6768
include:
6869
- python-version: '3.10'
6970
numpy-version: '1.23'
71+
pandas-version: '=1.5'
72+
xarray-version: '=2022.03'
7073
optional-packages: ''
7174
- python-version: '3.12'
7275
numpy-version: '1.26'
76+
pandas-version: ''
77+
xarray-version: ''
7378
optional-packages: ' contextily geopandas ipython pyarrow rioxarray sphinx-gallery'
7479

7580
timeout-minutes: 30
@@ -107,8 +112,8 @@ jobs:
107112
gmt=6.5.0
108113
ghostscript=10.02.1
109114
numpy=${{ matrix.numpy-version }}
110-
pandas
111-
xarray
115+
pandas${{ matrix.pandas-version }}
116+
xarray${{ matrix.xarray-version }}
112117
netCDF4
113118
packaging
114119
build

doc/minversions.rst

Lines changed: 60 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -8,101 +8,123 @@ the rest of the Scientific Python ecosystem, and therefore:
88
* Support for core package dependencies (NumPy/Pandas/Xarray) be dropped 2 years after their initial release.
99

1010
.. list-table::
11-
:widths: 25 30 15 20 15
11+
:widths: 25 15 15 15 15 15
1212
:header-rows: 1
13+
:align: center
1314

1415
* - PyGMT Version
15-
- Documentation
1616
- GMT
1717
- Python
1818
- NumPy
19-
* - `Dev <https://github.com/GenericMappingTools/pygmt/milestones>`_ (upcoming release)
20-
- `Dev Documentation <https://www.pygmt.org/dev>`_ (reflects `main branch <https://github.com/GenericMappingTools/pygmt>`_)
19+
- Pandas
20+
- Xarray
21+
* - `Dev <https://github.com/GenericMappingTools/pygmt/milestones>`_ * [`Docs <https://www.pygmt.org/dev>`__]
2122
- >=6.3.0
2223
- >=3.10
2324
- >=1.23
24-
* - `v0.11.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.11.0>`_ (latest release)
25-
- `v0.11.0 Documentation <https://www.pygmt.org/v0.11.0>`_
25+
- >=1.5
26+
- >=2022.03
27+
* - `v0.11.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.11.0>`_ [`Docs <https://www.pygmt.org/v0.11.0>`__]
2628
- >=6.3.0
2729
- >=3.9
2830
- >=1.23
29-
* - `v0.10.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.10.0>`_
30-
- `v0.10.0 Documentation <https://www.pygmt.org/v0.10.0>`_
31+
-
32+
-
33+
* - `v0.10.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.10.0>`_ [`Docs <https://www.pygmt.org/v0.10.0>`__]
3134
- >=6.3.0
3235
- >=3.9
3336
- >=1.22
34-
* - `v0.9.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.9.0>`_
35-
- `v0.9.0 Documentation <https://www.pygmt.org/v0.9.0>`_
37+
-
38+
-
39+
* - `v0.9.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.9.0>`_ [`Docs <https://www.pygmt.org/v0.9.0>`__]
3640
- >=6.3.0
3741
- >=3.8
3842
- >=1.21
39-
* - `v0.8.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.8.0>`_
40-
- `v0.8.0 Documentation <https://www.pygmt.org/v0.8.0>`_
43+
-
44+
-
45+
* - `v0.8.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.8.0>`_ [`Docs <https://www.pygmt.org/v0.8.0>`__]
4146
- >=6.3.0
4247
- >=3.8
4348
- >=1.20
44-
* - `v0.7.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.7.0>`_
45-
- `v0.7.0 Documentation <https://www.pygmt.org/v0.7.0>`_
49+
-
50+
-
51+
* - `v0.7.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.7.0>`_ [`Docs <https://www.pygmt.org/v0.7.0>`__]
4652
- >=6.3.0
4753
- >=3.8
4854
- >=1.20
49-
* - `v0.6.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.6.1>`_
50-
- `v0.6.1 Documentation <https://www.pygmt.org/v0.6.1>`_
55+
-
56+
-
57+
* - `v0.6.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.6.1>`_ [`Docs <https://www.pygmt.org/v0.6.1>`__]
5158
- >=6.3.0
5259
- >=3.8
5360
- >=1.19
54-
* - `v0.6.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.6.0>`_
55-
- `v0.6.0 Documentation <https://www.pygmt.org/v0.6.0>`_
61+
-
62+
-
63+
* - `v0.6.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.6.0>`_ [`Docs <https://www.pygmt.org/v0.6.0>`__]
5664
- >=6.3.0
5765
- >=3.8
5866
- >=1.19
59-
* - `v0.5.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.5.0>`_
60-
- `v0.5.0 Documentation <https://www.pygmt.org/v0.5.0>`_
67+
-
68+
-
69+
* - `v0.5.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.5.0>`_ [`Docs <https://www.pygmt.org/v0.5.0>`__]
6170
- >=6.2.0
6271
- >=3.7
6372
- >=1.18
64-
* - `v0.4.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.4.1>`_
65-
- `v0.4.1 Documentation <https://www.pygmt.org/v0.4.1>`_
73+
-
74+
-
75+
* - `v0.4.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.4.1>`_ [`Docs <https://www.pygmt.org/v0.4.1>`__]
6676
- >=6.2.0
6777
- >=3.7
6878
- >=1.17
69-
* - `v0.4.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.4.0>`_
70-
- `v0.4.0 Documentation <https://www.pygmt.org/v0.4.0>`_
79+
-
80+
-
81+
* - `v0.4.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.4.0>`_ [`Docs <https://www.pygmt.org/v0.4.0>`__]
7182
- >=6.2.0
7283
- >=3.7
7384
- >=1.17
74-
* - `v0.3.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.3.1>`_
75-
- `v0.3.1 Documentation <https://www.pygmt.org/v0.3.1>`_
85+
-
86+
-
87+
* - `v0.3.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.3.1>`_ [`Docs <https://www.pygmt.org/v0.3.1>`__]
7688
- >=6.1.1
7789
- >=3.7
7890
-
79-
* - `v0.3.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.3.0>`_
80-
- `v0.3.0 Documentation <https://www.pygmt.org/v0.3.0>`_
91+
-
92+
-
93+
* - `v0.3.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.3.0>`_ [`Docs <https://www.pygmt.org/v0.3.0>`__]
8194
- >=6.1.1
8295
- >=3.7
8396
-
84-
* - `v0.2.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.2.1>`_
85-
- `v0.2.1 Documentation <https://www.pygmt.org/v0.2.1>`_
97+
-
98+
-
99+
* - `v0.2.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.2.1>`_ [`Docs <https://www.pygmt.org/v0.2.1>`__]
86100
- >=6.1.1
87101
- >=3.6
88102
-
89-
* - `v0.2.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.2.0>`_
90-
- `v0.2.0 Documentation <https://www.pygmt.org/v0.2.0>`_
103+
-
104+
-
105+
* - `v0.2.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.2.0>`_ [`Docs <https://www.pygmt.org/v0.2.0>`__]
91106
- >=6.1.1
92107
- 3.6 - 3.8
93108
-
94-
* - `v0.1.2 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.1.2>`_
95-
- `v0.1.2 Documentation <https://www.pygmt.org/v0.1.2>`_
109+
-
110+
-
111+
* - `v0.1.2 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.1.2>`_ [`Docs <https://www.pygmt.org/v0.1.2>`__]
96112
- >=6.0.0
97113
- 3.6 - 3.8
98114
-
99-
* - `v0.1.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.1.1>`_
100-
- `v0.1.1 Documentation <https://www.pygmt.org/v0.1.1>`_
115+
-
116+
-
117+
* - `v0.1.1 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.1.1>`_ [`Docs <https://www.pygmt.org/v0.1.1>`__]
101118
- >=6.0.0
102119
- 3.6 - 3.8
103120
-
104-
* - `v0.1.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.1.0>`_
105-
- `v0.1.0 Documentation <https://www.pygmt.org/v0.1.0>`_
121+
-
122+
-
123+
* - `v0.1.0 <https://github.com/GenericMappingTools/pygmt/releases/tag/v0.1.0>`_ [`Docs <https://www.pygmt.org/v0.1.0>`__]
106124
- >=6.0.0
107125
- 3.6 - 3.8
108126
-
127+
-
128+
-
129+
130+
*Dev reflects the main branch and is for the upcoming release.

environment.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ dependencies:
77
# Required dependencies
88
- gmt=6.5.0
99
- numpy>=1.23
10-
- pandas
11-
- xarray
10+
- pandas>=1.5
11+
- xarray>=2022.03
1212
- netCDF4
1313
- packaging
1414
# Optional dependencies

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ classifiers = [
3131
]
3232
dependencies = [
3333
"numpy>=1.23",
34-
"pandas",
35-
"xarray",
34+
"pandas>=1.5",
35+
"xarray>=2022.03",
3636
"netCDF4",
3737
"packaging",
3838
]

requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Required packages
22
numpy>=1.23
3-
pandas
4-
xarray
3+
pandas>=1.5
4+
xarray>=2022.03
55
netCDF4
66
packaging

0 commit comments

Comments
 (0)