amplify-swift: App rejected from store during upload

Describe the bug

My Framework includes amplify-swift which in turn depends on aws-crt-swift

The built app works on device in Debug and Release.

During upload to TestFlight the following error appears:

The app references non-public symbols in Payload/appnew.app/Frameworks/…MyFramework: _CCCryptorGCMAddAAD, _CCCryptorGCMFinalize, _CCCryptorGCMSetIV (ID: 18f105e0-1452-4a69-b9ee-…)

Steps To Reproduce

Steps to reproduce the behavior:
1. Archive app and upload to App Store
2. See error

Expected behavior

App should upload

Amplify Framework Version

2.21.1

Amplify Categories

API

Dependency manager

Swift PM

Swift version

5.9

CLI version

11.1.1

Xcode version

Version 15.0.1 (15A507)

Relevant log output

<details>
<summary>Log Messages</summary>


INSERT LOG MESSAGES HERE
```

Is this a regression?

No

Regression additional context

No response

Platforms

No response

OS Version

iOS 17.0.1

Device

iPhone 13 pro

Specific to simulators

No response

Additional context

Xcode Version 15.0.1 (15A507) image image

About this issue

  • Original URL
  • State: closed
  • Created 8 months ago
  • Comments: 18 (12 by maintainers)

Commits related to this issue

Most upvoted comments

Amplify Swift 2.21.3 was released with a fix resolving this issue. Thanks again to both of @mkrn and @maxchuquimia for reporting this!

Thanks @maxchuquimia. type: .dynamic linking is similar to using a wrapper .framework here in that the unused non-public symbols are being included in the framework within the app bundle.

The underlying cause has been addressed in aws-c-cal / aws-crt-swift and we’re working on getting those updates into Amplify Swift. Here’s the PR for reference:

We’ll update here once this is merged and Amplify Swift has been released. Thanks to both of you for reporting this and your assistance in reproducing it.