From 42775240eb3aea6f1bdd0fafb96ada7e0012d593 Mon Sep 17 00:00:00 2001 From: ericsalo Date: Tue, 9 Dec 2025 22:20:34 +0000 Subject: [PATCH 1/4] protobuf: update php from macos-13 to macos-15-intel --- .github/BUILD.bazel | 17 +++++++++++++++++ .github/workflows/test_php.yml | 8 +++++--- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/.github/BUILD.bazel b/.github/BUILD.bazel index 7ce6f2c2b8052..a6cfb7f523481 100644 --- a/.github/BUILD.bazel +++ b/.github/BUILD.bazel @@ -4,6 +4,16 @@ # When updating, also ensure the "xcode_destination" entries in # `.github/workflows/test_objectivec.yml` are supported for the given versions # of Xcode. +xcode_version( + name = "version16_0", + version = "16.0", + aliases = ["160", "16.0"], + default_ios_sdk_version = "17.2", + default_tvos_sdk_version = "17.2", + default_macos_sdk_version = "14.2", + default_watchos_sdk_version = "10.2", +) + xcode_version( name = "version15_2_15C500b", aliases = [ @@ -52,3 +62,10 @@ xcode_config( ":version14_1_0_14B47b", ], ) + +# https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md +xcode_config( + name = "host_xcode_16_macos_15", + versions = [":version16_0"], + default = ":version16_0", +) diff --git a/.github/workflows/test_php.yml b/.github/workflows/test_php.yml index e6480e09be754..28c4dac02c365 100644 --- a/.github/workflows/test_php.yml +++ b/.github/workflows/test_php.yml @@ -185,7 +185,7 @@ jobs: name: ${{ matrix.continuous-only && inputs.continuous-prefix || '' }} MacOS PHP ${{ matrix.version }} # noop - runs-on: macos-13 + runs-on: macos-15-intel steps: - name: Checkout pending changes if: ${{ !matrix.continuous-only || inputs.continuous-run }} @@ -215,6 +215,8 @@ jobs: uses: protocolbuffers/protobuf-ci/bash@v4 with: credentials: ${{ secrets.GAR_SERVICE_ACCOUNT }} + # TODO(b/467211650) this shouldn't be necessary, remove it + bazel-flags: --xcode_version_config=//.github:host_xcode_16_macos_15 command: | pushd php php -v @@ -228,5 +230,5 @@ jobs: uses: protocolbuffers/protobuf-ci/bazel@v4 with: credentials: ${{ secrets.GAR_SERVICE_ACCOUNT }} - bazel-cache: php_macos/${{ matrix.version }} - bazel: test //php:conformance_test_c --action_env=PATH --test_env=PATH + bazel-cache: php_macos15/${{ matrix.version }} + bazel: test //php:conformance_test_c --action_env=PATH --test_env=PATH --xcode_version_config=//.github:host_xcode_16_macos_15 From aff53ed3d46a2567454d4e1716a274e548084b65 Mon Sep 17 00:00:00 2001 From: ericsalo Date: Tue, 9 Dec 2025 23:00:53 +0000 Subject: [PATCH 2/4] protobuf: update php from macos-13 to macos-15-intel --- .github/BUILD.bazel | 4 ++-- .github/workflows/test_php.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/BUILD.bazel b/.github/BUILD.bazel index a6cfb7f523481..79cee9a541919 100644 --- a/.github/BUILD.bazel +++ b/.github/BUILD.bazel @@ -10,7 +10,7 @@ xcode_version( aliases = ["160", "16.0"], default_ios_sdk_version = "17.2", default_tvos_sdk_version = "17.2", - default_macos_sdk_version = "14.2", + default_macos_sdk_version = "15.0", default_watchos_sdk_version = "10.2", ) @@ -65,7 +65,7 @@ xcode_config( # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md xcode_config( - name = "host_xcode_16_macos_15", + name = "host_xcodes_macos15", versions = [":version16_0"], default = ":version16_0", ) diff --git a/.github/workflows/test_php.yml b/.github/workflows/test_php.yml index 28c4dac02c365..ad868b2eb94b2 100644 --- a/.github/workflows/test_php.yml +++ b/.github/workflows/test_php.yml @@ -216,7 +216,7 @@ jobs: with: credentials: ${{ secrets.GAR_SERVICE_ACCOUNT }} # TODO(b/467211650) this shouldn't be necessary, remove it - bazel-flags: --xcode_version_config=//.github:host_xcode_16_macos_15 + bazel-flags: --xcode_version_config=//.github:host_xcodes_macos15 command: | pushd php php -v @@ -231,4 +231,4 @@ jobs: with: credentials: ${{ secrets.GAR_SERVICE_ACCOUNT }} bazel-cache: php_macos15/${{ matrix.version }} - bazel: test //php:conformance_test_c --action_env=PATH --test_env=PATH --xcode_version_config=//.github:host_xcode_16_macos_15 + bazel: test //php:conformance_test_c --action_env=PATH --test_env=PATH --xcode_version_config=//.github:host_xcodes_macos15 From 7f8cb8678d813083fdfb51abcf356794f10c3799 Mon Sep 17 00:00:00 2001 From: ericsalo Date: Tue, 9 Dec 2025 23:35:51 +0000 Subject: [PATCH 3/4] update tests from macos-13 to macos-14 --- .github/BUILD.bazel | 4 ++-- .github/workflows/test_cpp.yml | 14 +++++++------- .github/workflows/test_objectivec.yml | 13 +++++++------ .github/workflows/test_python.yml | 2 +- .github/workflows/test_ruby.yml | 2 +- .github/workflows/test_upb.yml | 10 +++++----- 6 files changed, 23 insertions(+), 22 deletions(-) diff --git a/.github/BUILD.bazel b/.github/BUILD.bazel index 79cee9a541919..306137c750266 100644 --- a/.github/BUILD.bazel +++ b/.github/BUILD.bazel @@ -1,5 +1,5 @@ # This information is extracted from the MacOS runner specs located at: -# https://github.com/actions/runner-images/blob/main/images/macos/macos-13-Readme.md +# https://github.com/actions/runner-images/blob/main/images/macos/macos-14-arm64-Readme.md # # When updating, also ensure the "xcode_destination" entries in # `.github/workflows/test_objectivec.yml` are supported for the given versions @@ -55,7 +55,7 @@ xcode_version( xcode_config( name = "host_xcodes", - default = ":version14_2_14C18", + default = ":version15_2_15C500b", versions = [ ":version15_2_15C500b", ":version14_2_14C18", diff --git a/.github/workflows/test_cpp.yml b/.github/workflows/test_cpp.yml index 4a39437028041..165a0a9079af1 100644 --- a/.github/workflows/test_cpp.yml +++ b/.github/workflows/test_cpp.yml @@ -356,18 +356,18 @@ jobs: matrix: include: - name: MacOS Bazel - os: macos-13 - cache_key: macos-13 + os: macos-14 + cache_key: macos-14 bazel: test //src/... //third_party/utf8_range/... //conformance:conformance_framework_tests - name: MacOS Bazel 7 - os: macos-13 - cache_key: macos-13-bazel7 + os: macos-14 + cache_key: macos-14-bazel7 bazel: test //src/... //third_party/utf8_range/... //conformance:conformance_framework_tests bazel_version: '7.1.2' continuous-only: true - name: MacOS Apple Silicon (build only) Bazel - os: macos-13 - cache_key: macos-13-arm + os: macos-14 + cache_key: macos-14-arm # Current github runners are all Intel based, so just build/compile # for Apple Silicon to detect issues there. bazel: build --cpu=darwin_arm64 //src/... //third_party/utf8_range/... //conformance:conformance_framework_tests @@ -404,7 +404,7 @@ jobs: matrix: include: - name: MacOS CMake - os: macos-13 + os: macos-14 flags: -DCMAKE_CXX_STANDARD=14 cache-prefix: macos-cmake continuous-only: true diff --git a/.github/workflows/test_objectivec.yml b/.github/workflows/test_objectivec.yml index da7f22ea830a5..85aae563f8c3d 100644 --- a/.github/workflows/test_objectivec.yml +++ b/.github/workflows/test_objectivec.yml @@ -36,7 +36,7 @@ jobs: destination: "platform=macOS" xc_project: "ProtocolBuffers_OSX.xcodeproj" - platform: "iOS" - destination: "platform=iOS Simulator,name=iPhone 14,OS=latest" + destination: "platform=iOS Simulator,name=iPhone 15,OS=latest" xc_project: "ProtocolBuffers_iOS.xcodeproj" # We run presubmits on all "Debug" entries, but not on "Release" entries - xc_config: "Debug" @@ -44,9 +44,9 @@ jobs: continuous-only: true name: ${{ matrix.continuous-only && inputs.continuous-prefix || '' }} Xcode ${{ matrix.platform}} ${{ matrix.xc_config }} - runs-on: macos-13 + runs-on: macos-14 env: - DEVELOPER_DIR: /Applications/Xcode_14.1.app/Contents/Developer + DEVELOPER_DIR: /Applications/Xcode_15.2.app/Contents/Developer steps: - name: Checkout pending changes if: ${{ !matrix.continuous-only || inputs.continuous-run }} @@ -67,6 +67,7 @@ jobs: env: CC: ${{ github.workspace }}/ci/clang_wrapper CXX: ${{ github.workspace }}/ci/clang_wrapper++ + CODE_SIGN_IDENTITY: "-" with: credentials: ${{ secrets.GAR_SERVICE_ACCOUNT }} command: | @@ -90,8 +91,8 @@ jobs: PLATFORM: ["ios", "macos", "tvos", "watchos"] CONFIGURATION: ["Debug", "Release"] include: - - OS: macos-13 - XCODE: "14.1" + - OS: macos-14 + XCODE: "15.2" # We run presubmits on all "Debug" entries, but not on "Release" entries - CONFIGURATION: "Debug" - CONFIGURATION: "Release" @@ -147,7 +148,7 @@ jobs: - platform: "macOS" bazel_targets: //objectivec/... name: ${{ matrix.config.continuous-only && inputs.continuous-prefix || '' }} Bazel ${{ matrix.platform }} ${{ matrix.config.name }} - runs-on: macos-13 + runs-on: macos-14 steps: - name: Checkout pending changes if: ${{ !matrix.config.continuous-only || inputs.continuous-run }} diff --git a/.github/workflows/test_python.yml b/.github/workflows/test_python.yml index 1e48e14b33f2b..8323667ed880e 100644 --- a/.github/workflows/test_python.yml +++ b/.github/workflows/test_python.yml @@ -83,7 +83,7 @@ jobs: flags: --define=use_fast_cpp_protos=true name: MacOS ${{ matrix.type }} ${{ matrix.version }} - runs-on: macos-13 + runs-on: macos-14 steps: - name: Checkout pending changes uses: protocolbuffers/protobuf-ci/checkout@v4 diff --git a/.github/workflows/test_ruby.yml b/.github/workflows/test_ruby.yml index 4014b6a15caa3..58f1539d3db57 100644 --- a/.github/workflows/test_ruby.yml +++ b/.github/workflows/test_ruby.yml @@ -142,7 +142,7 @@ jobs: - { version: "3.3", ffi: FFI } name: ${{ matrix.continuous-only && inputs.continuous-prefix || '' }} MacOS Ruby ${{ matrix.version }}${{ matrix.ffi == 'FFI' && ' FFI' || '' }} - runs-on: macos-13 + runs-on: macos-14 steps: - name: Checkout pending changes if: ${{ !matrix.continuous-only || inputs.continuous-run }} diff --git a/.github/workflows/test_upb.yml b/.github/workflows/test_upb.yml index 4439d3f73c5c0..4f08960d34433 100644 --- a/.github/workflows/test_upb.yml +++ b/.github/workflows/test_upb.yml @@ -108,7 +108,7 @@ jobs: - { name: "macOS", bazel-command: "test" } - { name: "macOS ARM (build only)", bazel-command: "build", flags: "--cpu=darwin_arm64" } name: ${{ matrix.config.name }} - runs-on: macos-13 + runs-on: macos-14 steps: - name: Checkout pending changes uses: protocolbuffers/protobuf-ci/checkout@v4 @@ -187,13 +187,13 @@ jobs: # supported Python versions and assume this gives us sufficient test # coverage. - { os: ubuntu-latest, python-version: "3.8", architecture: x64, type: 'binary' } - - { os: macos-13, python-version: "3.8", architecture: x64, type: 'binary' } + - { os: macos-14, python-version: "3.8", architecture: arm64, type: 'binary' } - { os: ubuntu-latest, python-version: "3.12", architecture: x64, type: 'binary' } - - { os: macos-13, python-version: "3.12", architecture: x64, type: 'binary' } + - { os: macos-14, python-version: "3.12", architecture: arm64, type: 'binary' } - { os: ubuntu-latest, python-version: "3.8", architecture: x64, type: 'source', continuous-only: true } - - { os: macos-13, python-version: "3.8", architecture: x64, type: 'source', continuous-only: true } + - { os: macos-14, python-version: "3.8", architecture: arm64, type: 'source', continuous-only: true } - { os: ubuntu-latest, python-version: "3.12", architecture: x64, type: 'source', continuous-only: true } - - { os: macos-13, python-version: "3.12", architecture: x64, type: 'source', continuous-only: true } + - { os: macos-14, python-version: "3.12", architecture: arm64, type: 'source', continuous-only: true } # Windows uses the full API up until Python 3.10. - { os: windows-2022, python-version: "3.8", architecture: x86, type: 'binary', continuous-only: true } From d18bc9efc34573a62622c264b5e243a1b1921f28 Mon Sep 17 00:00:00 2001 From: ericsalo Date: Wed, 10 Dec 2025 00:04:06 +0000 Subject: [PATCH 4/4] update tests from macos-13 to macos-14 --- .github/workflows/test_ruby.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_ruby.yml b/.github/workflows/test_ruby.yml index 58f1539d3db57..b5c0b5cbaecc2 100644 --- a/.github/workflows/test_ruby.yml +++ b/.github/workflows/test_ruby.yml @@ -152,7 +152,7 @@ jobs: - name: Pin Ruby version if: ${{ !matrix.continuous-only || inputs.continuous-run }} - uses: ruby/setup-ruby@961f85197f92e4842e3cb92a4f97bd8e010cdbaf # v1.165.0 + uses: ruby/setup-ruby@4a9ddd6f338a97768b8006bf671dfbad383215f4 # v1.207.0 with: ruby-version: ${{ matrix.version }}