Skip to content

Commit 940ce91

Browse files
authored
Merge branch 'main' into updt-docs-dir
2 parents a5c05b2 + 6d5857a commit 940ce91

File tree

153 files changed

+1527
-904
lines changed

Some content is hidden

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

153 files changed

+1527
-904
lines changed

.github/ISSUE_TEMPLATE/4-release_checklist.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ assignees: ''
1111
**Scheduled Date**: 20YY/MM/DD
1212
**Pull request due date**: 20YY/MM/DD
1313
**DOI**: `10.5281/zenodo.XXXXXXX`
14+
**Announcement draft**: https://hackmd.io/@pygmt/xxxxxxxx
1415

1516
**Priority PRs/issues to complete prior to release**
1617

@@ -39,11 +40,15 @@ assignees: ''
3940
- [ ] Edit the draft release notes with the finalized changelog
4041
- [ ] Set the tag version and release title to vX.Y.Z
4142
- [ ] Make a release by clicking the 'Publish Release' button, this will automatically create a tag too
43+
- [ ] Verify that [all workflows triggered by the release](https://github.com/GenericMappingTools/pygmt/actions?query=event%3Arelease) pass
44+
- [ ] The latest version is correct on [PyPI](https://pypi.org/project/pygmt/)
45+
- [ ] The latest version is correct on https://www.pygmt.org/latest/
46+
- [ ] The [release page](https://github.com/GenericMappingTools/pygmt/releases) has five assets, including `baseline-images.zip`, `pygmt-docs.zip` and `pygmt-docs.pdf`
4247
- [ ] Download pygmt-X.Y.Z.zip (rename to pygmt-vX.Y.Z.zip) and baseline-images.zip from the release page, and upload the two zip files to https://zenodo.org/deposit, ensure that they are filed under the correct reserved DOI
4348

4449
**After release**:
4550

46-
- [ ] Update conda-forge [pygmt-feedstock](https://github.com/conda-forge/pygmt-feedstock) [Done automatically by conda-forge's bot. Remember to pin GMT, Python and SPEC0 versions]
51+
- [ ] Update conda-forge [pygmt-feedstock](https://github.com/conda-forge/pygmt-feedstock) (Done automatically by conda-forge's bot. If you don't want to wait, open a new issue in the `conda-forge/pygmt-feedstock` repository with the title `@conda-forge-admin, please update version`. This will trigger the bot immediately. Remember to pin GMT, Python and SPEC0 versions)
4752
- [ ] Bump PyGMT version on https://github.com/GenericMappingTools/try-gmt (after conda-forge update)
4853
- [ ] Announce the release on:
4954
- [ ] GMT [forum](https://forum.generic-mapping-tools.org/c/news/) (do this announcement first! Requires moderator status)

.github/workflows/benchmarks.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@ jobs:
6060
numpy
6161
pandas
6262
xarray
63-
netCDF4
6463
packaging
6564
geopandas
6665
pyarrow-core

.github/workflows/cache_data.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ jobs:
5555
numpy
5656
pandas
5757
xarray
58-
netCDF4
5958
packaging
6059
python-build
6160
@@ -75,7 +74,7 @@ jobs:
7574

7675
# Upload the downloaded files as artifacts to GitHub
7776
- name: Upload artifacts to GitHub
78-
uses: actions/upload-artifact@v4.6.1
77+
uses: actions/upload-artifact@v4.6.2
7978
with:
8079
name: gmt-cache
8180
include-hidden-files: true

.github/workflows/check-links.yml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Check links in the repository and documentation
22
#
3-
# This workflow runs the lychee tool to check all external links in plaintext
4-
# and HTML files. It will create an issue if broken links are found.
3+
# This workflow runs the lychee tool to check all external links in plaintext and HTML
4+
# files. It will create an issue if broken links are found.
55
#
66
# It is scheduled to run weekly at 12 noon every Sunday.
77
#
@@ -40,7 +40,7 @@ jobs:
4040

4141
- name: Link Checker
4242
id: lychee
43-
uses: lycheeverse/lychee-action@v2.3.0
43+
uses: lycheeverse/lychee-action@v2.4.1
4444
with:
4545
fail: false # Don't fail action on broken links
4646
output: /tmp/lychee-out.md
@@ -63,9 +63,11 @@ jobs:
6363
--exclude "^https://test.pypi.org/simple/"
6464
--exclude "^https://www.adobe.com/jp/print/postscript/pdfs/PLRM.pdf"
6565
--exclude "^https://www.generic-mapping-tools.org/remote-datasets/%s$"
66+
--exclude "^https://www.gnu.org/software/libc/manual/html_node/TZ-Variable.html"
6667
--exclude "^https://www.pygmt.org/%7B%7Bpath%7D%7D"
6768
--exclude "^https://www.researchgate.net/"
6869
--exclude "^https://zenodo.org/badge/DOI/"
70+
--exclude "^https://stackoverflow.com/a/69170441"
6971
--verbose
7072
"repository/*.md"
7173
"repository/**/*.py"
@@ -76,7 +78,7 @@ jobs:
7678
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
7779

7880
- name: Create Issue From File
79-
if: ${{ steps.lychee.outputs.exit_code }} != 0
81+
if: steps.lychee.outputs.exit_code != 0
8082
run: |
8183
cd repository/
8284
title="Link Checker Report on ${CURRENT_DATE}"

.github/workflows/ci_docs.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,6 @@ jobs:
9696
numpy
9797
pandas
9898
xarray
99-
netCDF4
10099
packaging
101100
contextily
102101
geopandas
@@ -114,7 +113,7 @@ jobs:
114113
sphinx-copybutton
115114
sphinx-design
116115
sphinx-gallery
117-
sphinx_rtd_theme<3.0
116+
sphinx_rtd_theme
118117
cairosvg
119118
sphinxcontrib-svg2pdfconverter
120119
tectonic
@@ -151,7 +150,7 @@ jobs:
151150
cd ../..
152151
153152
- name: Upload PDF as artifact for previewing on pull requests
154-
uses: actions/upload-artifact@v4.6.1
153+
uses: actions/upload-artifact@v4.6.2
155154
if: github.event_name == 'pull_request' && matrix.os == 'ubuntu-latest'
156155
with:
157156
name: artifact-pygmt-docs-pdf

.github/workflows/ci_doctests.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ jobs:
5454
numpy
5555
pandas
5656
xarray
57-
netCDF4
5857
packaging
5958
contextily
6059
geopandas

.github/workflows/ci_tests.yaml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ concurrency:
4949

5050
jobs:
5151
test:
52-
name: ${{ matrix.os }} - Python ${{ matrix.python-version }} / NumPy ${{ matrix.numpy-version }}
52+
name: ${{ matrix.os }} - Python ${{ matrix.python-version }}
5353
runs-on: ${{ matrix.os }}
5454
permissions:
5555
id-token: write # This is required for requesting OIDC token for codecov
@@ -72,16 +72,16 @@ jobs:
7272
include:
7373
# Python 3.11 + core packages (minimum supported versions) + optional packages (minimum supported versions if any)
7474
- python-version: '3.11'
75-
numpy-version: '1.25'
76-
pandas-version: '=2.0'
77-
xarray-version: '=2023.04'
78-
optional-packages: ' contextily geopandas<1 ipython pyarrow-core rioxarray sphinx-gallery'
75+
numpy-version: '1.26'
76+
pandas-version: '=2.1'
77+
xarray-version: '=2023.07'
78+
optional-packages: ' contextily geopandas ipython pyarrow-core rioxarray netCDF4 sphinx-gallery'
7979
# Python 3.13 + core packages (latest versions) + optional packages
8080
- python-version: '3.13'
8181
numpy-version: '2.2'
8282
pandas-version: ''
8383
xarray-version: ''
84-
optional-packages: ' contextily geopandas>=1.0 ipython pyarrow-core rioxarray sphinx-gallery'
84+
optional-packages: ' contextily geopandas ipython pyarrow-core rioxarray netCDF4 sphinx-gallery'
8585
# Python 3.12 + core packages (Linux only)
8686
- os: 'ubuntu-latest'
8787
python-version: '3.12'
@@ -129,7 +129,6 @@ jobs:
129129
numpy=${{ matrix.numpy-version }}
130130
pandas${{ matrix.pandas-version }}
131131
xarray${{ matrix.xarray-version }}
132-
netCDF4
133132
packaging
134133
make
135134
pip
@@ -152,8 +151,9 @@ jobs:
152151
GH_TOKEN: ${{ github.token }}
153152

154153
- name: Install uv
155-
uses: astral-sh/setup-uv@v5.4.0
154+
uses: astral-sh/setup-uv@v6.1.0
156155
with:
156+
activate-environment: true
157157
python-version: ${{ matrix.python-version }}
158158

159159
- name: Install dvc
@@ -175,15 +175,15 @@ jobs:
175175

176176
# Upload diff images on test failure
177177
- name: Upload diff images if any test fails
178-
uses: actions/upload-artifact@v4.6.1
178+
uses: actions/upload-artifact@v4.6.2
179179
if: failure()
180180
with:
181181
name: artifact-${{ matrix.os }}-${{ matrix.python-version }}
182182
path: tmp-test-dir-with-unique-name
183183

184184
# Upload coverage to Codecov
185185
- name: Upload coverage to Codecov
186-
uses: codecov/codecov-action@v5.4.0
186+
uses: codecov/codecov-action@v5.4.3
187187
if: success() || failure()
188188
with:
189189
use_oidc: true

.github/workflows/ci_tests_dev.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -150,10 +150,10 @@ jobs:
150150
run: |
151151
python -m pip install --pre --prefer-binary \
152152
--extra-index https://pypi.anaconda.org/scientific-python-nightly-wheels/simple \
153-
numpy pandas xarray netCDF4 packaging \
153+
numpy pandas xarray packaging \
154154
build contextily dvc geopandas ipython pyarrow rioxarray \
155155
pytest pytest-cov pytest-doctestplus pytest-mpl pytest-rerunfailures \
156-
sphinx-gallery
156+
netCDF4 sphinx-gallery
157157
158158
# Show installed pkg information for postmortem diagnostic
159159
- name: List installed packages
@@ -186,7 +186,7 @@ jobs:
186186

187187
# Upload diff images on test failure
188188
- name: Upload diff images if any test fails
189-
uses: actions/upload-artifact@v4.6.1
189+
uses: actions/upload-artifact@v4.6.2
190190
if: ${{ failure() }}
191191
with:
192192
name: artifact-${{ matrix.os }}-GMT-${{ matrix.gmt_git_ref }}

.github/workflows/ci_tests_legacy.yaml

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
strategy:
3737
fail-fast: false
3838
matrix:
39-
os: [ubuntu-22.04, ubuntu-22.04-arm, macos-13, windows-2019]
39+
os: [ubuntu-22.04, ubuntu-22.04-arm, macos-13, windows-2022]
4040
gmt_version: ['6.4']
4141
timeout-minutes: 30
4242
defaults:
@@ -61,15 +61,14 @@ jobs:
6161
python=3.11
6262
gmt=${{ matrix.gmt_version }}
6363
ghostscript<10
64-
numpy<2
64+
numpy=1.26
6565
pandas
6666
xarray
67-
netCDF4
68-
packaging
69-
contextily
70-
geopandas
67+
packaging=24.2
68+
contextily=1.5
69+
geopandas=1.0
7170
ipython
72-
pyarrow-core
71+
pyarrow-core=16
7372
rioxarray
7473
sphinx-gallery
7574
make

.github/workflows/format-command.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
runs-on: ubuntu-latest
1717
steps:
1818
# Generate token from GenericMappingTools bot
19-
- uses: actions/create-github-app-token@v1.11.6
19+
- uses: actions/create-github-app-token@v2.0.6
2020
id: generate-token
2121
with:
2222
app-id: ${{ secrets.APP_ID }}
@@ -31,7 +31,7 @@ jobs:
3131
persist-credentials: false
3232

3333
# Setup Python environment
34-
- uses: actions/setup-python@v5.5.0
34+
- uses: actions/setup-python@v5.6.0
3535
with:
3636
python-version: '3.13'
3737

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ jobs:
5050
persist-credentials: false
5151

5252
- name: Set up Python
53-
uses: actions/setup-python@v5.5.0
53+
uses: actions/setup-python@v5.6.0
5454
with:
5555
python-version: '3.13'
5656

@@ -74,7 +74,7 @@ jobs:
7474
ls -lh dist/
7575
7676
- name: Store the distribution packages
77-
uses: actions/upload-artifact@v4.6.1
77+
uses: actions/upload-artifact@v4.6.2
7878
with:
7979
name: python-package-distributions
8080
path: dist/
@@ -93,7 +93,7 @@ jobs:
9393

9494
steps:
9595
- name: Download all the dists
96-
uses: actions/download-artifact@v4.2.0
96+
uses: actions/download-artifact@v4.3.0
9797
with:
9898
name: python-package-distributions
9999
path: dist/
@@ -117,7 +117,7 @@ jobs:
117117

118118
steps:
119119
- name: Download all the dists
120-
uses: actions/download-artifact@v4.2.0
120+
uses: actions/download-artifact@v4.3.0
121121
with:
122122
name: python-package-distributions
123123
path: dist/

.github/workflows/style_checks.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232

3333
# Setup Python
3434
- name: Set up Python
35-
uses: actions/setup-python@v5.5.0
35+
uses: actions/setup-python@v5.6.0
3636
with:
3737
python-version: '3.13'
3838

.github/workflows/type_checks.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141

4242
# Setup Python
4343
- name: Set up Python
44-
uses: actions/setup-python@v5.5.0
44+
uses: actions/setup-python@v5.6.0
4545
with:
4646
python-version: '3.13'
4747

@@ -53,7 +53,7 @@ jobs:
5353
# 3. type checker and stub packages
5454
# 4. other packages that are used somewhere in PyGMT
5555
python -m pip install \
56-
numpy pandas xarray netcdf4 packaging \
56+
numpy pandas xarray packaging \
5757
contextily geopandas ipython pyarrow rioxarray \
5858
mypy pandas-stubs pyarrow-stubs \
5959
matplotlib pytest

.mailmap

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Dongdong Tian <seisman.info@gmail.com>
2+
Dongdong Tian <seisman.info@gmail.com> <seisman@users.noreply.github.com>
3+
Jiayuan Yao <coreman.seism@gmail.com>
4+
Jiayuan Yao <coreman.seism@gmail.com> <core-man@users.noreply.github.com>
5+
Jing-Hui Tong <86273921+JingHuiTong@users.noreply.github.com>
6+
Jing-Hui Tong <86273921+JingHuiTong@users.noreply.github.com> <r0922422020@g.ntu.edu.tw>
7+
Max Jones <14077947+maxrjones@users.noreply.github.com>
8+
Max Jones <14077947+maxrjones@users.noreply.github.com> <meghanj@alum.mit.edu>
9+
Max Jones <14077947+maxrjones@users.noreply.github.com> <meghanj@hawaii.edu>
10+
Max Jones <14077947+maxrjones@users.noreply.github.com> <meghanrjones@users.noreply.github.com>
11+
Michael Grund <michael_grund@gmx.de> <23025878+michaelgrund@users.noreply.github.com>
12+
Michael Grund <michael_grund@gmx.de> <michael.grund@kit.edu>
13+
Michael Grund <michael_grund@gmx.de> <michaelgrund@users.noreply.github.com>
14+
Wei Ji Leong <23487320+weiji14@users.noreply.github.com>
15+
Wei Ji Leong <23487320+weiji14@users.noreply.github.com> <weiji.leong@vuw.ac.nz>
16+
Wei Ji Leong <23487320+weiji14@users.noreply.github.com> <weiji14@users.noreply.github.com>
17+
Will Schlitzer <schlitzer90@gmail.com> <willschlitzer@users.noreply.github.com>
18+
Yvonne Fröhlich <94163266+yvonnefroehlich@users.noreply.github.com> <yvonne.froehlich@kit.edu>
19+
Yvonne Fröhlich <94163266+yvonnefroehlich@users.noreply.github.com> <yfroe@gpiseis16.gpi.kit.edu>

.pre-commit-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ repos:
1616
- id: chmod
1717
args: ['644']
1818
- repo: https://github.com/woodruffw/zizmor-pre-commit
19-
rev: v1.5.1
19+
rev: v1.5.2
2020
hooks:
2121
- id: zizmor
2222

0 commit comments

Comments
 (0)