Skip to content

chore: Merge from Main 3-25-26#687

Merged
BrandonStalnaker merged 13 commits intoworkstation/9.0-Releasefrom
chore/merge-main-into-workstation-9.0-2026-03-25
Mar 27, 2026
Merged

chore: Merge from Main 3-25-26#687
BrandonStalnaker merged 13 commits intoworkstation/9.0-Releasefrom
chore/merge-main-into-workstation-9.0-2026-03-25

Conversation

@BrandonStalnaker
Copy link
Copy Markdown
Collaborator

Background

  • Workstation/9.0-Release needs kept up to date with all the changes to Main

What Has Changed

  • Merge commit from Main to this branch

Screenshots/Video

  • {Include any screenshots or video demonstrating the new feature or fix, if applicable}

Checklist

  • I have performed a self-review of my own code.
  • I have made corresponding changes to the documentation.
  • I have added tests that prove my fix is effective or that my feature works.
  • I have tested this locally.

Reference Issue (For employees only. Ignore if you are an outside contributor)

denischilik and others added 10 commits March 10, 2026 15:14
* fix: Remove duplication

* Make properties atomic where possilbe
Remove call to MPListenerController because it deprecated
* fix: WKWebView Logging Crash
chore: (release) 8.44.1

Updates version to 8.44.1 in:
- CHANGELOG.md
- Framework/Info.plist
- Package.swift
- mParticle-Apple-SDK.podspec
- mParticle-Apple-SDK/MPConstants.swift
- mParticle-Apple-SDK/MPIConstants.m
- mParticle_Apple_SDK.json
- IntegrationTests/wiremock-recordings/mappings/*.json
adjust media pod dependency in example app
* fix: serialize backgroundTimeRemaining with cancellation check

* adjust media pod dependency in example app

* test: verify backgroundTimeRemaining is accessed on main thread

Add regression test that asserts all backgroundTimeRemaining calls
happen on the main thread via dispatch_sync, preventing XPC race
conditions during app suspension that caused heap corruption crashes.

Made-with: Cursor

* Revert "adjust media pod dependency in example app"

This reverts commit fef0060.

* fix: promote weakBlockOperation to strong inside dispatch_sync block

Eliminates ARC TOCTOU race between nil check and .isCancelled access.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
chore: (release) 8.44.2

Updates version to 8.44.2 in:
- CHANGELOG.md
- Framework/Info.plist
- Package.swift
- mParticle-Apple-SDK.podspec
- mParticle-Apple-SDK/MPConstants.swift
- mParticle-Apple-SDK/MPIConstants.m
- mParticle_Apple_SDK.json
- IntegrationTests/wiremock-recordings/mappings/*.json
#680)

fix: serialize updateLastUseDate on messageQueue
chore: (release) 8.44.3

Updates version to 8.44.3 in:
- CHANGELOG.md
- Framework/Info.plist
- Package.swift
- mParticle-Apple-SDK.podspec
- mParticle-Apple-SDK/MPConstants.swift
- mParticle-Apple-SDK/MPIConstants.m
- mParticle_Apple_SDK.json
- IntegrationTests/wiremock-recordings/mappings/*.json
@BrandonStalnaker BrandonStalnaker self-assigned this Mar 26, 2026
@BrandonStalnaker BrandonStalnaker requested a review from a team as a code owner March 26, 2026 14:35
@cursor
Copy link
Copy Markdown

cursor bot commented Mar 26, 2026

PR Summary

Medium Risk
Touches core session/background processing, kit registry locking, and request-signing logic; while changes are defensive and test-covered, they affect concurrency-sensitive code paths that could impact background uploads or kit activation.

Overview
Bumps the SDK to 8.44.3 (Info.plist, podspec, constants) and updates the changelog/release manifest with 8.44.1–8.44.3 entries.

Hardens several concurrency-sensitive paths: serializes updateLastUseDate onto the SDK message queue when entering background, makes MPBackendController’s background-time loop read backgroundTimeRemaining and cancellation state together on the main thread, and adds semaphore-locked access for MPKitContainer’s activeKitsRegistry.

Adds defensive request-building behavior by rejecting overly long config/audience queries (max 8192) and building signature strings without stringWithFormat to avoid nil-related issues; updates MPSession properties to atomic and expands unit test coverage around these race conditions and edge cases.

Written by Cursor Bugbot for commit a7247d4. This will update automatically on new commits. Configure here.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 26, 2026

📦 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.65 MB 1.66 MB +16 KB
Executable Impact 896 bytes 896 bytes +N/A
XCFramework Size 5.45 MB 5.47 MB +20 KB

➡️ SDK size impact change is minimal.

Raw measurements

Target branch (workstation/9.0-Release):

{"baseline_app_size_kb":84,"baseline_executable_size_bytes":75464,"with_sdk_app_size_kb":1772,"with_sdk_executable_size_bytes":76360,"sdk_impact_kb":1688,"sdk_executable_impact_bytes":896,"xcframework_size_kb":5584}

This PR:

{"baseline_app_size_kb":84,"baseline_executable_size_bytes":75464,"with_sdk_app_size_kb":1788,"with_sdk_executable_size_bytes":76360,"sdk_impact_kb":1704,"sdk_executable_impact_bytes":896,"xcframework_size_kb":5604}

@BrandonStalnaker BrandonStalnaker force-pushed the chore/merge-main-into-workstation-9.0-2026-03-25 branch from b7deeef to d388576 Compare March 27, 2026 12:35
…cle-apple-sdk into chore/merge-main-into-workstation-9.0-2026-03-25
@BrandonStalnaker BrandonStalnaker force-pushed the chore/merge-main-into-workstation-9.0-2026-03-25 branch from d6f75f5 to 9b3a356 Compare March 27, 2026 12:52
thomson-t
thomson-t previously approved these changes Mar 27, 2026
@BrandonStalnaker BrandonStalnaker force-pushed the chore/merge-main-into-workstation-9.0-2026-03-25 branch from 4af28af to cfc8501 Compare March 27, 2026 13:31
@BrandonStalnaker BrandonStalnaker force-pushed the chore/merge-main-into-workstation-9.0-2026-03-25 branch from cfc8501 to a7247d4 Compare March 27, 2026 14:11
Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

@BrandonStalnaker BrandonStalnaker merged commit 817036d into workstation/9.0-Release Mar 27, 2026
137 of 138 checks passed
@BrandonStalnaker BrandonStalnaker deleted the chore/merge-main-into-workstation-9.0-2026-03-25 branch March 27, 2026 15:06
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.

5 participants