diff --git a/.github/workflows/all_plugins.yaml b/.github/workflows/all_plugins.yaml index b162eb0eab2c..27c75804e412 100644 --- a/.github/workflows/all_plugins.yaml +++ b/.github/workflows/all_plugins.yaml @@ -187,16 +187,13 @@ jobs: swift-integration-ios: needs: changes if: needs.changes.outputs.ios == 'true' - runs-on: macos-15 + runs-on: xcode-27 timeout-minutes: 35 env: FLUTTER_DEPENDENCIES: "cloud_firestore firebase_remote_config cloud_functions firebase_database firebase_auth firebase_storage firebase_analytics firebase_messaging firebase_app_check firebase_in_app_messaging firebase_performance firebase_crashlytics firebase_ml_model_downloader firebase_app_installations firebase_ai" PR_HEAD_REPO: ${{ github.event.pull_request.head.repo.full_name }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - name: Xcode - # Firebase iOS SDK: minimum Xcode 26.2. - run: sudo xcode-select -s /Applications/Xcode_26.2.app/Contents/Developer - uses: ./.github/actions/setup-flutterfire with: node: 'false' @@ -219,16 +216,13 @@ jobs: swift-integration-macos: needs: changes if: needs.changes.outputs.macos == 'true' - runs-on: macos-15 + runs-on: xcode-27 timeout-minutes: 35 env: FLUTTER_DEPENDENCIES: "cloud_firestore firebase_remote_config cloud_functions firebase_database firebase_auth firebase_storage firebase_analytics firebase_messaging firebase_app_check firebase_in_app_messaging firebase_performance firebase_crashlytics firebase_ml_model_downloader firebase_app_installations firebase_ai" PR_HEAD_REPO: ${{ github.event.pull_request.head.repo.full_name }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - name: Xcode - # Firebase iOS SDK: minimum Xcode 26.2. - run: sudo xcode-select -s /Applications/Xcode_26.2.app/Contents/Developer - uses: ./.github/actions/setup-flutterfire with: node: 'false' diff --git a/.github/workflows/e2e_tests_fdc.yaml b/.github/workflows/e2e_tests_fdc.yaml index b480e7cb2db2..7a0e3cffd662 100644 --- a/.github/workflows/e2e_tests_fdc.yaml +++ b/.github/workflows/e2e_tests_fdc.yaml @@ -126,13 +126,10 @@ jobs: path: ~/.cache/firebase/emulators ios: - runs-on: macos-15 + runs-on: xcode-27 timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 45 }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - name: Xcode - # Firebase iOS SDK: minimum Xcode 26.2. - run: sudo xcode-select -s /Applications/Xcode_26.2.app/Contents/Developer - uses: ./.github/actions/setup-flutterfire with: npm-cache: 'false' @@ -143,7 +140,7 @@ jobs: - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 name: Xcode Compile Cache with: - key: xcode-cache-${{ runner.os }} + key: xcode-cache-${{ runner.os }}-xcode27 save: "${{ github.ref == 'refs/heads/main' }}" max-size: 700M - uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 @@ -156,8 +153,8 @@ jobs: # tests/pubspec.lock is gitignored, so the old key hashed nothing and # the cache never invalidated. Key on the files that actually pin the # native SDK version instead. - key: ${{ runner.os }}-fdc-pods-v2-${{ hashFiles('packages/firebase_data_connect/firebase_data_connect/example/ios/Podfile', 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} - restore-keys: ${{ runner.os }}-fdc-pods-v2- + key: ${{ runner.os }}-fdc-pods-v3-${{ hashFiles('packages/firebase_data_connect/firebase_data_connect/example/ios/Podfile', 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} + restore-keys: ${{ runner.os }}-fdc-pods-v3- - name: Firebase Emulator Cache id: firebase-emulator-cache uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 @@ -190,8 +187,8 @@ jobs: - uses: futureware-tech/simulator-action@e89aa8f93d3aec35083ff49d2854d07f7186f7f5 id: simulator with: - # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md#installed-simulators - model: "iPhone 16" + # https://github.com/actions/runner-images/blob/main/images/macos/xcode-27-arm64-Readme.md#installed-simulators + model: "iPhone 17" - name: Ensure Simulator Ready env: SIMULATOR: ${{ steps.simulator.outputs.udid }} diff --git a/.github/workflows/e2e_tests_pipeline.yaml b/.github/workflows/e2e_tests_pipeline.yaml index 4311a1ef7ccf..4dae53e5864b 100644 --- a/.github/workflows/e2e_tests_pipeline.yaml +++ b/.github/workflows/e2e_tests_pipeline.yaml @@ -165,13 +165,10 @@ jobs: github.event_name != 'pull_request' || (github.event.pull_request.head.repo.full_name == github.repository && github.actor != 'dependabot[bot]') - runs-on: macos-15 + runs-on: xcode-27 timeout-minutes: 50 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - name: Xcode - # Firebase iOS SDK: minimum Xcode 26.2. - run: sudo xcode-select -s /Applications/Xcode_26.2.app/Contents/Developer - uses: ./.github/actions/setup-flutterfire with: npm-cache: 'false' @@ -209,8 +206,8 @@ jobs: - uses: futureware-tech/simulator-action@e89aa8f93d3aec35083ff49d2854d07f7186f7f5 id: simulator with: - # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md#installed-simulators - model: "iPhone 16" + # https://github.com/actions/runner-images/blob/main/images/macos/xcode-27-arm64-Readme.md#installed-simulators + model: "iPhone 17" - name: Build iOS (simulator) working-directory: packages/cloud_firestore/cloud_firestore/pipeline_example # A cold SwiftPM fetch (grpc/abseil binaries) plus the Xcode build has diff --git a/.github/workflows/e2e_tests_smoke.yaml b/.github/workflows/e2e_tests_smoke.yaml index 4f4f05996453..a3d8c9942730 100644 --- a/.github/workflows/e2e_tests_smoke.yaml +++ b/.github/workflows/e2e_tests_smoke.yaml @@ -203,13 +203,10 @@ jobs: if: needs.changes.outputs.ios == 'true' permissions: contents: read - runs-on: macos-15 + runs-on: xcode-27 timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 35 }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - name: Xcode - # Firebase iOS SDK: minimum Xcode 26.2. - run: sudo xcode-select -s /Applications/Xcode_26.2.app/Contents/Developer - uses: ./.github/actions/setup-flutterfire with: firebase-tools-version: '15.25.1' @@ -221,9 +218,9 @@ jobs: - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 name: Xcode Compile Cache with: - # Distinct from the macOS job's key: both run on macos-15, so a shared + # Distinct from the macOS job's key: both run on xcode-27, so a shared # `xcode-cache-${{ runner.os }}` had the two jobs clobbering each other. - key: xcode-ccache-ios + key: xcode-ccache-ios-xcode27 save: "${{ github.ref == 'refs/heads/main' }}" max-size: 700M - uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 @@ -236,8 +233,8 @@ jobs: # Keyed on the Podfile and the pinned Firebase SDK version, not tests/pubspec.lock: # that file is gitignored, so hashFiles() returned an empty string and the key # never changed - the cache could never be invalidated. - key: pods-v4-${{ runner.os }}-ios-${{ hashFiles('tests/ios/Podfile', 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} - restore-keys: pods-v4-${{ runner.os }}-ios- + key: pods-v5-${{ runner.os }}-ios-${{ hashFiles('tests/ios/Podfile', 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} + restore-keys: pods-v5-${{ runner.os }}-ios- - name: Firebase Emulator Cache id: firebase-emulator-cache uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 @@ -273,8 +270,8 @@ jobs: - uses: futureware-tech/simulator-action@e89aa8f93d3aec35083ff49d2854d07f7186f7f5 id: simulator with: - # List of available simulators: https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md#installed-simulators - model: "iPhone 16" + # List of available simulators: https://github.com/actions/runner-images/blob/main/images/macos/xcode-27-arm64-Readme.md#installed-simulators + model: "iPhone 17" - name: Ensure Simulator Ready timeout-minutes: 13 env: @@ -326,13 +323,10 @@ jobs: if: needs.changes.outputs.macos == 'true' permissions: contents: read - runs-on: macos-15 + runs-on: xcode-27 timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 35 }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - - name: Xcode - # Firebase iOS SDK: minimum Xcode 26.2. - run: sudo xcode-select -s /Applications/Xcode_26.2.app/Contents/Developer - uses: ./.github/actions/setup-flutterfire with: firebase-tools-version: '15.25.1' @@ -344,9 +338,9 @@ jobs: - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 name: Xcode Compile Cache with: - # Distinct from the iOS job's key: both run on macos-15, so a shared + # Distinct from the iOS job's key: both run on xcode-27, so a shared # `xcode-cache-${{ runner.os }}` had the two jobs clobbering each other. - key: xcode-ccache-macos + key: xcode-ccache-macos-xcode27 save: "${{ github.ref == 'refs/heads/main' }}" max-size: 700M - name: Pods Cache @@ -359,8 +353,8 @@ jobs: # Keyed on the Podfile and the pinned Firebase SDK version, not tests/pubspec.lock: # that file is gitignored, so hashFiles() returned an empty string and the key # never changed - the cache could never be invalidated. - key: pods-v4-${{ runner.os }}-macos-${{ hashFiles('tests/macos/Podfile', 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} - restore-keys: pods-v4-${{ runner.os }}-macos- + key: pods-v5-${{ runner.os }}-macos-${{ hashFiles('tests/macos/Podfile', 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} + restore-keys: pods-v5-${{ runner.os }}-macos- - name: Firebase Emulator Cache id: firebase-emulator-cache uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 diff --git a/.github/workflows/reusable_e2e_ios.yaml b/.github/workflows/reusable_e2e_ios.yaml index 79b83ecfc045..a05ffb08a67a 100644 --- a/.github/workflows/reusable_e2e_ios.yaml +++ b/.github/workflows/reusable_e2e_ios.yaml @@ -115,7 +115,7 @@ jobs: github.actor != 'dependabot[bot]') permissions: contents: read - runs-on: macos-15 + runs-on: xcode-27 env: # Inputs consumed inside run: scripts are routed through env so their # values are data, never shell/template code (zizmor: template-injection). @@ -125,15 +125,12 @@ jobs: timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 60 }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - # No `xcode-select` pin: use the runner image's default Xcode. Firebase's - # iOS SDK minimum is 26.2 and every current macos-15 image is at or above - # it. The pin to exactly 26.2 was the reason SPM resolution kept failing: - # that toolchain canonicalizes the ephemeral symlink farm Flutter lays out - # for plugin packages and then looks for the siblings at their real paths - # ("Could not resolve package dependencies ... ios/firebase_core does not - # exist"); newer Xcode resolves the same layout. It is also why - # cloud_functions and firebase_performance are on CocoaPods for now - they - # can rejoin SPM once the default-Xcode runs prove clean. + # Use the xcode-27 image default (Xcode 27 / iOS 27). Do not pin an older + # Xcode: pinning 26.2 on macos-15 made SPM fail by canonicalizing Flutter's + # ephemeral plugin symlink farm ("Could not resolve package dependencies + # ... ios/firebase_core does not exist"). cloud_functions and + # firebase_performance stay on CocoaPods until default-Xcode SPM runs prove + # clean. - uses: ./.github/actions/setup-flutterfire with: node: ${{ inputs.use-firebase-emulators && 'true' || 'false' }} @@ -157,9 +154,9 @@ jobs: - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 name: Xcode Compile Cache with: - # Distinct from every other macos-15 job's key, otherwise the workflows + # Distinct from every other xcode-27 job's key, otherwise the workflows # clobber each other's cache. - key: xcode-ccache-${{ inputs.cache-key-suffix }}-ios + key: xcode-ccache-${{ inputs.cache-key-suffix }}-ios-xcode27 save: "${{ github.ref == 'refs/heads/main' }}" max-size: 700M - name: Firebase Emulator Cache @@ -222,8 +219,8 @@ jobs: # Keyed on the Podfile and the pinned Firebase SDK version, not on a # pubspec.lock: those are gitignored, so hashFiles() returns an empty # string and the key could never be invalidated. - key: pods-v1-${{ runner.os }}-${{ inputs.cache-key-suffix }}-ios-${{ hashFiles(format('{0}/example/ios/Podfile', inputs.package-path), 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} - restore-keys: pods-v1-${{ runner.os }}-${{ inputs.cache-key-suffix }}-ios- + key: pods-v2-${{ runner.os }}-${{ inputs.cache-key-suffix }}-ios-${{ hashFiles(format('{0}/example/ios/Podfile', inputs.package-path), 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} + restore-keys: pods-v2-${{ runner.os }}-${{ inputs.cache-key-suffix }}-ios- - name: 'Build Application' working-directory: ${{ inputs.package-path }}/example timeout-minutes: 25 @@ -262,8 +259,8 @@ jobs: - uses: futureware-tech/simulator-action@e89aa8f93d3aec35083ff49d2854d07f7186f7f5 id: simulator with: - # List of available simulators: https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md#installed-simulators - model: "iPhone 16" + # List of available simulators: https://github.com/actions/runner-images/blob/main/images/macos/xcode-27-arm64-Readme.md#installed-simulators + model: "iPhone 17" - name: Ensure Simulator Ready timeout-minutes: 13 env: diff --git a/.github/workflows/reusable_e2e_macos.yaml b/.github/workflows/reusable_e2e_macos.yaml index 0467e79a3fc9..47fef4302dcc 100644 --- a/.github/workflows/reusable_e2e_macos.yaml +++ b/.github/workflows/reusable_e2e_macos.yaml @@ -100,7 +100,7 @@ jobs: github.actor != 'dependabot[bot]') permissions: contents: read - runs-on: macos-15 + runs-on: xcode-27 env: # Inputs consumed inside run: scripts are routed through env so their # values are data, never shell/template code (zizmor: template-injection). @@ -110,9 +110,8 @@ jobs: timeout-minutes: ${{ inputs.nightly_test_mode && 5 || 60 }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 - # No `xcode-select` pin: use the runner image's default Xcode. Firebase's - # minimum is 26.2 and every current macos-15 image is at or above it. See - # `reusable_e2e_ios.yaml` for why pinning 26.2 exactly was harmful. + # Use the xcode-27 image default (Xcode 27 / macOS 27). See + # `reusable_e2e_ios.yaml` for why pinning an older Xcode was harmful. - uses: ./.github/actions/setup-flutterfire with: node: ${{ inputs.use-firebase-emulators && 'true' || 'false' }} @@ -128,9 +127,9 @@ jobs: - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 name: Xcode Compile Cache with: - # Distinct from every other macos-15 job's key, otherwise the workflows + # Distinct from every other xcode-27 job's key, otherwise the workflows # clobber each other's cache. - key: xcode-ccache-${{ inputs.cache-key-suffix }}-macos + key: xcode-ccache-${{ inputs.cache-key-suffix }}-macos-xcode27 save: "${{ github.ref == 'refs/heads/main' }}" max-size: 700M - name: Pods Cache @@ -145,8 +144,8 @@ jobs: # Keyed on the Podfile and the pinned Firebase SDK version, not on a # pubspec.lock: those are gitignored, so hashFiles() returns an empty # string and the key could never be invalidated. - key: pods-v1-${{ runner.os }}-${{ inputs.cache-key-suffix }}-macos-${{ hashFiles(format('{0}/example/macos/Podfile', inputs.package-path), 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} - restore-keys: pods-v1-${{ runner.os }}-${{ inputs.cache-key-suffix }}-macos- + key: pods-v2-${{ runner.os }}-${{ inputs.cache-key-suffix }}-macos-${{ hashFiles(format('{0}/example/macos/Podfile', inputs.package-path), 'packages/firebase_core/firebase_core/ios/firebase_sdk_version.rb') }} + restore-keys: pods-v2-${{ runner.os }}-${{ inputs.cache-key-suffix }}-macos- - name: Firebase Emulator Cache if: inputs.use-firebase-emulators id: firebase-emulator-cache diff --git a/packages/cloud_firestore/cloud_firestore/example/ios/Podfile b/packages/cloud_firestore/cloud_firestore/example/ios/Podfile index c73bc1c829e6..1f2cd8a14d3f 100644 --- a/packages/cloud_firestore/cloud_firestore/example/ios/Podfile +++ b/packages/cloud_firestore/cloud_firestore/example/ios/Podfile @@ -61,4 +61,13 @@ post_install do |installer| end flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/cloud_firestore/cloud_firestore/example/macos/Podfile b/packages/cloud_firestore/cloud_firestore/example/macos/Podfile index 2c4599c7974b..afdfb073a5fa 100644 --- a/packages/cloud_firestore/cloud_firestore/example/macos/Podfile +++ b/packages/cloud_firestore/cloud_firestore/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' require 'yaml' @@ -57,4 +57,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/cloud_firestore/cloud_firestore/example/macos/Runner.xcodeproj/project.pbxproj b/packages/cloud_firestore/cloud_firestore/example/macos/Runner.xcodeproj/project.pbxproj index 16ab9abc74ca..d39d5b011e6c 100644 --- a/packages/cloud_firestore/cloud_firestore/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/cloud_firestore/cloud_firestore/example/macos/Runner.xcodeproj/project.pbxproj @@ -552,7 +552,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -574,7 +574,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.0; }; @@ -635,7 +635,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -685,7 +685,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -707,7 +707,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; @@ -728,7 +728,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.0; }; diff --git a/packages/cloud_firestore/cloud_firestore/pipeline_example/ios/Podfile b/packages/cloud_firestore/cloud_firestore/pipeline_example/ios/Podfile index 6649374d4c19..64bf99371597 100644 --- a/packages/cloud_firestore/cloud_firestore/pipeline_example/ios/Podfile +++ b/packages/cloud_firestore/cloud_firestore/pipeline_example/ios/Podfile @@ -40,4 +40,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/cloud_firestore/cloud_firestore/pipeline_example/ios/Runner.xcodeproj/project.pbxproj b/packages/cloud_firestore/cloud_firestore/pipeline_example/ios/Runner.xcodeproj/project.pbxproj index 5d60858b5449..8e85cbe85ed1 100644 --- a/packages/cloud_firestore/cloud_firestore/pipeline_example/ios/Runner.xcodeproj/project.pbxproj +++ b/packages/cloud_firestore/cloud_firestore/pipeline_example/ios/Runner.xcodeproj/project.pbxproj @@ -374,7 +374,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -502,7 +502,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -553,7 +553,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/packages/cloud_firestore/cloud_firestore/pipeline_example/macos/Podfile b/packages/cloud_firestore/cloud_firestore/pipeline_example/macos/Podfile index ff5ddb3b8bdc..fc20f6734ab6 100644 --- a/packages/cloud_firestore/cloud_firestore/pipeline_example/macos/Podfile +++ b/packages/cloud_firestore/cloud_firestore/pipeline_example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -39,4 +39,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/cloud_firestore/cloud_firestore/pipeline_example/macos/Runner.xcodeproj/project.pbxproj b/packages/cloud_firestore/cloud_firestore/pipeline_example/macos/Runner.xcodeproj/project.pbxproj index 0d3da44c98d4..c60dba391e50 100644 --- a/packages/cloud_firestore/cloud_firestore/pipeline_example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/cloud_firestore/cloud_firestore/pipeline_example/macos/Runner.xcodeproj/project.pbxproj @@ -561,7 +561,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -643,7 +643,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -693,7 +693,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/cloud_functions/cloud_functions/example/ios/Podfile b/packages/cloud_functions/cloud_functions/example/ios/Podfile index 22efb526f6ba..1050739f2d1d 100644 --- a/packages/cloud_functions/cloud_functions/example/ios/Podfile +++ b/packages/cloud_functions/cloud_functions/example/ios/Podfile @@ -36,4 +36,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/cloud_functions/cloud_functions/example/macos/Podfile b/packages/cloud_functions/cloud_functions/example/macos/Podfile index c60870efea08..4e2f6718d226 100644 --- a/packages/cloud_functions/cloud_functions/example/macos/Podfile +++ b/packages/cloud_functions/cloud_functions/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -40,4 +40,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/cloud_functions/cloud_functions/example/macos/Runner.xcodeproj/project.pbxproj b/packages/cloud_functions/cloud_functions/example/macos/Runner.xcodeproj/project.pbxproj index a625195ddc91..3c5e550a7f2d 100644 --- a/packages/cloud_functions/cloud_functions/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/cloud_functions/cloud_functions/example/macos/Runner.xcodeproj/project.pbxproj @@ -409,7 +409,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -494,7 +494,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -541,7 +541,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_ai/firebase_ai/example/ios/Podfile b/packages/firebase_ai/firebase_ai/example/ios/Podfile index 620e46eba607..84e2caa4abcc 100644 --- a/packages/firebase_ai/firebase_ai/example/ios/Podfile +++ b/packages/firebase_ai/firebase_ai/example/ios/Podfile @@ -40,4 +40,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_ai/firebase_ai/example/macos/Podfile b/packages/firebase_ai/firebase_ai/example/macos/Podfile index ff5ddb3b8bdc..fc20f6734ab6 100644 --- a/packages/firebase_ai/firebase_ai/example/macos/Podfile +++ b/packages/firebase_ai/firebase_ai/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -39,4 +39,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_ai/firebase_ai/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_ai/firebase_ai/example/macos/Runner.xcodeproj/project.pbxproj index 9ed06e14699b..3cc452d99e03 100644 --- a/packages/firebase_ai/firebase_ai/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_ai/firebase_ai/example/macos/Runner.xcodeproj/project.pbxproj @@ -479,7 +479,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -561,7 +561,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -612,7 +612,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_analytics/firebase_analytics/example/ios/Podfile b/packages/firebase_analytics/firebase_analytics/example/ios/Podfile index 22efb526f6ba..1050739f2d1d 100644 --- a/packages/firebase_analytics/firebase_analytics/example/ios/Podfile +++ b/packages/firebase_analytics/firebase_analytics/example/ios/Podfile @@ -36,4 +36,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_analytics/firebase_analytics/example/macos/Podfile b/packages/firebase_analytics/firebase_analytics/example/macos/Podfile index 9ec46f8cd53c..170aa8aa3a4d 100644 --- a/packages/firebase_analytics/firebase_analytics/example/macos/Podfile +++ b/packages/firebase_analytics/firebase_analytics/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -37,4 +37,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_analytics/firebase_analytics/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_analytics/firebase_analytics/example/macos/Runner.xcodeproj/project.pbxproj index 3da6e3b85843..a2adec70a2da 100644 --- a/packages/firebase_analytics/firebase_analytics/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_analytics/firebase_analytics/example/macos/Runner.xcodeproj/project.pbxproj @@ -398,7 +398,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -478,7 +478,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -525,7 +525,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_app_check/firebase_app_check/example/ios/Podfile b/packages/firebase_app_check/firebase_app_check/example/ios/Podfile index 45f98d2763b3..6c441cc35f11 100644 --- a/packages/firebase_app_check/firebase_app_check/example/ios/Podfile +++ b/packages/firebase_app_check/firebase_app_check/example/ios/Podfile @@ -42,4 +42,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_app_check/firebase_app_check/example/macos/Podfile b/packages/firebase_app_check/firebase_app_check/example/macos/Podfile index 4b2032310ad7..dc8edfbe88b6 100644 --- a/packages/firebase_app_check/firebase_app_check/example/macos/Podfile +++ b/packages/firebase_app_check/firebase_app_check/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -41,4 +41,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_app_check/firebase_app_check/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_app_check/firebase_app_check/example/macos/Runner.xcodeproj/project.pbxproj index e9b9393bbd30..995d192c39a6 100644 --- a/packages/firebase_app_check/firebase_app_check/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_app_check/firebase_app_check/example/macos/Runner.xcodeproj/project.pbxproj @@ -360,7 +360,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -383,7 +383,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.firebase.tests; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.0; @@ -443,7 +443,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -491,7 +491,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -514,7 +514,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.firebase.tests; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -537,7 +537,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.firebase.tests; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.0; diff --git a/packages/firebase_app_installations/firebase_app_installations/example/ios/Podfile b/packages/firebase_app_installations/firebase_app_installations/example/ios/Podfile index f17bddc9196b..02646278dab9 100644 --- a/packages/firebase_app_installations/firebase_app_installations/example/ios/Podfile +++ b/packages/firebase_app_installations/firebase_app_installations/example/ios/Podfile @@ -38,4 +38,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_app_installations/firebase_app_installations/example/macos/Podfile b/packages/firebase_app_installations/firebase_app_installations/example/macos/Podfile index 9ec46f8cd53c..170aa8aa3a4d 100644 --- a/packages/firebase_app_installations/firebase_app_installations/example/macos/Podfile +++ b/packages/firebase_app_installations/firebase_app_installations/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -37,4 +37,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_app_installations/firebase_app_installations/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_app_installations/firebase_app_installations/example/macos/Runner.xcodeproj/project.pbxproj index 57fa2164588e..775132c2ea0f 100644 --- a/packages/firebase_app_installations/firebase_app_installations/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_app_installations/firebase_app_installations/example/macos/Runner.xcodeproj/project.pbxproj @@ -407,7 +407,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -487,7 +487,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -534,7 +534,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_auth/firebase_auth/example/ios/Podfile b/packages/firebase_auth/firebase_auth/example/ios/Podfile index 3026bae94838..7c3d309eb839 100644 --- a/packages/firebase_auth/firebase_auth/example/ios/Podfile +++ b/packages/firebase_auth/firebase_auth/example/ios/Podfile @@ -41,8 +41,17 @@ post_install do |installer| installer.generated_projects.each do |project| project.targets.each do |target| target.build_configurations.each do |config| - config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0' + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' end end end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_auth/firebase_auth/example/macos/Podfile b/packages/firebase_auth/firebase_auth/example/macos/Podfile index 9ec46f8cd53c..170aa8aa3a4d 100644 --- a/packages/firebase_auth/firebase_auth/example/macos/Podfile +++ b/packages/firebase_auth/firebase_auth/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -37,4 +37,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_auth/firebase_auth/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_auth/firebase_auth/example/macos/Runner.xcodeproj/project.pbxproj index c14d779beb73..fe9fbefa490f 100644 --- a/packages/firebase_auth/firebase_auth/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_auth/firebase_auth/example/macos/Runner.xcodeproj/project.pbxproj @@ -452,7 +452,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -478,7 +478,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.firebase.auth.example; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.0; @@ -537,7 +537,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -584,7 +584,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -610,7 +610,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.firebase.auth.example; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -636,7 +636,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.firebase.auth.example; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.0; diff --git a/packages/firebase_core/firebase_core/example/ios/Podfile b/packages/firebase_core/firebase_core/example/ios/Podfile index 22efb526f6ba..1050739f2d1d 100644 --- a/packages/firebase_core/firebase_core/example/ios/Podfile +++ b/packages/firebase_core/firebase_core/example/ios/Podfile @@ -36,4 +36,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_core/firebase_core/example/macos/Podfile b/packages/firebase_core/firebase_core/example/macos/Podfile index 08795ec4ab62..f2e30efd4ff7 100644 --- a/packages/firebase_core/firebase_core/example/macos/Podfile +++ b/packages/firebase_core/firebase_core/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -80,3 +80,15 @@ end # Prevent Cocoapods from embedding a second Flutter framework and causing an error with the new Xcode build system. install! 'cocoapods', :disable_input_output_paths => true + +post_install do |installer| + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end +end diff --git a/packages/firebase_core/firebase_core/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_core/firebase_core/example/macos/Runner.xcodeproj/project.pbxproj index a4e6f9243dbe..106d2418aeee 100644 --- a/packages/firebase_core/firebase_core/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_core/firebase_core/example/macos/Runner.xcodeproj/project.pbxproj @@ -410,7 +410,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -494,7 +494,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -541,7 +541,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_crashlytics/firebase_crashlytics/example/ios/Podfile b/packages/firebase_crashlytics/firebase_crashlytics/example/ios/Podfile index 96052d97fdda..ca724824f057 100644 --- a/packages/firebase_crashlytics/firebase_crashlytics/example/ios/Podfile +++ b/packages/firebase_crashlytics/firebase_crashlytics/example/ios/Podfile @@ -36,4 +36,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_crashlytics/firebase_crashlytics/example/macos/Podfile b/packages/firebase_crashlytics/firebase_crashlytics/example/macos/Podfile index 9ec46f8cd53c..170aa8aa3a4d 100644 --- a/packages/firebase_crashlytics/firebase_crashlytics/example/macos/Podfile +++ b/packages/firebase_crashlytics/firebase_crashlytics/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -37,4 +37,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_crashlytics/firebase_crashlytics/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_crashlytics/firebase_crashlytics/example/macos/Runner.xcodeproj/project.pbxproj index fa69b1e7014c..dadc1b5ffceb 100644 --- a/packages/firebase_crashlytics/firebase_crashlytics/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_crashlytics/firebase_crashlytics/example/macos/Runner.xcodeproj/project.pbxproj @@ -445,7 +445,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -472,7 +472,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.firebase.tests; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.0; @@ -531,7 +531,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -578,7 +578,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -605,7 +605,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.firebase.tests; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -632,7 +632,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.firebase.tests; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.0; diff --git a/packages/firebase_data_connect/firebase_data_connect/example/ios/Podfile b/packages/firebase_data_connect/firebase_data_connect/example/ios/Podfile index 487163519556..8b9147b4f780 100644 --- a/packages/firebase_data_connect/firebase_data_connect/example/ios/Podfile +++ b/packages/firebase_data_connect/firebase_data_connect/example/ios/Podfile @@ -41,4 +41,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_data_connect/firebase_data_connect/example/ios/Runner.xcodeproj/project.pbxproj b/packages/firebase_data_connect/firebase_data_connect/example/ios/Runner.xcodeproj/project.pbxproj index 26f10ca2a748..bcf036245158 100644 --- a/packages/firebase_data_connect/firebase_data_connect/example/ios/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_data_connect/firebase_data_connect/example/ios/Runner.xcodeproj/project.pbxproj @@ -472,7 +472,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -601,7 +601,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -652,7 +652,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/packages/firebase_data_connect/firebase_data_connect/example/macos/Podfile b/packages/firebase_data_connect/firebase_data_connect/example/macos/Podfile index b52666a10389..74329eb8c0a0 100644 --- a/packages/firebase_data_connect/firebase_data_connect/example/macos/Podfile +++ b/packages/firebase_data_connect/firebase_data_connect/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -40,4 +40,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_data_connect/firebase_data_connect/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_data_connect/firebase_data_connect/example/macos/Runner.xcodeproj/project.pbxproj index b8abb5878e44..e434a7ff841c 100644 --- a/packages/firebase_data_connect/firebase_data_connect/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_data_connect/firebase_data_connect/example/macos/Runner.xcodeproj/project.pbxproj @@ -575,7 +575,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -657,7 +657,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -707,7 +707,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_database/firebase_database/example/ios/Podfile b/packages/firebase_database/firebase_database/example/ios/Podfile index c97320c5a5d5..ed8ea7fb144c 100644 --- a/packages/firebase_database/firebase_database/example/ios/Podfile +++ b/packages/firebase_database/firebase_database/example/ios/Podfile @@ -50,4 +50,13 @@ post_install do |installer| end end end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_database/firebase_database/example/ios/Runner.xcodeproj/project.pbxproj b/packages/firebase_database/firebase_database/example/ios/Runner.xcodeproj/project.pbxproj index 9396b6682ff3..19cb4eae837f 100644 --- a/packages/firebase_database/firebase_database/example/ios/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_database/firebase_database/example/ios/Runner.xcodeproj/project.pbxproj @@ -463,7 +463,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -594,7 +594,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -645,7 +645,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/packages/firebase_database/firebase_database/example/macos/Podfile b/packages/firebase_database/firebase_database/example/macos/Podfile index 125035a688b9..71f522e341df 100644 --- a/packages/firebase_database/firebase_database/example/macos/Podfile +++ b/packages/firebase_database/firebase_database/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -115,4 +115,13 @@ post_install do |installer| config.build_settings['DEFINES_MODULE'] = 'YES' end end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_database/firebase_database/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_database/firebase_database/example/macos/Runner.xcodeproj/project.pbxproj index 49d1c893a74a..4603ded83cc4 100644 --- a/packages/firebase_database/firebase_database/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_database/firebase_database/example/macos/Runner.xcodeproj/project.pbxproj @@ -410,7 +410,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -494,7 +494,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -541,7 +541,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/ios/Podfile b/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/ios/Podfile index 0b106eca9a67..a100447ea5d6 100644 --- a/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/ios/Podfile +++ b/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/ios/Podfile @@ -37,4 +37,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/ios/Runner.xcodeproj/project.pbxproj b/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/ios/Runner.xcodeproj/project.pbxproj index 28d93a1208b1..cfa173971112 100644 --- a/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/ios/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/ios/Runner.xcodeproj/project.pbxproj @@ -376,7 +376,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; @@ -455,7 +455,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -504,7 +504,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; diff --git a/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/macos/Podfile b/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/macos/Podfile index dade8dfad0dc..170aa8aa3a4d 100644 --- a/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/macos/Podfile +++ b/packages/firebase_in_app_messaging/firebase_in_app_messaging/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.11' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -37,4 +37,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_messaging/firebase_messaging/example/ios/Podfile b/packages/firebase_messaging/firebase_messaging/example/ios/Podfile index 0b106eca9a67..a100447ea5d6 100644 --- a/packages/firebase_messaging/firebase_messaging/example/ios/Podfile +++ b/packages/firebase_messaging/firebase_messaging/example/ios/Podfile @@ -37,4 +37,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_messaging/firebase_messaging/example/macos/Podfile b/packages/firebase_messaging/firebase_messaging/example/macos/Podfile index 9ec46f8cd53c..170aa8aa3a4d 100644 --- a/packages/firebase_messaging/firebase_messaging/example/macos/Podfile +++ b/packages/firebase_messaging/firebase_messaging/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -37,4 +37,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_messaging/firebase_messaging/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_messaging/firebase_messaging/example/macos/Runner.xcodeproj/project.pbxproj index 1318dad059ff..fd751104537e 100644 --- a/packages/firebase_messaging/firebase_messaging/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_messaging/firebase_messaging/example/macos/Runner.xcodeproj/project.pbxproj @@ -419,7 +419,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -504,7 +504,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -551,7 +551,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/ios/Podfile b/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/ios/Podfile index fda01b007025..4a9a1c357856 100644 --- a/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/ios/Podfile +++ b/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/ios/Podfile @@ -36,4 +36,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/macos/Podfile b/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/macos/Podfile index 9ec46f8cd53c..170aa8aa3a4d 100644 --- a/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/macos/Podfile +++ b/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -37,4 +37,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/macos/Runner.xcodeproj/project.pbxproj index e72c7ddec45b..9e9d47624b1c 100644 --- a/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_ml_model_downloader/firebase_ml_model_downloader/example/macos/Runner.xcodeproj/project.pbxproj @@ -407,7 +407,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -487,7 +487,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -534,7 +534,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_performance/firebase_performance/example/ios/Podfile b/packages/firebase_performance/firebase_performance/example/ios/Podfile index 22efb526f6ba..1050739f2d1d 100644 --- a/packages/firebase_performance/firebase_performance/example/ios/Podfile +++ b/packages/firebase_performance/firebase_performance/example/ios/Podfile @@ -36,4 +36,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_remote_config/firebase_remote_config/example/ios/Podfile b/packages/firebase_remote_config/firebase_remote_config/example/ios/Podfile index 96052d97fdda..ca724824f057 100644 --- a/packages/firebase_remote_config/firebase_remote_config/example/ios/Podfile +++ b/packages/firebase_remote_config/firebase_remote_config/example/ios/Podfile @@ -36,4 +36,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_remote_config/firebase_remote_config/example/macos/Podfile b/packages/firebase_remote_config/firebase_remote_config/example/macos/Podfile index b52666a10389..74329eb8c0a0 100644 --- a/packages/firebase_remote_config/firebase_remote_config/example/macos/Podfile +++ b/packages/firebase_remote_config/firebase_remote_config/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -40,4 +40,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_remote_config/firebase_remote_config/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_remote_config/firebase_remote_config/example/macos/Runner.xcodeproj/project.pbxproj index e1a52e3bc2ad..ba153e004612 100644 --- a/packages/firebase_remote_config/firebase_remote_config/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_remote_config/firebase_remote_config/example/macos/Runner.xcodeproj/project.pbxproj @@ -469,7 +469,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -549,7 +549,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -596,7 +596,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/packages/firebase_storage/firebase_storage/example/ios/Podfile b/packages/firebase_storage/firebase_storage/example/ios/Podfile index 22efb526f6ba..1050739f2d1d 100644 --- a/packages/firebase_storage/firebase_storage/example/ios/Podfile +++ b/packages/firebase_storage/firebase_storage/example/ios/Podfile @@ -36,4 +36,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/packages/firebase_storage/firebase_storage/example/macos/Podfile b/packages/firebase_storage/firebase_storage/example/macos/Podfile index c60870efea08..4e2f6718d226 100644 --- a/packages/firebase_storage/firebase_storage/example/macos/Podfile +++ b/packages/firebase_storage/firebase_storage/example/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -40,4 +40,13 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/packages/firebase_storage/firebase_storage/example/macos/Runner.xcodeproj/project.pbxproj b/packages/firebase_storage/firebase_storage/example/macos/Runner.xcodeproj/project.pbxproj index 75f513426b4b..148cef25d5a3 100644 --- a/packages/firebase_storage/firebase_storage/example/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/firebase_storage/firebase_storage/example/macos/Runner.xcodeproj/project.pbxproj @@ -419,7 +419,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -503,7 +503,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -550,7 +550,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/tests/ios/Podfile b/tests/ios/Podfile index 7e246becfa06..803dbf424c11 100644 --- a/tests/ios/Podfile +++ b/tests/ios/Podfile @@ -59,4 +59,13 @@ post_install do |installer| config.build_settings["LDPLUSPLUS"] = "clang++" end end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects iOS deployment targets below 15.0. + ios_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] + if ios_target.nil? || ios_target.empty? || Gem::Version.new(ios_target.to_s) < Gem::Version.new('15.0') + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0' + end + end + end end diff --git a/tests/ios/Runner.xcodeproj/project.pbxproj b/tests/ios/Runner.xcodeproj/project.pbxproj index a16a0a527d01..9d34335f3029 100644 --- a/tests/ios/Runner.xcodeproj/project.pbxproj +++ b/tests/ios/Runner.xcodeproj/project.pbxproj @@ -383,7 +383,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -462,7 +462,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -511,7 +511,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/tests/macos/Podfile b/tests/macos/Podfile index 19d99dbca305..f4a6d416b91f 100644 --- a/tests/macos/Podfile +++ b/tests/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.15' +platform :osx, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -58,4 +58,13 @@ post_install do |installer| config.build_settings["LDPLUSPLUS"] = "clang++" end end + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + # Xcode 27 rejects macOS deployment targets below 12.0. + macos_target = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] + if macos_target.nil? || macos_target.empty? || Gem::Version.new(macos_target.to_s) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end end diff --git a/tests/macos/Runner.xcodeproj/project.pbxproj b/tests/macos/Runner.xcodeproj/project.pbxproj index b665de448324..e711bc1c4549 100644 --- a/tests/macos/Runner.xcodeproj/project.pbxproj +++ b/tests/macos/Runner.xcodeproj/project.pbxproj @@ -425,7 +425,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -449,7 +449,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.6; }; @@ -507,7 +507,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -554,7 +554,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -579,7 +579,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.6; @@ -602,7 +602,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_VERSION = 5.6; };