@@ -31,63 +31,60 @@ jobs:
31
31
32
32
33
33
build_wheels :
34
- name : Build Wheels for ${{ matrix.os }}
34
+ name : Build Python ${{ matrix.python-version }} for ${{ matrix.os }}
35
35
runs-on : ${{ matrix.os }}
36
36
needs : versioning
37
37
strategy :
38
38
matrix :
39
- os : [ubuntu-20.04, macOS-11 , windows-2022 ]
40
-
39
+ os : [ubuntu-latest, macos-latest , windows-latest ]
40
+ python-version : ["39", "310", "311", "312"]
41
41
steps :
42
- - uses : actions/checkout@v3
43
- with :
44
- ref : ' main'
45
- - uses : actions/setup-python@v3
46
-
47
- - name : Setup Docker
48
- if : matrix.os != 'windows-2022'
49
-
42
+ - uses : actions/checkout@v4
43
+ - name : Set up Python
44
+ uses : actions/setup-python@v5
50
45
with :
51
- version : 23.0.1
52
-
46
+ python-version : 3.x
53
47
- name : Setup QEMU
54
- if : matrix.os != 'windows-2022'
55
-
56
-
57
- - name : Install CIBuildWheel
48
+ if : matrix.os == 'ubuntu-latest' # We only need QEMU for Linux builds
49
+ uses : docker/setup-qemu-action@v3
50
+ - name : Install cibuildwheel
58
51
run : python -m pip install cibuildwheel
59
-
60
52
- name : Build wheels
61
- run : python -m cibuildwheel
62
-
63
- - uses : actions/upload-artifact@v3
53
+ run : cibuildwheel --output-dir wheelhouse
54
+ env :
55
+ CIBW_BUILD : cp${{ matrix.python-version }}-*
56
+ - name : Upload wheels
57
+ uses : actions/upload-artifact@v4
64
58
with :
59
+ name : cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
65
60
path : ./wheelhouse/*.whl
66
-
67
-
61
+ overwrite : true
62
+
68
63
publish_python :
69
64
name : Publish Python
70
- runs-on : ubuntu-20.04
71
65
needs : build_wheels
66
+ runs-on : ubuntu-20.04
72
67
environment :
73
68
name : pypi
74
- url : https://pypi.org/p/ucall
69
+ url : https://pypi.org/p/stringzilla
75
70
permissions :
76
71
id-token : write
77
72
78
73
steps :
79
74
- name : Download artifacts
80
- uses : actions/download-artifact@v3.0.2
75
+ uses : actions/download-artifact@v4
81
76
with :
82
- path : ./dist/
77
+ # unpacks all CIBW artifacts into dist/
78
+ pattern : cibw-*
79
+ path : dist
80
+ merge-multiple : true
83
81
84
82
- name : Publish to PyPi
85
83
uses : pypa/gh-action-pypi-publish@release/v1
86
84
with :
87
- packages_dir : ./ dist/artifact
85
+ packages-dir : dist
88
86
verbose : true
89
- print_hash : true
90
-
87
+ print-hash : true
91
88
92
89
deploy_docs :
93
90
name : Deploy Docs
0 commit comments