fix(ios): respect app minimum in generated CocoaPods targets (#8379)

Xcode 27 rejects generated CocoaPods targets with deployment versions
below iOS 15, even though the app already requires iOS 16. Raise lower
explicit pod deployment targets to the existing iOS 16 minimum during
installation, preserving targets that require a newer version.

### Validation

On main at 7852b1670, the ordinary unsigned Release build with exact
Xcode 27.0 failed on pod targets set to iOS 9–13. After this change and
a normal pod install, none of the 189 generated build configurations
specifies a target below iOS 16, and the same build passes
deployment-target validation without a command-line override.

The full build remains blocked by the independent swift-secp256k1 0.21.1
`UInt256.words` compiler ambiguity. This PR does not fix or change that
dependency. Xcode pin
[buzz-releases#110](https://github.com/squareup/buzz-releases/pull/110)
remains gated on a complete ordinary release build and its other
prerequisites.


Related: Wes’s [PR #8330](https://github.com/block/buzz/pull/8330)
independently includes a similar Podfile fix alongside DeviceHub
changes. This PR contains only the Podfile floor and its lockfile
checksum. Full local `just ci` passed; focused iOS validation above is
complete. The regenerated lockfile changes only the Podfile checksum;
`pod install --deployment` succeeds with CocoaPods 1.16.2.

---------

Signed-off-by: Tom Brow <tomb@block.xyz>
This commit is contained in:
Tom Brow
2026-10-15 17:32:31 -07:00
committed by GitHub
parent d039d9a2d5
commit 46159fcf91
2 changed files with 8 additions and 1 deletions

View File

@@ -38,6 +38,13 @@ end
post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
target.build_configurations.each do |config|
minimum = Gem::Version.new('16.0')
current = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET']
if current && Gem::Version.new(current) < minimum
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = minimum.to_s
end
end
end
# Flutter creates plugin symlinks during installation, so load the upstream
# helper here rather than requiring an existing Pods install at parse time.

View File

@@ -227,6 +227,6 @@ SPEC CHECKSUMS:
url_launcher_ios: 7a95fa5b60cc718a708b8f2966718e93db0cef1b
video_player_avfoundation: dd410b52df6d2466a42d28550e33e4146928280a
PODFILE CHECKSUM: 3aac4aa13c3166f951fe137719268b7dc62b9110
PODFILE CHECKSUM: ed10001903303a0ae660957e1d727012a3136046
COCOAPODS: 1.16.2