diff --git a/.github/workflows/test-and-publish.yaml b/.github/workflows/test-and-publish.yaml index b938ba76..77c15ffd 100644 --- a/.github/workflows/test-and-publish.yaml +++ b/.github/workflows/test-and-publish.yaml @@ -17,7 +17,7 @@ on: - '' - 'ubuntu-22.04' - 'macos-15-intel' - - 'macos-14' + - 'macos-15' - 'windows-2022' debug_enabled_python: type: choice @@ -67,9 +67,8 @@ jobs: strategy: fail-fast: false matrix: - # Use Ubuntu 22.04 / macOS 15 x86_64 / macOS 14 arm64 + Python 3.10 to build SpiderMonkey - os: [ 'ubuntu-22.04', 'macos-15-intel', 'macos-14', 'ubuntu-22.04-arm' ] # macOS 14 runner exclusively runs on M1 hardwares - # see https://github.blog/changelog/2024-01-30-github-actions-macos-14-sonoma-is-now-available + # Use Ubuntu 22.04 / macOS 15 x86_64 / macOS 15 arm64 + Python 3.10 to build SpiderMonkey + os: [ 'ubuntu-22.04', 'macos-15-intel', 'macos-15', 'ubuntu-22.04-arm' ] python_version: [ '3.10' ] runs-on: ${{ matrix.os }} container: ${{ (startsWith(matrix.os, 'ubuntu') && 'ubuntu:20.04') || null }} # Use the Ubuntu 20.04 container inside Ubuntu 22.04 runner to build @@ -125,7 +124,7 @@ jobs: with: python-version: ${{ matrix.python_version }} - name: Setup XCode - if: ${{ matrix.os == 'macos-15-intel' && steps.cache-spidermonkey.outputs.cache-hit != 'true' }} + if: ${{ (matrix.os == 'macos-15-intel' || matrix.os == 'macos-15') && steps.cache-spidermonkey.outputs.cache-hit != 'true' }} # Xcode 16.x removed the old linker behaviour (-ld64 or -ld_classic) that SpiderMonkey relies on, so we need to switch to an older version run: sudo xcode-select -switch /Applications/Xcode_16.0.app - name: Build spidermonkey @@ -181,7 +180,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ 'ubuntu-22.04', 'macos-15-intel', 'macos-14', 'windows-2022', 'ubuntu-22.04-arm' ] + os: [ 'ubuntu-22.04', 'macos-15-intel', 'macos-15', 'windows-2022', 'ubuntu-22.04-arm' ] python_version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', '3.14' ] runs-on: ${{ matrix.os }} container: ${{ (startsWith(matrix.os, 'ubuntu') && 'ubuntu:20.04') || null }} @@ -289,7 +288,7 @@ jobs: BUILD_TYPE=${WORKFLOW_BUILD_TYPE:-"Debug"} poetry build --format=wheel ls -lah ./dist/ - name: Make the wheels we build also support lower versions of macOS - if: ${{ matrix.os == 'macos-15-intel' || matrix.os == 'macos-14' }} + if: ${{ matrix.os == 'macos-15-intel' || matrix.os == 'macos-15' }} # Change the platform tag part of the wheel filename to `macosx_11_0_xxx` (means to support macOS 11.0 and above) # See https://packaging.python.org/en/latest/specifications/binary-distribution-format/#file-format # A wheel package file will only be selected by pip to install if the platform tag satisfies, regardless of whether the binary compatibility actually is.