Skip to content

fix(cocoapods): prevent mixed SDK component versions - #811

Merged
thomson-t merged 1 commit into
mainfrom
fix/align-cocoapods-sdk-versions
Aug 10, 2026
Merged

fix(cocoapods): prevent mixed SDK component versions#811
thomson-t merged 1 commit into
mainfrom
fix/align-cocoapods-sdk-versions

Conversation

@thomson-t

@thomson-t thomson-t commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Background

A pinned mParticle Apple SDK version could still resolve a newer
mParticle-Apple-SDK-Swift pod because the ObjC podspec did not specify
a version constraint. This could install incompatible core SDK components.

What Has Changed

  • Pin mParticle-Apple-SDK-Swift to the same version as
    mParticle-Apple-SDK-ObjC.
  • Keep SwiftPM unchanged because its internal Swift and Objective-C targets
    already come from the same pinned package tag.
  • Keep the release workflow unchanged because it already updates all core
    podspec versions together and publishes them in dependency order.

Screenshots/Video

N/A — no visual changes.

Checklist

  • Self-review completed
  • Tests added or updated
  • Tested locally

Pin the Swift support pod to the ObjC podspec version so CocoaPods
cannot resolve core components from different SDK releases.

SwiftPM already uses local targets from a single package tag, and the
release workflow already updates and publishes the core podspecs in
dependency order.

#agentic
@thomson-t
thomson-t requested a review from a team as a code owner August 10, 2026 19:36
@cursor

cursor Bot commented Aug 10, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
Single podspec dependency constraint change with no runtime or API changes; reduces version-mismatch risk for CocoaPods installs.

Overview
CocoaPods consumers of mParticle-Apple-SDK-ObjC could previously pull a newer mParticle-Apple-SDK-Swift than the pinned ObjC release because the dependency had no version constraint.

The ObjC podspec now declares mParticle-Apple-SDK-Swift with s.version.to_s, so both core pods resolve to the same release. SwiftPM and the existing release workflow are unchanged.

Reviewed by Cursor Bugbot for commit 4921ef8. 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.79 MB 1.79 MB +N/A
Executable Impact 848 bytes 848 bytes +N/A
XCFramework Size 6.49 MB 6.48 MB -8 KB

➡️ 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":1920,"with_sdk_executable_size_bytes":76312,"sdk_impact_kb":1836,"sdk_executable_impact_bytes":848,"xcframework_size_kb":6644}

This PR:

{"baseline_app_size_kb":84,"baseline_executable_size_bytes":75464,"with_sdk_app_size_kb":1920,"with_sdk_executable_size_bytes":76312,"sdk_impact_kb":1836,"sdk_executable_impact_bytes":848,"xcframework_size_kb":6636}

@thomson-t
thomson-t merged commit 6a0ca12 into main Aug 10, 2026
227 of 229 checks passed
@thomson-t
thomson-t deleted the fix/align-cocoapods-sdk-versions branch August 10, 2026 21:26
@cursor cursor Bot mentioned this pull request Aug 14, 2026
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