Leanplum/Leanplum-iOS-SDK

Deprecation warnings when building with SPM

Closed this issue · 2 comments

Expected Behavior

Integrating using SPM doesn't introduces warnings.

Actual Behavior

When integrating with SPM in XCode 13.4.1, we get 3 Deprecation warnings:

  • 'UIUserNotificationSettings' is deprecated: first deprecated in iOS 10.0 - Use UserNotifications Framework's UNNotificationSettings
  • 'UILocalNotification' is deprecated: first deprecated in iOS 10.0 - Use UserNotifications Framework's UNNotificationRequest
  • 'UILocalNotification' is deprecated: first deprecated in iOS 10.0 - Use UserNotifications Framework's UNNotificationRequest

For projects like ours that try to maintain a warning-free environment, it is extremely difficult to silence these warnings (a SPM limitation).

Steps to Reproduce the Problem

  1. In a new Xcode project, add Leanplum 4.1.0 as a swift package
  2. Build the project

Specifications

  • Version: 4.1.0
  • Platform: Mac/Xcode 13.4.1
  • Subsystem:

Leanplum SDK supports iOS 9 and above. What is your Deployment target?

I'm experiencing the same issue with an iOS 14.0 deployment target and Xcode 13.3.1 when using Leanplum as a git submodule (no SPM involved) and exposing Leanplum to Swift in the Bridging header of my project.

Most probably, Leanplum needs to be updated to use UserNotifications on iOS 10+ and use the legacy notifications framework on iOS 9.