sentry-cocoa icon indicating copy to clipboard operation
sentry-cocoa copied to clipboard

Doesn't work with os 2026 [all platforms]

Open JagCesar opened this issue 5 months ago • 4 comments

Platform

iOS

Environment

Production

Installed

Swift Package Manager

Version

8.51.1

Xcode Version

Version 26.0 beta (17A5241e)

Did it work on previous versions?

N/A

Steps to Reproduce

  1. Create project
  2. Add Sentry as dependency
  3. Set deployment target to v2026 on all Apple platforms

Expected Result

Archived build should pass App Store Connect processing

Actual Result

Following errors are returned by App Store Connect processing

ITMS-90830: Inconsistent arm64e support - The main bundle 'Ambre.app' does not support arm64e. Verify that the all of the targets including [Ambre.app/Frameworks/Sentry.framework] have consistent support for arm64e.

ITMS-91010: Invalid architecture - A minimum deployment target of 17.4 or later is required for an arm64e slice. The bundle executable in “Ambre.app/Frameworks/Sentry.framework” contains an arm64e slice with a minimum deployment target of 14.0.

ITMS-91011: Invalid architecture - The iOS 17.4 SDK or later is required for an arm64e slice. The bundle executable in “Ambre.app/Frameworks/Sentry.framework” contains an arm64e slice with the iOS 17.2 SDK.

ITMS-91010: Invalid architecture - A minimum deployment target of 17.4 or later is required for an arm64e slice. The bundle executable in “Ambre.app/Watch/Ambre.app/Frameworks/Sentry.framework” contains an arm64e slice with a minimum deployment target of 9.0.

ITMS-91011: Invalid architecture - The iOS 17.4 SDK or later is required for an arm64e slice. The bundle executable in “Ambre.app/Watch/Ambre.app/Frameworks/Sentry.framework” contains an arm64e slice with the iOS 10.2 SDK.

ITMS-90830: Inconsistent arm64e support - The main bundle 'Ambre.app/AppClips/Ambre App Clip.app' does not support arm64e. Verify that the all of the targets including [Ambre.app/AppClips/Ambre App Clip.app/Frameworks/Sentry.framework] have consistent support for arm64e.

ITMS-91010: Invalid architecture - A minimum deployment target of 17.4 or later is required for an arm64e slice. The bundle executable in “Ambre.app/AppClips/Ambre App Clip.app/Frameworks/Sentry.framework” contains an arm64e slice with a minimum deployment target of 14.0.

ITMS-91011: Invalid architecture - The iOS 17.4 SDK or later is required for an arm64e slice. The bundle executable in “Ambre.app/AppClips/Ambre App Clip.app/Frameworks/Sentry.framework” contains an arm64e slice with the iOS 17.2 SDK.

ITMS-90208: Invalid Bundle - The bundle Ambre.app/Frameworks/Sentry.framework does not support the minimum OS Version specified in the Info.plist.

ITMS-90208: Invalid Bundle - The bundle Ambre.app/Watch/Ambre.app/Frameworks/Sentry.framework does not support the minimum OS Version specified in the Info.plist.

ITMS-90208: Invalid Bundle - The bundle Ambre.app/AppClips/Ambre App Clip.app/Frameworks/Sentry.framework does not support the minimum OS Version specified in the Info.plist.

Are you willing to submit a PR?

No, I'm not both paying and doing free work for Sentry 😂

JagCesar avatar Jun 18 '25 19:06 JagCesar

Hey @JagCesar, I have a couple questions:

  • Are you trying to upload to the AppStore using Xcode 26? I don't think that is supported by Apple until the RC is available. On previous version, they used to reject builds like that.
  • Is this the same error you shared in Discord? That one seemed to refer to a missing module SwiftShims

itaybre avatar Jun 18 '25 19:06 itaybre

Hey @JagCesar, I have a couple questions:

  • Are you trying to upload to the AppStore using Xcode 26? I don't think that is supported by Apple until the RC is available. On previous version, they used to reject builds like that.
  • Is this the same error you shared in Discord? That one seemed to refer to a missing module SwiftShims

Hey!

  • Yes, trying to upload to App Store Connect with Xcode 26. Without Sentry the build passes ASC processing. Attaching screenshot of app details from TestFlight.app.
  • No, this is a separate error. I'm still investigating if the former issue was a cache bug on my end.

image

JagCesar avatar Jun 19 '25 00:06 JagCesar

Hey @JagCesar, I was able to investigate this, seems like Xcode ignored extra architecxtures before, but that changed now.

While we prepare a proper fix, I can offer 2 solutions:

  • Use Sentry static SDK: Image

  • If you need to use the dynamic version, you can add this Build phase script to remove the arm64e slice:

#!/bin/bash
set -e

if [ "Release" = "${CONFIGURATION}" ]; then
  APP_DIR_PATH="${BUILT_PRODUCTS_DIR}/${EXECUTABLE_FOLDER_PATH}"
  MAIN_EXECUTABLE="${APP_DIR_PATH}/${EXECUTABLE_NAME}"
  APP_FRAMEWORKS_DIR="${APP_DIR_PATH}/Frameworks"
  
  if lipo -info "$MAIN_EXECUTABLE" | grep -q "arm64e"; then
    echo "Main binary contains arm64e – skipping arm64e slice removal from frameworks."
    exit 0
  else
    echo "Main binary does NOT contain arm64e – proceeding to remove arm64e from embedded frameworks."
  fi

  # Remove arm64e slices
  if [ -d "${APP_FRAMEWORKS_DIR}" ]
  then
    find "${APP_FRAMEWORKS_DIR}" -type f -perm +111 -maxdepth 2 -mindepth 2 | while read -r BIN; do
      if lipo -info "$BIN" | grep -q "arm64e"; then
        echo "Removing arm64e from $BIN"
        lipo -remove arm64e -output "$BIN" "$BIN"
      else
        echo "No arm64 slice found in $BIN"
      fi
    done
  fi
fi

Example: Image

This is not a proper fix, but this should let you continue using Sentry while we fix this.

itaybre avatar Jun 20 '25 17:06 itaybre

Thanks for quickly looking into it @itaybre!

For now we've removed Sentry from our apps. It would be great if there was a proper fix in place before OS 26 goes into public beta.

JagCesar avatar Jun 21 '25 09:06 JagCesar

I've got the same issue with XCode 16.3

twxs avatar Jun 24 '25 10:06 twxs

I've got the same issue with XCode 16.3

Did you build the app with Xcode 16.3 too?

itaybre avatar Jun 24 '25 16:06 itaybre

Tested on Xcode 26 beta 2 and it is still happening. Waiting from input from Apple to confirm this new behavior or this is an bug on Xcode

itaybre avatar Jun 25 '25 20:06 itaybre

Tested on Xcode 26 beta 2 and it is still happening. Waiting from input from Apple to confirm this new behavior or this is an bug on Xcode

Thank you for looking into this, I appreciate it.

JagCesar avatar Jun 25 '25 20:06 JagCesar

I've got the same issue with XCode 16.3

Did you build the app with Xcode 16.3 too?

@itaybre, yes, our app is build with XCode 16.3 and uploaded to the App Store Connect using Transporter. In my opinion, this is not an XCode issue. Apple has restricted the validation on the App Store Connect side and now all binaries in the bundle are required to include the same set of architectures.

twxs avatar Jun 26 '25 08:06 twxs

This was fixed with the release of 8.55.0 where we started to ship the frameworks without arm64e

philprime avatar Aug 27 '25 12:08 philprime