diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 85c083b61..b91e82198 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -13,7 +13,7 @@ on: env: CCACHE_DIR: ${{ github.workspace }}/ccache_dir GITHUB_TOKEN: ${{ github.token }} - xcodeVersion: "16.2" # Only affects Mac runners, and only for prerequisites. + xcodeVersion: "16.4" # Only affects Mac runners, and only for prerequisites. concurrency: group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }} @@ -57,7 +57,7 @@ jobs: - os: ubuntu-22.04 architecture: arm64 # Do not attempt to use x64 on Mac. - - os: macos-14 + - os: macos-15 architecture: x64 steps: - uses: lukka/get-cmake@latest diff --git a/.github/workflows/cpp-packaging.yml b/.github/workflows/cpp-packaging.yml index 585e8f591..ea53463b9 100644 --- a/.github/workflows/cpp-packaging.yml +++ b/.github/workflows/cpp-packaging.yml @@ -32,9 +32,9 @@ env: demumbleVer: "df938e45c2b0e064fb5323d88b692d03b451d271" # Use SHA256 for hashing files. hashCommand: "sha256sum" - # Xcode version 16.2 is the version we build the SDK with. + # Xcode version 16.4 is the version we build the SDK with. # Our MacOS runners will use the version in /Applications/Xcode_${xcodeVersion}.app - xcodeVersion: "16.2" + xcodeVersion: "16.4" # LLVM version with ARM MachO support has no version number yet. llvmVer: "5f187f0afaad33013ba03454c4749d99b1362534" GITHUB_TOKEN: ${{ github.token }} @@ -79,13 +79,13 @@ jobs: if: ${{ github.event.inputs.downloadPublicVersion == '' && github.event.inputs.downloadPreviousRun == '' }} strategy: matrix: - os: [ubuntu-22.04, macos-14] + os: [ubuntu-22.04, macos-15] include: - os: ubuntu-22.04 tools_platform: linux # Binutils 2.35.1 released Sep 19, 2020 binutils_version: "2.35.1" - - os: macos-14 + - os: macos-15 tools_platform: darwin # Binutils 2.35.1 released Sep 19, 2020 binutils_version: "2.35.1" @@ -188,7 +188,7 @@ jobs: build_and_package_ios_tvos: name: build-and-package-ios-tvos - runs-on: macos-14 + runs-on: macos-15 if: ${{ github.event.inputs.downloadPublicVersion == '' && github.event.inputs.downloadPreviousRun == '' }} steps: - uses: lukka/get-cmake@latest @@ -317,7 +317,7 @@ jobs: strategy: fail-fast: false matrix: - os: [windows-latest, ubuntu-22.04, macos-14] + os: [windows-latest, ubuntu-22.04, macos-15] build_type: ["Release", "Debug"] architecture: ["x64", "x86", "arm64"] msvc_runtime: ["static", "dynamic"] @@ -335,7 +335,7 @@ jobs: vcpkg_triplet_suffix: "linux" additional_build_flags: "" sdk_platform: "linux" - - os: macos-14 + - os: macos-15 vcpkg_triplet_suffix: "osx" additional_build_flags: "--target_format libraries" sdk_platform: "darwin" @@ -343,13 +343,13 @@ jobs: exclude: - os: windows-latest linux_abi: "c++11" - - os: macos-14 + - os: macos-15 architecture: "x86" - - os: macos-14 + - os: macos-15 msvc_runtime: "dynamic" - - os: macos-14 + - os: macos-15 linux_abi: "c++11" - - os: macos-14 + - os: macos-15 build_type: "Debug" - os: ubuntu-22.04 msvc_runtime: "dynamic" @@ -504,7 +504,7 @@ jobs: suffix: '-x64-Debug-dynamic' runs_on_platform: ubuntu-22.04 - sdk_platform: darwin - runs_on_platform: macos-14 + runs_on_platform: macos-15 exclude: - sdk_platform: windows suffix: '' diff --git a/.github/workflows/desktop.yml b/.github/workflows/desktop.yml index 5aad61c38..9d532ff34 100644 --- a/.github/workflows/desktop.yml +++ b/.github/workflows/desktop.yml @@ -72,12 +72,12 @@ jobs: # msvc_runtime excludes - os: ubuntu-22.04 msvc_runtime: "dynamic" - - os: macos-14 + - os: macos-15 msvc_runtime: "dynamic" # architecture excluees - - os: macos-14 + - os: macos-15 architecture: "x86" - - os: macos-14 + - os: macos-15 architecture: "x64" # Xcode excludes -- allow only one on osx and linux - os: ubuntu-22.04 diff --git a/.github/workflows/integration_tests.yml b/.github/workflows/integration_tests.yml index 81db849f9..d034d008a 100644 --- a/.github/workflows/integration_tests.yml +++ b/.github/workflows/integration_tests.yml @@ -21,7 +21,7 @@ on: required: true operating_systems: description: 'CSV of VMs to run on' - default: 'ubuntu-22.04,windows-latest,macos-14' + default: 'ubuntu-22.04,windows-latest,macos-15' required: true desktop_ssl_variants: description: 'CSV of desktop SSL variants to use' @@ -49,7 +49,7 @@ env: triggerLabelFull: "tests-requested: full" triggerLabelQuick: "tests-requested: quick" pythonVersion: '3.8' - xcodeVersion: '16.2' + xcodeVersion: '16.4' logArtifactRetentionDays: 90 binaryArtifactRetentionDays: 7 GITHUB_TOKEN: ${{ github.token }} @@ -200,7 +200,7 @@ jobs: # at 3am PST/4am PDT. Running firestore desktop integration test aginst tip-of-tree ios repo echo "::warning ::Running against Firestore tip-of-tree" matrix_platform="Desktop" - matrix_os=$( python scripts/gha/print_matrix_configuration.py -w integration_tests ${TEST_MATRIX_PARAM} -k os -o "ubuntu-22.04,macos-14") + matrix_os=$( python scripts/gha/print_matrix_configuration.py -w integration_tests ${TEST_MATRIX_PARAM} -k os -o "ubuntu-22.04,macos-15") else matrix_platform=$( python scripts/gha/print_matrix_configuration.py -w integration_tests ${TEST_MATRIX_PARAM} -k platform -o "${{github.event.inputs.platforms}}" --apis ${apis} ) matrix_os=$( python scripts/gha/print_matrix_configuration.py -w integration_tests ${TEST_MATRIX_PARAM} -k os -o "${{github.event.inputs.operating_systems}}") @@ -267,7 +267,7 @@ jobs: - os: ubuntu-22.04 arch: arm64 # Do not attempt to use x86 on Mac. - - os: macos-14 + - os: macos-15 arch: x86 # Until we support building openssl from source, we can't use the # system's openssl when cross-compiling, except on Linux. Builds on Linux @@ -276,7 +276,7 @@ jobs: - os: windows-latest ssl_variant: openssl arch: x86 - - os: macos-14 + - os: macos-15 ssl_variant: openssl arch: x64 steps: @@ -538,7 +538,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-14] + os: [macos-15] steps: - uses: lukka/get-cmake@latest with: @@ -646,7 +646,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-14] + os: [macos-15] steps: - uses: lukka/get-cmake@latest with: @@ -766,7 +766,7 @@ jobs: - os: ubuntu-22.04 arch: arm64 # Do not attempt to use x86 on Mac. - - os: macos-14 + - os: macos-15 arch: x86 # Until we support building openssl from source, we can't use the # system's openssl when cross-compiling, except on Linux. Builds on Linux @@ -775,7 +775,7 @@ jobs: - os: windows-latest ssl_variant: openssl arch: x86 - - os: macos-14 + - os: macos-15 ssl_variant: openssl arch: x64 steps: @@ -1007,7 +1007,7 @@ jobs: test_ios: name: test-ios-${{ matrix.build_os }}-${{ matrix.ios_device }}-${{ matrix.test_type }} needs: [check_and_prepare, build_ios] - runs-on: macos-14 + runs-on: macos-15 if: contains(needs.check_and_prepare.outputs.matrix_platform, 'iOS') && needs.check_and_prepare.outputs.apis != '' && !cancelled() strategy: fail-fast: false @@ -1021,7 +1021,7 @@ jobs: test_type: "uitest" - ios_device: "ios_latest" test_type: "uitest" - build_os: [macos-14] + build_os: [macos-15] steps: - uses: actions/checkout@v3 with: @@ -1186,13 +1186,13 @@ jobs: test_tvos: name: test-tvos-${{ matrix.build_os }}-${{ matrix.tvos_device }} needs: [check_and_prepare, build_tvos] - runs-on: macos-14 + runs-on: macos-15 if: contains(needs.check_and_prepare.outputs.matrix_platform, 'tvOS') && needs.check_and_prepare.outputs.apis != '' && !cancelled() strategy: fail-fast: false matrix: tvos_device: ${{ fromJson(needs.check_and_prepare.outputs.tvos_device) }} - build_os: [macos-14] + build_os: [macos-15] steps: - uses: actions/checkout@v3 with: diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml index 7dabccfe1..de8b4d9f9 100644 --- a/.github/workflows/ios.yml +++ b/.github/workflows/ios.yml @@ -41,7 +41,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ 'macos-14' ] + os: [ 'macos-15' ] xcode_version: ${{ fromJson(needs.prepare_matrix.outputs.matrix_xcode_version) }} steps: - uses: lukka/get-cmake@latest diff --git a/.github/workflows/update-dependencies.yml b/.github/workflows/update-dependencies.yml index ab4f2817c..b6b7e6e9c 100644 --- a/.github/workflows/update-dependencies.yml +++ b/.github/workflows/update-dependencies.yml @@ -27,7 +27,7 @@ env: jobs: update_dependencies: name: update-deps - runs-on: macos-14 + runs-on: macos-15 steps: - name: Get token for firebase-workflow-trigger uses: tibdex/github-app-token@v1 diff --git a/cmake/external/firestore.cmake b/cmake/external/firestore.cmake index 855b0b25f..aab233d1a 100644 --- a/cmake/external/firestore.cmake +++ b/cmake/external/firestore.cmake @@ -21,7 +21,7 @@ endif() # If the format of the line below changes, then be sure to update # https://github.com/firebase/firebase-cpp-sdk/blob/fd054fa016/.github/workflows/update-dependencies.yml#L81 #set(version CocoaPods-11.8.1) -set(version CocoaPods-12.2.0) +set(version CocoaPods-12.4.0) function(GetReleasedDep) message("Getting released firebase-ios-sdk @ ${version}") diff --git a/cmake/external/zlib.cmake b/cmake/external/zlib.cmake index 595d14987..08111cae0 100644 --- a/cmake/external/zlib.cmake +++ b/cmake/external/zlib.cmake @@ -22,9 +22,8 @@ ExternalProject_Add( zlib DOWNLOAD_DIR ${FIREBASE_DOWNLOAD_DIR} - DOWNLOAD_NAME zlib-v1.2.11.tar.gz - URL https://github.com/madler/zlib/archive/v1.2.11.tar.gz - URL_HASH SHA256=629380c90a77b964d896ed37163f5c3a34f6e6d897311f1df2a7016355c45eff + DOWNLOAD_NAME zlib-v1.3.1.tar.gz + URL https://github.com/madler/zlib/archive/v1.3.1.tar.gz PREFIX ${PROJECT_BINARY_DIR} diff --git a/release_build_files/readme.md b/release_build_files/readme.md index 2f051dfcc..009789e70 100644 --- a/release_build_files/readme.md +++ b/release_build_files/readme.md @@ -408,7 +408,7 @@ Firebase Cloud Messaging (stub) | firebase_messaging.framework User Messaging Platform (stub) | libfirebase_ump.a | | libfirebase_app.a -The provided libraries have been tested using Xcode 16.2. When building C++ +The provided libraries have been tested using Xcode 16.4. When building C++ desktop apps on OS X, you will need to link the `gssapi_krb5` and `pthread` system libraries, as well as the `CoreFoundation`, `Foundation`, `GSS`, and `Security` OS X system frameworks (consult your compiler documentation for more diff --git a/scripts/gha/print_matrix_configuration.py b/scripts/gha/print_matrix_configuration.py index ca665c326..389730a85 100644 --- a/scripts/gha/print_matrix_configuration.py +++ b/scripts/gha/print_matrix_configuration.py @@ -73,35 +73,35 @@ PARAMETERS = { "desktop": { "matrix": { - "os": ["ubuntu-22.04", "macos-14"], + "os": ["ubuntu-22.04", "macos-15"], "build_type": ["Release", "Debug"], "architecture": ["x64", "x86", "arm64"], "msvc_runtime": ["static","dynamic"], - "xcode_version": ["16.2"], + "xcode_version": ["16.4"], "python_version": ["3.8"], EXPANDED_KEY: { - "os": ["ubuntu-22.04", "macos-14", "windows-latest"], - "xcode_version": ["16.2"], + "os": ["ubuntu-22.04", "macos-15", "windows-latest"], + "xcode_version": ["16.4"], } } }, "android": { "matrix": { - "os": ["ubuntu-22.04", "macos-14", "windows-latest"], + "os": ["ubuntu-22.04", "macos-15", "windows-latest"], "architecture": ["x64", "arm64"], "python_version": ["3.8"], EXPANDED_KEY: { - "os": ["ubuntu-22.04", "macos-14", "windows-latest"] + "os": ["ubuntu-22.04", "macos-15", "windows-latest"] } } }, "integration_tests": { "matrix": { - "os": ["ubuntu-22.04", "macos-14", "windows-latest"], + "os": ["ubuntu-22.04", "macos-15", "windows-latest"], "platform": ["Desktop", "Android", "iOS", "tvOS"], "ssl_lib": ["openssl"], "android_device": ["android_target", "emulator_ftl_target"], @@ -113,7 +113,7 @@ "msvc_runtime": ["dynamic"], "cpp_compiler_windows": ["VisualStudio2019"], "cpp_compiler_linux": ["clang-11.0"], - "xcode_version": ["16.2"], # only the first one is used + "xcode_version": ["16.4"], # only the first one is used "ndk_version": ["r22b"], "platform_version": ["28"], "build_tools_version": ["28.0.3"], @@ -141,10 +141,10 @@ "ios": { "matrix": { - "xcode_version": ["16.2"], + "xcode_version": ["16.4"], EXPANDED_KEY: { - "xcode_version": ["16.2"] + "xcode_version": ["16.4"] } } },