@@ -16,29 +16,22 @@ jobs:
16
16
strategy :
17
17
matrix :
18
18
os : [ubuntu-20.04, macos-latest, windows-latest]
19
- python-version : [2.7, 3.5, 3.6, 3. 7, 3.8, 3.9, '3.10', '3.11', pypy-2.7 , pypy-3.9 ]
19
+ python-version : [3. 7, 3.8, 3.9, '3.10', '3.11', '3.12' , pypy-3.10 ]
20
20
impl : [cpython, cffi]
21
21
purity : [pure, with-pylmdb-mods]
22
22
23
23
exclude :
24
- - python-version : pypy-2.7
24
+ # Pypy doesn't work with cpython
25
+ - python-version : pypy-3.10
25
26
impl : cpython
26
- - python-version : pypy-3.9
27
- impl : cpython
28
- # CFFI has trouble building on Windows for 3.5 "self.find_available_vc_vers()[-1]" fails
29
- - python-version : 3.5
30
- os : windows-latest
31
- # Microsoft removed VC 9.0 installer so Python 2.7 modules can no longer be built on Windows
32
- - python-version : 2.7
33
- os : windows-latest
34
- # Doesn't seem to exist on github MacOS
35
- - python-version : pypy-3.9
27
+ # macos latest is now arm64 and 3.7 doesn't have arm64 build
28
+ - python-version : 3.7
36
29
os : macos-latest
37
30
38
31
steps :
39
32
- uses : actions/checkout@v2
40
33
- name : Set up Python ${{ matrix.python-version }}
41
- uses : actions/setup-python@v2
34
+ uses : actions/setup-python@v5
42
35
with :
43
36
python-version : ${{ matrix.python-version }}
44
37
- name : Set env vars Windows
79
72
cffi=$LMDB_FORCE_CFFI pure=$LMDB_PURE system=$LMDB_FORCE_SYSTEM"
80
73
echo "Windows: Envs are cpython=$Env:LMDB_FORCE_CPYTHON
81
74
cffi=$Env:LMDB_FORCE_CFFI pure=$Env:LMDB_PURE system=$Env:LMDB_FORCE_SYSTEM"
82
- python -m pip install wheel
75
+ python -m pip install setuptools wheel
83
76
# Install this separately since sometimes Github Actions can't find it
84
77
python -m pip install cffi
85
78
python -m pip install flake8 pytest patch-ng
94
87
#
95
88
- name : Test with pytest
96
89
# Limit the test cycle a little
97
- if : matrix.python-version != '3.6' && matrix.python-version != '3.8'
90
+ if : >-
91
+ matrix.python-version != '3.7' && matrix.python-version != '3.9' &&
92
+ matrix.python-version != '3.11'
98
93
run : |
99
94
echo "Envs are cpython=$LMDB_FORCE_CPYTHON cffi=$LMDB_FORCE_CFFI
100
95
pure=$LMDB_PURE system=$LMDB_FORCE_SYSTEM"
@@ -141,7 +136,7 @@ jobs:
141
136
uses : RalfG/python-wheels-manylinux-build@v0.7.1
142
137
with :
143
138
python-versions : >-
144
- cp36-cp36m cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311
139
+ cp36-cp36m cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311 cp312-cp312
145
140
build-requirements : ' patch-ng'
146
141
147
142
- name : What do we have
@@ -165,7 +160,7 @@ jobs:
165
160
matrix :
166
161
impl : [cpython, cffi]
167
162
purity : [pure, with-pylmdb-mods]
168
- PYTHON : ["cp36-cp36m", " cp37-cp37m" , "cp38-cp38" , "cp39-cp39", "cp310-cp310", "cp311-cp311"]
163
+ PYTHON : ["cp37-cp37m" , "cp38-cp38" , "cp39-cp39", "cp310-cp310", "cp311-cp311"]
169
164
steps :
170
165
- uses : actions/checkout@v2
171
166
- run : |
@@ -179,7 +174,7 @@ jobs:
179
174
python --version;
180
175
/opt/python/${{ matrix.PYTHON }}/bin/python -m venv .venv;
181
176
yum install -y libffi-devel;
182
- .venv/bin/pip install -U pip wheel cffi six;
177
+ .venv/bin/pip install -U pip setuptools wheel cffi six;
183
178
if \[ ${{ matrix.impl }} == cpython \] ; then
184
179
echo LMDB_FORCE_CPYTHON=1
185
180
else
@@ -194,7 +189,7 @@ jobs:
194
189
cffi=$LMDB_FORCE_CFFI pure=$LMDB_PURE system=$LMDB_FORCE_SYSTEM\";
195
190
echo \"Windows: Envs are cpython=$Env:LMDB_FORCE_CPYTHON
196
191
cffi=$Env:LMDB_FORCE_CFFI pure=$Env:LMDB_PURE system=$Env:LMDB_FORCE_SYSTEM\";
197
- .venv/bin/pip install flake8 pytest patch-ng;
192
+ .venv/bin/pip install setuptools flake8 pytest patch-ng;
198
193
/opt/python/${{ matrix.PYTHON }}/bin/python setup.py develop bdist_wheel;
199
194
ls dist;
200
195
/opt/python/${{ matrix.PYTHON }}/bin/python -m pip install pytest;
@@ -212,29 +207,29 @@ jobs:
212
207
213
208
- uses : actions/upload-artifact@v2
214
209
if : >-
215
- matrix.PYTHON == 'cp310-cp310' && runner.os == 'Linux' &&
210
+ matrix.PYTHON == 'cp310-cp310' && runner.os == 'Linux' &&
216
211
matrix.purity == 'with-pylmdb-mods' && matrix.impl == 'cpython'
217
212
with :
218
213
path : vers.txt
219
214
name : vers.txt
220
215
- uses : actions/upload-artifact@v2
221
216
if : >-
222
- matrix.PYTHON == 'cp310-cp310' && runner.os == 'Linux' &&
217
+ matrix.PYTHON == 'cp310-cp310' && runner.os == 'Linux' &&
223
218
matrix.purity == 'with-pylmdb-mods' && matrix.impl == 'cpython'
224
219
with :
225
220
path : dist/lmdb*.tar.gz
226
221
name : source
227
222
- uses : RalfG/python-wheels-manylinux-build@v0.7.1-manylinux2014_aarch64
228
223
if : >-
229
- matrix.PYTHON == 'cp310-cp310' && runner.os == 'Linux' &&
224
+ matrix.PYTHON == 'cp310-cp310' && runner.os == 'Linux' &&
230
225
matrix.purity == 'with-pylmdb-mods' && matrix.impl == 'cpython'
231
226
with :
232
227
python-versions : >-
233
- cp36-cp36m cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311
228
+ cp36-cp36m cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311 cp312-cp312
234
229
build-requirements : ' patch-ng'
235
230
- uses : actions/upload-artifact@v2
236
231
if : >-
237
- matrix.PYTHON == 'cp310-cp310' && runner.os == 'Linux' &&
232
+ matrix.PYTHON == 'cp310-cp310' && runner.os == 'Linux' &&
238
233
matrix.purity == 'with-pylmdb-mods' && matrix.impl == 'cpython'
239
234
with :
240
235
path : dist/lmdb*manylinux*.whl
@@ -248,41 +243,15 @@ jobs:
248
243
# We publish a subset of the targets we test
249
244
matrix :
250
245
os : [macos-latest, windows-latest]
251
- python-version : ['2.7', '3.5', '3.6', '3. 7', '3.8', '3.9', '3.10', '3.11', pypy-2.7 , pypy-3.9 ]
246
+ python-version : ['3. 7', '3.8', '3.9', '3.10', '3.11', '3.12' , pypy-3.10 ]
252
247
impl : [cpython, cffi]
253
248
purity : [with-pylmdb-mods]
254
249
255
250
exclude :
256
- - python-version : ' pypy-2.7'
257
- impl : cpython
258
- - python-version : ' pypy-3.9'
251
+ - python-version : ' pypy-3.10'
259
252
impl : cpython
260
- - python-version : ' 2.7'
261
- impl : cffi
262
- - python-version : ' 3.5'
263
- impl : cffi
264
- - python-version : ' 3.6'
265
- impl : cffi
266
253
- python-version : ' 3.7'
267
- impl : cffi
268
- - python-version : ' 3.8'
269
- impl : cffi
270
- - python-version : ' 3.9'
271
- impl : cffi
272
- - python-version : ' 3.10'
273
- impl : cffi
274
- - python-version : ' 3.11'
275
- impl : cffi
276
- # CFFI has trouble building on Windows for 3.5 "self.find_available_vc_vers()[-1]" fails
277
- - python-version : 3.5
278
- os : windows-latest
279
- # Microsoft removed VC 9.0 installer so Python 2.7 modules can no longer be built on Windows
280
- - python-version : ' 2.7'
281
- os : windows-latest
282
- # Doesn't seem to exist on github MacOS
283
- - python-version : pypy-3.9
284
254
os : macos-latest
285
-
286
255
include :
287
256
# Ubuntu artifacts apply to all python versions
288
257
- os : ubuntu-20.04
0 commit comments