6565 fail-fast : false
6666 matrix :
6767 # Use Ubuntu 20.04 / macOS 13 x86_64 / macOS 14 arm64 + Python 3.10 to build SpiderMonkey
68- os : [ 'ubuntu-20.04', 'macos-13', 'macos-14', 'pi ' ] # macOS 14 runner exclusively runs on M1 hardwares
69- # see https://github.blog/changelog/2024-01-30-github-actions-macos-14-sonoma-is-now-available
68+ os : [ 'ubuntu-20.04', 'macos-13', 'macos-14', 'ubuntu-22.04-arm ' ] # macOS 14 runner exclusively runs on M1 hardwares
69+ # see https://github.blog/changelog/2024-01-30-github-actions-macos-14-sonoma-is-now-available
7070 python_version : [ '3.10' ]
7171 runs-on : ${{ matrix.os }}
7272 steps :
@@ -132,7 +132,7 @@ jobs:
132132 strategy :
133133 fail-fast : false
134134 matrix :
135- os : [ 'ubuntu-20.04', 'macos-13', 'macos-14', 'windows-2022', 'pi ' ]
135+ os : [ 'ubuntu-20.04', 'macos-13', 'macos-14', 'windows-2022', 'ubuntu-22.04-arm ' ]
136136 python_version : [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13' ]
137137 runs-on : ${{ matrix.os }}
138138 steps :
@@ -144,9 +144,6 @@ jobs:
144144 - uses : actions/setup-python@v5
145145 with :
146146 python-version : ${{ matrix.python_version }}
147- - name : Remove old poetry cache
148- run : rm -rf ~/.cache/pypoetry
149- if : ${{ matrix.os == 'pi' }}
150147 - name : Setup Poetry
151148 uses : snok/install-poetry@v1
152149 with :
@@ -180,7 +177,7 @@ jobs:
180177 BUILD_DOCS=1 BUILD_TYPE=None poetry install
181178 - name : Upload Doxygen-generated docs as CI artifacts
182179 if : ${{ matrix.os == 'ubuntu-20.04' && matrix.python_version == '3.11' }}
183- uses : actions/upload-artifact@v3
180+ uses : actions/upload-artifact@v4
184181 with :
185182 name : docs-${{ github.run_id }}-${{ github.sha }}
186183 path : ./build/docs/html/
@@ -218,9 +215,9 @@ jobs:
218215 mv "$file" "$(echo "$file" | sed -E 's/macosx_[0-9]+_[0-9]+/macosx_11_0/')";
219216 done
220217 - name : Upload wheel as CI artifacts
221- uses : actions/upload-artifact@v3
218+ uses : actions/upload-artifact@v4
222219 with :
223- name : wheel-${{ github.run_id }}-${{ github.sha }}
220+ name : wheel-${{ github.run_id }}-${{ github.sha }}-${{ runner.os }}_${{ runner.arch }}_Python${{ matrix.python_version }}
224221 path : ./dist/
225222 - name : Set cores to get stored in /cores
226223 if : ${{ matrix.os != 'windows-2022' }}
@@ -257,7 +254,7 @@ jobs:
257254 with :
258255 credentials : " admin:admin"
259256 - name : Upload core dumps as CI artifacts
260- uses : actions/upload-artifact@v3
257+ uses : actions/upload-artifact@v4
261258 if : ${{ matrix.os != 'windows-2022' && failure() }}
262259 # TODO (Caleb Aikens) figure out how to get Windows core dumps
263260 with :
@@ -282,9 +279,9 @@ jobs:
282279 poetry build --format=sdist
283280 ls -lah ./dist/
284281 - name : Upload sdist as CI artifacts
285- uses : actions/upload-artifact@v3
282+ uses : actions/upload-artifact@v4
286283 with :
287- name : wheel-${{ github.run_id }}-${{ github.sha }}
284+ name : wheel-${{ github.run_id }}-${{ github.sha }}-sdist
288285 path : ./dist/
289286 check-install-from-sdist :
290287 needs : sdist
@@ -294,9 +291,9 @@ jobs:
294291 with :
295292 python-version : ' 3.10'
296293 - name : Download wheels built
297- uses : actions/download-artifact@v3
294+ uses : actions/download-artifact@v4
298295 with :
299- name : wheel-${{ github.run_id }}-${{ github.sha }}
296+ name : wheel-${{ github.run_id }}-${{ github.sha }}-sdist
300297 path : ./dist/
301298 - run : pip install ./dist/pythonmonkey-*.tar.gz
302299 publish :
@@ -310,9 +307,10 @@ jobs:
310307 python-version : ' 3.9'
311308 - run : pip install twine
312309 - name : Download wheels built
313- uses : actions/download-artifact@v3
310+ uses : actions/download-artifact@v4
314311 with :
315- name : wheel-${{ github.run_id }}-${{ github.sha }}
312+ pattern : wheel-${{ github.run_id }}-${{ github.sha }}-*
313+ merge-multiple : true
316314 path : ./dist/
317315 - run : ls -lah ./dist/
318316 - name : Publish package
@@ -335,12 +333,13 @@ jobs:
335333 steps :
336334 # don't checkout
337335 - name : Download wheels built
338- uses : actions/download-artifact@v3
336+ uses : actions/download-artifact@v4
339337 with :
340- name : wheel-${{ github.run_id }}-${{ github.sha }}
338+ pattern : wheel-${{ github.run_id }}-${{ github.sha }}-*
339+ merge-multiple : true
341340 path : ./dist/
342341 - name : Download docs html generated by Doxygen
343- uses : actions/download-artifact@v3
342+ uses : actions/download-artifact@v4
344343 with :
345344 name : docs-${{ github.run_id }}-${{ github.sha }}
346345 path : ./docs/
@@ -374,12 +373,12 @@ jobs:
374373 html+="<li><a href="pminit/">pminit</a></li>"
375374 html+="</body></html>"
376375 echo "$html" > ./index.html
377- - uses : actions/upload-pages-artifact@v1
376+ - uses : actions/upload-pages-artifact@v3
378377 with :
379378 path : ./
380379 - name : Deploy to GitHub Pages
381380 id : deployment
382- uses : actions/deploy-pages@v2
381+ uses : actions/deploy-pages@v4
383382 publish-archive :
384383 # Publish to ⊇istributive's archive server (https://archive.distributed.computer/releases/pythonmonkey/)
385384 needs : [build-and-test, sdist]
@@ -391,12 +390,13 @@ jobs:
391390 steps :
392391 # no need to checkout
393392 - name : Download wheels built
394- uses : actions/download-artifact@v3
393+ uses : actions/download-artifact@v4
395394 with :
396- name : wheel-${{ github.run_id }}-${{ github.sha }}
395+ pattern : wheel-${{ github.run_id }}-${{ github.sha }}-*
396+ merge-multiple : true
397397 path : ./
398398 - name : Download docs html generated by Doxygen
399- uses : actions/download-artifact@v3
399+ uses : actions/download-artifact@v4
400400 with :
401401 name : docs-${{ github.run_id }}-${{ github.sha }}
402402 path : ./docs/
0 commit comments