Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
67bee0e
Add entry in doc/_static/version_switch.js for documentation switcher
seisman Dec 29, 2025
05792b4
Add the version to the compatibility table doc/minversions.md
seisman Dec 29, 2025
6f19480
Update citation information CITATION.cff and BibTeX in README
seisman Dec 29, 2025
6c48648
Copy the draft release note from the release page
seisman Dec 29, 2025
aa62173
Update release date, doi and contributors in the changelog
seisman Dec 29, 2025
1636987
Merge branch 'main' into changelog/v0.18.0
seisman Jan 1, 2026
6d35e41
Sort deprecation changes alphabetically
seisman Jan 7, 2026
1b8ffff
Sort entries alphabetically [skip ci]
seisman Jan 7, 2026
79e3b75
Use * instead of - for contributor list [skip ci]
seisman Jan 7, 2026
686dd00
Remove one extra whitespace [skip ci]
seisman Jan 7, 2026
f6bf733
Update doc/changes.md
seisman Jan 7, 2026
756711e
Add hightlights
seisman Jan 7, 2026
8662471
Merge branch 'main' into changelog/v0.18.0
seisman Jan 7, 2026
d484e4c
Merge branch 'main' into changelog/v0.18.0
seisman Jan 7, 2026
ceb2b15
Add one more highlight
seisman Jan 7, 2026
9d9979e
Improve changelog entries
seisman Jan 7, 2026
fefe477
Improve changelog entries
seisman Jan 7, 2026
90d7903
Update doc/changes.md
seisman Jan 8, 2026
949fa69
Improve highlight
seisman Jan 8, 2026
17c1704
Sort entries
seisman Jan 8, 2026
a54414a
Update doc/changes.md
seisman Jan 8, 2026
4429b61
Add Xingchen He to CITATION.cff
seisman Jan 9, 2026
bd8da08
Merge branch 'main' into changelog/v0.18.0
seisman Jan 10, 2026
4f407ac
Add PR #4048 to the changelog entry
seisman Jan 10, 2026
e0fc7f5
Set the release date to 2026/01/12
seisman Jan 10, 2026
4306fff
Merge branch 'main' into changelog/v0.18.0
seisman Jan 11, 2026
c8d7ebf
Add Will as a contributor for v0.18.0
seisman Jan 11, 2026
c13d0d4
Merge branch 'main' into changelog/v0.18.0
seisman Jan 11, 2026
9a050e3
Merge branch 'main' into changelog/v0.18.0
seisman Jan 12, 2026
ef0ee40
Merge branch 'main' into changelog/v0.18.0
seisman Jan 12, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 7 additions & 3 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,10 @@ authors:
family-names: Quinn
affiliation: University College London, United Kingdom
orcid: https://orcid.org/0000-0002-0268-7032
- given-names: Xingchen
family-names: He
affiliation: Chengdu University of Technology, China
orcid: https://orcid.org/0009-0004-7182-2252
- given-names: Leonardo
family-names: Uieda
affiliation: Universidade de São Paulo, Brazil
Expand All @@ -76,9 +80,9 @@ authors:
family-names: Wessel
affiliation: University of Hawaiʻi at Mānoa, USA
orcid: https://orcid.org/0000-0001-5708-7336
date-released: 2025-10-03
doi: 10.5281/zenodo.17156962
date-released: 2026-01-12
doi: 10.5281/zenodo.18080259
license: BSD-3-Clause
repository-code: https://github.com/GenericMappingTools/pygmt
type: software
version: 0.17.0
version: 0.18.0
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ Feel free to cite our work in your research using the following BibTeX:

```
@software{
pygmt_2025_17156962,
pygmt_2026_18080259,
author = {Tian, Dongdong and
Leong, Wei Ji and
Fröhlich, Yvonne and
Expand All @@ -157,12 +157,12 @@ Feel free to cite our work in your research using the following BibTeX:
Uieda, Leonardo and
Wessel, Paul},
title = {{PyGMT: A Python interface for the Generic Mapping Tools}},
month = oct,
year = 2025,
month = jan,
year = 2026,
publisher = {Zenodo},
version = {0.17.0},
doi = {10.5281/zenodo.17156962},
url = {https://doi.org/10.5281/zenodo.17156962}
version = {0.18.0},
doi = {10.5281/zenodo.18080259},
url = {https://doi.org/10.5281/zenodo.18080259}
}
```

Expand Down
1 change: 1 addition & 0 deletions doc/_static/version_switch.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
var all_versions = {
'latest': 'latest',
'dev': 'dev',
'v0.18.0': 'v0.18.0',
'v0.17.0': 'v0.17.0',
'v0.16.0': 'v0.16.0',
'v0.15.0': 'v0.15.0',
Expand Down
85 changes: 85 additions & 0 deletions doc/changes.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,90 @@
# Changelog

## Release v0.18.0 (2026/01/12)

[![Digital Object Identifier for PyGMT v0.18.0](https://zenodo.org/badge/DOI/10.5281/zenodo.18080259.svg)](https://doi.org/10.5281/zenodo.18080259)

### Highlights

* 🎉 Eighteenth minor release of PyGMT 🎉
* Enhanced GMT embellishment (e.g., scale bar, GMT logo, image) placement and styling with a Pythonic `Position` class and additional controlling parameters
* Five new or updated gallery examples ([#4231](https://github.com/GenericMappingTools/pygmt/pull/4231), [#4229](https://github.com/GenericMappingTools/pygmt/pull/4229), [#4228](https://github.com/GenericMappingTools/pygmt/pull/4228), [#4265](https://github.com/GenericMappingTools/pygmt/pull/4265), [#4214](https://github.com/GenericMappingTools/pygmt/pull/4214))

### New Features

* Add the Position class for GMT embellishment placement ([#4212](https://github.com/GenericMappingTools/pygmt/pull/4212))

### Enhancements

* AliasSystem: Migrate the 'registration' parameter to the new alias system and support descriptive arguments ([#4182](https://github.com/GenericMappingTools/pygmt/pull/4182))
* pygmt.grdfilter: Let the parameter 'nans' support descriptive arguments ([#4310](https://github.com/GenericMappingTools/pygmt/pull/4310))
* Figure.colorbar: Add position/length/width and more parameters to specify colorbar position and properties ([#4048](https://github.com/GenericMappingTools/pygmt/pull/4048))
* Figure.grdview: Improve parameters plane/facade_fill/facade_pen to set the plane and facade ([#4235](https://github.com/GenericMappingTools/pygmt/pull/4235))
* Figure.histogram: Split parameter bar_width into bar_width and bar_offset ([#4316](https://github.com/GenericMappingTools/pygmt/pull/4316))
* Figure.inset: Add parameters position/width/height to specify inset position and dimensions ([#4047](https://github.com/GenericMappingTools/pygmt/pull/4047))
* Figure.image: Add aliases for -I (invert) and -B (frame) ([#4089](https://github.com/GenericMappingTools/pygmt/pull/4089), [#4301](https://github.com/GenericMappingTools/pygmt/pull/4301))
* Figure.image: Add parameters position/width/height/dpi/replicate to control image position and properties ([#4045](https://github.com/GenericMappingTools/pygmt/pull/4045))
* Figure.legend: Add aliases for -S (scale) and -B (frame) ([#4254](https://github.com/GenericMappingTools/pygmt/pull/4254))
* Figure.legend: Add parameters position/width/height/line_spacing to specify legend position and properties ([#4046](https://github.com/GenericMappingTools/pygmt/pull/4046))
* Figure.logo: Add parameters position/width/height to specify logo position and dimensions ([#4014](https://github.com/GenericMappingTools/pygmt/pull/4014))
* Figure.wiggle: Add parameters position/length/label/label_alignment for the scalebar position and properties ([#4049](https://github.com/GenericMappingTools/pygmt/pull/4049))

### Deprecations

* Figure: Remove the deprecated _preprocess method (Deprecated since v0.16.0) ([#4146](https://github.com/GenericMappingTools/pygmt/pull/4146))
* pygmt.grdfill: Deprecate parameters splinefill/constantfill/neighborfill/gridfill to spline_fill/constant_fill/neighbor_fill/grid_fill (Will be removed in v0.20.0) ([#4273](https://github.com/GenericMappingTools/pygmt/pull/4273))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel the FutureWarnings for grdfill are not optimal and can be confusing:

(i) mode was changed to constantfill etc.; deprecated since v0.15.0, will be removed in v0.19.0
(ii) constantfill etc. was changed to constant_fill etc.; deprecated since v0.18.0, will be removed in v0.20.0

grd_fill_deprecated

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is an error introduced in PR #4273. PR #4338 should fix the versions.

* pygmt.grdlandmask: Deprecate parameters bordervalues/maskvalues to broder_values/mask_values (Will be removed in v0.20.0) ([#4281](https://github.com/GenericMappingTools/pygmt/pull/4281))
* pygmt.grdsample: Deprecate parameter 'translate' to 'toggle' (Will be removed in v0.21.0) ([#4187](https://github.com/GenericMappingTools/pygmt/pull/4187))
* Figure.grdview: Deprecate parameters contourpen/facadepen/meshpen to contour_pen/facade_pen/mesh_pen (Will be removed in v0.20.0) ([#4260](https://github.com/GenericMappingTools/pygmt/pull/4260))
* Figure.grdview: Deprecate parameter drapegrid to drape_grid (Will be removed in v0.20.0) ([#4276](https://github.com/GenericMappingTools/pygmt/pull/4276))
* Figure.histogram: Deprecate parameter barwidth to bar_width (Will be removed in v0.20.0) ([#4279](https://github.com/GenericMappingTools/pygmt/pull/4279))
* Figure.inset: Deprecate parameter margin to clearance (Will be removed in v0.20.0) ([#4296](https://github.com/GenericMappingTools/pygmt/pull/4296))
* Figure.meca: Deprecate parameters compressionfill/extensionfill/labelbox to compression_fill/extension_fill/label_box (Will be removed in v0.20.0) ([#4269](https://github.com/GenericMappingTools/pygmt/pull/4269), [#4274](https://github.com/GenericMappingTools/pygmt/pull/4274))
* pygmt.select: Deprecate parameter gridmask/mask to mask_grid/mask_values (Will be removed in v0.20.0) ([#4283](https://github.com/GenericMappingTools/pygmt/pull/4283), [#4288](https://github.com/GenericMappingTools/pygmt/pull/4288))
* pygmt.surface: Deprecate parameter maxradius to max_radius (Will be removed in v0.20.0) ([#4300](https://github.com/GenericMappingTools/pygmt/pull/4300))
* Figure.velo: Deprecate parameter uncertaintyfill to uncertainty_fill (Will be removed in v0.20.0) ([#4272](https://github.com/GenericMappingTools/pygmt/pull/4272))
* Figure.wiggle: Deprecate parameters fillnegative/fillpositive to negative_fill/positive_fill (Will be removed in v0.20.0) ([#4271](https://github.com/GenericMappingTools/pygmt/pull/4271))
* pygmt.x2sys_cross: Deprecate parameter trackvalues to track_values (Will be removed in v0.20.0) ([#4282](https://github.com/GenericMappingTools/pygmt/pull/4282))

### Bug Fixes

* load_earth_relief: Clarify that 03s/01s resolutions are available for IGPP source only ([#4192](https://github.com/GenericMappingTools/pygmt/pull/4192))
* geopandas: Fix UnicodeEncodeError on Windows for geopandas.GeoDataFrame with non-ASCII characters ([#4224](https://github.com/GenericMappingTools/pygmt/pull/4224))
* Figure.grdview: Fix the default z-plane to the grid z minimum when plane is set to True or only facede_fill/facede_pen is set ([#4287](https://github.com/GenericMappingTools/pygmt/pull/4287))

### Documentation

* Add example for geopandas point geometry: Use cities in Europe from Natural Earth ([#4231](https://github.com/GenericMappingTools/pygmt/pull/4231))
* Update example for geopandas line geometry: Use Natural Earth dataset, change to Asia ([#4229](https://github.com/GenericMappingTools/pygmt/pull/4229))
* Update example for geopandas polygon geometry: Use the Natural Earth dataset, change to Africa ([#4228](https://github.com/GenericMappingTools/pygmt/pull/4228))
* Advanced tutorial "Legends": Add example for adjusting line spacing ([#4265](https://github.com/GenericMappingTools/pygmt/pull/4265))
* Tutorial "Plotting data points": Add legend for size coding ([#4214](https://github.com/GenericMappingTools/pygmt/pull/4214))

### Maintenance

* Add support for Python 3.14 ([#4150](https://github.com/GenericMappingTools/pygmt/pull/4150))
* SPEC 0: Bump minimum supported version to Python 3.12, NumPy 2.0, and Xarray 2024.5 ([#4248](https://github.com/GenericMappingTools/pygmt/pull/4248), [#4090](https://github.com/GenericMappingTools/pygmt/pull/4090))
* DOC: Update naming convention in contributors guide: Separate words in parameter names by underscores ([#4284](https://github.com/GenericMappingTools/pygmt/pull/4284))
* fmt_docstrings: Use string template syntax for docstring placeholders and support curly braces in docstrings ([#4210](https://github.com/GenericMappingTools/pygmt/pull/4210))
* Remove dev dependency on "geodatasets" ([#4230](https://github.com/GenericMappingTools/pygmt/pull/4230))
* CI: Add a new workflow to cache dvc cache ([#4184](https://github.com/GenericMappingTools/pygmt/pull/4184))
* CI: Migrate the welcome bot to GitHub Actions ([#4149](https://github.com/GenericMappingTools/pygmt/pull/4149))
* CI: Test NumPy 2.4 in the GMT Tests workflow ([#4319](https://github.com/GenericMappingTools/pygmt/pull/4319))
* Add an issue template for wrapping GMT modules ([#4152](https://github.com/GenericMappingTools/pygmt/pull/4152))

**Full Changelog**: <https://github.com/GenericMappingTools/pygmt/compare/v0.17.0...v0.18.0>

### Contributors

* [Dongdong Tian](https://github.com/seisman)
* [Yvonne Fröhlich](https://github.com/yvonnefroehlich)
* [Wei Ji Leong](https://github.com/weiji14)
* [Michael Grund](https://github.com/michaelgrund)
* [Xingchen He](https://github.com/Chuan1937)
* [Will Schlitzer](https://github.com/willschlitzer)

---

## Release v0.17.0 (2025/10/03)

[![Digital Object Identifier for PyGMT v0.17.0](https://zenodo.org/badge/DOI/10.5281/zenodo.17156962.svg)](https://doi.org/10.5281/zenodo.17156962)
Expand Down
1 change: 1 addition & 0 deletions doc/minversions.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ compatibility reasons.
| PyGMT Version | Documentation | GMT | Python | NumPy | pandas | Xarray |
|---|---|---|---|---|---|---|
| [Dev][]* | <doc:dev>, [HTML+ZIP](doc:dev/pygmt-docs.zip), [PDF](doc:dev/pygmt-docs.pdf) | {{ requires.gmt }} | {{ requires.python }} | {{ requires.numpy }} | {{ requires.pandas }} | {{ requires.xarray }} |
| <tag:v0.18.0> | <doc:v0.18.0>, <html:v0.18.0>, <pdf:v0.18.0> | >=6.5.0 | >=3.12 | >=2.0 | >=2.2 | >=2024.5 |
| <tag:v0.17.0> | <doc:v0.17.0>, <html:v0.17.0>, <pdf:v0.17.0> | >=6.5.0 | >=3.11 | >=1.26 | >=2.2 | >=2023.10 |
| <tag:v0.16.0> | <doc:v0.16.0>, <html:v0.16.0>, <pdf:v0.16.0> | >=6.4.0 | >=3.11 | >=1.26 | >=2.1 | >=2023.07 |
| <tag:v0.15.0> | <doc:v0.15.0>, <html:v0.15.0>, <pdf:v0.15.0> | >=6.4.0 | >=3.11 | >=1.25 | >=2.0 | >=2023.04 |
Expand Down