Skip to content

Conversation

@BrandonStalnaker
Copy link
Collaborator

Background

  • Internal SDK code was using deprecated Apple APIs that generate compiler warnings and will eventually be removed from the platform. These deprecated APIs include SecTrustEvaluateAsync, SecTrustGetCertificateAtIndex, NSKeyedUnarchiver.unarchiveObject(with:), and UIApplication.keyWindow.

What Has Changed

  • Networking (MPConnector.m): Replaced deprecated SecTrustEvaluateAsync with SecTrustEvaluateWithError; replaced SecTrustGetCertificateAtIndex with SecTrustCopyCertificateChain
  • Persistence (MPPersistenceController.mm, MPUserDefaults.swift): Updated NSKeyedArchiver/NSKeyedUnarchiver usage to modern secure coding APIs with proper error handling
  • Utilities (MPMessageBuilder.m): Replaced deprecated UIApplication.keyWindow with UIScene-based window discovery for iOS 13+
  • Location (MPLocationManager.swift): Updated to use modern location authorization APIs
  • State Machine (MPStateMachine.m): Removed iOS version checks that are no longer needed with the updated deployment target
  • Database Migration (MPDatabaseMigrationController.m): Simplified migration logic for supported OS versions
  • Device Info (MPDevice.swift): Cleaned up OS version detection code

Checklist

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

Additional Notes

  • {Any additional information or context relevant to this PR}

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

@BrandonStalnaker BrandonStalnaker self-assigned this Dec 5, 2025
@BrandonStalnaker BrandonStalnaker requested a review from a team as a code owner December 5, 2025 15:27
@BrandonStalnaker BrandonStalnaker force-pushed the feat/SDKE-554-Update-Internal-Deprecated-Logic branch from 5ebb169 to 6fa6316 Compare December 5, 2025 15:43
@BrandonStalnaker BrandonStalnaker force-pushed the feat/SDKE-554-Remove-Deprecated-Public-APIs branch from 1ad9ae7 to 47d593f Compare December 5, 2025 15:43
Copy link

@deniskocs deniskocs left a comment

Choose a reason for hiding this comment

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

LGTM

@denischilik
Copy link
Contributor

I suggest merging it after #464
so we can benefit from the additional safety layer.

@BrandonStalnaker BrandonStalnaker force-pushed the feat/SDKE-554-Remove-Deprecated-Public-APIs branch from 47d593f to 3f76837 Compare December 11, 2025 16:43
Base automatically changed from feat/SDKE-554-Remove-Deprecated-Public-APIs to workstation/9.0-Release December 11, 2025 18:36
@BrandonStalnaker BrandonStalnaker force-pushed the feat/SDKE-554-Update-Internal-Deprecated-Logic branch from 090f21f to 83d93a5 Compare December 11, 2025 18:38
@BrandonStalnaker BrandonStalnaker merged commit bcd7264 into workstation/9.0-Release Dec 12, 2025
13 of 15 checks passed
@BrandonStalnaker BrandonStalnaker deleted the feat/SDKE-554-Update-Internal-Deprecated-Logic branch December 12, 2025 14:38
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