Skip to content

Crashes and non-fatal errors are missing from release builds built with Xcode 26 #15696

@RenGate

Description

@RenGate

Description

Hi Firebase team.
Since updating the build environment to Xcode 26 I noticed that both crashlogs and non-fatal issues stopped to appear in Crashlytics dashboard even though affected app versions do show up in Latest Release and Release Monitoring sections which means that Firebase SDK was properly configured.
I’ve done several tests with uploading an app to TestFlight built from exactly the same source code with Xcode version being the only difference and everything worked as expected with Xcode 16.4 while 26.0.1, 26.1 and 26.2 lead to missing data.
When a test crash is performed or non-fatal error is logged in a local debug app built with Xcode 26.*, they are properly shown in Crashlytics section if dSYMs were uploaded or a warning about missing dSYMs is shown.
Are there any known issues with Xcode 26 or iOS 26 SDK that might prevent crashlogs from reaching Firebase? The only notable change in iOS 26 SDK that I can thing of is an increase of minimum TLS version to 1.2, but I suppose Firebase servers don’t rely on TLS 1.0 or 1.1 so that is not the reason why data does not reach Crashlytics dashboard.
I can prepare a stripped down version of the app that demonstrates this issue (or some other sensitive info like identifiers and API keys) and send it to Firebase engineers if they share their work email address here. I've attached some Firebase logs from debug build, but the issue is only manifesting in release builds so keep that in mind.

Environment:
Firebase 12.7.0, Swift Package Manager
iOS 26.1
macOS 15.6.1

Reproducing the issue

  1. Create a TestFlight build.
  2. Log non-fatal error with Crashlytics.crashlytics().record(error:) or trigger a crash.
  3. Check Crashlytics dashboard.

Firebase SDK Version

12.7.0

Xcode Version

16.4, 26.0.1, 26.1, 26.2

Installation Method

Swift Package Manager

Firebase Product(s)

Crashlytics

Targeted Platforms

iOS

Relevant Log Output

[Firebase/Crashlytics] Version 12.7.0
12.7.0 - [FirebaseAnalytics][I-ACS023007] Analytics v.12.7.0 started
12.7.0 - [FirebaseAnalytics][I-ACS023008] To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled (see http://goo.gl/RfcP7r)
12.7.0 - [FirebaseAnalytics][I-ACS044003] GoogleAppMeasurementIdentitySupport dependency is not currently linked. IDFA will not be accessible.
12.7.0 - [FirebaseAnalytics][I-ACS800023] No pending snapshot to activate. SDK name: app_measurement
12.7.0 - [FirebaseAnalytics][I-ACS023308] Failed to initiate on-device conversion measurement for retrieving aggregate first-party data. Ads account not linked to Google Analytics.
12.7.0 - [FirebaseAnalytics][I-ACS023012] Analytics collection enabled

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet
{
  "originHash" : "1f4c1239b4f50aa7b44c672f1752b6cfaa7520afa7d67fd496c3a11794b4f646",
  "pins" : [
    {
      "identity" : "abseil-cpp-binary",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/google/abseil-cpp-binary.git",
      "state" : {
        "revision" : "bbe8b69694d7873315fd3a4ad41efe043e1c07c5",
        "version" : "1.2024072200.0"
      }
    },
    {
      "identity" : "alamofire",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/Alamofire/Alamofire.git",
      "state" : {
        "revision" : "7be73f6c2b5cd90e40798b06ebd5da8f9f79cf88",
        "version" : "5.11.0"
      }
    },
    {
      "identity" : "amplitude-swift",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/amplitude/Amplitude-Swift",
      "state" : {
        "revision" : "02943548ec2bf5ebabaf3fd8dcd743c231aca77c",
        "version" : "1.16.2"
      }
    },
    {
      "identity" : "amplitudecore-swift",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/amplitude/AmplitudeCore-Swift.git",
      "state" : {
        "revision" : "f08b61731d4912721a4f88923b93a98862e790b6",
        "version" : "1.3.1"
      }
    },
    {
      "identity" : "analytics-connector-ios",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/amplitude/analytics-connector-ios.git",
      "state" : {
        "revision" : "4adbfe85486e6dcdcdca5fa9362097ffe5ec712b",
        "version" : "1.3.1"
      }
    },
    {
      "identity" : "app-check",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/google/app-check.git",
      "state" : {
        "revision" : "21fe1af9be463a359aaf8d96789ef73fc3760d09",
        "version" : "11.0.1"
      }
    },
    {
      "identity" : "atributika",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/psharanda/Atributika.git",
      "state" : {
        "revision" : "2de3536009a6f9ba88344a612ed219e2eb99ca2f",
        "version" : "5.0.5"
      }
    },
    {
      "identity" : "firebase-ios-sdk",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/firebase/firebase-ios-sdk.git",
      "state" : {
        "revision" : "45210bd1ea695779e6de016ab00fea8c0b7eb2ef",
        "version" : "12.7.0"
      }
    },
    {
      "identity" : "google-ads-on-device-conversion-ios-sdk",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/googleads/google-ads-on-device-conversion-ios-sdk",
      "state" : {
        "revision" : "35b601a60fbbea2de3ea461f604deaaa4d8bbd0c",
        "version" : "3.2.0"
      }
    },
    {
      "identity" : "googleappmeasurement",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/google/GoogleAppMeasurement.git",
      "state" : {
        "revision" : "c2d59acf17a8ba7ed80a763593c67c9c7c006ad1",
        "version" : "12.5.0"
      }
    },
    {
      "identity" : "googledatatransport",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/google/GoogleDataTransport.git",
      "state" : {
        "revision" : "617af071af9aa1d6a091d59a202910ac482128f9",
        "version" : "10.1.0"
      }
    },
    {
      "identity" : "googleutilities",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/google/GoogleUtilities.git",
      "state" : {
        "revision" : "60da361632d0de02786f709bdc0c4df340f7613e",
        "version" : "8.1.0"
      }
    },
    {
      "identity" : "grdb.swift",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/groue/GRDB.swift.git",
      "state" : {
        "revision" : "aa0079aeb82a4bf00324561a40bffe68c6fe1c26",
        "version" : "7.9.0"
      }
    },
    {
      "identity" : "grpc-binary",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/google/grpc-binary.git",
      "state" : {
        "revision" : "cc0001a0cf963aa40501d9c2b181e7fc9fd8ec71",
        "version" : "1.69.0"
      }
    },
    {
      "identity" : "gtm-session-fetcher",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/google/gtm-session-fetcher.git",
      "state" : {
        "revision" : "a2ab612cb980066ee56d90d60d8462992c07f24b",
        "version" : "3.5.0"
      }
    },
    {
      "identity" : "interop-ios-for-google-sdks",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/google/interop-ios-for-google-sdks.git",
      "state" : {
        "revision" : "040d087ac2267d2ddd4cca36c757d1c6a05fdbfe",
        "version" : "101.0.0"
      }
    },
    {
      "identity" : "kanna",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/tid-kijyun/Kanna",
      "state" : {
        "revision" : "a23a4584f8e7de07cab420ae4d51eee553dd988d",
        "version" : "6.0.1"
      }
    },
    {
      "identity" : "leveldb",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/firebase/leveldb.git",
      "state" : {
        "revision" : "0706abcc6b0bd9cedfbb015ba840e4a780b5159b",
        "version" : "1.22.2"
      }
    },
    {
      "identity" : "nanopb",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/firebase/nanopb.git",
      "state" : {
        "revision" : "b7e1104502eca3a213b46303391ca4d3bc8ddec1",
        "version" : "2.30910.0"
      }
    },
    {
      "identity" : "networkimage",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/gonzalezreal/NetworkImage",
      "state" : {
        "revision" : "7aff8d1b31148d32c5933d75557d42f6323ee3d1",
        "version" : "6.0.0"
      }
    },
    {
      "identity" : "promises",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/google/promises.git",
      "state" : {
        "revision" : "540318ecedd63d883069ae7f1ed811a2df00b6ac",
        "version" : "2.4.0"
      }
    },
    {
      "identity" : "rxgesture",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/RxSwiftCommunity/RxGesture",
      "state" : {
        "revision" : "1b137c576b4aaaab949235752278956697c9e4a0",
        "version" : "4.0.4"
      }
    },
    {
      "identity" : "rxkeyboard",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/RxSwiftCommunity/RxKeyboard",
      "state" : {
        "revision" : "63f6377975c962a1d89f012a6f1e5bebb2c502b7",
        "version" : "2.0.1"
      }
    },
    {
      "identity" : "rxswift",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/ReactiveX/RxSwift",
      "state" : {
        "revision" : "5004a18539bd68905c5939aa893075f578f4f03d",
        "version" : "6.9.1"
      }
    },
    {
      "identity" : "siesta",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/bustoutsolutions/siesta",
      "state" : {
        "revision" : "43f34046ebb5beb6802200353c473af303bbc31e",
        "version" : "1.5.2"
      }
    },
    {
      "identity" : "swift-cmark",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/swiftlang/swift-cmark",
      "state" : {
        "revision" : "3ccff77b2dc5b96b77db3da0d68d28068593fa53",
        "version" : "0.5.0"
      }
    },
    {
      "identity" : "swift-markdown-ui",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/gonzalezreal/swift-markdown-ui",
      "state" : {
        "revision" : "5f613358148239d0292c0cef674a3c2314737f9e",
        "version" : "2.4.1"
      }
    },
    {
      "identity" : "swift-protobuf",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/apple/swift-protobuf.git",
      "state" : {
        "revision" : "3c54ab05249f59f2c6641dd2920b8358ea9ed127",
        "version" : "1.24.0"
      }
    },
    {
      "identity" : "swiftui-flow",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/tevelee/SwiftUI-Flow.git",
      "state" : {
        "revision" : "d227f999b2894ab737ef5786d9b14d02d3e5362e",
        "version" : "3.1.1"
      }
    }
  ],
  "version" : 3
}

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet
Replace this line with the contents of your Podfile.lock!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions