Skip to content

Fix native CocoaPods template pod deployment target floor for Xcode 27 - #4164

Merged
wmathurin merged 1 commit into
forcedotcom:devfrom
wmathurin:fix-xcode27-deployment-target
Sep 1, 2026
Merged

wmathurin merged 1 commit into
forcedotcom:devfrom
wmathurin:fix-xcode27-deployment-target

Conversation

@wmathurin

@wmathurin wmathurin commented Sep 1, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Fixes Xcode 27 build failures for all native iOS CocoaPods template apps: iOSNativeSwiftTemplate, iOSNativeSwiftEncryptedNotificationTemplate, iOSNativeLoginTemplate, iOSIDPTemplate, MobileSyncExplorerSwift. Also fixes the same failure in the ReactNative repo's iosTests/ios/Podfile, which loads mobilesdk_pods.rb from the iOS SDK clone.

Root cause: mobile_sdk_post_install in mobilesdk_pods.rb raised any pod with a deployment target below iOS 9 to 9.0. Xcode 27 dropped support for deployment targets below 15.0, so pods like SQLCipher and FMDB triggered the error "the range of supported deployment target versions is 15.0 to 27.0.x" during pod install.

Fix: Raise the floor from 9.0 to 15.0 (and the comparison threshold from < 9 to < 15.0). One-line change.

Not addressed here — Hybrid templates (W-24057371): These use a Cordova-generated Podfile that does not call mobile_sdk_post_install. Fix required in CordovaPlugin repo (tools/postinstall-ios.js).

Not addressed here — React Native templates: Fail on Xcode 27 with "Failed frontend command" (Metro bundler / RN build toolchain issue), unrelated to pod deployment targets.

Addresses W-24057370.

Test plan

Tested on Xcode 27.0 (Build 27A5237l) — clean run with all templates:

Template Xcode 27 Notes
iOSNativeSwiftTemplate ✅ Pass
iOSNativeSwiftPackageManagerTemplate ✅ Pass SPM, no CocoaPods
iOSNativeSwiftEncryptedNotificationTemplate ✅ Pass
iOSIDPTemplate ✅ Pass
MobileSyncExplorerSwift ✅ Pass
iOSNativeLoginTemplate ✅ Pass
HybridLocalTemplate ❌ Fail Cordova pod deployment target — W-24057371
HybridRemoteTemplate ❌ Fail Same — W-24057371
ReactNativeTemplate ❌ Fail "Failed frontend command" — separate RN/Xcode 27 issue
ReactNativeDeferredTemplate ❌ Fail Same
ReactNativeTypeScriptTemplate ❌ Fail Same
MobileSyncExplorerReactNative ❌ Fail Same

Also validated on Xcode 26.6: 12/12 passed.

…atibility

Xcode 27 dropped support for iOS deployment targets below 15.0, causing pod
install to fail with "the range of supported deployment target versions is 15.0
to 27.0.x" on any pod whose target was below that threshold. Raise the floor
from 9.0 to 15.0 to match Xcode 27's minimum. Addresses W-24028437.
@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown
TestsPassedSkippedFailed ❌️
AuthFlowTester UI Test Results all1 ran1 ❌
TestResult
AuthFlowTester UI Test Results all
AuthFlowTesterUITests.xctest
LegacyLoginTests.testCAOpaque_DefaultScopes_WebServerFlow()❌ failure

@codecov

codecov Bot commented Sep 1, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 67.59%. Comparing base (205596b) to head (05a5db7).

Additional details and impacted files
@@            Coverage Diff             @@
##              dev    #4164      +/-   ##
==========================================
- Coverage   71.35%   67.59%   -3.77%     
==========================================
  Files         254      254              
  Lines       22916    22916              
==========================================
- Hits        16351    15489     -862     
- Misses       6565     7427     +862     
Components Coverage Δ
Analytics 70.78% <ø> (ø)
Common 70.88% <ø> (ø)
Core 61.33% <ø> (-5.65%) ⬇️
SmartStore 73.45% <ø> (ø)
MobileSync 88.84% <ø> (ø)
see 31 files with indirect coverage changes
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown
TestsPassed ✅SkippedFailed
SalesforceSDKCore iOS ^18 Test Results1023 ran1023 ✅
TestResult
No test annotations available

@wmathurin wmathurin changed the title Fix mobile_sdk_post_install deployment target floor for Xcode 27 compatibility Fix native CocoaPods template pod deployment target floor for Xcode 27 Sep 1, 2026
@wmathurin
wmathurin merged commit 1d8d82f into forcedotcom:dev Sep 1, 2026
22 of 24 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants