diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index fb1eed5a61..58663bf2e6 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: "26.2" # Only affects Mac runners, and only for prerequisites. + xcodeVersion: "26.4" # Only affects Mac runners, and only for prerequisites. permissions: contents: read @@ -61,7 +61,7 @@ jobs: - os: ubuntu-22.04 architecture: arm64 # Do not attempt to use x64 on Mac. - - os: macos-15 + - os: macos-26 architecture: x64 steps: - uses: lukka/get-cmake@591817e96fcad43505fb4eae36172462abb3a42e # ratchet:lukka/get-cmake@latest @@ -123,26 +123,26 @@ jobs: id: cache_ndk uses: actions/cache@6f8efc29b200d32929f49075959781ed54ec270c # ratchet:actions/cache@v3 with: - path: /tmp/android-ndk-r21e - key: android-ndk-${{ matrix.os }}-r21e + path: /tmp/android-ndk-r23b + key: android-ndk-${{ matrix.os }}-r23b - name: Check cached NDK shell: bash if: steps.cache_ndk.outputs.cache-hit != 'true' run: | # If the NDK failed to download from the cache, but there is a - # /tmp/android-ndk-r21e directory, it's incomplete, so remove it. - if [[ -d "/tmp/android-ndk-r21e" ]]; then + # /tmp/android-ndk-r23b directory, it's incomplete, so remove it. + if [[ -d "/tmp/android-ndk-r23b" ]]; then echo "Removing incomplete download of NDK" - rm -rf /tmp/android-ndk-r21e + rm -rf /tmp/android-ndk-r23b fi - name: Install prerequisites shell: bash run: | build_scripts/android/install_prereqs.sh - echo "NDK_ROOT=/tmp/android-ndk-r21e" >> $GITHUB_ENV - echo "ANDROID_NDK_HOME=/tmp/android-ndk-r21e" >> $GITHUB_ENV + echo "NDK_ROOT=/tmp/android-ndk-r23b" >> $GITHUB_ENV + echo "ANDROID_NDK_HOME=/tmp/android-ndk-r23b" >> $GITHUB_ENV - name: Add strings.exe to PATH (Windows only) if: startsWith(matrix.os, 'windows') diff --git a/.github/workflows/cpp-packaging.yml b/.github/workflows/cpp-packaging.yml index 6ba23cd98b..ece1df8a6b 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 26.2 is the version we build the SDK with. + # Xcode version 26.4 is the version we build the SDK with. # Our MacOS runners will use the version in /Applications/Xcode_${xcodeVersion}.app - xcodeVersion: "26.2" + xcodeVersion: "26.4" # LLVM version with ARM MachO support has no version number yet. llvmVer: "5f187f0afaad33013ba03454c4749d99b1362534" GITHUB_TOKEN: ${{ github.token }} @@ -85,13 +85,13 @@ jobs: if: ${{ github.event.inputs.downloadPublicVersion == '' && github.event.inputs.downloadPreviousRun == '' }} strategy: matrix: - os: [ubuntu-22.04, macos-15] + os: [ubuntu-22.04, macos-26] include: - os: ubuntu-22.04 tools_platform: linux # Binutils 2.35.1 released Sep 19, 2020 binutils_version: "2.35.1" - - os: macos-15 + - os: macos-26 tools_platform: darwin # Binutils 2.35.1 released Sep 19, 2020 binutils_version: "2.35.1" @@ -211,7 +211,7 @@ jobs: build_and_package_ios_tvos: name: build-and-package-ios-tvos - runs-on: macos-15 + runs-on: macos-26 if: ${{ github.event.inputs.downloadPublicVersion == '' && github.event.inputs.downloadPreviousRun == '' }} steps: - uses: lukka/get-cmake@591817e96fcad43505fb4eae36172462abb3a42e # ratchet:lukka/get-cmake@latest @@ -301,8 +301,8 @@ jobs: id: cache_ndk uses: actions/cache@6f8efc29b200d32929f49075959781ed54ec270c # ratchet:actions/cache@v3 with: - path: /tmp/android-ndk-r21e - key: android-ndk-${{ runner.os }}-r21e + path: /tmp/android-ndk-r23b + key: android-ndk-${{ runner.os }}-r23b - name: install prerequisites run: sdk-src/build_scripts/android/install_prereqs.sh @@ -342,7 +342,7 @@ jobs: strategy: fail-fast: false matrix: - os: [windows-2022, ubuntu-22.04, macos-15] + os: [windows-2022, ubuntu-22.04, macos-26] build_type: ["Release", "Debug"] architecture: ["x64", "x86", "arm64"] msvc_runtime: ["static", "dynamic"] @@ -360,7 +360,7 @@ jobs: vcpkg_triplet_suffix: "linux" additional_build_flags: "" sdk_platform: "linux" - - os: macos-15 + - os: macos-26 vcpkg_triplet_suffix: "osx" additional_build_flags: "--target_format libraries" sdk_platform: "darwin" @@ -368,13 +368,13 @@ jobs: exclude: - os: windows-2022 linux_abi: "c++11" - - os: macos-15 + - os: macos-26 architecture: "x86" - - os: macos-15 + - os: macos-26 msvc_runtime: "dynamic" - - os: macos-15 + - os: macos-26 linux_abi: "c++11" - - os: macos-15 + - os: macos-26 build_type: "Debug" - os: ubuntu-22.04 msvc_runtime: "dynamic" @@ -532,7 +532,7 @@ jobs: suffix: '-x64-Debug-dynamic' runs_on_platform: ubuntu-22.04 - sdk_platform: darwin - runs_on_platform: macos-15 + runs_on_platform: macos-26 exclude: - sdk_platform: windows suffix: '' diff --git a/.github/workflows/desktop.yml b/.github/workflows/desktop.yml index e401618145..05f33c28a6 100644 --- a/.github/workflows/desktop.yml +++ b/.github/workflows/desktop.yml @@ -76,12 +76,12 @@ jobs: # msvc_runtime excludes - os: ubuntu-22.04 msvc_runtime: "dynamic" - - os: macos-15 + - os: macos-26 msvc_runtime: "dynamic" # architecture excluees - - os: macos-15 + - os: macos-26 architecture: "x86" - - os: macos-15 + - os: macos-26 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 1ed4bb1b98..c44ff23e4a 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-2022,macos-15' + default: 'ubuntu-22.04,windows-2022,macos-26' required: true desktop_ssl_variants: description: 'CSV of desktop SSL variants to use' @@ -50,7 +50,7 @@ env: triggerLabelFull: "tests-requested: full" triggerLabelQuick: "tests-requested: quick" pythonVersion: '3.9' - xcodeVersion: '26.2' + xcodeVersion: '26.4' logArtifactRetentionDays: 90 binaryArtifactRetentionDays: 7 GITHUB_TOKEN: ${{ github.token }} @@ -219,7 +219,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-15") + matrix_os=$( python scripts/gha/print_matrix_configuration.py -w integration_tests ${TEST_MATRIX_PARAM} -k os -o "ubuntu-22.04,macos-26") 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}") @@ -292,7 +292,7 @@ jobs: - os: ubuntu-22.04 arch: arm64 # Do not attempt to use x86 on Mac. - - os: macos-15 + - os: macos-26 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 @@ -301,7 +301,7 @@ jobs: - os: windows-2022 ssl_variant: openssl arch: x86 - - os: macos-15 + - os: macos-26 ssl_variant: openssl arch: x64 steps: @@ -511,8 +511,8 @@ jobs: id: cache_ndk uses: actions/cache@6f8efc29b200d32929f49075959781ed54ec270c # ratchet:actions/cache@v3 with: - path: /tmp/android-ndk-r21e - key: android-ndk-${{ matrix.os }}-r21e + path: /tmp/android-ndk-r23b + key: android-ndk-${{ matrix.os }}-r23b - name: Setup python uses: actions/setup-python@7f4fc3e22c37d6ff65e88745f38bd3157c663f7c # ratchet:actions/setup-python@v4 with: @@ -622,7 +622,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-15] + os: [macos-26] steps: - uses: lukka/get-cmake@591817e96fcad43505fb4eae36172462abb3a42e # ratchet:lukka/get-cmake@latest with: @@ -745,7 +745,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-15] + os: [macos-26] steps: - uses: lukka/get-cmake@591817e96fcad43505fb4eae36172462abb3a42e # ratchet:lukka/get-cmake@latest with: @@ -878,7 +878,7 @@ jobs: - os: ubuntu-22.04 arch: arm64 # Do not attempt to use x86 on Mac. - - os: macos-15 + - os: macos-26 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 @@ -887,7 +887,7 @@ jobs: - os: windows-2022 ssl_variant: openssl arch: x86 - - os: macos-15 + - os: macos-26 ssl_variant: openssl arch: x64 steps: @@ -1152,7 +1152,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-15 + runs-on: macos-26 permissions: contents: read pull-requests: write @@ -1166,7 +1166,7 @@ jobs: exclude: - ios_device: "ios_target" test_type: "uitest" - build_os: [macos-15] + build_os: [macos-26] steps: - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # ratchet:actions/checkout@v3 with: @@ -1342,7 +1342,7 @@ jobs: test_tvos: name: test-tvos-${{ matrix.build_os }}-${{ matrix.tvos_device }} needs: [check_and_prepare, build_tvos] - runs-on: macos-15 + runs-on: macos-26 permissions: contents: read pull-requests: write @@ -1352,7 +1352,7 @@ jobs: matrix: tvos_device: ${{ fromJson(needs.check_and_prepare.outputs.tvos_device) }} - build_os: [macos-15] + build_os: [macos-26] steps: - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # ratchet:actions/checkout@v3 with: diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml index e6fbcd0cda..f27b79639d 100644 --- a/.github/workflows/ios.yml +++ b/.github/workflows/ios.yml @@ -45,7 +45,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ 'macos-15' ] + os: [ 'macos-26' ] xcode_version: ${{ fromJson(needs.prepare_matrix.outputs.matrix_xcode_version) }} steps: - uses: lukka/get-cmake@591817e96fcad43505fb4eae36172462abb3a42e # ratchet:lukka/get-cmake@latest diff --git a/.github/workflows/update-dependencies.yml b/.github/workflows/update-dependencies.yml index c73f244149..541f4fc240 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-15 + runs-on: macos-26 steps: - name: Get token for firebase-workflow-trigger uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # ratchet:actions/create-github-app-token@v1 diff --git a/Android/firebase_dependencies.gradle b/Android/firebase_dependencies.gradle index b86bb8269b..9bf07029e5 100644 --- a/Android/firebase_dependencies.gradle +++ b/Android/firebase_dependencies.gradle @@ -20,7 +20,7 @@ def firebaseDependenciesMap = [ 'app_check' : ['com.google.firebase:firebase-appcheck', 'com.google.firebase:firebase-appcheck-debug', 'com.google.firebase:firebase-appcheck-playintegrity'], - 'play_services' : ['com.google.android.gms:play-services-base:18.10.1'], + 'play_services' : ['com.google.android.gms:play-services-base:18.11.0'], 'analytics' : ['com.google.firebase:firebase-analytics'], 'auth' : ['com.google.firebase:firebase-auth'], 'database' : ['com.google.firebase:firebase-database'], @@ -148,7 +148,7 @@ project.afterEvaluate { // Add the bill-of-materials project.dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') } for (String lib : firebaseCpp.dependencies.libSet) { // Generate and include the proguard file diff --git a/CMakeLists.txt b/CMakeLists.txt index 7cd1a549a2..04cbc87224 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,7 +16,7 @@ cmake_minimum_required(VERSION 3.22) -set (CMAKE_CXX_STANDARD 14) +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Turn on virtual folders for visual studio diff --git a/analytics/integration_test/CMakeLists.txt b/analytics/integration_test/CMakeLists.txt index 953008a226..56f307342b 100644 --- a/analytics/integration_test/CMakeLists.txt +++ b/analytics/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/analytics/integration_test/integration_test.xcodeproj/project.pbxproj b/analytics/integration_test/integration_test.xcodeproj/project.pbxproj index 8ad1bfcbd7..1cf66dc9c0 100644 --- a/analytics/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/analytics/integration_test/integration_test.xcodeproj/project.pbxproj @@ -336,7 +336,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -379,7 +379,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -482,7 +482,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -536,7 +536,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -588,7 +588,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/app/app_resources/build.gradle b/app/app_resources/build.gradle index 34d40c1551..e4a0589521 100644 --- a/app/app_resources/build.gradle +++ b/app/app_resources/build.gradle @@ -56,7 +56,7 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-analytics' } diff --git a/app/google_api_resources/build.gradle b/app/google_api_resources/build.gradle index 36f89695da..f0bd0ee378 100644 --- a/app/google_api_resources/build.gradle +++ b/app/google_api_resources/build.gradle @@ -59,9 +59,9 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-analytics' - implementation 'com.google.android.gms:play-services-base:18.10.1' + implementation 'com.google.android.gms:play-services-base:18.11.0' implementation project(':app:app_resources') } diff --git a/app/integration_test/CMakeLists.txt b/app/integration_test/CMakeLists.txt index fd0b0f8de5..354c1a0265 100644 --- a/app/integration_test/CMakeLists.txt +++ b/app/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/app/integration_test/integration_test.xcodeproj/project.pbxproj b/app/integration_test/integration_test.xcodeproj/project.pbxproj index 4b0446a3fc..475f04d854 100644 --- a/app/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/app/integration_test/integration_test.xcodeproj/project.pbxproj @@ -220,7 +220,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -263,7 +263,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -367,7 +367,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/app/rest/CMakeLists.txt b/app/rest/CMakeLists.txt index 547e5ced41..2d806ad231 100644 --- a/app/rest/CMakeLists.txt +++ b/app/rest/CMakeLists.txt @@ -15,8 +15,8 @@ # CMake file for the firebase_rest_lib library cmake_minimum_required(VERSION 3.22) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. project(firebase_rest_lib NONE) diff --git a/app_check/app_check_resources/build.gradle b/app_check/app_check_resources/build.gradle index 910822d19b..dc340e509f 100644 --- a/app_check/app_check_resources/build.gradle +++ b/app_check/app_check_resources/build.gradle @@ -55,7 +55,7 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-appcheck' } diff --git a/app_check/integration_test/CMakeLists.txt b/app_check/integration_test/CMakeLists.txt index 55dbb37941..1cb3b774da 100644 --- a/app_check/integration_test/CMakeLists.txt +++ b/app_check/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/app_check/integration_test/integration_test.xcodeproj/project.pbxproj b/app_check/integration_test/integration_test.xcodeproj/project.pbxproj index 87bc70fb76..f87fb16d53 100644 --- a/app_check/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/app_check/integration_test/integration_test.xcodeproj/project.pbxproj @@ -362,7 +362,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -405,7 +405,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -510,7 +510,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -564,7 +564,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -616,7 +616,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/auth/auth_resources/build.gradle b/auth/auth_resources/build.gradle index b389951071..649008c7e1 100644 --- a/auth/auth_resources/build.gradle +++ b/auth/auth_resources/build.gradle @@ -55,7 +55,7 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-analytics' implementation 'com.google.firebase:firebase-auth' implementation project(':app:app_resources') diff --git a/auth/integration_test/CMakeLists.txt b/auth/integration_test/CMakeLists.txt index 164f89ce46..d50c20c2c0 100644 --- a/auth/integration_test/CMakeLists.txt +++ b/auth/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/auth/integration_test/integration_test.xcodeproj/project.pbxproj b/auth/integration_test/integration_test.xcodeproj/project.pbxproj index cd62b569a6..24ba703147 100644 --- a/auth/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/auth/integration_test/integration_test.xcodeproj/project.pbxproj @@ -363,7 +363,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -406,7 +406,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -511,7 +511,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -565,7 +565,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -617,7 +617,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/build_scripts/android/build.sh b/build_scripts/android/build.sh index e2809a6a55..328fc20761 100755 --- a/build_scripts/android/build.sh +++ b/build_scripts/android/build.sh @@ -27,15 +27,15 @@ absbuildpath=$( pwd -P ) cd "${origpath}" # If NDK_ROOT is not set or is the wrong version, use to the version in /tmp. -if [[ -z "${NDK_ROOT}" || -z $(grep "Pkg\.Revision = 21\." "${NDK_ROOT}/source.properties") ]]; then - if [[ ! -d /tmp/android-ndk-r21e ]]; then - echo "Recommended NDK version r21e not present in /tmp." +if [[ -z "${NDK_ROOT}" || -z $(grep "Pkg\.Revision = 23\." "${NDK_ROOT}/source.properties") ]]; then + if [[ ! -d /tmp/android-ndk-r23b ]]; then + echo "Recommended NDK version r23b not present in /tmp." echo "Please run install_prereqs.sh if you wish to use the recommended NDK version." echo "Continuing with default NDK..." sleep 2 fi - export NDK_ROOT=/tmp/android-ndk-r21e - export ANDROID_NDK_HOME=/tmp/android-ndk-r21e + export NDK_ROOT=/tmp/android-ndk-r23b + export ANDROID_NDK_HOME=/tmp/android-ndk-r23b fi cd "${sourcepath}" set +e diff --git a/build_scripts/android/install_prereqs.sh b/build_scripts/android/install_prereqs.sh index 02b16a1b83..fe8a36da19 100755 --- a/build_scripts/android/install_prereqs.sh +++ b/build_scripts/android/install_prereqs.sh @@ -61,13 +61,13 @@ if [[ -z "${ANDROID_HOME}" ]]; then exit 1 fi -if [[ -z "${NDK_ROOT}" || -z $(grep "Pkg\.Revision = 21\." "${NDK_ROOT}/source.properties") ]]; then - if [[ -d /tmp/android-ndk-r21e && \ - -n $(grep "Pkg\.Revision = 21\." "/tmp/android-ndk-r21e/source.properties") ]]; then - echo "Using NDK r21e in /tmp/android-ndk-r21e". +if [[ -z "${NDK_ROOT}" || -z $(grep "Pkg\.Revision = 23\." "${NDK_ROOT}/source.properties") ]]; then + if [[ -d /tmp/android-ndk-r23b && \ + -n $(grep "Pkg\.Revision = 23\." "/tmp/android-ndk-r23b/source.properties") ]]; then + echo "Using NDK r23b in /tmp/android-ndk-r23b". else echo "NDK_ROOT environment variable is not set, or NDK version is incorrect." - echo "This build recommends NDK r21e, downloading..." + echo "This build recommends NDK r23b, downloading..." if [[ -z $(which curl) ]]; then echo "Error, could not run 'curl' to download NDK. Is it in your PATH?" exit 1 @@ -77,14 +77,14 @@ if [[ -z "${NDK_ROOT}" || -z $(grep "Pkg\.Revision = 21\." "${NDK_ROOT}/source.p # Github runners. for retry in {1..10} error; do if [[ $retry == "error" ]]; then exit 5; fi - rm -f /tmp/android-ndk-r21e.zip + rm -f /tmp/android-ndk-r23b.zip curl -f --http1.1 -LSs \ - "https://dl.google.com/android/repository/android-ndk-r21e-${platform}-x86_64.zip" \ - --output /tmp/android-ndk-r21e.zip && break + "https://dl.google.com/android/repository/android-ndk-r23b-${platform}.zip" \ + --output /tmp/android-ndk-r23b.zip && break sleep 30 done set -e - (cd /tmp && unzip -oq android-ndk-r21e.zip && rm -f android-ndk-r21e.zip) - echo "NDK r21e has been downloaded into /tmp/android-ndk-r21e" + (cd /tmp && unzip -oq android-ndk-r23b.zip && rm -f android-ndk-r23b.zip) + echo "NDK r23b has been downloaded into /tmp/android-ndk-r23b" fi fi diff --git a/cmake/external/firestore.cmake b/cmake/external/firestore.cmake index c7b47e0758..835aa9de6b 100644 --- a/cmake/external/firestore.cmake +++ b/cmake/external/firestore.cmake @@ -20,7 +20,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 12.19.0) +set(version 13.0.1) function(GetReleasedDep) message("Getting released firebase-ios-sdk @ ${version}") diff --git a/cmake/external/firestore.patch.txt b/cmake/external/firestore.patch.txt index fb3ce2e2b8..3ecb13cb94 100644 --- a/cmake/external/firestore.patch.txt +++ b/cmake/external/firestore.patch.txt @@ -14,3 +14,118 @@ index 920bf2928..c5c9cc7ee 100644 ExternalProject_Get_property(snappy SOURCE_DIR) set(snappy_source_dir "${SOURCE_DIR}") +diff --git a/Firestore/core/src/util/ordered_code.h b/Firestore/core/src/util/ordered_code.h +--- a/Firestore/core/src/util/ordered_code.h ++++ b/Firestore/core/src/util/ordered_code.h +@@ -39,7 +39,8 @@ + #ifndef FIRESTORE_CORE_SRC_UTIL_ORDERED_CODE_H_ + #define FIRESTORE_CORE_SRC_UTIL_ORDERED_CODE_H_ + ++#include + #include + + #include "absl/strings/string_view.h" + +diff --git a/Firestore/core/src/util/quadruple.cc b/Firestore/core/src/util/quadruple.cc +--- a/Firestore/core/src/util/quadruple.cc ++++ b/Firestore/core/src/util/quadruple.cc +@@ -20,6 +20,7 @@ + #include + #include + ++#include "Firestore/core/src/util/bits.h" + #include "Firestore/core/src/util/quadruple_builder.h" + + namespace firebase { +@@ -89,7 +90,7 @@ Quadruple::Quadruple(int64_t x) { + mantissa_lo_ = 0; + } else { + uint64_t ux = static_cast(x); +- int leading_zeros = __builtin_clzll(ux); ++ int leading_zeros = 63 - Bits::Log2FloorNonZero64(ux); + // Left-justify with the leading 1 dropped. + mantissa_hi_ = ux << (leading_zeros + 1); + mantissa_lo_ = 0; +@@ -225,7 +226,8 @@ Quadruple::operator double() const { + } + default: + int32_t unbiased_exp = static_cast(exponent_ - kExponentBias); +- return scalb((1LL << 52) | (mantissa_hi_ >> 12), -52 + unbiased_exp) * ++ return ldexp(static_cast((1ULL << 52) | (mantissa_hi_ >> 12)), ++ -52 + unbiased_exp) * + (negative_ ? -1 : 1); + } + } +diff --git a/Firestore/core/src/util/quadruple_builder.h b/Firestore/core/src/util/quadruple_builder.h +--- a/Firestore/core/src/util/quadruple_builder.h ++++ b/Firestore/core/src/util/quadruple_builder.h +@@ -16,7 +16,6 @@ + #ifndef FIRESTORE_CORE_SRC_UTIL_QUADRUPLE_BUILDER_H_ + #define FIRESTORE_CORE_SRC_UTIL_QUADRUPLE_BUILDER_H_ + +-#include + #include + #include + +diff --git a/Firestore/core/src/util/quadruple_builder.cc b/Firestore/core/src/util/quadruple_builder.cc +--- a/Firestore/core/src/util/quadruple_builder.cc ++++ b/Firestore/core/src/util/quadruple_builder.cc +@@ -19,6 +19,8 @@ + #include + #include + ++#include "Firestore/core/src/util/bits.h" ++ + namespace firebase { + namespace firestore { + namespace util { +@@ -785,7 +787,7 @@ void QuadrupleBuilder::multBuffBy10(std::array& buffer) { + // added to the result's exponent, or 0 otherwise + template + int32_t QuadrupleBuilder::normalizeMant(std::array& mantissa) { +- int32_t expCorr = 31 - __builtin_clzll(mantissa[0]); ++ int32_t expCorr = 31 - (63 - Bits::Log2FloorNonZero64(mantissa[0])); + if (expCorr != 0) { + divBuffByPower2(mantissa, expCorr); + } +diff --git a/Firestore/core/test/unit/model/mutation_test.cc b/Firestore/core/test/unit/model/mutation_test.cc +--- a/Firestore/core/test/unit/model/mutation_test.cc ++++ b/Firestore/core/test/unit/model/mutation_test.cc +@@ -403,29 +403,29 @@ TEST(MutationTest, AppliesIncrementTransformsConsecutively) { + + TEST(MutationTest, AppliesIncrementWithoutOverflow) { + auto base_data = +- Map("a", LONG_MAX - 1, "b", LONG_MAX - 1, "c", LONG_MAX, "d", LONG_MAX); ++ Map("a", INT64_MAX - 1, "b", INT64_MAX - 1, "c", INT64_MAX, "d", INT64_MAX); + TransformPairs transforms = { + {"a", Increment(1)}, +- {"b", Increment(LONG_MAX)}, ++ {"b", Increment(INT64_MAX)}, + {"c", Increment(1)}, +- {"d", Increment(LONG_MAX)}, ++ {"d", Increment(INT64_MAX)}, + }; + auto expected = +- Map("a", LONG_MAX, "b", LONG_MAX, "c", LONG_MAX, "d", LONG_MAX); ++ Map("a", INT64_MAX, "b", INT64_MAX, "c", INT64_MAX, "d", INT64_MAX); + TransformBaseDoc(std::move(base_data), transforms, std::move(expected)); + } + + TEST(MutationTest, AppliesIncrementWithoutUnderflow) { + auto base_data = +- Map("a", LONG_MIN + 1, "b", LONG_MIN + 1, "c", LONG_MIN, "d", LONG_MIN); ++ Map("a", INT64_MIN + 1, "b", INT64_MIN + 1, "c", INT64_MIN, "d", INT64_MIN); + TransformPairs transforms = { + {"a", Increment(-1)}, +- {"b", Increment(LONG_MIN)}, ++ {"b", Increment(INT64_MIN)}, + {"c", Increment(-1)}, +- {"d", Increment(LONG_MIN)}, ++ {"d", Increment(INT64_MIN)}, + }; + auto expected = +- Map("a", LONG_MIN, "b", LONG_MIN, "c", LONG_MIN, "d", LONG_MIN); ++ Map("a", INT64_MIN, "b", INT64_MIN, "c", INT64_MIN, "d", INT64_MIN); + TransformBaseDoc(std::move(base_data), transforms, std::move(expected)); + } + diff --git a/cpp_sdk_version.json b/cpp_sdk_version.json index 2668384d24..d74253c517 100644 --- a/cpp_sdk_version.json +++ b/cpp_sdk_version.json @@ -1,5 +1,5 @@ { - "released": "13.13.0", - "stable": "13.13.0", - "head": "13.13.0" + "released": "14.0.0", + "stable": "14.0.0", + "head": "14.0.0" } diff --git a/database/database_resources/build.gradle b/database/database_resources/build.gradle index 25e6dce442..3704f8d282 100644 --- a/database/database_resources/build.gradle +++ b/database/database_resources/build.gradle @@ -51,7 +51,7 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-analytics' implementation 'com.google.firebase:firebase-database' //implementation project(':app:app_resources') diff --git a/database/integration_test/CMakeLists.txt b/database/integration_test/CMakeLists.txt index 700cb5088d..3ee24c3650 100644 --- a/database/integration_test/CMakeLists.txt +++ b/database/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/database/integration_test/integration_test.xcodeproj/project.pbxproj b/database/integration_test/integration_test.xcodeproj/project.pbxproj index 5a376f43e5..df50631242 100644 --- a/database/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/database/integration_test/integration_test.xcodeproj/project.pbxproj @@ -344,7 +344,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -387,7 +387,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -492,7 +492,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -546,7 +546,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -598,7 +598,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/firestore/firestore_resources/build.gradle b/firestore/firestore_resources/build.gradle index d471ce9b10..084135c2d7 100644 --- a/firestore/firestore_resources/build.gradle +++ b/firestore/firestore_resources/build.gradle @@ -59,7 +59,7 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-analytics' implementation 'com.google.firebase:firebase-firestore' } diff --git a/firestore/integration_test/CMakeLists.txt b/firestore/integration_test/CMakeLists.txt index 9c74e94d60..fe5428a51c 100644 --- a/firestore/integration_test/CMakeLists.txt +++ b/firestore/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/firestore/integration_test/integration_test.xcodeproj/project.pbxproj b/firestore/integration_test/integration_test.xcodeproj/project.pbxproj index 26d07c3b1a..0663126606 100644 --- a/firestore/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/firestore/integration_test/integration_test.xcodeproj/project.pbxproj @@ -349,7 +349,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -392,7 +392,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -497,7 +497,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -554,7 +554,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -609,7 +609,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/firestore/integration_test_internal/CMakeLists.txt b/firestore/integration_test_internal/CMakeLists.txt index 9c82aea5da..a50620d897 100644 --- a/firestore/integration_test_internal/CMakeLists.txt +++ b/firestore/integration_test_internal/CMakeLists.txt @@ -235,8 +235,8 @@ include_directories(${ABSEIL_CPP_ROOT}) # Allow testing internal Firebase APIs. add_definitions(-DINTERNAL_EXPERIMENTAL) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/firestore/integration_test_internal/integration_test.xcodeproj/project.pbxproj b/firestore/integration_test_internal/integration_test.xcodeproj/project.pbxproj index f0d41af0fb..6e7258cb53 100644 --- a/firestore/integration_test_internal/integration_test.xcodeproj/project.pbxproj +++ b/firestore/integration_test_internal/integration_test.xcodeproj/project.pbxproj @@ -612,7 +612,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -655,7 +655,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -784,7 +784,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -853,7 +853,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -920,7 +920,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/firestore/src/android/blob_android.cc b/firestore/src/android/blob_android.cc index 696afb6151..d326205180 100644 --- a/firestore/src/android/blob_android.cc +++ b/firestore/src/android/blob_android.cc @@ -30,14 +30,12 @@ using jni::Class; using jni::Env; using jni::Local; using jni::Method; -using jni::Object; using jni::StaticMethod; constexpr char kClass[] = PROGUARD_KEEP_CLASS "com/google/firebase/firestore/Blob"; jclass g_class = nullptr; -Method kConstructor("", "(Lcom/google/protobuf/ByteString;)V"); StaticMethod kFromBytes( "fromBytes", "([B)Lcom/google/firebase/firestore/Blob;"); Method> kToBytes("toBytes", "()[B"); @@ -46,7 +44,7 @@ Method> kToBytes("toBytes", "()[B"); void BlobInternal::Initialize(jni::Loader& loader) { g_class = loader.LoadClass(kClass); - loader.LoadAll(kConstructor, kFromBytes, kToBytes); + loader.LoadAll(kFromBytes, kToBytes); } Class BlobInternal::GetClass() { return Class(g_class); } diff --git a/functions/integration_test/CMakeLists.txt b/functions/integration_test/CMakeLists.txt index 4b6d791076..8013d93400 100644 --- a/functions/integration_test/CMakeLists.txt +++ b/functions/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/functions/integration_test/integration_test.xcodeproj/project.pbxproj b/functions/integration_test/integration_test.xcodeproj/project.pbxproj index 6d2718c3a4..c2b17246a0 100644 --- a/functions/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/functions/integration_test/integration_test.xcodeproj/project.pbxproj @@ -356,7 +356,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -399,7 +399,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -504,7 +504,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -561,7 +561,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -616,7 +616,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/installations/integration_test/CMakeLists.txt b/installations/integration_test/CMakeLists.txt index f740f178f6..f61a3bd198 100644 --- a/installations/integration_test/CMakeLists.txt +++ b/installations/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/installations/integration_test/integration_test.xcodeproj/project.pbxproj b/installations/integration_test/integration_test.xcodeproj/project.pbxproj index d37bd46d6a..c683965296 100644 --- a/installations/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/installations/integration_test/integration_test.xcodeproj/project.pbxproj @@ -223,7 +223,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -266,7 +266,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -370,7 +370,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/ios_spm/Package.swift b/ios_spm/Package.swift index c2d26b4389..841937b119 100644 --- a/ios_spm/Package.swift +++ b/ios_spm/Package.swift @@ -26,8 +26,8 @@ let package = Package( .library(name: "FirebaseDependencies", targets: ["FirebaseDependencies"]), ], dependencies: [ - .package(url: "https://github.com/firebase/firebase-ios-sdk.git", exact: "12.18.0"), - .package(url: "https://github.com/googleads/swift-package-manager-google-user-messaging-platform.git", exact: "2.3.0"), + .package(url: "https://github.com/firebase/firebase-ios-sdk.git", exact: "13.0.1"), + .package(url: "https://github.com/googleads/swift-package-manager-google-user-messaging-platform.git", exact: "3.1.0"), ], targets: [ .target( diff --git a/ios_spm/swift_headers/FirebaseAnalytics-Swift.h b/ios_spm/swift_headers/FirebaseAnalytics-Swift.h index 7e176968f9..e75d3aac38 100644 --- a/ios_spm/swift_headers/FirebaseAnalytics-Swift.h +++ b/ios_spm/swift_headers/FirebaseAnalytics-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -343,7 +343,7 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseAuth-Swift.h b/ios_spm/swift_headers/FirebaseAuth-Swift.h index 06f6498e62..a8940b02a0 100644 --- a/ios_spm/swift_headers/FirebaseAuth-Swift.h +++ b/ios_spm/swift_headers/FirebaseAuth-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -2897,7 +2897,7 @@ SWIFT_CLASS_NAMED("UserProfileChangeRequest") #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseCoreInternal-Swift.h b/ios_spm/swift_headers/FirebaseCoreInternal-Swift.h index 31e8b003f1..5ef4ed7da8 100644 --- a/ios_spm/swift_headers/FirebaseCoreInternal-Swift.h +++ b/ios_spm/swift_headers/FirebaseCoreInternal-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -406,7 +406,7 @@ SWIFT_CLASS_NAMED("_ObjC_HeartbeatsPayload") #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseDatabase-Swift.h b/ios_spm/swift_headers/FirebaseDatabase-Swift.h index f4ede745b9..b23e9accd7 100644 --- a/ios_spm/swift_headers/FirebaseDatabase-Swift.h +++ b/ios_spm/swift_headers/FirebaseDatabase-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -343,7 +343,7 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseFirestore-Swift.h b/ios_spm/swift_headers/FirebaseFirestore-Swift.h index f58a6ff816..23d3198064 100644 --- a/ios_spm/swift_headers/FirebaseFirestore-Swift.h +++ b/ios_spm/swift_headers/FirebaseFirestore-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -351,7 +351,7 @@ SWIFT_CLASS_PROPERTY(@property(nonatomic, class, readonly, #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseFunctions-Swift.h b/ios_spm/swift_headers/FirebaseFunctions-Swift.h index 07e26e99f1..4dc9452373 100644 --- a/ios_spm/swift_headers/FirebaseFunctions-Swift.h +++ b/ios_spm/swift_headers/FirebaseFunctions-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -626,7 +626,7 @@ SWIFT_CLASS_NAMED("HTTPSCallableResult") #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseInAppMessaging-Swift.h b/ios_spm/swift_headers/FirebaseInAppMessaging-Swift.h index f572b43144..993c63c3cc 100644 --- a/ios_spm/swift_headers/FirebaseInAppMessaging-Swift.h +++ b/ios_spm/swift_headers/FirebaseInAppMessaging-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -343,7 +343,7 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseRemoteConfig-Swift.h b/ios_spm/swift_headers/FirebaseRemoteConfig-Swift.h index 1c791b2a9e..398492ecf4 100644 --- a/ios_spm/swift_headers/FirebaseRemoteConfig-Swift.h +++ b/ios_spm/swift_headers/FirebaseRemoteConfig-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -343,7 +343,7 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseSessions-Swift.h b/ios_spm/swift_headers/FirebaseSessions-Swift.h index e695211ae9..e806822a84 100644 --- a/ios_spm/swift_headers/FirebaseSessions-Swift.h +++ b/ios_spm/swift_headers/FirebaseSessions-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -391,7 +391,7 @@ typedef SWIFT_ENUM_NAMED(NSInteger, FIRSessionsSubscriberName, #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseSharedSwift-Swift.h b/ios_spm/swift_headers/FirebaseSharedSwift-Swift.h index 93f6657f53..b89053b614 100644 --- a/ios_spm/swift_headers/FirebaseSharedSwift-Swift.h +++ b/ios_spm/swift_headers/FirebaseSharedSwift-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -343,7 +343,7 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/ios_spm/swift_headers/FirebaseStorage-Swift.h b/ios_spm/swift_headers/FirebaseStorage-Swift.h index a3d252ff9e..7eecba4096 100644 --- a/ios_spm/swift_headers/FirebaseStorage-Swift.h +++ b/ios_spm/swift_headers/FirebaseStorage-Swift.h @@ -1,7 +1,7 @@ #if 0 #elif defined(__arm64__) && __arm64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) @@ -1002,7 +1002,7 @@ SWIFT_CLASS_NAMED("StorageUploadTask") #elif defined(__x86_64__) && __x86_64__ // Copyright 2026 Google LLC -// Copied from Firebase iOS SDK 12.18.0. +// Copied from Firebase iOS SDK 13.0.1. // Generated by Apple Swift version 6.2.3 effective-5.10 (swiftlang-6.2.3.3.21 // clang-1700.6.3.2) diff --git a/messaging/integration_test/CMakeLists.txt b/messaging/integration_test/CMakeLists.txt index 9fcf569035..966b810d93 100644 --- a/messaging/integration_test/CMakeLists.txt +++ b/messaging/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/messaging/integration_test/integration_test.xcodeproj/project.pbxproj b/messaging/integration_test/integration_test.xcodeproj/project.pbxproj index 73f535437c..10ea65e145 100644 --- a/messaging/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/messaging/integration_test/integration_test.xcodeproj/project.pbxproj @@ -353,7 +353,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -396,7 +396,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -499,7 +499,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -553,7 +553,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -605,7 +605,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/messaging/messaging_java/build.gradle b/messaging/messaging_java/build.gradle index 2f4fa03d7d..820a47b3a9 100644 --- a/messaging/messaging_java/build.gradle +++ b/messaging/messaging_java/build.gradle @@ -57,7 +57,7 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-analytics' implementation 'com.google.firebase:firebase-messaging' implementation 'com.google.flatbuffers:flatbuffers-java:25.2.10' diff --git a/release_build_files/Android/firebase_dependencies.gradle b/release_build_files/Android/firebase_dependencies.gradle index ed5bc88f66..cad02b56b4 100644 --- a/release_build_files/Android/firebase_dependencies.gradle +++ b/release_build_files/Android/firebase_dependencies.gradle @@ -20,7 +20,7 @@ def firebaseDependenciesMap = [ 'app_check' : ['com.google.firebase:firebase-appcheck', 'com.google.firebase:firebase-appcheck-debug', 'com.google.firebase:firebase-appcheck-playintegrity'], - 'play_services' : ['com.google.android.gms:play-services-base:18.10.1'], + 'play_services' : ['com.google.android.gms:play-services-base:18.11.0'], 'analytics' : ['com.google.firebase:firebase-analytics'], 'auth' : ['com.google.firebase:firebase-auth'], 'database' : ['com.google.firebase:firebase-database'], @@ -119,7 +119,7 @@ project.afterEvaluate { // Add the bill-of-materials project.dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') } for (String lib : firebaseCpp.dependencies.libSet) { // Messaging includes an aar, which to be depended on properly requires diff --git a/release_build_files/readme.md b/release_build_files/readme.md index 1e59b8e3c8..903558761e 100644 --- a/release_build_files/readme.md +++ b/release_build_files/readme.md @@ -84,7 +84,7 @@ distributed as part of the core Firebase Feature | Required Libraries and Gradle Packages -------------------------- | -------------------------------------- -All Firebase SDKs | platform(com.google.firebase:firebase-bom:34.19.0) +All Firebase SDKs | platform(com.google.firebase:firebase-bom:35.0.0) | | (Android Bill of Materials) Firebase Analytics | libfirebase_analytics.a | | libfirebase_app.a @@ -133,7 +133,7 @@ Firebase Messaging | libfirebase_messaging.a | | com.google.firebase:firebase-messaging | | (Maven package) | | libmessaging_java.jar (Android service) -| | androidx.core:core:1.19.0 (Maven package) +| | androidx.core:core:1.19.1 (Maven package) Firebase Realtime Database | libfirebase_database.a | | libfirebase_auth.a | | libfirebase_app.a @@ -164,7 +164,7 @@ User Messaging Platform | libfirebase_ump.a | | (Maven package) | | com.google.android.ump:user-messaging-platform:4.0.0 | | (Maven package) -Google Play services module| com.google.android.gms:play-services-base:18.10.1 +Google Play services module| com.google.android.gms:play-services-base:18.11.0 | | (Maven package) The Firebase C++ SDK uses an Android BoM (Bill of Materials) to specify a single @@ -219,46 +219,46 @@ Feature | Required Frameworks and Cocoapods -------------------------- | --------------------------------------- Firebase Analytics | firebase_analytics.xcframework | | firebase.xcframework -| | Firebase/Analytics Cocoapod (12.19.0) +| | Firebase/Analytics (13.0.1) Firebase App Check | firebase_app_check.xcframework | | firebase.xcframework -| | Firebase/AppCheck Cocoapod (12.19.0) +| | Firebase/AppCheck (13.0.1) Firebase Authentication | firebase_auth.xcframework | | firebase.xcframework -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Auth (13.0.1) Cloud Firestore | firebase_firestore.xcframework | | firebase_auth.xcframework | | firebase.xcframework -| | Firebase/Firestore Cocoapod (12.19.0) -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Firestore (13.0.1) +| | Firebase/Auth (13.0.1) Firebase Functions | firebase_functions.xcframework | | firebase_auth.xcframework (optional) | | firebase.xcframework -| | Firebase/Functions Cocoapod (12.19.0) -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Functions (13.0.1) +| | Firebase/Auth (13.0.1) Firebase Installations | firebase_installations.xcframework | | firebase.xcframework -| | FirebaseInstallations Cocoapod (12.19.0) +| | FirebaseInstallations (13.0.1) Firebase Cloud Messaging | firebase_messaging.xcframework | | firebase.xcframework -| | Firebase/Messaging Cocoapod (12.19.0) +| | Firebase/Messaging (13.0.1) Firebase Realtime Database | firebase_database.xcframework | | firebase_auth.xcframework | | firebase.xcframework -| | Firebase/Database Cocoapod (12.19.0) -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Database (13.0.1) +| | Firebase/Auth (13.0.1) Firebase Remote Config | firebase_remote_config.xcframework | | firebase.xcframework -| | Firebase/RemoteConfig Cocoapod (12.19.0) +| | Firebase/RemoteConfig (13.0.1) Firebase Storage | firebase_storage.xcframework | | firebase_auth.xcframework | | firebase.xcframework -| | Firebase/Storage Cocoapod (12.19.0) -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Storage (13.0.1) +| | Firebase/Auth (13.0.1) User Messaging Platform | firebase_ump.xcframework | | firebase.xcframework -| | Firebase/CoreOnly Cocoapod (12.19.0) -| | GoogleUserMessagingPlatform Cocoapod (2.3.0) +| | Firebase/CoreOnly (13.0.1) +| | GoogleUserMessagingPlatform (3.1.0) Important: Each version of the Firebase C++ SDK supports a specific version of the Firebase iOS SDK. Please ensure that you reference the Cocoapod versions @@ -278,46 +278,46 @@ Feature | Required Libraries and Cocoapods -------------------------- | ----------------------------------------- Firebase Analytics | libfirebase_analytics.a | | libfirebase_app.a -| | Firebase/Analytics Cocoapod (12.19.0) +| | Firebase/Analytics (13.0.1) Firebase App Check | firebase_app_check.xcframework | | firebase.xcframework -| | Firebase/AppCheck Cocoapod (12.19.0) +| | Firebase/AppCheck (13.0.1) Firebase Authentication | libfirebase_auth.a | | libfirebase_app.a -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Auth (13.0.1) Cloud Firestore | libfirebase_firestore.a | | libfirebase_app.a | | libfirebase_auth.a -| | Firebase/Firestore Cocoapod (12.19.0) -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Firestore (13.0.1) +| | Firebase/Auth (13.0.1) Firebase Functions | libfirebase_functions.a | | libfirebase_app.a | | libfirebase_auth.a (optional) -| | Firebase/Functions Cocoapod (12.19.0) -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Functions (13.0.1) +| | Firebase/Auth (13.0.1) Firebase Installations | libfirebase_installations.a | | libfirebase_app.a -| | FirebaseInstallations Cocoapod (12.19.0) +| | FirebaseInstallations (13.0.1) Firebase Cloud Messaging | libfirebase_messaging.a | | libfirebase_app.a -| | Firebase/CloudMessaging Cocoapod (12.19.0) +| | Firebase/CloudMessaging (13.0.1) Firebase Realtime Database | libfirebase_database.a | | libfirebase_app.a | | libfirebase_auth.a -| | Firebase/Database Cocoapod (12.19.0) -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Database (13.0.1) +| | Firebase/Auth (13.0.1) Firebase Remote Config | libfirebase_remote_config.a | | libfirebase_app.a -| | Firebase/RemoteConfig Cocoapod (12.19.0) +| | Firebase/RemoteConfig (13.0.1) Firebase Storage | libfirebase_storage.a | | libfirebase_app.a | | libfirebase_auth.a -| | Firebase/Storage Cocoapod (12.19.0) -| | Firebase/Auth Cocoapod (12.19.0) +| | Firebase/Storage (13.0.1) +| | Firebase/Auth (13.0.1) User Messaging Platform | libfirebase_ump.a | | libfirebase_app.a -| | Firebase/CoreOnly Cocoapod (12.19.0) -| | GoogleUserMessagingPlatform Cocoapod (2.3.0) +| | Firebase/CoreOnly (13.0.1) +| | GoogleUserMessagingPlatform (3.1.0) Important: Each version of the Firebase C++ SDK supports a specific version of the Firebase iOS SDK. Please ensure that you reference the Cocoapod versions @@ -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 26.2. When building C++ +The provided libraries have been tested using Xcode 26.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 @@ -613,8 +613,12 @@ workflow use only during the development of your app, not for publicly shipping code. ## Release Notes -### Upcoming +### 14.0.0 - Changes + - General (Android): Update to Firebase Android BoM version 35.0.0. + - General (iOS): Update to Firebase Cocoapods version 13.0.0. + - General (iOS, tvOS, Desktop): iOS, tvOS, and macOS SDKs are now built + using Xcode 26.4. - General (Android): **Breaking Change** Updated minSdkVersion to 24. - General (MacOS Desktop): Fix for linker issue on XCode 27. (#1920) - Auth: **Breaking Change:** Fixed spelling in `AuthError` enum values (`kAuthErrorWebStorateUnsupported` -> `kAuthErrorWebStorageUnsupported` and `kAuthErrorFederatedProviderAreadyInUse` -> `kAuthErrorFederatedProviderAlreadyInUse`). diff --git a/remote_config/integration_test/CMakeLists.txt b/remote_config/integration_test/CMakeLists.txt index e6a570eea9..a8bdac90a2 100644 --- a/remote_config/integration_test/CMakeLists.txt +++ b/remote_config/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/remote_config/integration_test/integration_test.xcodeproj/project.pbxproj b/remote_config/integration_test/integration_test.xcodeproj/project.pbxproj index bdd23a55da..3c2a19f4be 100644 --- a/remote_config/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/remote_config/integration_test/integration_test.xcodeproj/project.pbxproj @@ -338,7 +338,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -381,7 +381,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -484,7 +484,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -538,7 +538,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -590,7 +590,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/remote_config/remote_config_resources/build.gradle b/remote_config/remote_config_resources/build.gradle index f21f1dd778..6e0e672703 100644 --- a/remote_config/remote_config_resources/build.gradle +++ b/remote_config/remote_config_resources/build.gradle @@ -55,7 +55,7 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-config' } diff --git a/scripts/gha/install_test_workflow_prereqs.sh b/scripts/gha/install_test_workflow_prereqs.sh index 622cc43be3..cdb067c81a 100755 --- a/scripts/gha/install_test_workflow_prereqs.sh +++ b/scripts/gha/install_test_workflow_prereqs.sh @@ -74,8 +74,8 @@ fi if [[ "${TEST_ONLY}" == "" ]]; then if [[ "${PLATFORM}" == "Android" ]]; then - echo "NDK_ROOT=/tmp/android-ndk-r21e" >> $GITHUB_ENV - echo "ANDROID_NDK_HOME=/tmp/android-ndk-r21e" >> $GITHUB_ENV + echo "NDK_ROOT=/tmp/android-ndk-r23b" >> $GITHUB_ENV + echo "ANDROID_NDK_HOME=/tmp/android-ndk-r23b" >> $GITHUB_ENV build_scripts/android/install_prereqs.sh elif [[ "${PLATFORM}" == "iOS" ]]; then build_scripts/ios/install_prereqs.sh diff --git a/scripts/gha/integration_testing/gameloop_apple/gameloop.xcodeproj/project.pbxproj b/scripts/gha/integration_testing/gameloop_apple/gameloop.xcodeproj/project.pbxproj index a1de73c846..232bccae88 100644 --- a/scripts/gha/integration_testing/gameloop_apple/gameloop.xcodeproj/project.pbxproj +++ b/scripts/gha/integration_testing/gameloop_apple/gameloop.xcodeproj/project.pbxproj @@ -487,7 +487,7 @@ ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -548,7 +548,7 @@ ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; diff --git a/scripts/gha/print_matrix_configuration.py b/scripts/gha/print_matrix_configuration.py index 2cb093fdc0..6384cf3751 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-15"], + "os": ["ubuntu-22.04", "macos-26"], "build_type": ["Release", "Debug"], "architecture": ["x64", "x86", "arm64"], "msvc_runtime": ["static","dynamic"], - "xcode_version": ["26.2"], + "xcode_version": ["26.4"], "python_version": ["3.9"], EXPANDED_KEY: { - "os": ["ubuntu-22.04", "macos-15", "windows-2022"], - "xcode_version": ["26.2"], + "os": ["ubuntu-22.04", "macos-26", "windows-2022"], + "xcode_version": ["26.4"], } } }, "android": { "matrix": { - "os": ["ubuntu-22.04", "macos-15", "windows-2022"], + "os": ["ubuntu-22.04", "macos-26", "windows-2022"], "architecture": ["x64", "arm64"], "python_version": ["3.9"], EXPANDED_KEY: { - "os": ["ubuntu-22.04", "macos-15", "windows-2022"] + "os": ["ubuntu-22.04", "macos-26", "windows-2022"] } } }, "integration_tests": { "matrix": { - "os": ["ubuntu-22.04", "macos-15", "windows-2022"], + "os": ["ubuntu-22.04", "macos-26", "windows-2022"], "platform": ["Desktop", "Android", "iOS", "tvOS"], "ssl_lib": ["openssl"], "android_device": ["android_target", "emulator_ftl_target"], @@ -113,8 +113,8 @@ "msvc_runtime": ["dynamic"], "cpp_compiler_windows": ["VisualStudio2019"], "cpp_compiler_linux": ["clang-11.0"], - "xcode_version": ["26.2"], # only the first one is used - "ndk_version": ["r22b"], + "xcode_version": ["26.4"], # only the first one is used + "ndk_version": ["r23b"], "platform_version": ["28"], "build_tools_version": ["28.0.3"], @@ -141,10 +141,10 @@ "ios": { "matrix": { - "xcode_version": ["26.2"], + "xcode_version": ["26.4"], EXPANDED_KEY: { - "xcode_version": ["26.2"] + "xcode_version": ["26.4"] } } }, @@ -209,8 +209,8 @@ {"type": "ftl", "device": "model=iphone8,version=16.6"}, {"type": "ftl", "device": "model=ipad10,version=16.6"}, ], - "simulator_target": [ {"type": "virtual", "name":"iPhone 16 Pro Max", "version":"26.2"} ], - "tvos_simulator": [ {"type": "virtual", "name":"Apple TV", "version":"26.2"} ], + "simulator_target": [ {"type": "virtual", "name":"iPhone 17 Pro Max", "version":"26.4.1"} ], + "tvos_simulator": [ {"type": "virtual", "name":"Apple TV", "version":"26.4.1"} ], } # Easy accesssor for getting a TEST_DEVICES entry. Note that once a device model diff --git a/scripts/gha/ui_testing/uitest_apple/FirebaseCppUITestApp.xcodeproj/project.pbxproj b/scripts/gha/ui_testing/uitest_apple/FirebaseCppUITestApp.xcodeproj/project.pbxproj index 2389a01b57..affae3fd0c 100644 --- a/scripts/gha/ui_testing/uitest_apple/FirebaseCppUITestApp.xcodeproj/project.pbxproj +++ b/scripts/gha/ui_testing/uitest_apple/FirebaseCppUITestApp.xcodeproj/project.pbxproj @@ -242,7 +242,7 @@ ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -303,7 +303,7 @@ ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; diff --git a/storage/integration_test/CMakeLists.txt b/storage/integration_test/CMakeLists.txt index 1fc6cad1d3..89fe149815 100644 --- a/storage/integration_test/CMakeLists.txt +++ b/storage/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/storage/integration_test/integration_test.xcodeproj/project.pbxproj b/storage/integration_test/integration_test.xcodeproj/project.pbxproj index 23229e1906..a74d74e65b 100644 --- a/storage/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/storage/integration_test/integration_test.xcodeproj/project.pbxproj @@ -355,7 +355,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -398,7 +398,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -503,7 +503,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -560,7 +560,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -615,7 +615,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/storage/storage_resources/build.gradle b/storage/storage_resources/build.gradle index 0d5e8ba569..ba839fda5d 100644 --- a/storage/storage_resources/build.gradle +++ b/storage/storage_resources/build.gradle @@ -54,7 +54,7 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-analytics' implementation 'com.google.firebase:firebase-storage' } diff --git a/testing/CMakeLists.txt b/testing/CMakeLists.txt index ee68f42769..45a75be01c 100644 --- a/testing/CMakeLists.txt +++ b/testing/CMakeLists.txt @@ -13,7 +13,7 @@ # limitations under the License. cmake_minimum_required(VERSION 3.22) -set (CMAKE_CXX_STANDARD 14) +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. include(binary_to_array) diff --git a/ump/integration_test/CMakeLists.txt b/ump/integration_test/CMakeLists.txt index 01bab7b8a4..cc54870e55 100644 --- a/ump/integration_test/CMakeLists.txt +++ b/ump/integration_test/CMakeLists.txt @@ -84,8 +84,8 @@ set(FIREBASE_INTEGRATION_TEST_SRCS # The include directory for the testapp. include_directories(src) -# Firebase C++ SDK requires C++14. -set (CMAKE_CXX_STANDARD 14) +# Firebase C++ SDK requires C++17. +set (CMAKE_CXX_STANDARD 17) set (CMAKE_CXX_STANDARD_REQUIRED YES) # Don't fall back to an earlier version. # Download and unpack googletest (and googlemock) at configure time diff --git a/ump/integration_test/integration_test.xcodeproj/project.pbxproj b/ump/integration_test/integration_test.xcodeproj/project.pbxproj index f0a8b9b4dc..7984a0beea 100644 --- a/ump/integration_test/integration_test.xcodeproj/project.pbxproj +++ b/ump/integration_test/integration_test.xcodeproj/project.pbxproj @@ -228,7 +228,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -271,7 +271,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -377,7 +377,7 @@ repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; requirement = { kind = exactVersion; - version = 12.19.0; + version = 13.0.1; }; }; 1ABAD42B030000000002 /* XCRemoteSwiftPackageReference "swift-package-manager-google-user-messaging-platform" */ = { @@ -385,7 +385,7 @@ repositoryURL = "https://github.com/googleads/swift-package-manager-google-user-messaging-platform.git"; requirement = { kind = exactVersion; - version = 2.3.0; + version = 3.1.0; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/ump/ump_resources/build.gradle b/ump/ump_resources/build.gradle index 59d166ec9a..98a7cbee57 100644 --- a/ump/ump_resources/build.gradle +++ b/ump/ump_resources/build.gradle @@ -56,7 +56,7 @@ android { } dependencies { - implementation platform('com.google.firebase:firebase-bom:34.19.0') + implementation platform('com.google.firebase:firebase-bom:35.0.0') implementation 'com.google.firebase:firebase-analytics' implementation 'com.google.android.ump:user-messaging-platform:4.0.0' }