fix(cocoapods): prevent mixed SDK component versions - #811
Conversation
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
PR SummaryLow Risk Overview The ObjC podspec now declares Reviewed by Cursor Bugbot for commit 4921ef8. Bugbot is set up for automated code reviews on this repo. Configure here. |
📦 SDK Size Impact ReportMeasures how much the SDK adds to an app's size (with-SDK minus without-SDK).
➡️ SDK size impact change is minimal. Raw measurementsTarget 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} |
Background
A pinned mParticle Apple SDK version could still resolve a newer
mParticle-Apple-SDK-Swiftpod because the ObjC podspec did not specifya version constraint. This could install incompatible core SDK components.
What Has Changed
mParticle-Apple-SDK-Swiftto the same version asmParticle-Apple-SDK-ObjC.already come from the same pinned package tag.
podspec versions together and publishes them in dependency order.
Screenshots/Video
N/A — no visual changes.
Checklist