react-native icon indicating copy to clipboard operation
react-native copied to clipboard

React native 0.77 iOS - Invalid Swift Support - The SwiftSupport folder is missing

Open nastyakatolikava opened this issue 7 months ago • 11 comments

Description

Hi

When attempting to upload a React Native app (version 0.77) we encountered the following error:

ITMS-90426: Invalid Swift Support - The SwiftSupport folder is missing. Rebuild your app using the current public (GM) version of Xcode and resubmit it.

If to check ipa folder we can see that content includes only 2 folders:

Payload Symbols

Could you please tell us why it does not include Swift Support folder?

Thank you

Steps to reproduce

In XCode

Select Produce-Archive -> after finish a window open -> distribute app -> custom -> app store connect -> export -> automatically manage siging -> export Replace .ipa file with .zip file

You will see only 2 folders:

Payload Symbols

React Native Version

0.77.1

Affected Platforms

Other (please specify)

Areas

Other (please specify)

Output of npx @react-native-community/cli info

System:
  OS: macOS 15.4.1
  CPU: (12) arm64 Apple M3 Pro
  Memory: 103.80 MB / 18.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 18.15.0
    path: ~/.nvm/versions/node/v18.15.0/bin/node
  Yarn:
    version: 1.22.22
    path: ~/Work/project/node_modules/.bin/yarn
  npm:
    version: 9.5.0
    path: ~/.nvm/versions/node/v18.15.0/bin/npm
  Watchman: Not Found
Managers:
  CocoaPods:
    version: 1.16.2
    path: /Users/user/.rbenv/shims/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 24.2
      - iOS 18.2
      - macOS 15.2
      - tvOS 18.2
      - visionOS 2.2
      - watchOS 11.2
  Android SDK:
    API Levels:
      - "28"
      - "31"
      - "33"
      - "34"
      - "35"
    Build Tools:
      - 30.0.3
      - 31.0.0
      - 33.0.1
      - 34.0.0
      - 35.0.0
    System Images:
      - android-33 | Google Play ARM 64 v8a
      - android-34 | Google APIs ARM 64 v8a
      - android-34 | Google Play ARM 64 v8a
      - android-35 | Google APIs ARM 64 v8a
    Android NDK: Not Found
IDEs:
  Android Studio: 2024.3 AI-243.24978.46.2431.13208083
  Xcode:
    version: 16.2/16C5032a
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.14
    path: /usr/bin/javac
  Ruby:
    version: 2.6.10
    path: /Users/user/.rbenv/shims/ruby
npmPackages:
  "@react-native-community/cli":
    installed: 15.0.1
    wanted: 15.0.1
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.77.2
    wanted: ~0.77.1
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: false
iOS:
  hermesEnabled: true
  newArchEnabled: true

Stacktrace or Logs

-

MANDATORY Reproducer

Screenshots and Videos

No response

nastyakatolikava avatar May 07 '25 12:05 nastyakatolikava

[!WARNING] Could not parse version: We could not find or parse the version number of React Native in your issue report. Please use the template, and report your version including major, minor, and patch numbers - e.g. 0.76.2.

react-native-bot avatar May 07 '25 12:05 react-native-bot

[!WARNING] Missing reproducer: We could not detect a reproducible example in your issue report. Reproducers are mandatory and we can accept only one of those as a valid reproducer:


You can read more about about it on our website: How to report a bug.

react-native-bot avatar May 07 '25 12:05 react-native-bot

[!WARNING] Could not parse version: We could not find or parse the version number of React Native in your issue report. Please use the template, and report your version including major, minor, and patch numbers - e.g. 0.76.2.

react-native-bot avatar May 07 '25 12:05 react-native-bot

Which version of Xcode are you using to build? Starting from the 25th of April, you must use Xcode 16 to build and upload the apps to the App Store. https://developer.apple.com/news/upcoming-requirements/?id=02212025a

cipolleschi avatar May 08 '25 09:05 cipolleschi

Version of XCode - 16.2

nastyakatolikava avatar May 08 '25 09:05 nastyakatolikava

Can you try with Xcode 16.3? This is not something related to React Native. The error states that the app has not been created with the right version of Xcode. Are you archiving it from your laptop or by using some sort of CI system? We don't control that part of the build system.

cipolleschi avatar May 08 '25 09:05 cipolleschi

With XCode 16.3 it also has 2 folders

Image

nastyakatolikava avatar May 08 '25 10:05 nastyakatolikava

As I said, we don't own that part of the build process. This is Xcode doing its thing to create the App. I think that SwiftSupport should be part of the Payload, tbf, but I'm not sure.

cipolleschi avatar May 09 '25 09:05 cipolleschi

Hi

Thanks for reply

According to response from Apple team and they have the following:

the most common reason for this by this link: https://developer.apple.com/forums/thread/765288?page=1#809390022

This library needs to be built and embedded as a framework, which defines a specific layout of the binary and supporting files on disk within the application bundle. TN2435: Embedding Frameworks In An App is an older, but still relevant resource for how to accomplish this. If this library is one you build yourself, you may be better off statically linking it, so you can see Creating a static framework for help with that. And if you're getting it from a vendor, or building it outside of your app's build process, then the built framework needs to be placed inside of an XCFramework for consumption by your app. Creating a multi-platform binary framework bundle goes into detail on that subject.

We created reproduce example based on provided code in your reproducer repository (note: it has upper version of RN)

Could you please help us to understand issue based on test application that we have now? It does not include any external packages https://github.com/Relyon-ai/react-native-ios-build-issue/tree/branch-reproduce

nastyakatolikava avatar May 12 '25 08:05 nastyakatolikava

Thanks for the reproducer. How can I reproduce the issue? This seems like a new app from the template.

Should I archive it? I don't have a way to upload it to the app store.

Also, can you try to create a simple new app, with no extra code, and upload that? If that works, it means that there is something wrong with your setup.

cipolleschi avatar May 15 '25 09:05 cipolleschi

@nastyakatolikava Were you able to figure out this issue? We're having the same problem.

VickyKoblinski avatar May 23 '25 16:05 VickyKoblinski

@VickyKoblinski how do you reproduce the problem? Does it happens also with a completely new app?

cipolleschi avatar Jun 09 '25 09:06 cipolleschi