1- name : Build
2-
31on :
42 push :
53 paths :
1715
1816jobs :
1917 build_data :
20- name : Build data packages
18+ name : Build data
2119 strategy :
2220 matrix :
2321 package : [basemap_data, basemap_data_hires]
@@ -30,21 +28,22 @@ jobs:
3028 with :
3129 python-version : " 3.9"
3230
33- - name : Build sdist and wheels
31+ - name : Build data sdist and wheel
3432 run : |
3533 cd packages/${{ matrix.package }}
3634 python -m pip install build wheel
3735 python -m build
3836
39- - uses : actions/upload-artifact@v4
37+ - name : Upload data sdist and wheel
38+ uses : actions/upload-artifact@v4
4039 with :
4140 path : |
4241 packages/${{ matrix.package }}/dist/*.tar.gz
4342 packages/${{ matrix.package }}/dist/*.whl
4443 name : dist-${{ matrix.package }}
4544
4645 build_sdist :
47- name : Build basemap sdist
46+ name : Build sdist
4847 runs-on : ubuntu-22.04
4948 steps :
5049 - uses : actions/checkout@v4
@@ -54,23 +53,24 @@ jobs:
5453 with :
5554 python-version : " 3.9"
5655
57- - name : Build sdist
56+ - name : Build basemap sdist
5857 run : |
5958 cd packages/basemap
6059 python -m pip install build
6160 python -m build --sdist
6261
63- - uses : actions/upload-artifact@v4
62+ - name : Upload basemap sdist
63+ uses : actions/upload-artifact@v4
6464 with :
6565 path : packages/basemap/dist/*.tar.gz
6666 name : dist-basemap-sdist
6767
6868 build_wheels :
69- name : Build basemap wheels
69+ name : Build wheels
7070 needs : [build_data, build_sdist]
7171 strategy :
7272 matrix :
73- os : [ubuntu-22.04, windows-2019 , macos-13, macos-14]
73+ os : [ubuntu-22.04, windows-2022 , macos-13, macos-14]
7474 runs-on : ${{ matrix.os }}
7575 steps :
7676 - uses : actions/checkout@v4
@@ -80,44 +80,13 @@ jobs:
8080 with :
8181 python-version : " 3.9"
8282
83- - name : Download data packages
84- uses : actions/download-artifact@v4
85- with :
86- pattern : dist-basemap_data*
87- path : ./data_packages/
88- merge-multiple : true
89-
90- - name : Install data packages (Linux/macOS)
91- if : runner.os != 'Windows'
92- shell : bash
93- run : |
94- # Install the wheel data packages with wildcard
95- python -m pip install ./data_packages/*.whl
96-
97- # Verify that the data packages can be imported
98- python -c "import mpl_toolkits.basemap_data; print('mpl_toolkits.basemap_data installed successfully')"
99-
100- - name : Install data packages (Windows)
101- if : runner.os == 'Windows'
102- shell : pwsh
103- run : |
104- # Install the wheel data packages sequentially
105- $wheels = Get-ChildItem -Path "./data_packages" -Filter "*.whl" -Recurse
106- foreach ($wheel in $wheels) {
107- Write-Host "Installing $($wheel.FullName)"
108- python -m pip install $wheel.FullName
109- }
110-
111- # Verify that the data packages can be imported
112- python -c "import mpl_toolkits.basemap_data; print('mpl_toolkits.basemap_data installed successfully')"
113-
11483 - name : Download basemap sdist
11584 uses : actions/download-artifact@v4
11685 with :
11786 name : dist-basemap-sdist
11887 path : ./sdist/
11988
120- - name : Extract sdist (Linux/macOS)
89+ - name : Extract basemap sdist (Linux/macOS)
12190 if : runner.os != 'Windows'
12291 shell : bash
12392 run : |
@@ -136,7 +105,7 @@ jobs:
136105 # Set the environment variable
137106 echo "SDIST_DIR=$(pwd)/${EXTRACTED_DIR}" >> $GITHUB_ENV
138107
139- - name : Extract sdist (Windows)
108+ - name : Extract basemap sdist (Windows)
140109 if : runner.os == 'Windows'
141110 shell : pwsh
142111 run : |
@@ -156,7 +125,7 @@ jobs:
156125 # Set the environment variable
157126 echo "SDIST_DIR=$extractedDir" | Out-File -FilePath $env:GITHUB_ENV -Append
158127
159- - name : Build wheels from sdist
128+ - name : Build basemap wheels from sdist
160129161130 env :
162131 CIBW_ARCHS : " native"
@@ -184,7 +153,8 @@ jobs:
184153 # folder and we cannot guarantee that wheels can be built
185154 # from the sdist.
186155
187- - uses : actions/upload-artifact@v4
156+ - name : Upload basemap wheels
157+ uses : actions/upload-artifact@v4
188158 with :
189159 path : dist/*.whl
190160 name : dist-basemap-wheels-${{ matrix.os }}
@@ -194,7 +164,8 @@ jobs:
194164 needs : [build_data, build_sdist, build_wheels]
195165 runs-on : ubuntu-22.04
196166 steps :
197- - uses : actions/download-artifact@v4
167+ - name : Download basemap and data packages
168+ uses : actions/download-artifact@v4
198169 with :
199170 path : dist
200171 pattern : " dist-*"
@@ -212,8 +183,8 @@ jobs:
212183 python -m twine check dist/*.whl
213184
214185 docs :
215- name : Build documentation
216- needs : [build_wheels ]
186+ name : Build docs
187+ needs : [check ]
217188 runs-on : ubuntu-22.04
218189 steps :
219190 - uses : actions/checkout@v4
@@ -230,14 +201,14 @@ jobs:
230201 pattern : " dist-basemap_data*"
231202 merge-multiple : true
232203
233- - name : Download basemap wheel for Linux
204+ - name : Download basemap wheels for Linux
234205 uses : actions/download-artifact@v4
235206 with :
236207 path : ./wheels/
237208 pattern : " dist-basemap-wheels-ubuntu-*"
238209 merge-multiple : true
239210
240- - name : Install packages
211+ - name : Install basemap and data packages
241212 run : |
242213 # Get Python version.
243214 IMPL=cp$(python -c "import sys; print('{0}{1}'.format(*sys.version_info[:2]))")
@@ -257,7 +228,7 @@ jobs:
257228 - name : Install docs requirements
258229 run : |
259230 cd packages/basemap
260- python -m pip install -r requirements-doc.txt
231+ python -m pip install -r dep/ requirements-doc.txt
261232
262233 - name : Run sphinx
263234 run : |
@@ -277,9 +248,9 @@ jobs:
277248 path : packages/basemap/public
278249
279250 pages :
280- name : Deploy documentation
251+ name : Deploy docs
281252 if : github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
282- needs : [docs, check ]
253+ needs : [docs]
283254 runs-on : ubuntu-22.04
284255 environment :
285256 name : github-pages
@@ -299,7 +270,8 @@ jobs:
299270 environment : PyPI
300271 if : github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
301272 steps :
302- - uses : actions/download-artifact@v4
273+ - name : Download basemap and data packages
274+ uses : actions/download-artifact@v4
303275 with :
304276 path : dist
305277 pattern : " dist-*"
0 commit comments