braintree_ios: Archiving using Xcode 15.3 Fails Due when Including PPRiskMagnes.framework (minimum OS Version specified in the Info.plist)
Braintree SDK Version
6.14.0-16.16.0
Environment
Both
Xcode Version
Xcode 15.3
OS Version & Device
iOS 17.x
Integration type
Swfit Package Manager
Development Processor
Both
Describe the bug
When including PPRiskMagnes.framework, archiving builds fail using Xcode 15.3 locally or using Xcode Cloud. See screenshot.
Previously mentioned here when attempting to submit Privacy Manifest compatible releases to Apple. https://github.com/braintree/braintree_ios/issues/1135#issuecomment-1985951137
To reproduce
Using Xcode 15.3:
- Product > Archive
- Organizer > Validate App
Using Xcode Cloud with Xcode 15.3 selected produces the same result.
Expected behavior
Archiving the app with Braintree SDK links should work with Xcode 15.3 and pass Apple validation. These errors were once visible for other dependencies like Google Firebase, Crashlytics, etc. but the latest releases of those SDKs resolved this. The only dependency that exhibits this failure is PPRiskMagnes.framework. This blocks us from shipping new releases or updates. Given that all other vendors have resolved this issue, and Braintree is the outlier we believe Braintree needs to address this.
A workaround of archiving with Xcode 15.2 was mentioned as a solution, but this fails with the same validation error. This started failing on March 13, Apple’s announced deadline for Privacy manifest submissions. While these issue are technically unrelated, Apple’s validation scan’s seem stricter about the contents of the .ipa file and the PPRiskMagnes.framework.
Please advise.
Screenshots
About this issue
- Original URL
- State: closed
- Created 3 months ago
- Comments: 17 (10 by maintainers)
We’re temporarily downgrading to Xcode 15.2 which is working for submission. While this works, it feels brittle and ideally we should be targeting the latest iOS release. Since Apple introduced the Xcode 15.0 minimum deployment version, I wouldn’t be surprised if they chose to enforce 15.3 sometime with all these other requirements in flight.
Thank you for your help and hard work.
Appreciate your follow up and us getting to a solution. I’ll try to get an answer today on our Xcode 15.2 + Braintree v6. Ideally a Xcode 15.3 solution materializes while we QA our migration.
Thank you @KunJeongPark. Just cleared derived data and clean build and still seeing the error message. Definitely spooky behavior.
To rule a few more things out, I’m doing some additional tests and will let you know as soon as possible. We have a test app that is free of other dependencies that I can link to Braintree 6.16.0 and see if that builds and validates.