Skip to content

Commit 7ad7f80

Browse files
committed
Merge branch 'main' into refactor/data_kind
2 parents 2646d26 + 6353926 commit 7ad7f80

Some content is hidden

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

57 files changed

+305
-207
lines changed

.github/workflows/ci_docs.yml

Lines changed: 1 addition & 1 deletion
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

.github/workflows/ci_tests.yaml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,15 @@ jobs:
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,7 +128,7 @@ 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 }}

.github/workflows/ci_tests_dev.yaml

Lines changed: 1 addition & 1 deletion
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

.github/workflows/ci_tests_legacy.yaml

Lines changed: 1 addition & 0 deletions
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

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,10 +75,10 @@ jobs:
7575
ls -lh dist/
7676
7777
- name: Publish to Test PyPI
78-
uses: pypa/gh-action-pypi-publish@v1.10.1
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.10.1
84+
uses: pypa/gh-action-pypi-publish@v1.10.2

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,8 @@ widely used across the Earth, Ocean, and Planetary sciences and beyond.
4545
- Build a Pythonic API for GMT.
4646
- Interface with the GMT C API directly using ctypes (no system calls).
4747
- Support for rich display in the Jupyter notebook.
48-
- Integration with the [PyData ecosystem](https://pydata.org/): `numpy.ndarray` or `pandas.DataFrame` for
49-
data tables, `xarray.DataArray` for grids, and `geopandas.GeoDataFrame` for geographical data.
48+
- Integration with the [scientific Python ecosystem](https://scientific-python.org/): `numpy.ndarray` or
49+
`pandas.DataFrame` for data tables, `xarray.DataArray` for grids, and `geopandas.GeoDataFrame` for geographical data.
5050

5151
## Quickstart
5252

ci/requirements/docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ dependencies:
66
# Required dependencies
77
- python=3.12
88
- gmt=6.5.0
9-
- ghostscript=10.03.1
9+
- ghostscript=10.04.0
1010
- numpy
1111
- pandas
1212
- xarray

doc/_static/style.css

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,3 +219,7 @@ th.text-center, td.text-center {
219219
th.text-right, td.text-right {
220220
text-align: right !important;
221221
}
222+
223+
.std-term {
224+
font-weight: 600;
225+
}

doc/install.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -269,17 +269,17 @@ problems and solutions.
269269
Sometimes, PyGMT will be unable to find the correct version of the GMT shared library
270270
(`libgmt`). This can happen if you have multiple versions of GMT installed.
271271

272-
You can tell PyGMT exactly where to look for `libgmt` by setting the `GMT_LIBRARY_PATH`
273-
environment variable to the directory where `libgmt.so`, `libgmt.dylib` or `gmt.dll` can
274-
be found on Linux, macOS or Windows, respectively.
272+
You can tell PyGMT exactly where to look for `libgmt` by setting the environment
273+
variable {term}`GMT_LIBRARY_PATH` to the directory where `libgmt.so`, `libgmt.dylib` or
274+
`gmt.dll` can be found on Linux, macOS or Windows, respectively.
275275

276276
For Linux/macOS, add the following line to your shell configuration file (usually
277277
`~/.bashrc` for Bash on Linux and `~/.zshrc` for Zsh on macOS):
278278
```
279279
export GMT_LIBRARY_PATH=$HOME/miniforge3/envs/pygmt/lib
280280
```
281281

282-
For Windows, add the `GMT_LIBRARY_PATH` environment variable following these
282+
For Windows, add the environment variable {term}`GMT_LIBRARY_PATH` following these
283283
[instructions](https://www.wikihow.com/Create-an-Environment-Variable-in-Windows-10)
284284
and set its value to a path like:
285285
```

doc/techref/environment_variables.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Environment Variables
2+
3+
PyGMT's behavior can be controlled through various environment variables. These variables
4+
can be set either in your shell environment or within your Python script using the
5+
{py:data}`os.environ` dictionary.
6+
7+
Here we list the environment variables used by PyGMT which are categorized into three groups:
8+
9+
1. System environment variables
10+
2. GMT/PyGMT environment variables
11+
3. Module-specific environment variables
12+
13+
## System Environment Variables
14+
15+
```{glossary}
16+
TZ
17+
Specify the time zone for the current calendar time. It can be set to a string that
18+
defines the timezone, such as `"UTC"`, `"America/New_York"`, or `"Europe/London"`.
19+
Refer to [Specifying the Time Zone with TZ](https://www.gnu.org/software/libc/manual/html_node/TZ-Variable.html)
20+
for the valid format. If not set, the system's default timezone is used.
21+
```
22+
23+
## GMT/PyGMT Environment Variables
24+
25+
```{glossary}
26+
GMT_LIBRARY_PATH
27+
Specify the directory where the GMT shared library is located. This is useful when
28+
GMT is installed in a non-standard location or when you want to use a specific
29+
version of GMT. If not set, PyGMT will attempt to find the GMT library in standard
30+
system locations.
31+
32+
PYGMT_USE_EXTERNAL_DISPLAY
33+
Whether to use external viewers for displaying images. If set to `"false"`, PyGMT
34+
will not attempt to open images in external viewers. This can be useful when running
35+
tests or building the documentation to avoid popping up windows.
36+
```
37+
38+
## Module-Specific Environment Variables
39+
40+
```{glossary}
41+
X2SYS_HOME
42+
Specify the directory where x2sys databases and related settings will be stored.
43+
This environment variable is used by x2sys-related functions (e.g.,
44+
{func}`pygmt.x2sys_init`) to manage and access x2sys data. If not set, these
45+
functions will use a default directory or prompt for a location.
46+
```

0 commit comments

Comments
 (0)