From 273020a753a96110dd0cf4cca27817dc9e81e8a6 Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Tue, 8 Jul 2025 15:45:33 -0400 Subject: [PATCH 01/14] [Infra] Enable internal imports by default for SPM --- Package.swift | 30 ++++++++++++++++++++++++++---- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/Package.swift b/Package.swift index 9cb624a571a..e4c1a9ca1be 100644 --- a/Package.swift +++ b/Package.swift @@ -185,7 +185,10 @@ let package = Package( "FirebaseCore", "FirebaseCoreExtension", ], - path: "FirebaseAI/Sources" + path: "FirebaseAI/Sources", + swiftSettings: [ + .enableUpcomingFeature("InternalImportsByDefault"), + ] ), .testTarget( name: "FirebaseAIUnit", @@ -264,7 +267,10 @@ let package = Package( .product(name: "GULNSData", package: "GoogleUtilities"), ], path: "FirebaseCore/Internal/Sources", - resources: [.process("Resources/PrivacyInfo.xcprivacy")] + resources: [.process("Resources/PrivacyInfo.xcprivacy")], + swiftSettings: [ + .enableUpcomingFeature("InternalImportsByDefault"), + ] ), .testTarget( name: "FirebaseCoreInternalTests", @@ -463,6 +469,7 @@ let package = Package( resources: [.process("Resources/PrivacyInfo.xcprivacy")], swiftSettings: [ .swiftLanguageMode(SwiftLanguageMode.v5), + .enableUpcomingFeature("InternalImportsByDefault"), ], linkerSettings: [ .linkedFramework("Security"), @@ -689,7 +696,10 @@ let package = Package( .target( name: "FirebaseDatabase", dependencies: ["FirebaseDatabaseInternal", "FirebaseSharedSwift"], - path: "FirebaseDatabase/Swift/Sources" + path: "FirebaseDatabase/Swift/Sources", + swiftSettings: [ + .enableUpcomingFeature("InternalImportsByDefault"), + ] ), .target( name: "FirebaseSharedSwift", @@ -724,7 +734,10 @@ let package = Package( "FirebaseSharedSwift", .product(name: "GTMSessionFetcherCore", package: "gtm-session-fetcher"), ], - path: "FirebaseFunctions/Sources" + path: "FirebaseFunctions/Sources", + swiftSettings: [ + .enableUpcomingFeature("InternalImportsByDefault"), + ] ), .testTarget( name: "FirebaseFunctionsUnit", @@ -822,6 +835,7 @@ let package = Package( path: "FirebaseInAppMessaging/Swift/Source", swiftSettings: [ .swiftLanguageMode(SwiftLanguageMode.v5), + .enableUpcomingFeature("InternalImportsByDefault"), ] ), @@ -863,6 +877,7 @@ let package = Package( ], swiftSettings: [ .swiftLanguageMode(SwiftLanguageMode.v5), + .enableUpcomingFeature("InternalImportsByDefault"), ] ), .testTarget( @@ -1050,6 +1065,7 @@ let package = Package( resources: [.process("Resources/PrivacyInfo.xcprivacy")], swiftSettings: [ .swiftLanguageMode(SwiftLanguageMode.v5), + .enableUpcomingFeature("InternalImportsByDefault"), ] ), .testTarget( @@ -1113,6 +1129,9 @@ let package = Package( .define("PB_NO_PACKED_STRUCTS", to: "1"), .define("PB_ENABLE_MALLOC", to: "1"), ], + swiftSettings: [ + .enableUpcomingFeature("InternalImportsByDefault"), + ], linkerSettings: [ .linkedFramework("Security"), .linkedFramework( @@ -1180,6 +1199,7 @@ let package = Package( path: "FirebaseStorage/Sources", swiftSettings: [ .swiftLanguageMode(SwiftLanguageMode.v5), + .enableUpcomingFeature("InternalImportsByDefault"), ] ), .testTarget( @@ -1542,6 +1562,7 @@ func firestoreTargets() -> [Target] { resources: [.process("Source/Resources/PrivacyInfo.xcprivacy")], swiftSettings: [ .swiftLanguageMode(SwiftLanguageMode.v5), + .enableUpcomingFeature("InternalImportsByDefault"), ] ), ] @@ -1593,6 +1614,7 @@ func firestoreTargets() -> [Target] { resources: [.process("Resources/PrivacyInfo.xcprivacy")], swiftSettings: [ .swiftLanguageMode(SwiftLanguageMode.v5), + .enableUpcomingFeature("InternalImportsByDefault"), ], linkerSettings: [ .linkedFramework("SystemConfiguration", .when(platforms: [.iOS, .macOS, .tvOS])), From c78028288701127c5ad529f2f2b6d2ad1e2a63f7 Mon Sep 17 00:00:00 2001 From: Andrew Heard Date: Tue, 8 Jul 2025 15:46:35 -0400 Subject: [PATCH 02/14] Andrew's work from ah/vertex-imports --- FirebaseAI/Sources/FirebaseAI.swift | 5 ++--- FirebaseAI/Sources/GenerateContentResponse.swift | 2 +- FirebaseAI/Sources/GenerativeAIRequest.swift | 2 +- FirebaseAI/Sources/PartsRepresentable+Image.swift | 9 +++++++-- .../Types/Public/Imagen/ImagenImagesBlockedError.swift | 2 +- .../Sources/Types/Public/Imagen/ImagenInlineImage.swift | 2 +- FirebaseAI/Sources/Types/Public/Part.swift | 2 +- 7 files changed, 14 insertions(+), 10 deletions(-) diff --git a/FirebaseAI/Sources/FirebaseAI.swift b/FirebaseAI/Sources/FirebaseAI.swift index 48f7183d4e6..47636db84f3 100644 --- a/FirebaseAI/Sources/FirebaseAI.swift +++ b/FirebaseAI/Sources/FirebaseAI.swift @@ -14,11 +14,10 @@ import FirebaseAppCheckInterop import FirebaseAuthInterop -import FirebaseCore +import FirebaseCoreExtension import Foundation -// Avoids exposing internal FirebaseCore APIs to Swift users. -internal import FirebaseCoreExtension +public import FirebaseCore /// The Firebase AI SDK provides access to Gemini models directly from your app. @available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *) diff --git a/FirebaseAI/Sources/GenerateContentResponse.swift b/FirebaseAI/Sources/GenerateContentResponse.swift index b0e348d2192..208f5eaee50 100644 --- a/FirebaseAI/Sources/GenerateContentResponse.swift +++ b/FirebaseAI/Sources/GenerateContentResponse.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// The model's response to a generate content request. @available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *) diff --git a/FirebaseAI/Sources/GenerativeAIRequest.swift b/FirebaseAI/Sources/GenerativeAIRequest.swift index 148e989db40..94032954250 100644 --- a/FirebaseAI/Sources/GenerativeAIRequest.swift +++ b/FirebaseAI/Sources/GenerativeAIRequest.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation @available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *) protocol GenerativeAIRequest: Sendable, Encodable { diff --git a/FirebaseAI/Sources/PartsRepresentable+Image.swift b/FirebaseAI/Sources/PartsRepresentable+Image.swift index 5bedeb8f3d1..3575d86c3d9 100644 --- a/FirebaseAI/Sources/PartsRepresentable+Image.swift +++ b/FirebaseAI/Sources/PartsRepresentable+Image.swift @@ -12,11 +12,16 @@ // See the License for the specific language governing permissions and // limitations under the License. +import CoreGraphics import UniformTypeIdentifiers #if canImport(UIKit) - import UIKit // For UIImage extensions. + public import UIKit // For UIImage extensions. #elseif canImport(AppKit) - import AppKit // For NSImage extensions. + public import AppKit // For NSImage extensions. +#endif + +#if canImport(CoreImage) + import CoreImage #endif private let imageCompressionQuality: CGFloat = 0.8 diff --git a/FirebaseAI/Sources/Types/Public/Imagen/ImagenImagesBlockedError.swift b/FirebaseAI/Sources/Types/Public/Imagen/ImagenImagesBlockedError.swift index e23beab5248..6408c2dfeb9 100644 --- a/FirebaseAI/Sources/Types/Public/Imagen/ImagenImagesBlockedError.swift +++ b/FirebaseAI/Sources/Types/Public/Imagen/ImagenImagesBlockedError.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// An error that occurs when image generation fails due to all generated images being blocked. /// diff --git a/FirebaseAI/Sources/Types/Public/Imagen/ImagenInlineImage.swift b/FirebaseAI/Sources/Types/Public/Imagen/ImagenInlineImage.swift index 4f9a1d9d74f..32b3295e7ff 100644 --- a/FirebaseAI/Sources/Types/Public/Imagen/ImagenInlineImage.swift +++ b/FirebaseAI/Sources/Types/Public/Imagen/ImagenInlineImage.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// An image generated by Imagen, represented as inline data. @available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *) diff --git a/FirebaseAI/Sources/Types/Public/Part.swift b/FirebaseAI/Sources/Types/Public/Part.swift index 4890b725f4d..7edccbb2381 100644 --- a/FirebaseAI/Sources/Types/Public/Part.swift +++ b/FirebaseAI/Sources/Types/Public/Part.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// A discrete piece of data in a media format interpretable by an AI model. /// From 361e557514f60656bb8c51b869efb646ed1d442a Mon Sep 17 00:00:00 2001 From: Andrew Heard Date: Tue, 8 Jul 2025 17:18:25 -0400 Subject: [PATCH 03/14] Andrew's work from ah/vertex-imports --- scripts/check_imports.swift | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/scripts/check_imports.swift b/scripts/check_imports.swift index 6f5e5a9ebb3..fee25f61a88 100755 --- a/scripts/check_imports.swift +++ b/scripts/check_imports.swift @@ -25,6 +25,7 @@ import Foundation // Skip these directories. Imports should only be repo-relative in libraries // and unit tests. let skipDirPatterns = ["/Sample/", "/Pods/", + "FirebaseDynamicLinks/Tests/Integration", "FirebaseInAppMessaging/Tests/Integration/", "FirebaseAuth/", // TODO: Turn Combine back on without Auth includes. @@ -83,11 +84,15 @@ private func checkFile(_ file: String, logger: ErrorLogger, inRepo repoURL: URL, // Swift specific checks. fileContents.components(separatedBy: .newlines) .enumerated() // [(lineNum, line), ...] - .filter { $1.starts(with: "import FirebaseCoreExtension") } + .filter { + $1.starts(with: "import FirebaseCoreExtension") + /* FirebaseVertexAI is using `InternalImportsByDefault` so its files are not checked. */ + && !file.contains("FirebaseVertexAI") + } .forEach { lineNum, line in logger .importLog( - "Use `internal import FirebaseCoreExtension` when importing `FirebaseCoreExtension`.", + "Use `@_implementationOnly import FirebaseCoreExtension` when importing `FirebaseCoreExtension`.", file, lineNum ) } From 428f3ba07506871a51b1414a131167b7c2fe6a8b Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Tue, 8 Jul 2025 18:37:10 -0400 Subject: [PATCH 04/14] update --- FirebaseAuth/Sources/Swift/Auth/Auth.swift | 2 +- .../Sources/HeartbeatLogging/HeartbeatLoggingTestUtils.swift | 2 +- .../Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift | 2 +- .../Sources/HeartbeatLogging/_ObjC_HeartbeatController.swift | 2 +- .../Sources/HeartbeatLogging/_ObjC_HeartbeatsPayload.swift | 2 +- .../Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift | 2 +- .../Sources/Codable/DatabaseReference+WriteEncodable.swift | 2 +- FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift | 2 +- FirebaseFunctions/Sources/Callable+Codable.swift | 2 +- FirebaseFunctions/Sources/Functions.swift | 4 ++-- FirebaseFunctions/Sources/HTTPSCallable.swift | 2 +- FirebaseFunctions/Sources/HTTPSCallableOptions.swift | 2 +- .../Swift/Source/CustomInAppMessageDisplayViewModifier.swift | 2 +- .../Swift/Source/SwiftUIPreviewHelpers.swift | 2 +- FirebaseMLModelDownloader/Sources/ModelDownloader.swift | 2 +- .../Swift/PropertyWrapper/RemoteConfigProperty.swift | 2 +- .../Sources/Development/NanoPB+CustomStringConvertible.swift | 2 +- FirebaseSessions/Sources/Public/SessionsDependencies.swift | 2 +- FirebaseSessions/Sources/Public/SessionsSubscriber.swift | 2 +- FirebaseStorage/Sources/AsyncAwait.swift | 2 +- FirebaseStorage/Sources/Result.swift | 2 +- FirebaseStorage/Sources/Storage.swift | 4 ++-- FirebaseStorage/Sources/StorageError.swift | 2 +- FirebaseStorage/Sources/StorageListResult.swift | 2 +- FirebaseStorage/Sources/StorageMetadata.swift | 2 +- FirebaseStorage/Sources/StorageReference.swift | 2 +- FirebaseStorage/Sources/StorageTask.swift | 2 +- FirebaseStorage/Sources/StorageTaskSnapshot.swift | 2 +- Firestore/Swift/Source/Codable/EncoderDecoder.swift | 2 +- 29 files changed, 31 insertions(+), 31 deletions(-) diff --git a/FirebaseAuth/Sources/Swift/Auth/Auth.swift b/FirebaseAuth/Sources/Swift/Auth/Auth.swift index d198f5418f5..cf16ef124cc 100644 --- a/FirebaseAuth/Sources/Swift/Auth/Auth.swift +++ b/FirebaseAuth/Sources/Swift/Auth/Auth.swift @@ -26,7 +26,7 @@ import FirebaseCoreExtension #endif #if os(iOS) || os(tvOS) || targetEnvironment(macCatalyst) - import UIKit + public import UIKit #endif // Export the deprecated Objective-C defined globals and typedefs. diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatLoggingTestUtils.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatLoggingTestUtils.swift index 96dbcf8aec5..06f762dbcc6 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatLoggingTestUtils.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatLoggingTestUtils.swift @@ -14,7 +14,7 @@ #if DEBUG - import Foundation + public import Foundation /// A utility class intended to be used only in testing contexts. @objc(FIRHeartbeatLoggingTestUtils) diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift index 16049333168..3d302576085 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation #if SWIFT_PACKAGE internal import GoogleUtilities_NSData diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatController.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatController.swift index 520e4f96085..236f528c165 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatController.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatController.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// An object that provides API to log and flush heartbeats from a synchronized storage container. @objc(FIRHeartbeatController) diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatsPayload.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatsPayload.swift index 83d72a2b924..d008a53ec11 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatsPayload.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatsPayload.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// A model object representing a payload of heartbeat data intended for sending in network /// requests. diff --git a/FirebaseDatabase/Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift b/FirebaseDatabase/Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift index a0fddc71e9a..c6d2391e71d 100644 --- a/FirebaseDatabase/Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift +++ b/FirebaseDatabase/Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift @@ -18,7 +18,7 @@ import Foundation #if SWIFT_PACKAGE @_exported import FirebaseDatabaseInternal #endif // SWIFT_PACKAGE -import FirebaseSharedSwift +public import FirebaseSharedSwift public extension DataSnapshot { /// Retrieves the value of a snapshot and converts it to an instance of diff --git a/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift b/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift index 094cb3e2f7c..3368f5e8bb0 100644 --- a/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift +++ b/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift @@ -18,7 +18,7 @@ import Foundation #if SWIFT_PACKAGE @_exported import FirebaseDatabaseInternal #endif // SWIFT_PACKAGE -import FirebaseSharedSwift + public import FirebaseSharedSwift public extension DatabaseReference { /// Encodes an instance of `Encodable` and overwrites the encoded data diff --git a/FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift b/FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift index ffa58858242..7d07ef5d6a2 100644 --- a/FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift +++ b/FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift @@ -17,7 +17,7 @@ #if SWIFT_PACKAGE @_exported import FirebaseDatabaseInternal #endif // SWIFT_PACKAGE -import FirebaseSharedSwift +public import FirebaseSharedSwift public extension Database { typealias Encoder = FirebaseDataEncoder diff --git a/FirebaseFunctions/Sources/Callable+Codable.swift b/FirebaseFunctions/Sources/Callable+Codable.swift index bcf5ce91a31..e427ed39b12 100644 --- a/FirebaseFunctions/Sources/Callable+Codable.swift +++ b/FirebaseFunctions/Sources/Callable+Codable.swift @@ -13,7 +13,7 @@ // limitations under the License. @preconcurrency import FirebaseSharedSwift -import Foundation +public import Foundation /// A `Callable` is a reference to a particular Callable HTTPS trigger in Cloud Functions. /// diff --git a/FirebaseFunctions/Sources/Functions.swift b/FirebaseFunctions/Sources/Functions.swift index 42a59a3e106..3aeaea1d73e 100644 --- a/FirebaseFunctions/Sources/Functions.swift +++ b/FirebaseFunctions/Sources/Functions.swift @@ -14,9 +14,9 @@ import FirebaseAppCheckInterop import FirebaseAuthInterop -import FirebaseCore +public import FirebaseCore import FirebaseMessagingInterop -import FirebaseSharedSwift +public import FirebaseSharedSwift import Foundation #if COCOAPODS @preconcurrency import GTMSessionFetcher diff --git a/FirebaseFunctions/Sources/HTTPSCallable.swift b/FirebaseFunctions/Sources/HTTPSCallable.swift index b74e5b93c4b..6eb36c81264 100644 --- a/FirebaseFunctions/Sources/HTTPSCallable.swift +++ b/FirebaseFunctions/Sources/HTTPSCallable.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation private import FirebaseCoreInternal diff --git a/FirebaseFunctions/Sources/HTTPSCallableOptions.swift b/FirebaseFunctions/Sources/HTTPSCallableOptions.swift index 9f7cc8a8eef..5ebb7c339a6 100644 --- a/FirebaseFunctions/Sources/HTTPSCallableOptions.swift +++ b/FirebaseFunctions/Sources/HTTPSCallableOptions.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Configuration options for a ``HTTPSCallable`` instance. @objc(FIRHTTPSCallableOptions) public final class HTTPSCallableOptions: NSObject, Sendable { diff --git a/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift b/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift index 82811a2b27c..a7eaf2a7b36 100644 --- a/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift +++ b/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import SwiftUI +public import SwiftUI #if SWIFT_PACKAGE @_exported import FirebaseInAppMessagingInternal diff --git a/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift b/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift index 9b64490fb47..e6da72e71cf 100644 --- a/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift +++ b/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import UIKit +public import UIKit #if SWIFT_PACKAGE @_exported import FirebaseInAppMessagingInternal diff --git a/FirebaseMLModelDownloader/Sources/ModelDownloader.swift b/FirebaseMLModelDownloader/Sources/ModelDownloader.swift index 3241f50e317..0aebaa21eb3 100644 --- a/FirebaseMLModelDownloader/Sources/ModelDownloader.swift +++ b/FirebaseMLModelDownloader/Sources/ModelDownloader.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import FirebaseCore +public import FirebaseCore import FirebaseInstallations import Foundation #if SWIFT_PACKAGE diff --git a/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigProperty.swift b/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigProperty.swift index 05d1df52303..dddd6b281e4 100644 --- a/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigProperty.swift +++ b/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigProperty.swift @@ -18,7 +18,7 @@ @_exported import FirebaseRemoteConfigInternal #endif // SWIFT_PACKAGE -import SwiftUI +public import SwiftUI /// A property wrapper that listens to a Remote Config value. @available(iOS 14.0, macOS 11.0, macCatalyst 14.0, tvOS 14.0, watchOS 7.0, *) diff --git a/FirebaseSessions/Sources/Development/NanoPB+CustomStringConvertible.swift b/FirebaseSessions/Sources/Development/NanoPB+CustomStringConvertible.swift index 28e927ab91f..c4e0506f929 100644 --- a/FirebaseSessions/Sources/Development/NanoPB+CustomStringConvertible.swift +++ b/FirebaseSessions/Sources/Development/NanoPB+CustomStringConvertible.swift @@ -16,7 +16,7 @@ import Foundation #if SWIFT_PACKAGE - import FirebaseSessionsObjC + public import FirebaseSessionsObjC #endif // SWIFT_PACKAGE /// diff --git a/FirebaseSessions/Sources/Public/SessionsDependencies.swift b/FirebaseSessions/Sources/Public/SessionsDependencies.swift index 923bd1daea6..5cde5095f52 100644 --- a/FirebaseSessions/Sources/Public/SessionsDependencies.swift +++ b/FirebaseSessions/Sources/Public/SessionsDependencies.swift @@ -13,7 +13,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation private import FirebaseCoreInternal diff --git a/FirebaseSessions/Sources/Public/SessionsSubscriber.swift b/FirebaseSessions/Sources/Public/SessionsSubscriber.swift index 3f6225f81aa..a97fc023e71 100644 --- a/FirebaseSessions/Sources/Public/SessionsSubscriber.swift +++ b/FirebaseSessions/Sources/Public/SessionsSubscriber.swift @@ -13,7 +13,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Sessions Subscriber is an interface that dependent SDKs /// must implement. diff --git a/FirebaseStorage/Sources/AsyncAwait.swift b/FirebaseStorage/Sources/AsyncAwait.swift index cdcea1bec46..ff568ed4977 100644 --- a/FirebaseStorage/Sources/AsyncAwait.swift +++ b/FirebaseStorage/Sources/AsyncAwait.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) public extension StorageReference { diff --git a/FirebaseStorage/Sources/Result.swift b/FirebaseStorage/Sources/Result.swift index af2f11961a8..811f0a62f36 100644 --- a/FirebaseStorage/Sources/Result.swift +++ b/FirebaseStorage/Sources/Result.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Generates a closure that returns a `Result` type from a closure that returns an optional type /// and `Error`. diff --git a/FirebaseStorage/Sources/Storage.swift b/FirebaseStorage/Sources/Storage.swift index b4eefff1ff1..1fe94b4928c 100644 --- a/FirebaseStorage/Sources/Storage.swift +++ b/FirebaseStorage/Sources/Storage.swift @@ -12,11 +12,11 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation import FirebaseAppCheckInterop import FirebaseAuthInterop -import FirebaseCore +public import FirebaseCore // Avoids exposing internal FirebaseCore APIs to Swift users. internal import FirebaseCoreExtension diff --git a/FirebaseStorage/Sources/StorageError.swift b/FirebaseStorage/Sources/StorageError.swift index fb863afa14d..e716ddd8dc5 100644 --- a/FirebaseStorage/Sources/StorageError.swift +++ b/FirebaseStorage/Sources/StorageError.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// The error domain for codes in the `StorageErrorCode` enum. public let StorageErrorDomain: String = "FIRStorageErrorDomain" diff --git a/FirebaseStorage/Sources/StorageListResult.swift b/FirebaseStorage/Sources/StorageListResult.swift index 418b3c25f20..cf1530251b8 100644 --- a/FirebaseStorage/Sources/StorageListResult.swift +++ b/FirebaseStorage/Sources/StorageListResult.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /** Contains the prefixes and items returned by a `StorageReference.list()` call. */ @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseStorage/Sources/StorageMetadata.swift b/FirebaseStorage/Sources/StorageMetadata.swift index d0a53e69454..0ba7a3f1374 100644 --- a/FirebaseStorage/Sources/StorageMetadata.swift +++ b/FirebaseStorage/Sources/StorageMetadata.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /** * Class which represents the metadata on an object in Firebase Storage. diff --git a/FirebaseStorage/Sources/StorageReference.swift b/FirebaseStorage/Sources/StorageReference.swift index 26d4b27ee5a..5a1526fb9af 100644 --- a/FirebaseStorage/Sources/StorageReference.swift +++ b/FirebaseStorage/Sources/StorageReference.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// `StorageReference` represents a reference to a Google Cloud Storage object. Developers can /// upload and download objects, as well as get/set object metadata, and delete an object at the diff --git a/FirebaseStorage/Sources/StorageTask.swift b/FirebaseStorage/Sources/StorageTask.swift index 84bc23fba22..498ef7c2dac 100644 --- a/FirebaseStorage/Sources/StorageTask.swift +++ b/FirebaseStorage/Sources/StorageTask.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation #if COCOAPODS import GTMSessionFetcher diff --git a/FirebaseStorage/Sources/StorageTaskSnapshot.swift b/FirebaseStorage/Sources/StorageTaskSnapshot.swift index 1d6a019fe50..09f58dd9ca2 100644 --- a/FirebaseStorage/Sources/StorageTaskSnapshot.swift +++ b/FirebaseStorage/Sources/StorageTaskSnapshot.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /** * `StorageTaskSnapshot` represents an immutable view of a task. diff --git a/Firestore/Swift/Source/Codable/EncoderDecoder.swift b/Firestore/Swift/Source/Codable/EncoderDecoder.swift index 29b0e57caab..966c40387f5 100644 --- a/Firestore/Swift/Source/Codable/EncoderDecoder.swift +++ b/Firestore/Swift/Source/Codable/EncoderDecoder.swift @@ -19,7 +19,7 @@ #else @_exported import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE -import FirebaseSharedSwift +public import FirebaseSharedSwift import Foundation public extension Firestore { From 33e7cff1206061f1611d8b938b05a2824f702049 Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 10:58:20 -0400 Subject: [PATCH 05/14] style --- .../Sources/Codable/DatabaseReference+WriteEncodable.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift b/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift index 3368f5e8bb0..dc87a18a7c2 100644 --- a/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift +++ b/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift @@ -18,7 +18,7 @@ import Foundation #if SWIFT_PACKAGE @_exported import FirebaseDatabaseInternal #endif // SWIFT_PACKAGE - public import FirebaseSharedSwift +public import FirebaseSharedSwift public extension DatabaseReference { /// Encodes an instance of `Encodable` and overwrites the encoded data From 46f3fc2d6704e5dd92d5a85aa07bd0bdea95714e Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 11:53:45 -0400 Subject: [PATCH 06/14] more fixes --- FirebaseAI/Sources/AILog.swift | 2 +- FirebaseAI/Tests/Unit/VertexComponentTests.swift | 2 +- .../Sources/ApiService.swift | 2 +- .../Sources/Internal/Logger.swift | 2 +- FirebaseAuth/Sources/Swift/Auth/Auth.swift | 10 +++++----- .../Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift | 4 ++-- .../Swift/SystemService/AuthAPNSTokenManager.swift | 4 ++-- .../Swift/Utilities/AuthDefaultUIDelegate.swift | 4 ++-- .../Sources/Swift/Utilities/AuthUIDelegate.swift | 2 +- .../Sources/HeartbeatLogging/HeartbeatsPayload.swift | 4 ++-- FirebaseFunctions/Sources/Functions.swift | 2 +- FirebaseMLModelDownloader/Sources/DeviceLogger.swift | 2 +- .../Sources/DownloaderUserDefaults.swift | 4 ++-- FirebaseMLModelDownloader/Sources/LocalModelInfo.swift | 4 ++-- .../Sources/ModelDownloadTask.swift | 4 ++-- .../Sources/ModelDownloader.swift | 4 ++-- .../Integration/ModelDownloaderIntegrationTests.swift | 4 ++-- .../Tests/Unit/ModelDownloaderUnitTests.swift | 4 ++-- FirebaseSessions/Sources/ApplicationInfo.swift | 6 +++--- FirebaseSessions/Sources/EventGDTLogger.swift | 2 +- FirebaseSessions/Sources/FirebaseSessions.swift | 10 +++++----- ...ogleDataTransport+GoogleDataTransportProtocol.swift | 2 +- .../Sources/Installations+InstallationsProtocol.swift | 4 ++-- FirebaseSessions/Sources/Logger.swift | 2 +- FirebaseSessions/Sources/NetworkInfo.swift | 4 ++-- FirebaseSessions/Sources/SessionGenerator.swift | 2 +- FirebaseSessions/Sources/SessionInitiator.swift | 4 ++-- FirebaseSessions/Sources/SessionStartEvent.swift | 6 +++--- FirebaseSessions/Sources/Settings/RemoteSettings.swift | 2 +- .../Sources/Settings/SettingsCacheClient.swift | 4 ++-- .../Sources/Settings/SettingsDownloadClient.swift | 4 ++-- .../Tests/TestApp/Shared/MockSubscriberSDK.swift | 2 +- .../Tests/Unit/Mocks/MockApplicationInfo.swift | 4 ++-- .../Tests/Unit/Mocks/MockInstallationsProtocol.swift | 2 +- .../Tests/Unit/Mocks/MockNetworkInfo.swift | 4 ++-- .../Tests/Unit/SessionStartEventTests.swift | 4 ++-- .../Sources/Internal/StorageTokenAuthorizer.swift | 2 +- FirebaseStorage/Sources/Storage.swift | 2 +- FirebaseStorage/Sources/StorageUploadTask.swift | 4 ++-- Firestore/Swift/Source/Codable/DocumentID.swift | 4 ++-- .../Source/Codable/TimestampDecodingStrategy.swift | 2 +- .../Source/Codable/TimestampEncodingStrategy.swift | 2 +- .../Swift/Source/PropertyWrapper/FirestoreQuery.swift | 2 +- 43 files changed, 75 insertions(+), 75 deletions(-) diff --git a/FirebaseAI/Sources/AILog.swift b/FirebaseAI/Sources/AILog.swift index 4019c2cd0ff..1488893d0ec 100644 --- a/FirebaseAI/Sources/AILog.swift +++ b/FirebaseAI/Sources/AILog.swift @@ -15,7 +15,7 @@ import Foundation import os.log -internal import FirebaseCoreExtension +import FirebaseCoreExtension enum AILog { /// Log message codes for the Firebase AI SDK diff --git a/FirebaseAI/Tests/Unit/VertexComponentTests.swift b/FirebaseAI/Tests/Unit/VertexComponentTests.swift index 7202e01f4d6..9e30de71866 100644 --- a/FirebaseAI/Tests/Unit/VertexComponentTests.swift +++ b/FirebaseAI/Tests/Unit/VertexComponentTests.swift @@ -13,7 +13,7 @@ // limitations under the License. @preconcurrency import FirebaseCore -internal import FirebaseCoreExtension +import FirebaseCoreExtension import Foundation import XCTest diff --git a/FirebaseAppDistributionInternal/Sources/ApiService.swift b/FirebaseAppDistributionInternal/Sources/ApiService.swift index b42519e6a61..ef0f02de0aa 100644 --- a/FirebaseAppDistributionInternal/Sources/ApiService.swift +++ b/FirebaseAppDistributionInternal/Sources/ApiService.swift @@ -17,7 +17,7 @@ import FirebaseInstallations import Foundation import UIKit -internal import FirebaseCoreInternal +import FirebaseCoreInternal enum Strings { static let errorDomain = "com.firebase.appdistribution.api" diff --git a/FirebaseAppDistributionInternal/Sources/Internal/Logger.swift b/FirebaseAppDistributionInternal/Sources/Internal/Logger.swift index 9ad2f484d21..f0227f09b4a 100644 --- a/FirebaseAppDistributionInternal/Sources/Internal/Logger.swift +++ b/FirebaseAppDistributionInternal/Sources/Internal/Logger.swift @@ -15,7 +15,7 @@ import Foundation -internal import FirebaseCoreExtension +import FirebaseCoreExtension /// /// Logger is responsible for printing console logs diff --git a/FirebaseAuth/Sources/Swift/Auth/Auth.swift b/FirebaseAuth/Sources/Swift/Auth/Auth.swift index cf16ef124cc..b6c25080b8b 100644 --- a/FirebaseAuth/Sources/Swift/Auth/Auth.swift +++ b/FirebaseAuth/Sources/Swift/Auth/Auth.swift @@ -15,14 +15,14 @@ import Foundation import FirebaseAppCheckInterop -import FirebaseAuthInterop -import FirebaseCore +public import FirebaseAuthInterop +public import FirebaseCore import FirebaseCoreExtension #if COCOAPODS - internal import GoogleUtilities + import GoogleUtilities #else - internal import GoogleUtilities_AppDelegateSwizzler - internal import GoogleUtilities_Environment + import GoogleUtilities_AppDelegateSwizzler + import GoogleUtilities_Environment #endif #if os(iOS) || os(tvOS) || targetEnvironment(macCatalyst) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift index 9791b974e52..0da9c839da3 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift @@ -14,9 +14,9 @@ import Foundation #if COCOAPODS - internal import GoogleUtilities + import GoogleUtilities #else - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #endif #if os(iOS) diff --git a/FirebaseAuth/Sources/Swift/SystemService/AuthAPNSTokenManager.swift b/FirebaseAuth/Sources/Swift/SystemService/AuthAPNSTokenManager.swift index f7da822342e..819d2fb87d6 100644 --- a/FirebaseAuth/Sources/Swift/SystemService/AuthAPNSTokenManager.swift +++ b/FirebaseAuth/Sources/Swift/SystemService/AuthAPNSTokenManager.swift @@ -17,9 +17,9 @@ import UIKit #if COCOAPODS - internal import GoogleUtilities + import GoogleUtilities #else - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #endif // COCOAPODS // Protocol to help with unit tests. diff --git a/FirebaseAuth/Sources/Swift/Utilities/AuthDefaultUIDelegate.swift b/FirebaseAuth/Sources/Swift/Utilities/AuthDefaultUIDelegate.swift index 4106977a5e1..a186769020b 100644 --- a/FirebaseAuth/Sources/Swift/Utilities/AuthDefaultUIDelegate.swift +++ b/FirebaseAuth/Sources/Swift/Utilities/AuthDefaultUIDelegate.swift @@ -17,9 +17,9 @@ import Foundation import UIKit #if COCOAPODS - internal import GoogleUtilities + import GoogleUtilities #else - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #endif /// Class responsible for providing a default AuthUIDelegate. diff --git a/FirebaseAuth/Sources/Swift/Utilities/AuthUIDelegate.swift b/FirebaseAuth/Sources/Swift/Utilities/AuthUIDelegate.swift index 94025574ab4..ec11663dcde 100644 --- a/FirebaseAuth/Sources/Swift/Utilities/AuthUIDelegate.swift +++ b/FirebaseAuth/Sources/Swift/Utilities/AuthUIDelegate.swift @@ -15,7 +15,7 @@ #if os(iOS) || os(tvOS) || os(visionOS) import Foundation - import UIKit + public import UIKit /// A protocol to handle user interface interactions for Firebase Auth. /// diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift index 3d302576085..5083782b8c5 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift @@ -15,9 +15,9 @@ public import Foundation #if SWIFT_PACKAGE - internal import GoogleUtilities_NSData + import GoogleUtilities_NSData #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE /// A type that provides a string representation for use in an HTTP header. diff --git a/FirebaseFunctions/Sources/Functions.swift b/FirebaseFunctions/Sources/Functions.swift index 3aeaea1d73e..76cb18613f8 100644 --- a/FirebaseFunctions/Sources/Functions.swift +++ b/FirebaseFunctions/Sources/Functions.swift @@ -24,7 +24,7 @@ import Foundation @preconcurrency import GTMSessionFetcherCore #endif -internal import FirebaseCoreExtension +import FirebaseCoreExtension private import FirebaseCoreInternal /// File specific constants. diff --git a/FirebaseMLModelDownloader/Sources/DeviceLogger.swift b/FirebaseMLModelDownloader/Sources/DeviceLogger.swift index bbcd78a67c2..b3e7f07bf66 100644 --- a/FirebaseMLModelDownloader/Sources/DeviceLogger.swift +++ b/FirebaseMLModelDownloader/Sources/DeviceLogger.swift @@ -14,7 +14,7 @@ import Foundation -internal import FirebaseCoreExtension +import FirebaseCoreExtension /// Enum of log messages. enum LoggerMessageCode: Int { diff --git a/FirebaseMLModelDownloader/Sources/DownloaderUserDefaults.swift b/FirebaseMLModelDownloader/Sources/DownloaderUserDefaults.swift index d1e0e79902e..c28fc9ad5b5 100644 --- a/FirebaseMLModelDownloader/Sources/DownloaderUserDefaults.swift +++ b/FirebaseMLModelDownloader/Sources/DownloaderUserDefaults.swift @@ -14,9 +14,9 @@ import Foundation #if SWIFT_PACKAGE - internal import GoogleUtilities_UserDefaults + import GoogleUtilities_UserDefaults #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE /// Protocol to save or delete model info in user defaults. diff --git a/FirebaseMLModelDownloader/Sources/LocalModelInfo.swift b/FirebaseMLModelDownloader/Sources/LocalModelInfo.swift index cd5aaedc301..dc16164a576 100644 --- a/FirebaseMLModelDownloader/Sources/LocalModelInfo.swift +++ b/FirebaseMLModelDownloader/Sources/LocalModelInfo.swift @@ -14,9 +14,9 @@ import Foundation #if SWIFT_PACKAGE - internal import GoogleUtilities_UserDefaults + import GoogleUtilities_UserDefaults #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE /// Model info object with details about downloaded and locally available model. diff --git a/FirebaseMLModelDownloader/Sources/ModelDownloadTask.swift b/FirebaseMLModelDownloader/Sources/ModelDownloadTask.swift index ef30f1aa70a..735f4778b5d 100644 --- a/FirebaseMLModelDownloader/Sources/ModelDownloadTask.swift +++ b/FirebaseMLModelDownloader/Sources/ModelDownloadTask.swift @@ -14,9 +14,9 @@ import Foundation #if SWIFT_PACKAGE - internal import GoogleUtilities_UserDefaults + import GoogleUtilities_UserDefaults #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE /// Task to download model file to device. diff --git a/FirebaseMLModelDownloader/Sources/ModelDownloader.swift b/FirebaseMLModelDownloader/Sources/ModelDownloader.swift index 0aebaa21eb3..36a5a7ce7bb 100644 --- a/FirebaseMLModelDownloader/Sources/ModelDownloader.swift +++ b/FirebaseMLModelDownloader/Sources/ModelDownloader.swift @@ -16,9 +16,9 @@ public import FirebaseCore import FirebaseInstallations import Foundation #if SWIFT_PACKAGE - internal import GoogleUtilities_UserDefaults + import GoogleUtilities_UserDefaults #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE /// Possible ways to get a custom model. diff --git a/FirebaseMLModelDownloader/Tests/Integration/ModelDownloaderIntegrationTests.swift b/FirebaseMLModelDownloader/Tests/Integration/ModelDownloaderIntegrationTests.swift index 7bc09af0e1a..722ae4cbed6 100644 --- a/FirebaseMLModelDownloader/Tests/Integration/ModelDownloaderIntegrationTests.swift +++ b/FirebaseMLModelDownloader/Tests/Integration/ModelDownloaderIntegrationTests.swift @@ -23,9 +23,9 @@ @testable import FirebaseMLModelDownloader import XCTest #if SWIFT_PACKAGE - internal import GoogleUtilities_UserDefaults + import GoogleUtilities_UserDefaults #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE extension GULUserDefaults { diff --git a/FirebaseMLModelDownloader/Tests/Unit/ModelDownloaderUnitTests.swift b/FirebaseMLModelDownloader/Tests/Unit/ModelDownloaderUnitTests.swift index ad08f3a273d..73a32af252e 100644 --- a/FirebaseMLModelDownloader/Tests/Unit/ModelDownloaderUnitTests.swift +++ b/FirebaseMLModelDownloader/Tests/Unit/ModelDownloaderUnitTests.swift @@ -23,9 +23,9 @@ @testable import FirebaseMLModelDownloader import XCTest #if SWIFT_PACKAGE - internal import GoogleUtilities_UserDefaults + import GoogleUtilities_UserDefaults #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE /// Mock options to configure default Firebase app. diff --git a/FirebaseSessions/Sources/ApplicationInfo.swift b/FirebaseSessions/Sources/ApplicationInfo.swift index 85c42a9ef9d..e17211ee09d 100644 --- a/FirebaseSessions/Sources/ApplicationInfo.swift +++ b/FirebaseSessions/Sources/ApplicationInfo.swift @@ -15,16 +15,16 @@ import Foundation -internal import FirebaseCore +import FirebaseCore #if SWIFT_PACKAGE import FirebaseSessionsObjC #endif // SWIFT_PACKAGE #if SWIFT_PACKAGE - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE /// Development environment for the application. diff --git a/FirebaseSessions/Sources/EventGDTLogger.swift b/FirebaseSessions/Sources/EventGDTLogger.swift index bb96c7753bc..52199aa49ae 100644 --- a/FirebaseSessions/Sources/EventGDTLogger.swift +++ b/FirebaseSessions/Sources/EventGDTLogger.swift @@ -15,7 +15,7 @@ import Foundation -internal import GoogleDataTransport +import GoogleDataTransport protocol EventGDTLoggerProtocol: Sendable { func logEvent(event: SessionStartEvent, completion: @escaping (Result) -> Void) diff --git a/FirebaseSessions/Sources/FirebaseSessions.swift b/FirebaseSessions/Sources/FirebaseSessions.swift index 0894bf2a028..ec799648c00 100644 --- a/FirebaseSessions/Sources/FirebaseSessions.swift +++ b/FirebaseSessions/Sources/FirebaseSessions.swift @@ -15,16 +15,16 @@ import Foundation // Avoids exposing internal FirebaseCore APIs to Swift users. -internal import FirebaseCoreExtension -internal import FirebaseInstallations -internal import GoogleDataTransport +import FirebaseCoreExtension +import FirebaseInstallations +import GoogleDataTransport #if swift(>=6.0) - internal import Promises + import Promises #elseif swift(>=5.10) import Promises #else - internal import Promises + import Promises #endif private enum GoogleDataTransportConfig { diff --git a/FirebaseSessions/Sources/GoogleDataTransport+GoogleDataTransportProtocol.swift b/FirebaseSessions/Sources/GoogleDataTransport+GoogleDataTransportProtocol.swift index 9c244fe6fe4..e6080d1a4dc 100644 --- a/FirebaseSessions/Sources/GoogleDataTransport+GoogleDataTransportProtocol.swift +++ b/FirebaseSessions/Sources/GoogleDataTransport+GoogleDataTransportProtocol.swift @@ -15,7 +15,7 @@ import Foundation -@preconcurrency internal import GoogleDataTransport +@preconcurrency import GoogleDataTransport enum GoogleDataTransportProtocolErrors: Error { case writeFailure diff --git a/FirebaseSessions/Sources/Installations+InstallationsProtocol.swift b/FirebaseSessions/Sources/Installations+InstallationsProtocol.swift index 158be0bee64..d4ae6f04a68 100644 --- a/FirebaseSessions/Sources/Installations+InstallationsProtocol.swift +++ b/FirebaseSessions/Sources/Installations+InstallationsProtocol.swift @@ -15,8 +15,8 @@ import Foundation -internal import FirebaseInstallations -internal import FirebaseCoreInternal +import FirebaseInstallations +import FirebaseCoreInternal protocol InstallationsProtocol: Sendable { var installationsWaitTimeInSecond: Int { get } diff --git a/FirebaseSessions/Sources/Logger.swift b/FirebaseSessions/Sources/Logger.swift index a8a3b3e7e2b..7c2dab685ec 100644 --- a/FirebaseSessions/Sources/Logger.swift +++ b/FirebaseSessions/Sources/Logger.swift @@ -15,7 +15,7 @@ import Foundation -internal import FirebaseCoreExtension +import FirebaseCoreExtension /// /// Logger is responsible for printing console logs diff --git a/FirebaseSessions/Sources/NetworkInfo.swift b/FirebaseSessions/Sources/NetworkInfo.swift index 8d7e4110571..7ef28240708 100644 --- a/FirebaseSessions/Sources/NetworkInfo.swift +++ b/FirebaseSessions/Sources/NetworkInfo.swift @@ -20,9 +20,9 @@ import Foundation #endif // SWIFT_PACKAGE #if SWIFT_PACKAGE - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE protocol NetworkInfoProtocol: Sendable { diff --git a/FirebaseSessions/Sources/SessionGenerator.swift b/FirebaseSessions/Sources/SessionGenerator.swift index a237f879710..bf571acd3c0 100644 --- a/FirebaseSessions/Sources/SessionGenerator.swift +++ b/FirebaseSessions/Sources/SessionGenerator.swift @@ -15,7 +15,7 @@ import Foundation -internal import FirebaseInstallations +import FirebaseInstallations struct SessionInfo { let sessionId: String diff --git a/FirebaseSessions/Sources/SessionInitiator.swift b/FirebaseSessions/Sources/SessionInitiator.swift index 9524fdbae73..469b00119d5 100644 --- a/FirebaseSessions/Sources/SessionInitiator.swift +++ b/FirebaseSessions/Sources/SessionInitiator.swift @@ -23,9 +23,9 @@ import Foundation #endif // os(iOS) || os(tvOS) #if SWIFT_PACKAGE - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE /// The SessionInitiator is responsible for: diff --git a/FirebaseSessions/Sources/SessionStartEvent.swift b/FirebaseSessions/Sources/SessionStartEvent.swift index 8b3929054fc..099c3ef7458 100644 --- a/FirebaseSessions/Sources/SessionStartEvent.swift +++ b/FirebaseSessions/Sources/SessionStartEvent.swift @@ -15,16 +15,16 @@ import Foundation -internal import GoogleDataTransport +import GoogleDataTransport #if SWIFT_PACKAGE import FirebaseSessionsObjC #endif // SWIFT_PACKAGE #if SWIFT_PACKAGE - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE /// diff --git a/FirebaseSessions/Sources/Settings/RemoteSettings.swift b/FirebaseSessions/Sources/Settings/RemoteSettings.swift index 2e0e0080ab0..f4206b2c09f 100644 --- a/FirebaseSessions/Sources/Settings/RemoteSettings.swift +++ b/FirebaseSessions/Sources/Settings/RemoteSettings.swift @@ -14,7 +14,7 @@ // limitations under the License. import Foundation -internal import FirebaseCoreInternal +import FirebaseCoreInternal /// Extends ApplicationInfoProtocol to string-format a combined appDisplayVersion and /// appBuildVersion diff --git a/FirebaseSessions/Sources/Settings/SettingsCacheClient.swift b/FirebaseSessions/Sources/Settings/SettingsCacheClient.swift index 18f9bcefbff..a44740c16f7 100644 --- a/FirebaseSessions/Sources/Settings/SettingsCacheClient.swift +++ b/FirebaseSessions/Sources/Settings/SettingsCacheClient.swift @@ -17,9 +17,9 @@ import Foundation // TODO: sendable (remove preconcurrency) #if SWIFT_PACKAGE - @preconcurrency internal import GoogleUtilities_UserDefaults + @preconcurrency import GoogleUtilities_UserDefaults #else - @preconcurrency internal import GoogleUtilities + @preconcurrency import GoogleUtilities #endif // SWIFT_PACKAGE /// CacheKey is like a "key" to a "safe". It provides necessary metadata about the current cache to diff --git a/FirebaseSessions/Sources/Settings/SettingsDownloadClient.swift b/FirebaseSessions/Sources/Settings/SettingsDownloadClient.swift index a1e1deaad82..37253472ec2 100644 --- a/FirebaseSessions/Sources/Settings/SettingsDownloadClient.swift +++ b/FirebaseSessions/Sources/Settings/SettingsDownloadClient.swift @@ -16,9 +16,9 @@ import Foundation #if SWIFT_PACKAGE - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE protocol SettingsDownloadClient: Sendable { diff --git a/FirebaseSessions/Tests/TestApp/Shared/MockSubscriberSDK.swift b/FirebaseSessions/Tests/TestApp/Shared/MockSubscriberSDK.swift index c9a59e89f2b..d50bb35e383 100644 --- a/FirebaseSessions/Tests/TestApp/Shared/MockSubscriberSDK.swift +++ b/FirebaseSessions/Tests/TestApp/Shared/MockSubscriberSDK.swift @@ -17,7 +17,7 @@ import FirebaseSessions import Foundation // Avoids exposing internal FirebaseCore APIs to Swift users. -internal import FirebaseCoreExtension +import FirebaseCoreExtension @objc(FIRMockSubscriberSDKProtocol) protocol MockSubscriberSDKProtocol { diff --git a/FirebaseSessions/Tests/Unit/Mocks/MockApplicationInfo.swift b/FirebaseSessions/Tests/Unit/Mocks/MockApplicationInfo.swift index 8c5e3e5d07c..6ed93a2f16f 100644 --- a/FirebaseSessions/Tests/Unit/Mocks/MockApplicationInfo.swift +++ b/FirebaseSessions/Tests/Unit/Mocks/MockApplicationInfo.swift @@ -16,9 +16,9 @@ import Foundation #if SWIFT_PACKAGE - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE @testable import FirebaseSessions diff --git a/FirebaseSessions/Tests/Unit/Mocks/MockInstallationsProtocol.swift b/FirebaseSessions/Tests/Unit/Mocks/MockInstallationsProtocol.swift index 112605e7aeb..579875e9534 100644 --- a/FirebaseSessions/Tests/Unit/Mocks/MockInstallationsProtocol.swift +++ b/FirebaseSessions/Tests/Unit/Mocks/MockInstallationsProtocol.swift @@ -13,7 +13,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -internal import FirebaseInstallations +import FirebaseInstallations @testable import FirebaseSessions diff --git a/FirebaseSessions/Tests/Unit/Mocks/MockNetworkInfo.swift b/FirebaseSessions/Tests/Unit/Mocks/MockNetworkInfo.swift index 9413c3951b0..8ed408e6c77 100644 --- a/FirebaseSessions/Tests/Unit/Mocks/MockNetworkInfo.swift +++ b/FirebaseSessions/Tests/Unit/Mocks/MockNetworkInfo.swift @@ -16,9 +16,9 @@ import Foundation #if SWIFT_PACKAGE - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE @testable import FirebaseSessions diff --git a/FirebaseSessions/Tests/Unit/SessionStartEventTests.swift b/FirebaseSessions/Tests/Unit/SessionStartEventTests.swift index edd169596f5..7a2f14e38d6 100644 --- a/FirebaseSessions/Tests/Unit/SessionStartEventTests.swift +++ b/FirebaseSessions/Tests/Unit/SessionStartEventTests.swift @@ -20,9 +20,9 @@ import XCTest #endif // SWIFT_PACKAGE #if SWIFT_PACKAGE - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #else - internal import GoogleUtilities + import GoogleUtilities #endif // SWIFT_PACKAGE @testable import FirebaseSessions diff --git a/FirebaseStorage/Sources/Internal/StorageTokenAuthorizer.swift b/FirebaseStorage/Sources/Internal/StorageTokenAuthorizer.swift index 3dec3a3872a..cd878d36b82 100644 --- a/FirebaseStorage/Sources/Internal/StorageTokenAuthorizer.swift +++ b/FirebaseStorage/Sources/Internal/StorageTokenAuthorizer.swift @@ -17,7 +17,7 @@ import Foundation import FirebaseAppCheckInterop import FirebaseAuthInterop import FirebaseCore -internal import FirebaseCoreExtension +import FirebaseCoreExtension #if COCOAPODS import GTMSessionFetcher diff --git a/FirebaseStorage/Sources/Storage.swift b/FirebaseStorage/Sources/Storage.swift index 1fe94b4928c..26e8dd55b59 100644 --- a/FirebaseStorage/Sources/Storage.swift +++ b/FirebaseStorage/Sources/Storage.swift @@ -19,7 +19,7 @@ import FirebaseAuthInterop public import FirebaseCore // Avoids exposing internal FirebaseCore APIs to Swift users. -internal import FirebaseCoreExtension +import FirebaseCoreExtension /// Firebase Storage is a service that supports uploading and downloading binary objects, /// such as images, videos, and other files to Google Cloud Storage. Instances of `Storage` diff --git a/FirebaseStorage/Sources/StorageUploadTask.swift b/FirebaseStorage/Sources/StorageUploadTask.swift index 80a25209b4e..f678c424825 100644 --- a/FirebaseStorage/Sources/StorageUploadTask.swift +++ b/FirebaseStorage/Sources/StorageUploadTask.swift @@ -15,9 +15,9 @@ import Foundation #if COCOAPODS - internal import GoogleUtilities + import GoogleUtilities #else - internal import GoogleUtilities_Environment + import GoogleUtilities_Environment #endif // COCOAPODS #if COCOAPODS diff --git a/Firestore/Swift/Source/Codable/DocumentID.swift b/Firestore/Swift/Source/Codable/DocumentID.swift index ea82a0e1cad..1112310f139 100644 --- a/Firestore/Swift/Source/Codable/DocumentID.swift +++ b/Firestore/Swift/Source/Codable/DocumentID.swift @@ -20,8 +20,8 @@ @_exported import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE -internal import FirebaseCoreExtension -import FirebaseSharedSwift +import FirebaseCoreExtension +public import FirebaseSharedSwift extension CodingUserInfoKey { static let documentRefUserInfoKey = diff --git a/Firestore/Swift/Source/Codable/TimestampDecodingStrategy.swift b/Firestore/Swift/Source/Codable/TimestampDecodingStrategy.swift index ef1e94a1ebe..576127a3e52 100644 --- a/Firestore/Swift/Source/Codable/TimestampDecodingStrategy.swift +++ b/Firestore/Swift/Source/Codable/TimestampDecodingStrategy.swift @@ -16,7 +16,7 @@ @_exported import class FirebaseCore.Timestamp -import FirebaseSharedSwift +public import FirebaseSharedSwift public extension FirebaseDataDecoder.DateDecodingStrategy { /// Decode the `Date` from a Firestore `Timestamp` diff --git a/Firestore/Swift/Source/Codable/TimestampEncodingStrategy.swift b/Firestore/Swift/Source/Codable/TimestampEncodingStrategy.swift index 3ee547d8ba0..b3e2dfaa36c 100644 --- a/Firestore/Swift/Source/Codable/TimestampEncodingStrategy.swift +++ b/Firestore/Swift/Source/Codable/TimestampEncodingStrategy.swift @@ -16,7 +16,7 @@ @_exported import class FirebaseCore.Timestamp -import FirebaseSharedSwift +public import FirebaseSharedSwift import Foundation public extension FirebaseDataEncoder.DateEncodingStrategy { diff --git a/Firestore/Swift/Source/PropertyWrapper/FirestoreQuery.swift b/Firestore/Swift/Source/PropertyWrapper/FirestoreQuery.swift index ff78b68e509..b5e747d0f75 100644 --- a/Firestore/Swift/Source/PropertyWrapper/FirestoreQuery.swift +++ b/Firestore/Swift/Source/PropertyWrapper/FirestoreQuery.swift @@ -14,7 +14,7 @@ * limitations under the License. */ -import SwiftUI +public import SwiftUI #if SWIFT_PACKAGE @_exported import FirebaseFirestoreInternalWrapper From 360367620f2896e1bb894487ac8154034ca25cc8 Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 11:55:40 -0400 Subject: [PATCH 07/14] style --- .../Sources/Installations+InstallationsProtocol.swift | 2 +- FirebaseSessions/Sources/Settings/RemoteSettings.swift | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/FirebaseSessions/Sources/Installations+InstallationsProtocol.swift b/FirebaseSessions/Sources/Installations+InstallationsProtocol.swift index d4ae6f04a68..fd75f7ab848 100644 --- a/FirebaseSessions/Sources/Installations+InstallationsProtocol.swift +++ b/FirebaseSessions/Sources/Installations+InstallationsProtocol.swift @@ -15,8 +15,8 @@ import Foundation -import FirebaseInstallations import FirebaseCoreInternal +import FirebaseInstallations protocol InstallationsProtocol: Sendable { var installationsWaitTimeInSecond: Int { get } diff --git a/FirebaseSessions/Sources/Settings/RemoteSettings.swift b/FirebaseSessions/Sources/Settings/RemoteSettings.swift index f4206b2c09f..436dccd0a23 100644 --- a/FirebaseSessions/Sources/Settings/RemoteSettings.swift +++ b/FirebaseSessions/Sources/Settings/RemoteSettings.swift @@ -13,8 +13,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation import FirebaseCoreInternal +import Foundation /// Extends ApplicationInfoProtocol to string-format a combined appDisplayVersion and /// appBuildVersion From 48568be2df64f7f644e51684e8a92637013e99b3 Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 12:07:34 -0400 Subject: [PATCH 08/14] remove import check --- scripts/check_imports.swift | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/scripts/check_imports.swift b/scripts/check_imports.swift index fee25f61a88..739d369f7b2 100755 --- a/scripts/check_imports.swift +++ b/scripts/check_imports.swift @@ -81,21 +81,6 @@ private func checkFile(_ file: String, logger: ErrorLogger, inRepo repoURL: URL, } guard !isSwiftFile else { - // Swift specific checks. - fileContents.components(separatedBy: .newlines) - .enumerated() // [(lineNum, line), ...] - .filter { - $1.starts(with: "import FirebaseCoreExtension") - /* FirebaseVertexAI is using `InternalImportsByDefault` so its files are not checked. */ - && !file.contains("FirebaseVertexAI") - } - .forEach { lineNum, line in - logger - .importLog( - "Use `@_implementationOnly import FirebaseCoreExtension` when importing `FirebaseCoreExtension`.", - file, lineNum - ) - } return } From 34cee883a5cd98faf69a441887459329bfd48819 Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 13:08:04 -0400 Subject: [PATCH 09/14] more fixes --- FirebaseAuth/Sources/Swift/ActionCode/ActionCodeInfo.swift | 2 +- .../Sources/Swift/ActionCode/ActionCodeSettings.swift | 2 +- FirebaseAuth/Sources/Swift/ActionCode/ActionCodeURL.swift | 2 +- FirebaseAuth/Sources/Swift/Auth/AuthDataResult.swift | 2 +- FirebaseAuth/Sources/Swift/Auth/AuthSettings.swift | 2 +- FirebaseAuth/Sources/Swift/Auth/AuthTokenResult.swift | 2 +- FirebaseAuth/Sources/Swift/AuthProvider/AuthCredential.swift | 2 +- .../Sources/Swift/AuthProvider/EmailAuthProvider.swift | 2 +- .../Sources/Swift/AuthProvider/FacebookAuthProvider.swift | 2 +- .../Sources/Swift/AuthProvider/FederatedAuthProvider.swift | 2 +- .../Sources/Swift/AuthProvider/GameCenterAuthProvider.swift | 2 +- .../Sources/Swift/AuthProvider/GitHubAuthProvider.swift | 2 +- .../Sources/Swift/AuthProvider/GoogleAuthProvider.swift | 2 +- FirebaseAuth/Sources/Swift/AuthProvider/OAuthCredential.swift | 2 +- FirebaseAuth/Sources/Swift/AuthProvider/OAuthProvider.swift | 2 +- .../Sources/Swift/AuthProvider/PhoneAuthCredential.swift | 2 +- .../Sources/Swift/AuthProvider/PhoneAuthProvider.swift | 2 +- .../Sources/Swift/AuthProvider/TwitterAuthProvider.swift | 2 +- FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift | 2 +- .../Sources/Swift/MultiFactor/MultiFactorAssertion.swift | 2 +- FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift | 2 +- .../Sources/Swift/MultiFactor/MultiFactorResolver.swift | 2 +- .../Sources/Swift/MultiFactor/MultiFactorSession.swift | 2 +- .../Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift | 2 +- .../Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift | 2 +- .../Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift | 2 +- FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift | 2 +- FirebaseAuth/Sources/Swift/User/AdditionalUserInfo.swift | 2 +- FirebaseAuth/Sources/Swift/User/User.swift | 2 +- FirebaseAuth/Sources/Swift/User/UserInfo.swift | 2 +- FirebaseAuth/Sources/Swift/User/UserMetadata.swift | 2 +- .../Sources/Swift/User/UserProfileChangeRequest.swift | 2 +- FirebaseAuth/Sources/Swift/Utilities/AuthErrors.swift | 2 +- .../Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift | 2 +- .../Sources/Codable/DatabaseReference+WriteEncodable.swift | 2 +- FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift | 2 +- FirebaseDatabase/Swift/Sources/Codable/ServerTimestamp.swift | 2 +- .../Swift/Source/CustomInAppMessageDisplayViewModifier.swift | 2 +- .../Swift/Source/SwiftUIPreviewHelpers.swift | 2 +- FirebaseRemoteConfig/Swift/Codable.swift | 2 +- FirebaseRemoteConfig/Swift/CustomSignals.swift | 2 +- .../Swift/FirebaseRemoteConfigValueDecoderHelper.swift | 2 +- .../Swift/PropertyWrapper/RemoteConfigProperty.swift | 2 +- .../Swift/PropertyWrapper/RemoteConfigValueObservable.swift | 2 +- FirebaseRemoteConfig/Swift/Value.swift | 2 +- .../Source/AsyncAwait/CollectionReference+AsyncAwait.swift | 4 ++-- Firestore/Swift/Source/AsyncAwait/Firestore+AsyncAwait.swift | 4 ++-- Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift | 4 ++-- .../Source/Codable/CollectionReference+WriteEncodable.swift | 4 ++-- Firestore/Swift/Source/Codable/DocumentID.swift | 4 ++-- .../Swift/Source/Codable/DocumentReference+Codable.swift | 4 ++-- .../Source/Codable/DocumentReference+ReadDecodable.swift | 4 ++-- .../Source/Codable/DocumentReference+WriteEncodable.swift | 4 ++-- .../Swift/Source/Codable/DocumentSnapshot+ReadDecodable.swift | 4 ++-- Firestore/Swift/Source/Codable/EncoderDecoder.swift | 4 ++-- Firestore/Swift/Source/Codable/ExplicitNull.swift | 4 ++-- Firestore/Swift/Source/Codable/FieldValue+Encodable.swift | 4 ++-- Firestore/Swift/Source/Codable/GeoPoint+Codable.swift | 4 ++-- Firestore/Swift/Source/Codable/ServerTimestamp.swift | 2 +- .../Swift/Source/Codable/Transaction+WriteEncodable.swift | 4 ++-- Firestore/Swift/Source/Codable/VectorValue+Codable.swift | 4 ++-- .../Swift/Source/Codable/WriteBatch+WriteEncodable.swift | 4 ++-- Firestore/Swift/Source/PropertyWrapper/FirestoreQuery.swift | 4 ++-- .../Source/PropertyWrapper/FirestoreQueryObservable.swift | 4 ++-- Firestore/Swift/Source/PropertyWrapper/QueryPredicate.swift | 4 ++-- Firestore/Swift/Source/SwiftAPI/FieldValue+Swift.swift | 4 ++-- Firestore/Swift/Source/SwiftAPI/VectorValue+Swift.swift | 4 ++-- Firestore/Swift/Source/SwiftHeaderWorkaround.swift | 4 ++-- 68 files changed, 90 insertions(+), 90 deletions(-) diff --git a/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeInfo.swift b/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeInfo.swift index abc783276ae..60e985de6a0 100644 --- a/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeInfo.swift +++ b/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeInfo.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation // TODO(Swift 6 Breaking): This type is immutable. Consider removing `open` at // breaking change so checked Sendable can be used. diff --git a/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeSettings.swift b/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeSettings.swift index 74472e33c71..0e0dab87db9 100644 --- a/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeSettings.swift +++ b/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeSettings.swift @@ -13,7 +13,7 @@ // limitations under the License. import FirebaseCoreInternal -import Foundation +public import Foundation // TODO(Swift 6 Breaking): Consider breaking up into a checked Sendable Swift // type and unchecked Sendable ObjC wrapper class. diff --git a/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeURL.swift b/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeURL.swift index dbed003f05a..d02a37e5689 100644 --- a/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeURL.swift +++ b/FirebaseAuth/Sources/Swift/ActionCode/ActionCodeURL.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation // TODO(Swift 6 Breaking): This type is immutable. Consider removing `open` at // breaking change so checked Sendable can be used. diff --git a/FirebaseAuth/Sources/Swift/Auth/AuthDataResult.swift b/FirebaseAuth/Sources/Swift/Auth/AuthDataResult.swift index 9d6dacd2687..8a0ce9e013f 100644 --- a/FirebaseAuth/Sources/Swift/Auth/AuthDataResult.swift +++ b/FirebaseAuth/Sources/Swift/Auth/AuthDataResult.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) extension AuthDataResult: NSSecureCoding {} diff --git a/FirebaseAuth/Sources/Swift/Auth/AuthSettings.swift b/FirebaseAuth/Sources/Swift/Auth/AuthSettings.swift index dbd77df5306..2fd69144dce 100644 --- a/FirebaseAuth/Sources/Swift/Auth/AuthSettings.swift +++ b/FirebaseAuth/Sources/Swift/Auth/AuthSettings.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Determines settings related to an auth object. @objc(FIRAuthSettings) open class AuthSettings: NSObject, NSCopying { diff --git a/FirebaseAuth/Sources/Swift/Auth/AuthTokenResult.swift b/FirebaseAuth/Sources/Swift/Auth/AuthTokenResult.swift index 90be2649ef6..56638fa9565 100644 --- a/FirebaseAuth/Sources/Swift/Auth/AuthTokenResult.swift +++ b/FirebaseAuth/Sources/Swift/Auth/AuthTokenResult.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) extension AuthTokenResult: NSSecureCoding {} diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/AuthCredential.swift b/FirebaseAuth/Sources/Swift/AuthProvider/AuthCredential.swift index 2ae683ae22b..c8f5eeaf6fd 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/AuthCredential.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/AuthCredential.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Public representation of a credential. @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/EmailAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/EmailAuthProvider.swift index e87445b84a2..900079479e3 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/EmailAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/EmailAuthProvider.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// A concrete implementation of `AuthProvider` for Email & Password Sign In. @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/FacebookAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/FacebookAuthProvider.swift index b02ee16854d..3355e032a28 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/FacebookAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/FacebookAuthProvider.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Utility class for constructing Facebook Sign In credentials. @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/FederatedAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/FederatedAuthProvider.swift index 0399b0584ec..16676376c78 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/FederatedAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/FederatedAuthProvider.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Utility type for constructing federated auth provider credentials. @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/GameCenterAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/GameCenterAuthProvider.swift index 935418f27d5..90828db47a3 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/GameCenterAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/GameCenterAuthProvider.swift @@ -13,7 +13,7 @@ // limitations under the License. #if !os(watchOS) - import Foundation + public import Foundation import GameKit // TODO: Delete this when minimum iOS version passes 13.5. diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/GitHubAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/GitHubAuthProvider.swift index 8765acaa7db..7891b405bfa 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/GitHubAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/GitHubAuthProvider.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Utility class for constructing GitHub Sign In credentials. @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/GoogleAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/GoogleAuthProvider.swift index 38cfa40386e..dc8a08b99ba 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/GoogleAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/GoogleAuthProvider.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Utility class for constructing Google Sign In credentials. @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/OAuthCredential.swift b/FirebaseAuth/Sources/Swift/AuthProvider/OAuthCredential.swift index 8029fd6df51..499c691a5c5 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/OAuthCredential.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/OAuthCredential.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Internal implementation of `AuthCredential` for generic credentials. @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/OAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/OAuthProvider.swift index 761f57cf5d1..8defdd1d1f5 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/OAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/OAuthProvider.swift @@ -13,7 +13,7 @@ // limitations under the License. import CommonCrypto -import Foundation +public import Foundation /// Utility class for constructing OAuth Sign In credentials. @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthCredential.swift b/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthCredential.swift index a930fadc2eb..1e8d4d78bc5 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthCredential.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthCredential.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Implementation of AuthCredential for Phone Auth credentials. /// diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthProvider.swift index c0395182268..24995374830 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthProvider.swift @@ -13,7 +13,7 @@ // limitations under the License. import FirebaseCore -import Foundation +public import Foundation // TODO(Swift 6 Breaking): Make checked Sendable. diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/TwitterAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/TwitterAuthProvider.swift index d735ee0865b..1f340b61b10 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/TwitterAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/TwitterAuthProvider.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Utility class for constructing Twitter Sign In credentials. @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift index 17ec6b18731..1136afcca6b 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation #if os(iOS) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorAssertion.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorAssertion.swift index ff3edc94dd0..e6549115f21 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorAssertion.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorAssertion.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation #if os(iOS) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift index 839e405fc05..ec26c745d3e 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation // TODO(Swift 6 Breaking): Make checked Sendable. diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorResolver.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorResolver.swift index 223c1f9f5f5..89315f39878 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorResolver.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorResolver.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation #if os(iOS) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorSession.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorSession.swift index 33f7ef927ce..643c9a9b31e 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorSession.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorSession.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation #if os(iOS) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift b/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift index cd213c14196..eecb7195df1 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation #if os(iOS) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift b/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift index b847407c48a..6237294bd6c 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation // TODO(Swift 6 Breaking): Make checked Sendable. diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift index bf3b07634ca..140f63d2604 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation #if os(iOS) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift index 0da9c839da3..e90829c7309 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation #if COCOAPODS import GoogleUtilities #else diff --git a/FirebaseAuth/Sources/Swift/User/AdditionalUserInfo.swift b/FirebaseAuth/Sources/Swift/User/AdditionalUserInfo.swift index a72e0baef02..6dfad450c55 100644 --- a/FirebaseAuth/Sources/Swift/User/AdditionalUserInfo.swift +++ b/FirebaseAuth/Sources/Swift/User/AdditionalUserInfo.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation extension AdditionalUserInfo: NSSecureCoding {} @objc(FIRAdditionalUserInfo) open class AdditionalUserInfo: NSObject { diff --git a/FirebaseAuth/Sources/Swift/User/User.swift b/FirebaseAuth/Sources/Swift/User/User.swift index 4ef324e177c..3182970aecb 100644 --- a/FirebaseAuth/Sources/Swift/User/User.swift +++ b/FirebaseAuth/Sources/Swift/User/User.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) extension User: NSSecureCoding {} diff --git a/FirebaseAuth/Sources/Swift/User/UserInfo.swift b/FirebaseAuth/Sources/Swift/User/UserInfo.swift index 93e8066abe4..7b2d0ae27d0 100644 --- a/FirebaseAuth/Sources/Swift/User/UserInfo.swift +++ b/FirebaseAuth/Sources/Swift/User/UserInfo.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Represents user data returned from an identity provider. @objc(FIRUserInfo) public protocol UserInfo: NSObjectProtocol { diff --git a/FirebaseAuth/Sources/Swift/User/UserMetadata.swift b/FirebaseAuth/Sources/Swift/User/UserMetadata.swift index fa014ac6161..e6191056c9a 100644 --- a/FirebaseAuth/Sources/Swift/User/UserMetadata.swift +++ b/FirebaseAuth/Sources/Swift/User/UserMetadata.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) extension UserMetadata: NSSecureCoding {} diff --git a/FirebaseAuth/Sources/Swift/User/UserProfileChangeRequest.swift b/FirebaseAuth/Sources/Swift/User/UserProfileChangeRequest.swift index 493f3d80f92..44f55623526 100644 --- a/FirebaseAuth/Sources/Swift/User/UserProfileChangeRequest.swift +++ b/FirebaseAuth/Sources/Swift/User/UserProfileChangeRequest.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Represents an object capable of updating a user's profile data. /// diff --git a/FirebaseAuth/Sources/Swift/Utilities/AuthErrors.swift b/FirebaseAuth/Sources/Swift/Utilities/AuthErrors.swift index dde29c11ab3..f5e4c035aed 100644 --- a/FirebaseAuth/Sources/Swift/Utilities/AuthErrors.swift +++ b/FirebaseAuth/Sources/Swift/Utilities/AuthErrors.swift @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation +public import Foundation /// Error Codes common to all API Methods: @objc(FIRAuthErrors) open class AuthErrors: NSObject { diff --git a/FirebaseDatabase/Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift b/FirebaseDatabase/Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift index c6d2391e71d..ca1e352acdd 100644 --- a/FirebaseDatabase/Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift +++ b/FirebaseDatabase/Swift/Sources/Codable/DataSnapshot+ReadDecodable.swift @@ -16,7 +16,7 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseDatabaseInternal + @_exported public import FirebaseDatabaseInternal #endif // SWIFT_PACKAGE public import FirebaseSharedSwift diff --git a/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift b/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift index dc87a18a7c2..9734e879c00 100644 --- a/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift +++ b/FirebaseDatabase/Swift/Sources/Codable/DatabaseReference+WriteEncodable.swift @@ -16,7 +16,7 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseDatabaseInternal + @_exported public import FirebaseDatabaseInternal #endif // SWIFT_PACKAGE public import FirebaseSharedSwift diff --git a/FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift b/FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift index 7d07ef5d6a2..1d1dc3e39c7 100644 --- a/FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift +++ b/FirebaseDatabase/Swift/Sources/Codable/EncoderDecoder.swift @@ -15,7 +15,7 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseDatabaseInternal + @_exported public import FirebaseDatabaseInternal #endif // SWIFT_PACKAGE public import FirebaseSharedSwift diff --git a/FirebaseDatabase/Swift/Sources/Codable/ServerTimestamp.swift b/FirebaseDatabase/Swift/Sources/Codable/ServerTimestamp.swift index a99ba0c637e..dea7b734c75 100644 --- a/FirebaseDatabase/Swift/Sources/Codable/ServerTimestamp.swift +++ b/FirebaseDatabase/Swift/Sources/Codable/ServerTimestamp.swift @@ -15,7 +15,7 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseDatabaseInternal + @_exported public import FirebaseDatabaseInternal #endif // SWIFT_PACKAGE /// A property wrapper that marks an `Optional` field to be diff --git a/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift b/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift index a7eaf2a7b36..282d388f297 100644 --- a/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift +++ b/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift @@ -15,7 +15,7 @@ public import SwiftUI #if SWIFT_PACKAGE - @_exported import FirebaseInAppMessagingInternal + @_exported public import FirebaseInAppMessagingInternal #endif // SWIFT_PACKAGE // MARK: Image-only messages. diff --git a/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift b/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift index e6da72e71cf..027d0bac3be 100644 --- a/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift +++ b/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift @@ -15,7 +15,7 @@ public import UIKit #if SWIFT_PACKAGE - @_exported import FirebaseInAppMessagingInternal + @_exported public import FirebaseInAppMessagingInternal #endif // SWIFT_PACKAGE @available(iOS 13.0, tvOS 13.0, *) diff --git a/FirebaseRemoteConfig/Swift/Codable.swift b/FirebaseRemoteConfig/Swift/Codable.swift index d2df8a90db0..030094c386d 100644 --- a/FirebaseRemoteConfig/Swift/Codable.swift +++ b/FirebaseRemoteConfig/Swift/Codable.swift @@ -16,7 +16,7 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseRemoteConfigInternal + @_exported public import FirebaseRemoteConfigInternal #endif // SWIFT_PACKAGE import FirebaseSharedSwift diff --git a/FirebaseRemoteConfig/Swift/CustomSignals.swift b/FirebaseRemoteConfig/Swift/CustomSignals.swift index 669d2afc775..dd1799a14e3 100644 --- a/FirebaseRemoteConfig/Swift/CustomSignals.swift +++ b/FirebaseRemoteConfig/Swift/CustomSignals.swift @@ -14,7 +14,7 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseRemoteConfigInternal + @_exported public import FirebaseRemoteConfigInternal #endif // SWIFT_PACKAGE /// Represents a value associated with a key in a custom signal, restricted to the allowed data diff --git a/FirebaseRemoteConfig/Swift/FirebaseRemoteConfigValueDecoderHelper.swift b/FirebaseRemoteConfig/Swift/FirebaseRemoteConfigValueDecoderHelper.swift index f2d56542760..47d0850b5f4 100644 --- a/FirebaseRemoteConfig/Swift/FirebaseRemoteConfigValueDecoderHelper.swift +++ b/FirebaseRemoteConfig/Swift/FirebaseRemoteConfigValueDecoderHelper.swift @@ -16,7 +16,7 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseRemoteConfigInternal + @_exported public import FirebaseRemoteConfigInternal #endif // SWIFT_PACKAGE import FirebaseSharedSwift diff --git a/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigProperty.swift b/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigProperty.swift index dddd6b281e4..c73c31a332b 100644 --- a/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigProperty.swift +++ b/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigProperty.swift @@ -15,7 +15,7 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseRemoteConfigInternal + @_exported public import FirebaseRemoteConfigInternal #endif // SWIFT_PACKAGE public import SwiftUI diff --git a/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigValueObservable.swift b/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigValueObservable.swift index f71f1edec55..1c82f2eca38 100644 --- a/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigValueObservable.swift +++ b/FirebaseRemoteConfig/Swift/PropertyWrapper/RemoteConfigValueObservable.swift @@ -15,7 +15,7 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseRemoteConfigInternal + @_exported public import FirebaseRemoteConfigInternal #endif // SWIFT_PACKAGE import FirebaseCore import SwiftUI diff --git a/FirebaseRemoteConfig/Swift/Value.swift b/FirebaseRemoteConfig/Swift/Value.swift index 8a66eda8bc3..493bdad6008 100644 --- a/FirebaseRemoteConfig/Swift/Value.swift +++ b/FirebaseRemoteConfig/Swift/Value.swift @@ -16,7 +16,7 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseRemoteConfigInternal + @_exported public import FirebaseRemoteConfigInternal #endif // SWIFT_PACKAGE /// Implements subscript overloads to enable Remote Config values to be accessed diff --git a/Firestore/Swift/Source/AsyncAwait/CollectionReference+AsyncAwait.swift b/Firestore/Swift/Source/AsyncAwait/CollectionReference+AsyncAwait.swift index 7fb8e307e03..2615bff64dc 100644 --- a/Firestore/Swift/Source/AsyncAwait/CollectionReference+AsyncAwait.swift +++ b/Firestore/Swift/Source/AsyncAwait/CollectionReference+AsyncAwait.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE import Foundation diff --git a/Firestore/Swift/Source/AsyncAwait/Firestore+AsyncAwait.swift b/Firestore/Swift/Source/AsyncAwait/Firestore+AsyncAwait.swift index e85ca9a9791..f949a43ee79 100644 --- a/Firestore/Swift/Source/AsyncAwait/Firestore+AsyncAwait.swift +++ b/Firestore/Swift/Source/AsyncAwait/Firestore+AsyncAwait.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE import Foundation diff --git a/Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift b/Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift index 20f5a6e8b2b..a65b641d1e9 100644 --- a/Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift +++ b/Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift @@ -20,9 +20,9 @@ import FirebaseSharedSwift import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE struct FirestorePassthroughTypes: StructureCodingPassthroughTypeResolver { diff --git a/Firestore/Swift/Source/Codable/CollectionReference+WriteEncodable.swift b/Firestore/Swift/Source/Codable/CollectionReference+WriteEncodable.swift index c85a1fe261f..ee19df6abc5 100644 --- a/Firestore/Swift/Source/Codable/CollectionReference+WriteEncodable.swift +++ b/Firestore/Swift/Source/Codable/CollectionReference+WriteEncodable.swift @@ -17,9 +17,9 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE public extension CollectionReference { diff --git a/Firestore/Swift/Source/Codable/DocumentID.swift b/Firestore/Swift/Source/Codable/DocumentID.swift index 1112310f139..e54fa5ec34e 100644 --- a/Firestore/Swift/Source/Codable/DocumentID.swift +++ b/Firestore/Swift/Source/Codable/DocumentID.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE import FirebaseCoreExtension diff --git a/Firestore/Swift/Source/Codable/DocumentReference+Codable.swift b/Firestore/Swift/Source/Codable/DocumentReference+Codable.swift index 98bb15b8860..6cc6cd06258 100644 --- a/Firestore/Swift/Source/Codable/DocumentReference+Codable.swift +++ b/Firestore/Swift/Source/Codable/DocumentReference+Codable.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE /** Mark DocumentReference to conform to Codable. */ diff --git a/Firestore/Swift/Source/Codable/DocumentReference+ReadDecodable.swift b/Firestore/Swift/Source/Codable/DocumentReference+ReadDecodable.swift index 2d3af7a9dfa..6377a1239b3 100644 --- a/Firestore/Swift/Source/Codable/DocumentReference+ReadDecodable.swift +++ b/Firestore/Swift/Source/Codable/DocumentReference+ReadDecodable.swift @@ -16,9 +16,9 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE public extension DocumentReference { diff --git a/Firestore/Swift/Source/Codable/DocumentReference+WriteEncodable.swift b/Firestore/Swift/Source/Codable/DocumentReference+WriteEncodable.swift index 5fb791a2ee4..2bf0e25acf5 100644 --- a/Firestore/Swift/Source/Codable/DocumentReference+WriteEncodable.swift +++ b/Firestore/Swift/Source/Codable/DocumentReference+WriteEncodable.swift @@ -16,9 +16,9 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE public extension DocumentReference { diff --git a/Firestore/Swift/Source/Codable/DocumentSnapshot+ReadDecodable.swift b/Firestore/Swift/Source/Codable/DocumentSnapshot+ReadDecodable.swift index 21c8e1ff36f..ddae9c215d2 100644 --- a/Firestore/Swift/Source/Codable/DocumentSnapshot+ReadDecodable.swift +++ b/Firestore/Swift/Source/Codable/DocumentSnapshot+ReadDecodable.swift @@ -16,9 +16,9 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE public extension DocumentSnapshot { diff --git a/Firestore/Swift/Source/Codable/EncoderDecoder.swift b/Firestore/Swift/Source/Codable/EncoderDecoder.swift index 966c40387f5..5184d4b247c 100644 --- a/Firestore/Swift/Source/Codable/EncoderDecoder.swift +++ b/Firestore/Swift/Source/Codable/EncoderDecoder.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE public import FirebaseSharedSwift import Foundation diff --git a/Firestore/Swift/Source/Codable/ExplicitNull.swift b/Firestore/Swift/Source/Codable/ExplicitNull.swift index 615fab9698a..498a082dcf6 100644 --- a/Firestore/Swift/Source/Codable/ExplicitNull.swift +++ b/Firestore/Swift/Source/Codable/ExplicitNull.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE /// Wraps an `Optional` field in a `Codable` object such that when the field diff --git a/Firestore/Swift/Source/Codable/FieldValue+Encodable.swift b/Firestore/Swift/Source/Codable/FieldValue+Encodable.swift index cfa50a0c081..e7c5bb03a0c 100644 --- a/Firestore/Swift/Source/Codable/FieldValue+Encodable.swift +++ b/Firestore/Swift/Source/Codable/FieldValue+Encodable.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE /** Extends FieldValue to conform to Encodable. */ diff --git a/Firestore/Swift/Source/Codable/GeoPoint+Codable.swift b/Firestore/Swift/Source/Codable/GeoPoint+Codable.swift index a92e4baf160..5e1335b3afa 100644 --- a/Firestore/Swift/Source/Codable/GeoPoint+Codable.swift +++ b/Firestore/Swift/Source/Codable/GeoPoint+Codable.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE /** diff --git a/Firestore/Swift/Source/Codable/ServerTimestamp.swift b/Firestore/Swift/Source/Codable/ServerTimestamp.swift index 753878c16d5..be91072c336 100644 --- a/Firestore/Swift/Source/Codable/ServerTimestamp.swift +++ b/Firestore/Swift/Source/Codable/ServerTimestamp.swift @@ -14,7 +14,7 @@ * limitations under the License. */ -@_exported import class FirebaseCore.Timestamp +@_exported public import class FirebaseCore.Timestamp /// A type that can initialize itself from a Firestore Timestamp, which makes /// it suitable for use with the `@ServerTimestamp` property wrapper. diff --git a/Firestore/Swift/Source/Codable/Transaction+WriteEncodable.swift b/Firestore/Swift/Source/Codable/Transaction+WriteEncodable.swift index 86fec68229f..9cd888205fc 100644 --- a/Firestore/Swift/Source/Codable/Transaction+WriteEncodable.swift +++ b/Firestore/Swift/Source/Codable/Transaction+WriteEncodable.swift @@ -16,9 +16,9 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE public extension Transaction { diff --git a/Firestore/Swift/Source/Codable/VectorValue+Codable.swift b/Firestore/Swift/Source/Codable/VectorValue+Codable.swift index 45f3176a74a..5dd58214a58 100644 --- a/Firestore/Swift/Source/Codable/VectorValue+Codable.swift +++ b/Firestore/Swift/Source/Codable/VectorValue+Codable.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE /** diff --git a/Firestore/Swift/Source/Codable/WriteBatch+WriteEncodable.swift b/Firestore/Swift/Source/Codable/WriteBatch+WriteEncodable.swift index 9434a55509e..3ed6a67ce7d 100644 --- a/Firestore/Swift/Source/Codable/WriteBatch+WriteEncodable.swift +++ b/Firestore/Swift/Source/Codable/WriteBatch+WriteEncodable.swift @@ -16,9 +16,9 @@ import Foundation #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE public extension WriteBatch { diff --git a/Firestore/Swift/Source/PropertyWrapper/FirestoreQuery.swift b/Firestore/Swift/Source/PropertyWrapper/FirestoreQuery.swift index b5e747d0f75..725595ce4b8 100644 --- a/Firestore/Swift/Source/PropertyWrapper/FirestoreQuery.swift +++ b/Firestore/Swift/Source/PropertyWrapper/FirestoreQuery.swift @@ -17,9 +17,9 @@ public import SwiftUI #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE /// The strategy to use when an error occurs during mapping Firestore documents diff --git a/Firestore/Swift/Source/PropertyWrapper/FirestoreQueryObservable.swift b/Firestore/Swift/Source/PropertyWrapper/FirestoreQueryObservable.swift index 8e4c9280e87..b093fa7c74d 100644 --- a/Firestore/Swift/Source/PropertyWrapper/FirestoreQueryObservable.swift +++ b/Firestore/Swift/Source/PropertyWrapper/FirestoreQueryObservable.swift @@ -17,9 +17,9 @@ import SwiftUI #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE @available(iOS 14.0, macOS 11.0, macCatalyst 14.0, tvOS 14.0, watchOS 7.0, *) diff --git a/Firestore/Swift/Source/PropertyWrapper/QueryPredicate.swift b/Firestore/Swift/Source/PropertyWrapper/QueryPredicate.swift index d1bd1f7b6e8..19ee19038dd 100644 --- a/Firestore/Swift/Source/PropertyWrapper/QueryPredicate.swift +++ b/Firestore/Swift/Source/PropertyWrapper/QueryPredicate.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE /// Query predicates that can be used to filter results fetched by `FirestoreQuery`. diff --git a/Firestore/Swift/Source/SwiftAPI/FieldValue+Swift.swift b/Firestore/Swift/Source/SwiftAPI/FieldValue+Swift.swift index ccab6238267..ecadef44781 100644 --- a/Firestore/Swift/Source/SwiftAPI/FieldValue+Swift.swift +++ b/Firestore/Swift/Source/SwiftAPI/FieldValue+Swift.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE public extension FieldValue { diff --git a/Firestore/Swift/Source/SwiftAPI/VectorValue+Swift.swift b/Firestore/Swift/Source/SwiftAPI/VectorValue+Swift.swift index dffb35eb811..bd716b333c1 100644 --- a/Firestore/Swift/Source/SwiftAPI/VectorValue+Swift.swift +++ b/Firestore/Swift/Source/SwiftAPI/VectorValue+Swift.swift @@ -15,9 +15,9 @@ */ #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE public extension VectorValue { diff --git a/Firestore/Swift/Source/SwiftHeaderWorkaround.swift b/Firestore/Swift/Source/SwiftHeaderWorkaround.swift index 253beeae2bf..6c3191cbfbd 100644 --- a/Firestore/Swift/Source/SwiftHeaderWorkaround.swift +++ b/Firestore/Swift/Source/SwiftHeaderWorkaround.swift @@ -13,9 +13,9 @@ // limitations under the License. #if SWIFT_PACKAGE - @_exported import FirebaseFirestoreInternalWrapper + @_exported public import FirebaseFirestoreInternalWrapper #else - @_exported import FirebaseFirestoreInternal + @_exported public import FirebaseFirestoreInternal #endif // SWIFT_PACKAGE // This is a trick to force generate a `FirebaseFirestore-Swift.h` From 3dece9d8266a243818799716d8f68d7d7a3ed11a Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 13:14:04 -0400 Subject: [PATCH 10/14] More exported changes --- FirebaseAuth/Sources/Swift/Auth/Auth.swift | 2 +- FirebaseCombineSwift/Sources/Core/Core.swift | 2 +- FirebaseDatabase/Swift/Sources/SPMSwiftHeaderWorkaround.swift | 2 +- .../Swift/Source/SPMSwiftHeaderWorkaround.swift | 2 +- FirebaseRemoteConfig/Swift/SPMSwiftHeaderWorkaround.swift | 2 +- Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift | 2 +- Firestore/Swift/Source/Codable/Timestamp+Codable.swift | 2 +- Firestore/Swift/Source/Codable/TimestampDecodingStrategy.swift | 2 +- Firestore/Swift/Source/Codable/TimestampEncodingStrategy.swift | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/FirebaseAuth/Sources/Swift/Auth/Auth.swift b/FirebaseAuth/Sources/Swift/Auth/Auth.swift index b6c25080b8b..1c57823c2dd 100644 --- a/FirebaseAuth/Sources/Swift/Auth/Auth.swift +++ b/FirebaseAuth/Sources/Swift/Auth/Auth.swift @@ -31,7 +31,7 @@ import FirebaseCoreExtension // Export the deprecated Objective-C defined globals and typedefs. #if SWIFT_PACKAGE - @_exported import FirebaseAuthInternal + @_exported public import FirebaseAuthInternal #endif // SWIFT_PACKAGE #if os(iOS) diff --git a/FirebaseCombineSwift/Sources/Core/Core.swift b/FirebaseCombineSwift/Sources/Core/Core.swift index 1bc24062e83..b1bdaf4e58e 100644 --- a/FirebaseCombineSwift/Sources/Core/Core.swift +++ b/FirebaseCombineSwift/Sources/Core/Core.swift @@ -18,7 +18,7 @@ import Foundation #if canImport(FirebaseAuth) #warning("This is experimental - use at your own risk.") - @_exported import FirebaseAuthCombineSwift + @_exported public import FirebaseAuthCombineSwift #endif #endif diff --git a/FirebaseDatabase/Swift/Sources/SPMSwiftHeaderWorkaround.swift b/FirebaseDatabase/Swift/Sources/SPMSwiftHeaderWorkaround.swift index 7e418fb6c13..788eb42dedf 100644 --- a/FirebaseDatabase/Swift/Sources/SPMSwiftHeaderWorkaround.swift +++ b/FirebaseDatabase/Swift/Sources/SPMSwiftHeaderWorkaround.swift @@ -13,7 +13,7 @@ // limitations under the License. #if SWIFT_PACKAGE - @_exported import FirebaseDatabaseInternal + @_exported public import FirebaseDatabaseInternal // This is a trick to force generate a `FirebaseDatabase-Swift.h` // header that re-exports `FirebaseDatabaseInternal` for Objective-C diff --git a/FirebaseInAppMessaging/Swift/Source/SPMSwiftHeaderWorkaround.swift b/FirebaseInAppMessaging/Swift/Source/SPMSwiftHeaderWorkaround.swift index c84084917f3..4d8c9d2eb99 100644 --- a/FirebaseInAppMessaging/Swift/Source/SPMSwiftHeaderWorkaround.swift +++ b/FirebaseInAppMessaging/Swift/Source/SPMSwiftHeaderWorkaround.swift @@ -13,7 +13,7 @@ // limitations under the License. #if SWIFT_PACKAGE - @_exported import FirebaseInAppMessagingInternal + @_exported public import FirebaseInAppMessagingInternal // This is a trick to force generate a `FirebaseInAppMessaging-Swift.h` // header that re-exports `FirebaseInAppMessagingInternal` for Objective-C diff --git a/FirebaseRemoteConfig/Swift/SPMSwiftHeaderWorkaround.swift b/FirebaseRemoteConfig/Swift/SPMSwiftHeaderWorkaround.swift index b83a981606d..0b712a791e3 100644 --- a/FirebaseRemoteConfig/Swift/SPMSwiftHeaderWorkaround.swift +++ b/FirebaseRemoteConfig/Swift/SPMSwiftHeaderWorkaround.swift @@ -13,7 +13,7 @@ // limitations under the License. #if SWIFT_PACKAGE - @_exported import FirebaseRemoteConfigInternal + @_exported public import FirebaseRemoteConfigInternal // This is a trick to force generate a `FirebaseRemoteConfig-Swift.h` header // that re-exports `FirebaseRemoteConfigInternal` for Objective-C clients. It diff --git a/Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift b/Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift index a65b641d1e9..d92bb0be11b 100644 --- a/Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift +++ b/Firestore/Swift/Source/Codable/CodablePassThroughTypes.swift @@ -14,7 +14,7 @@ * limitations under the License. */ -@_exported import class FirebaseCore.Timestamp +@_exported public import class FirebaseCore.Timestamp import FirebaseSharedSwift import Foundation diff --git a/Firestore/Swift/Source/Codable/Timestamp+Codable.swift b/Firestore/Swift/Source/Codable/Timestamp+Codable.swift index 37d9b479733..f3927eaa767 100644 --- a/Firestore/Swift/Source/Codable/Timestamp+Codable.swift +++ b/Firestore/Swift/Source/Codable/Timestamp+Codable.swift @@ -14,7 +14,7 @@ * limitations under the License. */ -@_exported import class FirebaseCore.Timestamp +@_exported public import class FirebaseCore.Timestamp /** * A protocol describing the encodable properties of a Timestamp. diff --git a/Firestore/Swift/Source/Codable/TimestampDecodingStrategy.swift b/Firestore/Swift/Source/Codable/TimestampDecodingStrategy.swift index 576127a3e52..da8ca1a738d 100644 --- a/Firestore/Swift/Source/Codable/TimestampDecodingStrategy.swift +++ b/Firestore/Swift/Source/Codable/TimestampDecodingStrategy.swift @@ -14,7 +14,7 @@ * limitations under the License. */ -@_exported import class FirebaseCore.Timestamp +@_exported public import class FirebaseCore.Timestamp public import FirebaseSharedSwift diff --git a/Firestore/Swift/Source/Codable/TimestampEncodingStrategy.swift b/Firestore/Swift/Source/Codable/TimestampEncodingStrategy.swift index b3e2dfaa36c..69177d61fde 100644 --- a/Firestore/Swift/Source/Codable/TimestampEncodingStrategy.swift +++ b/Firestore/Swift/Source/Codable/TimestampEncodingStrategy.swift @@ -14,7 +14,7 @@ * limitations under the License. */ -@_exported import class FirebaseCore.Timestamp +@_exported public import class FirebaseCore.Timestamp public import FirebaseSharedSwift import Foundation From 9e6a9ebf0cc3202685f1bb39eea5c99a7185b844 Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 13:42:57 -0400 Subject: [PATCH 11/14] Move imports --- FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift | 2 +- .../Sources/Swift/MultiFactor/MultiFactorAssertion.swift | 3 +-- FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift | 4 ++-- .../Sources/Swift/MultiFactor/MultiFactorResolver.swift | 3 +-- .../Sources/Swift/MultiFactor/MultiFactorSession.swift | 3 +-- 5 files changed, 6 insertions(+), 9 deletions(-) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift index 1136afcca6b..a0484ec3b06 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactor.swift @@ -12,9 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. -public import Foundation #if os(iOS) + public import Foundation @available(iOS 13, tvOS 13, macOS 10.15, macCatalyst 13, watchOS 7, *) extension MultiFactor: NSSecureCoding {} diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorAssertion.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorAssertion.swift index e6549115f21..739f4eb3131 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorAssertion.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorAssertion.swift @@ -12,9 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -public import Foundation - #if os(iOS) + public import Foundation /// The base class for asserting ownership of a second factor. This is equivalent to the /// AuthCredential class. diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift index ec26c745d3e..fcdff97adfe 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorInfo.swift @@ -12,11 +12,11 @@ // See the License for the specific language governing permissions and // limitations under the License. -public import Foundation - // TODO(Swift 6 Breaking): Make checked Sendable. #if os(iOS) + public import Foundation + extension MultiFactorInfo: NSSecureCoding {} /// Safe public structure used to represent a second factor entity from a client perspective. diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorResolver.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorResolver.swift index 89315f39878..ad9412ae71e 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorResolver.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorResolver.swift @@ -12,9 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -public import Foundation - #if os(iOS) + public import Foundation /// The subclass of base class `MultiFactorAssertion`, used to assert ownership of a phone /// second factor. diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorSession.swift b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorSession.swift index 643c9a9b31e..2431534ec57 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorSession.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/MultiFactorSession.swift @@ -12,9 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -public import Foundation - #if os(iOS) + public import Foundation /// Opaque object that identifies the current session to enroll a second factor or to /// complete sign in when previously enrolled. From a403a3ae9502b3b062b252297e40b2d05d0d3850 Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 13:55:46 -0400 Subject: [PATCH 12/14] more fixes --- .../Sources/Swift/AuthProvider/PhoneAuthProvider.swift | 1 - .../Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift | 2 +- .../Sources/Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift | 3 +-- .../Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift | 3 +-- FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift | 2 +- 5 files changed, 4 insertions(+), 7 deletions(-) diff --git a/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthProvider.swift b/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthProvider.swift index 24995374830..5c6d1353fea 100644 --- a/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthProvider.swift +++ b/FirebaseAuth/Sources/Swift/AuthProvider/PhoneAuthProvider.swift @@ -13,7 +13,6 @@ // limitations under the License. import FirebaseCore -public import Foundation // TODO(Swift 6 Breaking): Make checked Sendable. diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift b/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift index eecb7195df1..3f6db5523d0 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorGenerator.swift @@ -12,9 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. -public import Foundation #if os(iOS) + public import Foundation /// The data structure used to help initialize an assertion for a second factor entity to the /// Firebase Auth/CICP server. diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift b/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift index 6237294bd6c..76942f8d457 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/Phone/PhoneMultiFactorInfo.swift @@ -12,11 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -public import Foundation - // TODO(Swift 6 Breaking): Make checked Sendable. #if os(iOS) + public import Foundation /// Extends the MultiFactorInfo class for phone number second factors. /// diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift index 140f63d2604..9a56c32b2aa 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPMultiFactorGenerator.swift @@ -12,9 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -public import Foundation - #if os(iOS) + public import Foundation /// The data structure used to help initialize an assertion for a second factor entity to the /// Firebase Auth/CICP server. Depending on the type of second factor, this will help generate diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift index e90829c7309..96ca68db9e3 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift @@ -12,7 +12,6 @@ // See the License for the specific language governing permissions and // limitations under the License. -public import Foundation #if COCOAPODS import GoogleUtilities #else @@ -20,6 +19,7 @@ public import Foundation #endif #if os(iOS) + public import Foundation import UIKit /// The subclass of base class MultiFactorAssertion, used to assert ownership of a TOTP From 87621d67fbdff6bcf79a6e88f6781c7deef2c2b2 Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 14:00:19 -0400 Subject: [PATCH 13/14] Fixes --- FirebaseCore/Internal/Sources/Utilities/UnfairLock.swift | 2 +- FirebaseFunctions/Sources/Functions.swift | 2 +- FirebaseFunctions/Sources/HTTPSCallable.swift | 2 +- FirebaseSessions/Sources/Public/SessionsDependencies.swift | 2 +- FirebaseStorage/Sources/Internal/StorageUtils.swift | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/FirebaseCore/Internal/Sources/Utilities/UnfairLock.swift b/FirebaseCore/Internal/Sources/Utilities/UnfairLock.swift index 9028029763c..4c5de957b75 100644 --- a/FirebaseCore/Internal/Sources/Utilities/UnfairLock.swift +++ b/FirebaseCore/Internal/Sources/Utilities/UnfairLock.swift @@ -13,7 +13,7 @@ // limitations under the License. import Foundation -private import os.lock +import os.lock /// A reference wrapper around `os_unfair_lock`. Replace this class with /// `OSAllocatedUnfairLock` once we support only iOS 16+. For an explanation diff --git a/FirebaseFunctions/Sources/Functions.swift b/FirebaseFunctions/Sources/Functions.swift index 76cb18613f8..ec700cf0b52 100644 --- a/FirebaseFunctions/Sources/Functions.swift +++ b/FirebaseFunctions/Sources/Functions.swift @@ -25,7 +25,7 @@ import Foundation #endif import FirebaseCoreExtension -private import FirebaseCoreInternal +import FirebaseCoreInternal /// File specific constants. private enum Constants { diff --git a/FirebaseFunctions/Sources/HTTPSCallable.swift b/FirebaseFunctions/Sources/HTTPSCallable.swift index 6eb36c81264..a686260f845 100644 --- a/FirebaseFunctions/Sources/HTTPSCallable.swift +++ b/FirebaseFunctions/Sources/HTTPSCallable.swift @@ -14,7 +14,7 @@ public import Foundation -private import FirebaseCoreInternal +import FirebaseCoreInternal /// A `HTTPSCallableResult` contains the result of calling a `HTTPSCallable`. @objc(FIRHTTPSCallableResult) diff --git a/FirebaseSessions/Sources/Public/SessionsDependencies.swift b/FirebaseSessions/Sources/Public/SessionsDependencies.swift index 5cde5095f52..6d00af19fa5 100644 --- a/FirebaseSessions/Sources/Public/SessionsDependencies.swift +++ b/FirebaseSessions/Sources/Public/SessionsDependencies.swift @@ -15,7 +15,7 @@ public import Foundation -private import FirebaseCoreInternal +import FirebaseCoreInternal /// Sessions Dependencies determines when a dependent SDK is /// installed in the app. The Sessions SDK uses this to figure diff --git a/FirebaseStorage/Sources/Internal/StorageUtils.swift b/FirebaseStorage/Sources/Internal/StorageUtils.swift index 6ea83db36ab..e828b7b2ae5 100644 --- a/FirebaseStorage/Sources/Internal/StorageUtils.swift +++ b/FirebaseStorage/Sources/Internal/StorageUtils.swift @@ -13,7 +13,7 @@ // limitations under the License. import Foundation -private import UniformTypeIdentifiers +import UniformTypeIdentifiers #if os(iOS) || os(tvOS) || os(visionOS) import MobileCoreServices From 645075f384ddef6cfadbf520a1bcc3bbe0b7bb8d Mon Sep 17 00:00:00 2001 From: Nick Cooke Date: Wed, 9 Jul 2025 14:14:16 -0400 Subject: [PATCH 14/14] Auth --- FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift index 96ca68db9e3..3b87e45c662 100644 --- a/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift +++ b/FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift @@ -19,7 +19,7 @@ #endif #if os(iOS) - public import Foundation + import Foundation import UIKit /// The subclass of base class MultiFactorAssertion, used to assert ownership of a TOTP