@@ -38,14 +38,16 @@ concurrency:
38
38
jobs :
39
39
deps :
40
40
name : ${{ matrix.macarch }} deps
41
- runs-on : macos-12
41
+ runs-on : ${{ matrix.os }}
42
42
strategy :
43
43
matrix :
44
44
# make arm64 deps and x86_64 deps
45
- macarch : [arm64, x86_64]
45
+ include :
46
+ - { macarch: arm64, os: macos-14 }
47
+ - { macarch: x86_64, os: macos-13 }
46
48
47
49
steps :
48
- -
uses :
actions/[email protected] .2
50
+ -
uses :
actions/[email protected] .6
49
51
50
52
- name : Test for Mac Deps cache hit
51
53
id : macdep-cache
54
56
path : ${{ github.workspace }}/pygame_mac_deps_${{ matrix.macarch }}
55
57
# The hash of all files in buildconfig manylinux-build and macdependencies is
56
58
# the key to the cache. If anything changes here, the deps are built again
57
- key : macdep-${{ hashFiles('buildconfig/manylinux-build/**') }}-${{ hashFiles('buildconfig/macdependencies/*.sh') }}-${{ matrix.macarch }}
59
+ key : macdep-${{ hashFiles('buildconfig/manylinux-build/**') }}-${{ hashFiles('buildconfig/macdependencies/*.sh') }}-${{ matrix.macarch }}-${{ matrix.os }}
58
60
lookup-only : true
59
61
60
62
# build mac deps on cache miss
76
78
build :
77
79
name : ${{ matrix.name }}
78
80
needs : deps
79
- runs-on : macos-12
81
+ runs-on : ${{ matrix.os }}
80
82
strategy :
81
83
fail-fast : false # if a particular matrix build fails, don't skip the rest
82
84
matrix :
@@ -87,31 +89,36 @@ jobs:
87
89
- {
88
90
name : " x86_64 (CPython 3.9 - 3.12)" ,
89
91
macarch : x86_64,
92
+ os : macos-13,
90
93
pyversions : " cp3{9,10,11,12}-*" ,
91
94
}
92
95
93
96
- {
94
97
name : " x86_64 (Python 3.8)" ,
95
98
macarch : x86_64,
99
+ os : macos-13,
96
100
# CPython/PyPy 3.8
97
101
pyversions : " ?p38-*" ,
98
102
}
99
103
100
104
- {
101
105
name : " x86_64 (PyPy 3.9 and 3.10)" ,
102
106
macarch : x86_64,
107
+ os : macos-13,
103
108
pyversions : " pp39-* pp310-*" ,
104
109
}
105
110
106
111
- {
107
112
name : " arm64 (CPython 3.8 - 3.10)" ,
108
113
macarch : arm64,
114
+ os : macos-14,
109
115
pyversions : " cp3{8,9,10}-*" ,
110
116
}
111
117
112
118
- {
113
119
name : " arm64 (CPython 3.11 - 3.12)" ,
114
120
macarch : arm64,
121
+ os : macos-14,
115
122
pyversions : " cp3{11,12}-*" ,
116
123
}
117
124
@@ -135,8 +142,6 @@ jobs:
135
142
136
143
CIBW_BUILD : ${{ matrix.pyversions }}
137
144
138
- # Build arm64 and x86_64 wheels too on an Intel runner.
139
- # Note that the arm64 wheels cannot be tested on CI in this configuration
140
145
CIBW_ARCHS : ${{ matrix.macarch }}
141
146
142
147
# Setup macOS dependencies
@@ -160,7 +165,7 @@ jobs:
160
165
CIBW_BUILD_VERBOSITY : 2
161
166
162
167
steps :
163
- -
uses :
actions/[email protected] .2
168
+ -
uses :
actions/[email protected] .6
164
169
165
170
- name : pip cache
166
171
@@ -177,7 +182,7 @@ jobs:
177
182
fail-on-cache-miss : true
178
183
179
184
- name : Build and test wheels
180
- uses : pypa/cibuildwheel@v2.16.4
185
+ uses : pypa/cibuildwheel@v2.17.0
181
186
182
187
- uses : actions/upload-artifact@v4
183
188
with :
0 commit comments