Skip to content

Commit 8e80bb5

Browse files
authored
Merge branch 'refactor/data_kind' into refactor/virtualfile_in
2 parents b33476c + 7ad7f80 commit 8e80bb5

File tree

142 files changed

+1814
-1102
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

142 files changed

+1814
-1102
lines changed

.github/ISSUE_TEMPLATE/4-release_checklist.md

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -8,49 +8,51 @@ assignees: ''
88
---
99

1010
**Release**: [v0.x.x](https://github.com/GenericMappingTools/pygmt/milestones/?)
11-
**Scheduled Date**: YYYY/MM/DD
12-
**Pull request due date**: YYYY/MM/DD
11+
**Scheduled Date**: 20YY/MM/DD
12+
**Pull request due date**: 20YY/MM/DD
13+
**DOI**: `10.5281/zenodo.XXXXXXX`
1314

1415
**Priority PRs/issues to complete prior to release**
16+
1517
- [ ] Wrap X ()
1618
- [ ] Wrap Y ()
1719

1820
**Before release**:
21+
1922
- [ ] Check [SPEC 0](https://scientific-python.org/specs/spec-0000/) to see if we need to bump the minimum supported versions of GMT, Python and core package dependencies (NumPy/Pandas/Xarray)
20-
- [ ] Run `make codespell` to check common misspellings. If there are any, either fix them or add them to `ignore-words-list` in `pyproject.toml`
23+
- [ ] Review the ["PyGMT Team" page](https://www.pygmt.org/dev/team.html)
2124
- [ ] Check to ensure that:
25+
- [ ] Deprecations and related tests are removed for this version by running `grep --include="*.py" -r vX.Y.Z` from the base of the repository
2226
- [ ] All tests pass in the ["GMT Legacy Tests" workflow](https://github.com/GenericMappingTools/pygmt/actions/workflows/ci_tests_legacy.yaml)
2327
- [ ] All tests pass in the ["GMT Dev Tests" workflow](https://github.com/GenericMappingTools/pygmt/actions/workflows/ci_tests_dev.yaml)
2428
- [ ] All tests pass in the ["Doctests" workflow](https://github.com/GenericMappingTools/pygmt/actions/workflows/ci_doctests.yaml)
25-
- [ ] Deprecations and related tests are removed for this version by running `grep --include="*.py" -r 'remove_version="vX.Y.Z"' pygmt` from the base of the repository
26-
- [ ] Update warnings in `pygmt.show_versions()` as well as notes in [Common installation issues](https://www.pygmt.org/dev/install.html#not-working-transparency)
27-
and [Testing your install]((https://www.pygmt.org/dev/install.html#testing-your-install) regarding GMT-Ghostscript incompatibility
29+
- [ ] Update warnings in `pygmt/_show_versions.py` as well as notes in
30+
[Not working transparency](https://www.pygmt.org/dev/install.html#not-working-transparency)
31+
regarding GMT-Ghostscript incompatibility
2832
- [ ] Reserve a DOI on [Zenodo](https://zenodo.org) by clicking on "New Version"
29-
- [ ] Review the ["PyGMT Team" page](https://www.pygmt.org/dev/team.html)
30-
- [ ] Finish up 'Changelog entry for v0.x.x' Pull Request:
31-
- [ ] Add a new entry in `doc/_static/version_switch.js` for documentation switcher
32-
- [ ] Update `CITATION.cff` and BibTeX at https://github.com/GenericMappingTools/pygmt#citing-pygmt
33-
- [ ] Update authorship list
34-
- [ ] Update DOI (and url for BibTeX)
35-
- [ ] Update version
36-
- [ ] Update date released
37-
- [ ] Add the documentation link `doc/minversions.md`
38-
- [ ] Add minimum required version information `doc/minversions.md`
39-
- [ ] Copy draft changelog from Release Drafter and edit it to look nice ([see maintainers guide for details](https://www.pygmt.org/dev/maintenance.html#updating-the-changelog))
33+
- [ ] Finish up the "Changelog entry for v0.x.x" Pull Request (Use the previous changelog PR as a reference)
34+
- [ ] Run `make codespell` to check common misspellings. If there are any, either fix them or add them to `ignore-words-list` in `pyproject.toml`
35+
- [ ] Draft the announcement on https://hackmd.io/@pygmt
4036

4137
**Release**:
38+
4239
- [ ] At the [PyGMT release page on GitHub](https://github.com/GenericMappingTools/pygmt/releases):
4340
- [ ] Edit the draft release notes with the finalized changelog
4441
- [ ] Set the tag version and release title to vX.Y.Z
4542
- [ ] Make a release by clicking the 'Publish Release' button, this will automatically create a tag too
46-
- [ ] Manually upload the pygmt-vX.Y.Z.zip and baseline-images.zip files to https://zenodo.org/deposit, ensure that it is filed under the correct reserved DOI
43+
- [ ] Download pygmt-X.Y.Z.zip (rename to pygmt-vX.Y.Z.zip) and baseline-images.zip from
44+
the release page, and upload the two zip files to https://zenodo.org/deposit,
45+
ensure that they are filed under the correct reserved DOI
4746

4847
**After release**:
49-
- [ ] Update conda-forge [pygmt-feedstock](https://github.com/conda-forge/pygmt-feedstock) [Done automatically by conda-forge's bot, but remember to pin SPEC0 versions]
48+
49+
- [ ] Update conda-forge [pygmt-feedstock](https://github.com/conda-forge/pygmt-feedstock)
50+
[Done automatically by conda-forge's bot. Remember to pin Python and SPEC0 versions]
5051
- [ ] Bump PyGMT version on https://github.com/GenericMappingTools/try-gmt (after conda-forge update)
5152
- [ ] Announce the release on:
52-
- [ ] GMT [forum](https://forum.generic-mapping-tools.org/c/news/) (do this announcement first! draft on https://hackmd.io/@pygmt. requires moderator status)
53+
- [ ] GMT [forum](https://forum.generic-mapping-tools.org/c/news/) (do this announcement first! Requires moderator status)
5354
- [ ] [ResearchGate](https://www.researchgate.net) (after forum announcement, add new version as research item via the **code** category, be sure to include the corresponding new Zenodo DOI)
55+
5456
---
5557

5658
- [ ] Party :tada: (don't tick before all other checkboxes are ticked!)

.github/workflows/cache_data.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ jobs:
5858
xarray
5959
netCDF4
6060
packaging
61-
build
61+
python-build
6262
6363
# Install the package that we want to test
6464
- name: Install the package
@@ -76,9 +76,10 @@ jobs:
7676

7777
# Upload the downloaded files as artifacts to GitHub
7878
- name: Upload artifacts to GitHub
79-
uses: actions/upload-artifact@v4
79+
uses: actions/upload-artifact@v4.4.0
8080
with:
8181
name: gmt-cache
82+
include-hidden-files: true
8283
path: |
8384
~/.gmt/cache
8485
~/.gmt/server

.github/workflows/check-links.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ jobs:
4949
--exclude "^https://github.com/GenericMappingTools/gmt/releases/tag/X.Y.Z$"
5050
--exclude "^https://github.com/GenericMappingTools/pygmt/edit"
5151
--exclude "^https://github.com/GenericMappingTools/pygmt/issues/new"
52+
--exclude "^https://github.com/GenericMappingTools/pygmt/releases/tag/%7B%7Bpath%7D%7D"
53+
--exclude "^https://www.pygmt.org/%7B%7Bpath%7D%7D"
5254
--exclude "^git"
5355
--exclude "^file://"
5456
--exclude "https://www.adobe.com/jp/print/postscript/pdfs/PLRM.pdf"

.github/workflows/ci_docs.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ jobs:
9494
create-args: >-
9595
python=3.12
9696
gmt=6.5.0
97-
ghostscript=10.03.1
97+
ghostscript=10.04.0
9898
numpy
9999
pandas
100100
xarray
@@ -104,10 +104,10 @@ jobs:
104104
geopandas<1.0
105105
ipython
106106
rioxarray
107-
build
108107
make
109108
pip
110-
myst-parser
109+
python-build
110+
myst-nb
111111
panel
112112
sphinx
113113
sphinx-autodoc-typehints

.github/workflows/ci_doctests.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,9 @@ jobs:
6262
ipython
6363
pyarrow
6464
rioxarray
65-
build
6665
make
6766
pip
67+
python-build
6868
pytest
6969
pytest-doctestplus
7070
pytest-mpl

.github/workflows/ci_tests.yaml

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -72,13 +72,22 @@ jobs:
7272
- python-version: '3.10'
7373
numpy-version: '1.24'
7474
pandas-version: '=1.5'
75-
xarray-version: '=2022.06'
75+
xarray-version: '=2022.09'
7676
optional-packages: ''
7777
- python-version: '3.12'
78-
numpy-version: '2.0'
78+
numpy-version: '2.1'
7979
pandas-version: ''
8080
xarray-version: ''
8181
optional-packages: ' contextily geopandas ipython pyarrow rioxarray sphinx-gallery'
82+
# The job below is for testing geopandas v0.x on Ubuntu.
83+
# The python-version here can't be the versions in the matrix.python-version
84+
# defined above. Otherwise, other jobs will be overridden by this one.
85+
- os: 'ubuntu-latest'
86+
python-version: '3.11' # Can't be 3.10 or 3.12.
87+
numpy-version: '1.24'
88+
pandas-version: ''
89+
xarray-version: ''
90+
optional-packages: ' geopandas<1'
8291

8392
timeout-minutes: 30
8493
defaults:
@@ -119,16 +128,16 @@ jobs:
119128
create-args: >-
120129
python=${{ matrix.python-version }}${{ matrix.optional-packages }}
121130
gmt=6.5.0
122-
ghostscript=10.03.1
131+
ghostscript=10.04.0
123132
numpy=${{ matrix.numpy-version }}
124133
pandas${{ matrix.pandas-version }}
125134
xarray${{ matrix.xarray-version }}
126135
netCDF4
127136
packaging
128-
build
129137
dvc
130138
make
131139
pip
140+
python-build
132141
pytest
133142
pytest-cov
134143
pytest-doctestplus
@@ -161,7 +170,7 @@ jobs:
161170

162171
# Upload diff images on test failure
163172
- name: Upload diff images if any test fails
164-
uses: actions/upload-artifact@v4
173+
uses: actions/upload-artifact@v4.4.0
165174
if: failure()
166175
with:
167176
name: artifact-${{ runner.os }}-${{ matrix.python-version }}

.github/workflows/ci_tests_dev.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ jobs:
7575
ninja
7676
curl
7777
fftw
78-
ghostscript=10.03.1
78+
ghostscript=10.04.0
7979
glib
8080
hdf5
8181
libblas
@@ -179,7 +179,7 @@ jobs:
179179

180180
# Upload diff images on test failure
181181
- name: Upload diff images if any test fails
182-
uses: actions/upload-artifact@v4
182+
uses: actions/upload-artifact@v4.4.0
183183
if: ${{ failure() }}
184184
with:
185185
name: artifact-GMT-${{ matrix.gmt_git_ref }}-${{ runner.os }}

.github/workflows/ci_tests_legacy.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ jobs:
6161
create-args: >-
6262
python=3.10
6363
gmt=${{ matrix.gmt_version }}
64+
ghostscript<10
6465
numpy
6566
pandas<2
6667
xarray
@@ -72,9 +73,9 @@ jobs:
7273
pyarrow
7374
rioxarray
7475
sphinx-gallery
75-
build
7676
make
7777
pip
78+
python-build
7879
pytest
7980
pytest-doctestplus
8081
pytest-mpl

.github/workflows/format-command.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
runs-on: ubuntu-latest
1212
steps:
1313
# Generate token from GenericMappingTools bot
14-
- uses: actions/create-github-app-token@v1.10.3
14+
- uses: actions/create-github-app-token@v1.11.0
1515
id: generate-token
1616
with:
1717
app-id: ${{ secrets.APP_ID }}
@@ -25,7 +25,7 @@ jobs:
2525
ref: ${{ github.event.client_payload.pull_request.head.ref }}
2626

2727
# Setup Python environment
28-
- uses: actions/setup-python@v5.1.1
28+
- uses: actions/setup-python@v5.2.0
2929
with:
3030
python-version: '3.12'
3131

.github/workflows/publish-to-pypi.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ jobs:
5151
fetch-depth: 0
5252

5353
- name: Set up Python
54-
uses: actions/setup-python@v5.1.1
54+
uses: actions/setup-python@v5.2.0
5555
with:
5656
python-version: '3.12'
5757

@@ -75,10 +75,10 @@ jobs:
7575
ls -lh dist/
7676
7777
- name: Publish to Test PyPI
78-
uses: pypa/gh-action-pypi-publish@v1.9.0
78+
uses: pypa/gh-action-pypi-publish@v1.10.2
7979
with:
8080
repository-url: https://test.pypi.org/legacy/
8181

8282
- name: Publish to PyPI
8383
if: startsWith(github.ref, 'refs/tags')
84-
uses: pypa/gh-action-pypi-publish@v1.9.0
84+
uses: pypa/gh-action-pypi-publish@v1.10.2

0 commit comments

Comments
 (0)