Skip to content

Commit

Permalink
* Firebase updated to v10.19.0
Browse files Browse the repository at this point in the history
  • Loading branch information
dkimitsa committed Dec 12, 2023
1 parent 0a7e54e commit 6d8e250
Show file tree
Hide file tree
Showing 30 changed files with 436 additions and 37 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ v1.36.0 - in development
| [Charts](charts/) | 5.0.0 |
| [ClearAds](clearads/) | 3.4.2 |
| [Facebook](facebook/) | 16.3.1 |
| [Firebase](firebase/) | 10.18.0 |
| [Firebase](firebase/) | 10.19.0 |
| [Fyber](fyber/) | 8.2.2 |
| [HelpShiftX](helpshift/) | 10.3.0 |
| [InMobi](inmobi/) | 10.6.0 |
Expand Down
25 changes: 13 additions & 12 deletions firebase/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,29 @@ Firebase gives you functionality like analytics, databases, messaging and crash

| RoboPod | Description | Version |
|----------------------------------------------------------------------------------|------------------------------------------------|---------|
| [ios-analytics](ios-analytics/) | Firebase iOS Analytics | 10.18.0 |
| [ios-auth](ios-auth/) | Firebase iOS Authentication | 10.18.0 |
| [ios-core](ios-core/) | Firebase iOS Core | 10.18.0 |
| [ios-crashlytics](ios-crashlytics/) | Firebase iOS Crashlytics | 10.18.0 |
| [ios-database](ios-database/) | Firebase iOS DataBase | 10.18.0 |
| [ios-dylinks](ios-dylinks/) | Firebase iOS Dynamic Links | 10.18.0 |
| [ios-firestore](ios-firestore/) | Firebase iOS Firestore | 10.18.0 |
| [ios-analytics](ios-analytics/) | Firebase iOS Analytics | 10.19.0 |
| [ios-auth](ios-auth/) | Firebase iOS Authentication | 10.19.0 |
| [ios-core](ios-core/) | Firebase iOS Core | 10.19.0 |
| [ios-crashlytics](ios-crashlytics/) | Firebase iOS Crashlytics | 10.19.0 |
| [ios-database](ios-database/) | Firebase iOS DataBase | 10.19.0 |
| [ios-dylinks](ios-dylinks/) | Firebase iOS Dynamic Links | 10.19.0 |
| [ios-firestore](ios-firestore/) | Firebase iOS Firestore | 10.19.0 |
| [ios-mobile ads](ios-google-mobile-ads/) | Firebase iOS Google Mobile Ads | 10.13.0 |
| [ios-mobile ads-adapters](ios-google-mobile-ads-adapters/) | Firebase iOS AdMob Adapters | |
| [ios-mobile ads-mediation-testsuite](ios-google-mobile-ads-mediation-testsuite/) | Firebase iOS Google AdMob Mediation Test Suite | 2.0.0 |
| [ios-google-sign-in](ios-google-sign-in/) | Firebase iOS Google Sign In | 7.0.0 |
| [ios-google-ump](ios-google-ump/) | Firebase iOS Google UMP | 2.1.0 |
| [ios-messaging](ios-messaging/) | Firebase iOS Messaging | 10.18.0 |
| [ios-installations](ios-installations/) | Firebase iOS Installations | 10.18.0 |
| [ios-remoteconfig](ios-remoteconfig/) | Firebase iOS Remote Config | 10.18.0 |
| [ios-storage](ios-storage/) | Firebase iOS Storage | 10.18.0 |
| [ios-appcheck](ios-appcheck/) | Firebase iOS App Check | 10.18.0 |
| [ios-messaging](ios-messaging/) | Firebase iOS Messaging | 10.19.0 |
| [ios-installations](ios-installations/) | Firebase iOS Installations | 10.19.0 |
| [ios-remoteconfig](ios-remoteconfig/) | Firebase iOS Remote Config | 10.19.0 |
| [ios-storage](ios-storage/) | Firebase iOS Storage | 10.19.0 |
| [ios-appcheck](ios-appcheck/) | Firebase iOS App Check | 10.19.0 |

## Versions

| RoboPods Version | Firebase Version |
|------------------|------------------|
| 1.36.0 | 10.19.0 |
| 1.35.0 | 10.18.0 |
| 1.34.0 | 10.16.0 |
| 1.33.0 | 10.15.0 |
Expand Down
2 changes: 1 addition & 1 deletion firebase/ios-analytics/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</parent>

<artifactId>robopods-firebase-analytics-ios</artifactId>
<name>RoboPods FireBase Analytics iOS v10.18.0</name>
<name>RoboPods FireBase Analytics iOS v10.19.0</name>
<packaging>jar</packaging>

<dependencies>
Expand Down
2 changes: 1 addition & 1 deletion firebase/ios-appcheck/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</parent>

<artifactId>robopods-firebase-app-check-ios</artifactId>
<name>RoboPods FireBase App Check iOS v10.18.0</name>
<name>RoboPods FireBase App Check iOS v10.19.0</name>
<packaging>jar</packaging>

<licenses>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,26 @@ NS_SWIFT_NAME(AppAttestProvider)
/// required parameters.
- (nullable instancetype)initWithApp:(FIRApp *)app;

/* Jazzy doesn't generate documentation for protocol-inherited
* methods, so this is copied over from the protocol declaration.
*/
/// Returns a new Firebase App Check token.
/// @param handler The completion handler. Make sure to call the handler with either a token
/// or an error.
- (void)getTokenWithCompletion:
(void (^)(FIRAppCheckToken *_Nullable token, NSError *_Nullable error))handler
NS_SWIFT_NAME(getToken(completion:));

/// Returns a new Firebase App Check token.
/// When implementing this method for your custom provider, the token returned should be suitable
/// for consumption in a limited-use scenario. If you do not implement this method, the
/// getTokenWithCompletion will be invoked instead whenever a limited-use token is requested.
/// @param handler The completion handler. Make sure to call the handler with either a token
/// or an error.
- (void)getLimitedUseTokenWithCompletion:
(void (^)(FIRAppCheckToken *_Nullable token, NSError *_Nullable error))handler
NS_SWIFT_NAME(getLimitedUseToken(completion:));

@end

NS_ASSUME_NONNULL_END
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,26 @@ NS_SWIFT_NAME(AppCheckDebugProvider)
*/
- (NSString *)currentDebugToken;

/* Jazzy doesn't generate documentation for protocol-inherited
* methods, so this is copied over from the protocol declaration.
*/
/// Returns a new Firebase App Check token.
/// @param handler The completion handler. Make sure to call the handler with either a token
/// or an error.
- (void)getTokenWithCompletion:
(void (^)(FIRAppCheckToken *_Nullable token, NSError *_Nullable error))handler
NS_SWIFT_NAME(getToken(completion:));

/// Returns a new Firebase App Check token.
/// When implementing this method for your custom provider, the token returned should be suitable
/// for consumption in a limited-use scenario. If you do not implement this method, the
/// getTokenWithCompletion will be invoked instead whenever a limited-use token is requested.
/// @param handler The completion handler. Make sure to call the handler with either a token
/// or an error.
- (void)getLimitedUseTokenWithCompletion:
(void (^)(FIRAppCheckToken *_Nullable token, NSError *_Nullable error))handler
NS_SWIFT_NAME(getLimitedUseToken(completion:));

@end

NS_ASSUME_NONNULL_END
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,26 @@ NS_SWIFT_NAME(DeviceCheckProvider)
/// required parameters.
- (nullable instancetype)initWithApp:(FIRApp *)app;

/* Jazzy doesn't generate documentation for protocol-inherited
* methods, so this is copied over from the protocol declaration.
*/
/// Returns a new Firebase App Check token.
/// @param handler The completion handler. Make sure to call the handler with either a token
/// or an error.
- (void)getTokenWithCompletion:
(void (^)(FIRAppCheckToken *_Nullable token, NSError *_Nullable error))handler
NS_SWIFT_NAME(getToken(completion:));

/// Returns a new Firebase App Check token.
/// When implementing this method for your custom provider, the token returned should be suitable
/// for consumption in a limited-use scenario. If you do not implement this method, the
/// getTokenWithCompletion will be invoked instead whenever a limited-use token is requested.
/// @param handler The completion handler. Make sure to call the handler with either a token
/// or an error.
- (void)getLimitedUseTokenWithCompletion:
(void (^)(FIRAppCheckToken *_Nullable token, NSError *_Nullable error))handler
NS_SWIFT_NAME(getLimitedUseToken(completion:));

@end

NS_ASSUME_NONNULL_END
2 changes: 1 addition & 1 deletion firebase/ios-auth/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</parent>

<artifactId>robopods-firebase-auth-ios</artifactId>
<name>RoboPods FireBase Auth iOS v10.18.0</name>
<name>RoboPods FireBase Auth iOS v10.19.0</name>
<packaging>jar</packaging>

<licenses>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -378,7 +378,9 @@ NS_SWIFT_NAME(Auth)

/** @fn fetchSignInMethodsForEmail:completion:
@brief Fetches the list of all sign-in methods previously used for the provided email address.
This method returns an empty list when [Email Enumeration
Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection)
is enabled, irrespective of the number of authentication methods available for the given email.
@param email The email address for which to obtain a list of sign-in methods.
@param completion Optionally; a block which is invoked when the list of sign in methods for the
specified email address is ready or an error was encountered. Invoked asynchronously on the
Expand All @@ -393,10 +395,16 @@ NS_SWIFT_NAME(Auth)

- (void)fetchSignInMethodsForEmail:(NSString *)email
completion:(nullable void (^)(NSArray<NSString *> *_Nullable,
NSError *_Nullable))completion;
NSError *_Nullable))completion
DEPRECATED_MSG_ATTRIBUTE(
"This method is deprecated and will be removed in a future release. This method returns an "
"empty list when Email Enumeration Protection is enabled.");

/** @fn signInWithEmail:password:completion:
@brief Signs in using an email address and password.
@brief Signs in using an email address and password. When [Email Enumeration
Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection)
is enabled, this method fails with FIRAuthErrorCodeInvalidCredentials in case of an invalid
email/password.
@param email The user's email address.
@param password The user's password.
Expand Down Expand Up @@ -663,8 +671,10 @@ NS_SWIFT_NAME(Auth)
- (void)applyActionCode:(NSString *)code completion:(void (^)(NSError *_Nullable error))completion;

/** @fn sendPasswordResetWithEmail:completion:
@brief Initiates a password reset for the given email address.
@brief Initiates a password reset for the given email address. This method does not throw an
error when there's no user account with the given email address and [Email Enumeration
Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection)
is enabled.
@param email The email address of the user.
@param completion Optionally; a block which is invoked when the request finishes. Invoked
asynchronously on the main thread in the future.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,9 @@ NS_SWIFT_NAME(User)

/** @fn updateEmail:completion:
@brief Updates the email address for the user. On success, the cached user profile data is
updated.
updated. Throws FIRAuthErrorCodeInvalidCredentials error when [Email Enumeration
Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection)
is enabled.
@remarks May fail if there is already an account with this email address that was created using
email and password authentication.
Expand Down Expand Up @@ -160,7 +162,9 @@ NS_SWIFT_NAME(User)
*/
- (void)updateEmail:(NSString *)email
completion:(nullable void (^)(NSError *_Nullable error))completion
NS_SWIFT_NAME(updateEmail(to:completion:));
NS_SWIFT_NAME(updateEmail(to:completion:)) DEPRECATED_MSG_ATTRIBUTE(
"This method is deprecated and will be removed in a future release. Use "
"sendEmailVerification(beforeUpdatingEmail email: String) instead.");

/** @fn updatePassword:completion:
@brief Updates the password for the user. On success, the cached user profile data is updated.
Expand Down Expand Up @@ -257,11 +261,10 @@ NS_SWIFT_NAME(User)
Auth section of the Firebase console.
+ `AuthErrorCodeEmailAlreadyInUse` - Indicates the email asserted by the credential
(e.g. the email in a Facebook access token) is already in use by an existing account,
that cannot be authenticated with this method. Call `Auth.fetchSignInMethods(forEmail:)`
for this user’s email and then prompt them to sign in with any of the sign-in providers
returned. This error will only be thrown if the "One account per email address"
setting is enabled in the Firebase console, under Auth settings. Please note that the
error code raised in this specific situation may not be the same on Web and Android.
that cannot be authenticated with this method. This error will only be thrown if the
"One account per email address" setting is enabled in the Firebase console, under Auth
settings. Please note that the error code raised in this specific situation may not be
the same on Web and Android.
+ `AuthErrorCodeUserDisabled` - Indicates the user's account is disabled.
+ `AuthErrorCodeWrongPassword` - Indicates the user attempted reauthentication with
an incorrect password, if credential is of the type `EmailPasswordAuthCredential`.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,10 @@ public static class Notifications {

@Method(selector = "updateCurrentUser:completion:")
public native void updateCurrentUser(FIRUser user, @Block VoidBlock1<NSError> completion);
/**
* @deprecated This method is deprecated and will be removed in a future release. This method returns an empty list when Email Enumeration Protection is enabled.
*/
@Deprecated
@Method(selector = "fetchSignInMethodsForEmail:completion:")
public native void fetchSignInMethods(String email, @Block VoidBlock2<NSArray<NSString>, NSError> completion);
@Method(selector = "signInWithEmail:password:completion:")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,10 @@ protected FIRUser() {}
/*</properties>*/
/*<members>*//*</members>*/
/*<methods>*/
/**
* @deprecated This method is deprecated and will be removed in a future release. Use sendEmailVerification(beforeUpdatingEmail email: String) instead.
*/
@Deprecated
@Method(selector = "updateEmail:completion:")
public native void updateEmail(String email, @Block VoidBlock1<NSError> completion);
@Method(selector = "updatePassword:completion:")
Expand Down
2 changes: 1 addition & 1 deletion firebase/ios-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</parent>

<artifactId>robopods-firebase-core-ios</artifactId>
<name>RoboPods FireBase Core iOS v10.18.0</name>
<name>RoboPods FireBase Core iOS v10.19.0</name>
<packaging>jar</packaging>

<licenses>
Expand Down
2 changes: 1 addition & 1 deletion firebase/ios-crashlytics/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</parent>

<artifactId>robopods-firebase-crashlytics-ios</artifactId>
<name>RoboPods FireBase Crashlytics iOS v10.18.0</name>
<name>RoboPods FireBase Crashlytics iOS v10.19.0</name>
<packaging>jar</packaging>

<dependencies>
Expand Down
2 changes: 1 addition & 1 deletion firebase/ios-database/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</parent>

<artifactId>robopods-firebase-database-ios</artifactId>
<name>RoboPods FireBase Realtime Database iOS v10.18.0</name>
<name>RoboPods FireBase Realtime Database iOS v10.19.0</name>
<packaging>jar</packaging>

<licenses>
Expand Down
2 changes: 1 addition & 1 deletion firebase/ios-dylinks/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</parent>

<artifactId>robopods-firebase-dynamic-links-ios</artifactId>
<name>RoboPods FireBase Dynamic Links iOS v10.18.0</name>
<name>RoboPods FireBase Dynamic Links iOS v10.19.0</name>
<packaging>jar</packaging>

<licenses>
Expand Down
2 changes: 1 addition & 1 deletion firebase/ios-firestore/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</parent>

<artifactId>robopods-firebase-firestore-ios</artifactId>
<name>RoboPods Cloud Firestore flexible, scalable NoSQL cloud database iOS v10.18.0</name>
<name>RoboPods Cloud Firestore flexible, scalable NoSQL cloud database iOS v10.19.0</name>
<packaging>jar</packaging>

<licenses>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -511,6 +511,44 @@ typedef void (^GTMSessionFetcherTestResponse)(NSHTTPURLResponse *_Nullable respo
typedef void (^GTMSessionFetcherTestBlock)(GTMSessionFetcher *fetcherToTest,
GTMSessionFetcherTestResponse testResponse);

// Provides access to a user-agent string calculated on demand.
//
// Methods and properties on this protocol must be thread-safe. In addition,
// |userAgentCache| must not block the calling thread to perform I/O.
@protocol GTMUserAgentProvider <NSObject>

// Non-nil user-agent string if |userAgent| has already been cached and is safe
// to read without blocking the calling thread, |nil| otherwise.
@property(atomic, readonly, nullable, copy) NSString *cachedUserAgent;

// The user-agent string, calculated on demand. This might block the calling thread if
// |userAgentCached| is NO.
@property(atomic, readonly, copy) NSString *userAgent;

@end

/// Provides a User-Agent string that is known at the time the fetcher is created.
__attribute__((objc_subclassing_restricted))
@interface GTMUserAgentStringProvider : NSObject<GTMUserAgentProvider>

+ (instancetype)new NS_UNAVAILABLE;
- (instancetype)init NS_UNAVAILABLE;

- (instancetype)initWithUserAgentString:(NSString *)userAgentString NS_DESIGNATED_INITIALIZER;

@end

// Calculates the User-Agent string on demand using |GTMFetcherStandardUserAgentString()| given an
// optional bundle.
__attribute__((objc_subclassing_restricted))
@interface GTMStandardUserAgentProvider : NSObject<GTMUserAgentProvider>

+ (instancetype)new NS_UNAVAILABLE;
- (instancetype)init NS_UNAVAILABLE;
- (instancetype)initWithBundle:(nullable NSBundle *)bundle NS_DESIGNATED_INITIALIZER;

@end

void GTMSessionFetcherAssertValidSelector(id _Nullable obj, SEL _Nullable sel, ...);

// Utility functions for applications self-identifying to servers via a
Expand Down Expand Up @@ -821,6 +859,11 @@ __deprecated_msg("implement GTMSessionFetcherAuthorizer instead")
// NSURLSessionTaskPriorityDefault, or NSURLSessionTaskPriorityHigh.
@property(atomic, assign) float taskPriority;

// An optional provider to calculate the User-Agent string on demand. If non-nil and
// an HTTP header field for User-Agent is not set, this is queried before sending out
// the network request for the User-Agent string.
@property(atomic, strong, nullable) id<GTMUserAgentProvider> userAgentProvider;

// The fetcher encodes information used to resume a session in the session identifier.
// This method, intended for internal use returns the encoded information. The sessionUserInfo
// dictionary is stored as identifier metadata.
Expand Down
Loading

0 comments on commit 6d8e250

Please sign in to comment.