5
5
6
6
on :
7
7
push :
8
+ paths :
9
+ - " .github/workflows/basemap-for-manylinux.yml"
10
+ - " packages/basemap/**"
11
+ pull_request :
12
+ paths :
13
+ - " .github/workflows/basemap-for-manylinux.yml"
14
+ - " packages/basemap/**"
8
15
workflow_dispatch :
9
16
10
17
jobs :
26
33
strategy :
27
34
matrix :
28
35
arch :
29
- [
30
- " x64" ,
31
- " x86" ,
32
- ]
36
+ ["x64", "x86"]
33
37
max-parallel : 2
34
38
fail-fast : false
35
39
needs : checkout
78
82
strategy :
79
83
matrix :
80
84
arch :
81
- [
82
- " x64" ,
83
- " x86" ,
84
- ]
85
+ ["x64", "x86"]
85
86
python-version :
86
- [
87
- " 2.7" ,
88
- " 3.5" ,
89
- " 3.6" ,
90
- " 3.7" ,
91
- " 3.8" ,
92
- " 3.9" ,
93
- ]
87
+ ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10"]
94
88
max-parallel : 3
95
89
fail-fast : false
96
90
needs : build-geos
@@ -123,12 +117,14 @@ jobs:
123
117
name : Generate NumPy headers
124
118
run : |
125
119
case "${{ matrix.python-version }}" in
126
- 2.[67]|3.[01234]) pkgvers=1.11.3;;
127
- *) pkgvers=1.16.6;;
120
+ 2.6|3.[23]) pkgvers=1.11.3;;
121
+ 2.7|3.[456789]) pkgvers=1.16.6;;
122
+ *) pkgvers=1.21.4;;
128
123
esac
129
124
pkgname=numpy
130
125
pkgcode=numpy-${pkgvers}
131
- python -m pip download --no-binary=:all: "numpy == ${pkgvers}"
126
+ python -m pip install cython
127
+ python -m pip download --no-binary=numpy "numpy == ${pkgvers}"
132
128
unzip ${pkgcode}.zip
133
129
rm -f ${pkgcode}.zip
134
130
cd ${pkgcode}
@@ -156,24 +152,14 @@ jobs:
156
152
strategy :
157
153
matrix :
158
154
arch :
159
- [
160
- " x64" ,
161
- " x86" ,
162
- ]
155
+ ["x64", "x86"]
163
156
python-version :
164
- [
165
- " 2.7" ,
166
- " 3.5" ,
167
- " 3.6" ,
168
- " 3.7" ,
169
- " 3.8" ,
170
- " 3.9" ,
171
- ]
157
+ ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10"]
172
158
max-parallel : 3
173
159
fail-fast : false
174
160
needs : build
175
161
runs-on : ubuntu-latest
176
- container : " pylegacy/${{ matrix.arch }}-python:3.6-debian-5 "
162
+ container : " pylegacy/${{ matrix.arch }}-python:3.6-debian-8 "
177
163
steps :
178
164
-
179
165
name : Download GEOS artifacts
@@ -187,33 +173,16 @@ jobs:
187
173
with :
188
174
name : artifacts-build-${{ matrix.arch }}-${{ matrix.python-version }}
189
175
path : ${{ env.PKGDIR }}/dist
190
- -
191
- name : Install GCC toolchain
192
- run : |
193
- apt-get update
194
- apt-get install -y gcc g++ make
195
176
-
196
177
name : Install unzip
197
178
run : |
198
179
apt-get update
199
180
apt-get install -y unzip
200
181
-
201
- name : Install patchelf from source
182
+ name : Install patchelf
202
183
run : |
203
- pkgvers=0.9
204
- pkgname=patchelf
205
- pkgcode=${pkgname}-${pkgvers}
206
- cd /tmp
207
- wget https://releases.nixos.org/${pkgname}/${pkgcode}/${pkgcode}.tar.gz
208
- tar -xf ${pkgcode}.tar.gz
209
- rm -f ${pkgcode}.tar.gz
210
- cd ${pkgcode}
211
- ./configure
212
- make
213
- make check
214
- make install
215
- cd ..
216
- rm -rf ${pkgcode}
184
+ pip install patchelf
185
+ alias patchelf="python -m patchelf"
217
186
-
218
187
name : Install auditwheel
219
188
run : |
@@ -235,24 +204,14 @@ jobs:
235
204
strategy :
236
205
matrix :
237
206
arch :
238
- [
239
- " x64" ,
240
- " x86" ,
241
- ]
207
+ ["x64", "x86"]
242
208
python-version :
243
- [
244
- " 2.7" ,
245
- " 3.5" ,
246
- " 3.6" ,
247
- " 3.7" ,
248
- " 3.8" ,
249
- " 3.9" ,
250
- ]
209
+ ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10"]
251
210
max-parallel : 3
252
211
fail-fast : false
253
212
needs : repair
254
213
runs-on : ubuntu-latest
255
- container : " pylegacy/${{ matrix.arch }}-python:${{ matrix.python-version }}-debian-5 "
214
+ container : " pylegacy/${{ matrix.arch }}-python:${{ matrix.python-version }}-debian-8 "
256
215
steps :
257
216
-
258
217
name : Download checkout
@@ -266,37 +225,20 @@ jobs:
266
225
with :
267
226
name : artifacts-build-${{ matrix.arch }}-${{ matrix.python-version }}
268
227
path : ${{ env.PKGDIR }}/dist
269
- -
270
- name : Install GCC toolchain
271
- run : |
272
- apt-get update
273
- apt-get install -y gcc g++ make
274
228
-
275
229
name : Install matplotlib dependencies
276
230
run : |
277
231
apt-get update
278
- apt-get install -y libfreetype6-dev libpng12-dev
232
+ apt-get install -y gcc g++ make
233
+ apt-get install -y pkg-config libfreetype6-dev libpng12-dev
279
234
if : matrix.arch == 'x86' && matrix.python-version == '3.5'
280
235
-
281
- name : Install pyproj manually
236
+ name : Install numpy from source
282
237
run : |
283
238
apt-get update
284
- apt-get install -y proj-bin libproj-dev
285
- python -m pip install cython
286
- pkgname=pyproj
287
- pkgvers=${{ env.pyproj-version }}
288
- pkgcode=${pkgname}-${pkgvers}
289
- python -m pip download "pyproj == ${pkgvers}"
290
- tar -xf ${pkgcode}.tar.gz
291
- rm -rf ${pkgcode}.tar.gz
292
- cd ${pkgcode}
293
- rm _proj.c
294
- python -m pip install .
295
- cd ..
296
- rm -rf ${pkgcode}
297
- if : matrix.python-version == '3.9'
298
- env :
299
- pyproj-version : 1.9.6
239
+ apt-get install -y gcc g++ make
240
+ pip install "numpy < 1.21.5"
241
+ if : matrix.arch == 'x86' && matrix.python-version == '3.10'
300
242
-
301
243
name : Install package
302
244
run : |
@@ -310,24 +252,14 @@ jobs:
310
252
strategy :
311
253
matrix :
312
254
arch :
313
- [
314
- " x64" ,
315
- " x86" ,
316
- ]
255
+ ["x64", "x86"]
317
256
python-version :
318
- [
319
- " 2.7" ,
320
- " 3.5" ,
321
- " 3.6" ,
322
- " 3.7" ,
323
- " 3.8" ,
324
- " 3.9" ,
325
- ]
257
+ ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10"]
326
258
max-parallel : 1
327
259
if : startsWith(github.event.ref, 'refs/tags/v')
328
260
needs : test
329
261
runs-on : ubuntu-latest
330
- container : " pylegacy/${{ matrix.arch }}-python:${{ matrix.python-version }}-debian-5 "
262
+ container : " pylegacy/${{ matrix.arch }}-python:${{ matrix.python-version }}-debian-8 "
331
263
environment : PyPI
332
264
steps :
333
265
-
0 commit comments