Skip to content

fix: align minimum OS deployment target to 15.6 across the monorepo#778

Closed
nickolas-dimitrakas wants to merge 1 commit into
mainfrom
claude/distracted-sammet-f629e9
Closed

fix: align minimum OS deployment target to 15.6 across the monorepo#778
nickolas-dimitrakas wants to merge 1 commit into
mainfrom
claude/distracted-sammet-f629e9

Conversation

@nickolas-dimitrakas
Copy link
Copy Markdown
Contributor

@nickolas-dimitrakas nickolas-dimitrakas commented May 28, 2026

Background

The SDK has always documented iOS 15.6 and tvOS 15.6 as its minimum supported OS versions — both in the official docs and in all three CocoaPods podspecs (mParticle-Apple-SDK.podspec, mParticle-Apple-SDK-ObjC.podspec, mParticle-Apple-SDK-Swift.podspec). However, the SPM Package.swift manifests across the monorepo used the .v15 enum shorthand, which resolves to iOS/tvOS 15.0 — not 15.6. This meant SPM consumers were advertised a lower floor than CocoaPods consumers and our own documentation.

What Has Changed

  • 31 Package.swift files — replaced .iOS(.v15) / .tvOS(.v15) with .iOS("15.6") / .tvOS("15.6") (SPM has no .v15_6 enum case; the string overload is the correct form for patch versions)
  • 37 project.pbxproj files — updated IPHONEOS_DEPLOYMENT_TARGET and TVOS_DEPLOYMENT_TARGET from 15.0 / 15.1 to 15.6 in kit example apps, size test apps, and RNExample

Left untouched: rokt-payment-extension Package.swift (out of scope); urbanairship-20 Package.swift (already at .v16, a higher floor); main SDK xcodeproj and Example/ app (already correctly set to 15.6).

Checklist

  • Self-review completed
  • No new tests needed (no logic change — deployment target alignment only)
  • Verified: grep -r '\.v15' --include='Package.swift' . returns only the excluded payment extension
  • Verified: grep -rn 'IPHONEOS_DEPLOYMENT_TARGET = 15\.' --include='*.pbxproj' . | grep -v 15.6 returns empty

All podspecs declare iOS/tvOS 15.6 as the minimum deployment target. This
updates the 31 Package.swift files that used the .v15 SPM enum (which maps
to 15.0) to use the string form "15.6" instead, and updates the example app
and kit Xcode project files that still declared 15.0 or 15.1.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@nickolas-dimitrakas nickolas-dimitrakas requested a review from a team as a code owner May 28, 2026 15:13
@cursor
Copy link
Copy Markdown

cursor Bot commented May 28, 2026

PR Summary

Low Risk
Build-setting and Package.swift platform floor changes only; no application logic, with a narrow compatibility impact for apps targeting iOS/tvOS below 15.6.

Overview
Raises the advertised and build minimum for iOS and tvOS from 15.0 (and scattered 15.1 in some Xcode projects) to 15.6 across the monorepo so SPM, CocoaPods, docs, and sample apps agree.

SPM: Kit and root Package.swift files change platforms from .iOS(.v15) / .tvOS(.v15) to .iOS("15.6") / .tvOS("15.6") because SwiftPM has no .v15_6 shorthand.

Xcode: Example apps, kit framework projects, size-report test apps, and RNExample update IPHONEOS_DEPLOYMENT_TARGET and TVOS_DEPLOYMENT_TARGET to 15.6.

No runtime or API logic changes—only deployment metadata. Out of scope: rokt-payment-extension (still .v15); urbanairship-20 (already iOS 16+).

Reviewed by Cursor Bugbot for commit b28198c. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions
Copy link
Copy Markdown

📦 SDK Size Impact Report

Measures how much the SDK adds to an app's size (with-SDK minus without-SDK).

Metric Target Branch This PR Change
App Bundle Impact 1.77 MB 1.77 MB +N/A
Executable Impact 848 bytes 848 bytes +N/A
XCFramework Size 6.45 MB 6.45 MB +N/A

➡️ SDK size impact change is minimal.

Raw measurements

Target branch (main):

{"baseline_app_size_kb":84,"baseline_executable_size_bytes":75464,"with_sdk_app_size_kb":1900,"with_sdk_executable_size_bytes":76312,"sdk_impact_kb":1816,"sdk_executable_impact_bytes":848,"xcframework_size_kb":6604}

This PR:

{"baseline_app_size_kb":84,"baseline_executable_size_bytes":75464,"with_sdk_app_size_kb":1900,"with_sdk_executable_size_bytes":76312,"sdk_impact_kb":1816,"sdk_executable_impact_bytes":848,"xcframework_size_kb":6604}

@nickolas-dimitrakas nickolas-dimitrakas deleted the claude/distracted-sammet-f629e9 branch May 28, 2026 15:22
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.

1 participant