Migrate to using the Swift extension APIs in the main modules Stay organized with collections Save and categorize content based on your preferences.
We're merging our Swift extension SDKs into the main SDKs in order to makeSwift-native APIs more broadly available and increase our ability to supportnew Swift language features in the future. The changes we're making and theirexpected impacts on your projects are documented below.
What's changing?
Starting with Firebase for Apple SDK 10.17.0, the Swift extension SDKs havebeen merged into their corresponding main SDKs. For example, all of the APIsfrom theFirebaseFirestoreSwift module have been added toFirebaseFirestore,so you no longer have to import theFirebaseFirestoreSwift module to accessthose APIs.
As all Swift extensions now are part of the main modules, the extension SDKsare no longer required, and are deprecated. Including or using the Swiftextension SDKs will raise a compiler warning and as early as February 2024,we'll stop releasing the Swift extensions entirely.
★ Note: Any currently or previously released versions of the Swift extensionswill still function. However, we recommend that you migrate your app to useSwift APIs from the main module to ensure you continue to receive fixes and cantake advantage of changes and new features.
Important dates for this change
In October 2023
The Swift extension SDKs have been merged into the main SDKs and thendeprecated in favor of the main SDKs. See the release notes for version 10.17.0announcing this change.
You can now use the Swift extension SDK APIs directly from the main SDK modules.Usage of the extension SDKs will is still possible until the next major versionrelease but will raise a deprecation warning when used.
As early as February 2024
We'll stop releasing new versions of the Swift extensions, and we'll remove theSwift extensions from Firebase'sPackage.swift. Older versions will continueto function but will not receive updates.
How to migrate to use Swift-native APIs from the main module
If you currently do not use the Swift extension SDKs, no action is necessary. Ifyou do use a Swift extension SDK, make the following changes in your project.
Workspace changes
Swift Package Manager
After updating Firebase to version 10.17.0+, navigate to the Frameworks,Libraries, and Embedded Content section in the General tab of your target'ssettings and remove the Swift extension SDK (such asFirebaseFirestoreSwift).
CocoaPods
After updating Firebase to version 10.17.0+, navigate to your Podfile and removethe line corresponding to your project's dependency on adding the frameworkssection for your target and remove the Swift extension SDK(such as podFirebaseFirestoreSwift). Then, re-run thepod install command.
Zip distribution and Carthage
After updating Firebase to version 10.17.0+, remove any Swift extensionxcframeworks within your project (such asFirebaseFirestoreSwift.xcframework).
Source code changes
For all of the Swift extension SDKs you previously used, take the followingactions:
- Delete any import statements referencing the Swift extension SDK. If themain SDK was not imported separately, you will need to replace the Swiftextension import with the main SDK import by deleting the
Swiftat theend of the line. - If you used Swift's explicit-module namespacing to reference any Swiftextension SDK types, you will need to replace those with the corresponding mainSDK. For example,
FirebaseFirestoreSwift.QueryPredicatewould need to berenamed toFirebaseFirestore.QueryPredicate.
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-02-18 UTC.