diff --git a/CHANGELOG.md b/CHANGELOG.md index ef2fd21209..f06c1a7e00 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +### Bug Fixes + +- **android, app:** fix hot-reload on react-native <= 0.73 ([81e5fc2](https://github.com/invertase/react-native-firebase/commit/81e5fc2b6c89fdb4aa5f0f5aa95e1e90dae5f2e4)) + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +### Features + +- **ios, sdk:** allow FIREBASE_SDK_VERSION override ([8cbe59f](https://github.com/invertase/react-native-firebase/commit/8cbe59fbf771df6ba932832c9d4fd17bf500ea91)) + +### Bug Fixes + +- **analytics:** update superstruct dependency / forward-port to new API ([#8153](https://github.com/invertase/react-native-firebase/issues/8153)) ([6db1fb4](https://github.com/invertase/react-native-firebase/commit/6db1fb471e62e2c7e434719f2616c76349f345be)) + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Features diff --git a/docs/index.md b/docs/index.md index 09d8b85379..c53f6edb9f 100644 --- a/docs/index.md +++ b/docs/index.md @@ -245,6 +245,32 @@ If you are using the [Expo Tools](https://marketplace.visualstudio.com/items?ite --- +## Other / Web + +If you are using the firebase-js-sdk fallback support for [web or "other" platforms](platforms#other-platforms) then you must initialize Firebase dynamically by calling [`initializeApp`](/reference/app#initializeApp). + +However, you only want to do this for the web platform. For non-web / native apps the "default" firebase app instance will already be configured by the native google-services.json / GoogleServices-Info.plist files as mentioned above. + +At some point during your application's bootstrap processes, initialize firebase like this: + +```javascript +import { getApp, initializeApp } from '@react-native-firebase/app'; + +// web requires dynamic initialization on web prior to using firebase +if (Platform.OS === 'web') { + const firebaseConfig = { + // ... config items pasted from firebase console for your web app here + }; + + initializeApp(firebaseConfig); +} + +// ...now throughout your app, use firebase APIs normally, for example: +const firebaseApp = getApp(); +``` + +--- + ## Miscellaneous ### Android Enabling Multidex @@ -267,10 +293,10 @@ React Native Firebase internally sets the versions of the native SDKs which each is tested against a fixed set of SDK versions (e.g. Firebase SDKs), allowing us to be confident that every feature the library supports is working as expected. -Sometimes it's required to change these versions to play nicely with other React Native libraries; therefore we allow +Sometimes it's required to change these versions to play nicely with other React Native libraries or to work around temporary build failures; therefore we allow manually overriding these native SDK versions. -> Using your own SDK versions is generally not recommended as it can lead to breaking changes in your application. Proceed with caution. +> Using your own SDK versions is not recommended and not supported as it can lead to unexpected build failures when new react-native-firebase versions are released that expect to use new SDK versions. Proceed with caution and remove these overrides as soon as possible when no longer needed. #### Android @@ -305,11 +331,13 @@ Open your projects `/ios/Podfile` and add any of the globals shown below to the ```ruby # Override Firebase SDK Version -$FirebaseSDKVersion = '11.4.0' +$FirebaseSDKVersion = '11.5.0' ``` Once changed, reinstall your projects pods via pod install and rebuild your project with `npx react-native run-ios`. +Alternatively, if you cannot edit the Podfile easily (as when using Expo), you may add the environment variable `FIREBASE_SDK_VERSION=11.5.0` (or whatever version you need) to the command line that installs pods. For example `FIREBASE_SDK_VERSION=11.5.0 yarn expo prebuild --clean` + ### Increasing Android build memory As you add more Firebase modules, there is an incredible demand placed on the Android build system, and the default memory diff --git a/docs/messaging/ios-notification-images.md b/docs/messaging/ios-notification-images.md index 334002c0e5..656617da04 100644 --- a/docs/messaging/ios-notification-images.md +++ b/docs/messaging/ios-notification-images.md @@ -43,7 +43,9 @@ end ![step-2](/assets/docs/messaging/ios-notification-images-step-2.gif) -### Step 3 - Use the extension helper +### Step 3 - Use the extension helper (Objective-C) + +> If you selected to create your extension as a Swift project, jump to the next section. At this point everything should still be running normally. This is the final step which is invoking the extension helper. @@ -68,6 +70,34 @@ At this point everything should still be running normally. This is the final ste ![step-3](/assets/docs/messaging/ios-notification-images-step-3.gif) +### Step 3 - Use the extension helper (Swift) + +At this point everything should still be running normally. This is the final step which is invoking the extension helper. + +- From the navigator select your `ImageNotification` extension +- Open the `NotificationService.swift` file +- At the top of the file import `Firebase` right after the `NotificationService` as shown below + +```diff +import UserNotifications ++ import Firebase + +class NotificationService: UNNotificationServiceExtension { +``` + +- then replace everything from line 19 to 23 with the extension helper + +```diff + if let bestAttemptContent = bestAttemptContent { +- // Modify the notification content here... +- bestAttemptContent.title = "\(bestAttemptContent.title) [modified]" +- +- contentHandler(bestAttemptContent) ++ Messaging.serviceExtension() ++ .populateNotificationContent(bestAttemptContent, withContentHandler: contentHandler) + } +``` + ## All done Run the app and check it builds successfully – **make sure you have the correct target selected**. Now you can use the [Notifications composer](https://console.firebase.google.com/u/0/project/_/notification) to test sending notifications with an image (`300KB` max size). You can also create custom notifications via [`FCM HTTP`](https://firebase.google.com/docs/cloud-messaging/http-server-ref) or [`firebase-admin`](https://www.npmjs.com/package/firebase-admin). Read this page to send [messages from a server](/messaging/server-integration). diff --git a/lerna.json b/lerna.json index 7d360b2fb6..9f19476c0e 100644 --- a/lerna.json +++ b/lerna.json @@ -76,5 +76,5 @@ "userUrlFormat": "{{host}}/{{user}}" }, "ignoreChanges": ["**/docs/**", "**/.github/**", "**/e2e/**", "**/tests/**"], - "version": "21.5.0" + "version": "21.6.1" } diff --git a/packages/analytics/CHANGELOG.md b/packages/analytics/CHANGELOG.md index 53cf526900..f1e15f12ff 100644 --- a/packages/analytics/CHANGELOG.md +++ b/packages/analytics/CHANGELOG.md @@ -3,6 +3,16 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/analytics + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +### Bug Fixes + +- **analytics:** update superstruct dependency / forward-port to new API ([#8153](https://github.com/invertase/react-native-firebase/issues/8153)) ([6db1fb4](https://github.com/invertase/react-native-firebase/commit/6db1fb471e62e2c7e434719f2616c76349f345be)) + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) **Note:** Version bump only for package @react-native-firebase/analytics diff --git a/packages/analytics/lib/index.js b/packages/analytics/lib/index.js index 1cf5543551..581af582f3 100644 --- a/packages/analytics/lib/index.js +++ b/packages/analytics/lib/index.js @@ -26,7 +26,6 @@ import { isString, isUndefined, } from '@react-native-firebase/app/lib/common'; -import { validateStruct, validateCompound } from '@react-native-firebase/app/lib/common/struct'; import { createModuleNamespace, @@ -36,6 +35,7 @@ import { import { setReactNativeModule } from '@react-native-firebase/app/lib/internal/nativeModule'; import { isBoolean } from '@react-native-firebase/app/lib/common'; +import { validateStruct, validateCompound } from './struct'; import fallBackModule from './web/RNFBAnalyticsModule'; import version from './version'; import * as structs from './structs'; diff --git a/packages/app/lib/common/struct.js b/packages/analytics/lib/struct.js similarity index 78% rename from packages/app/lib/common/struct.js rename to packages/analytics/lib/struct.js index 337a867445..0d820e0705 100644 --- a/packages/app/lib/common/struct.js +++ b/packages/analytics/lib/struct.js @@ -14,26 +14,20 @@ * limitations under the License. */ -import { superstruct } from 'superstruct/lib/index'; -import { isUndefined } from './validate'; - -export default superstruct({ - types: { - shortDate: value => typeof value === 'string' && !!value.match(/^\d{4}-\d{2}-\d{2}$/), - }, -}); +import { isUndefined } from '@react-native-firebase/app/lib/common/validate'; +import { create } from 'superstruct'; export const validateStruct = (value = {}, struct, prefix = '') => { try { - return struct(value); + return create(value, struct); } catch (e) { - const { path, reason } = e; + const { path, message } = e; + const key = path[0]; - if (reason === undefined) { + if (message === undefined) { throw new Error(`${prefix} unknown property '${key}'.`); } - e.message = `${prefix} ${e.message}`; throw e; diff --git a/packages/analytics/lib/structs.js b/packages/analytics/lib/structs.js index d5bdb0e2e0..0b43e3cc02 100644 --- a/packages/analytics/lib/structs.js +++ b/packages/analytics/lib/structs.js @@ -13,226 +13,232 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import struct from '@react-native-firebase/app/lib/common/struct'; -const Item = struct.interface({ - item_brand: 'string?', - item_id: 'string?', - item_name: 'string?', - item_category: 'string?', - item_category2: 'string?', - item_category3: 'string?', - item_category4: 'string?', - item_category5: 'string?', - item_list_id: 'string?', - item_list_name: 'string?', - item_location_id: 'string?', - item_variant: 'string?', - quantity: 'number?', - price: 'number?', +import { object, string, number, array, optional, define, type } from 'superstruct'; + +const ShortDate = define( + 'ShortDate', + value => typeof value === 'string' && /^\d{4}-\d{2}-\d{2}$/.test(value), +); + +const Item = type({ + item_brand: optional(string()), + item_id: optional(string()), + item_name: optional(string()), + item_category: optional(string()), + item_category2: optional(string()), + item_category3: optional(string()), + item_category4: optional(string()), + item_category5: optional(string()), + item_list_id: optional(string()), + item_list_name: optional(string()), + item_location_id: optional(string()), + item_variant: optional(string()), + quantity: optional(number()), + price: optional(number()), }); -export const ScreenView = struct.interface({ - screen_class: 'string?', - screen_name: 'string?', +export const ScreenView = type({ + screen_class: optional(string()), + screen_name: optional(string()), }); -export const AddPaymentInfo = struct({ - items: struct.optional([Item]), - value: 'number?', - currency: 'string?', - coupon: 'string?', - payment_type: 'string?', +export const AddPaymentInfo = object({ + items: optional(array(Item)), + value: optional(number()), + currency: optional(string()), + coupon: optional(string()), + payment_type: optional(string()), }); -export const AddShippingInfo = struct({ - items: struct.optional([Item]), - value: 'number?', - currency: 'string?', - coupon: 'string?', - shipping_tier: 'string?', +export const AddShippingInfo = object({ + items: optional(array(Item)), + value: optional(number()), + currency: optional(string()), + coupon: optional(string()), + shipping_tier: optional(string()), }); -export const AddToCart = struct({ - items: struct.optional([Item]), - value: 'number?', - currency: 'string?', +export const AddToCart = object({ + items: optional(array(Item)), + value: optional(number()), + currency: optional(string()), }); -export const AddToWishlist = struct({ - items: struct.optional([Item]), - value: 'number?', - currency: 'string?', +export const AddToWishlist = object({ + items: optional(array(Item)), + value: optional(number()), + currency: optional(string()), }); -export const BeginCheckout = struct.interface({ - items: struct.optional([Item]), - value: 'number?', - currency: 'string?', - coupon: 'string?', +export const BeginCheckout = type({ + items: optional(array(Item)), + value: optional(number()), + currency: optional(string()), + coupon: optional(string()), }); -export const CampaignDetails = struct({ - source: 'string', - medium: 'string', - campaign: 'string', - term: 'string?', - content: 'string?', - aclid: 'string?', - cp1: 'string?', +export const CampaignDetails = object({ + source: string(), + medium: string(), + campaign: string(), + term: optional(string()), + content: optional(string()), + aclid: optional(string()), + cp1: optional(string()), }); -export const EarnVirtualCurrency = struct({ - virtual_currency_name: 'string', - value: 'number', +export const EarnVirtualCurrency = object({ + virtual_currency_name: string(), + value: number(), }); -export const GenerateLead = struct({ - currency: 'string?', - value: 'number?', +export const GenerateLead = object({ + currency: optional(string()), + value: optional(number()), }); -export const JoinGroup = struct({ - group_id: 'string', +export const JoinGroup = object({ + group_id: string(), }); -export const LevelEnd = struct({ - level: 'number', - success: 'string?', +export const LevelEnd = object({ + level: number(), + success: optional(string()), }); -export const LevelStart = struct({ - level: 'number', +export const LevelStart = object({ + level: number(), }); -export const LevelUp = struct({ - level: 'number', - character: 'string?', +export const LevelUp = object({ + level: number(), + character: optional(string()), }); -export const Login = struct({ - method: 'string', +export const Login = object({ + method: string(), }); -export const PostScore = struct({ - score: 'number', - level: 'number?', - character: 'string?', +export const PostScore = object({ + score: number(), + level: optional(number()), + character: optional(string()), }); -export const Refund = struct({ - affiliation: 'string?', - coupon: 'string?', - currency: 'string?', - items: struct.optional([Item]), - shipping: 'number?', - tax: 'number?', - value: 'number?', - transaction_id: 'string?', +export const Refund = object({ + affiliation: optional(string()), + coupon: optional(string()), + currency: optional(string()), + items: optional(array(Item)), + shipping: optional(number()), + tax: optional(number()), + value: optional(number()), + transaction_id: optional(string()), }); -export const Purchase = struct.interface({ - affiliation: 'string?', - coupon: 'string?', - currency: 'string?', - items: struct.optional([Item]), - shipping: 'number?', - tax: 'number?', - value: 'number?', - transaction_id: 'string?', +export const Purchase = type({ + affiliation: optional(string()), + coupon: optional(string()), + currency: optional(string()), + items: optional(array(Item)), + shipping: optional(number()), + tax: optional(number()), + value: optional(number()), + transaction_id: optional(string()), }); -export const RemoveFromCart = struct({ - currency: 'string?', - items: struct.optional([Item]), - value: 'number?', +export const RemoveFromCart = object({ + currency: optional(string()), + items: optional(array(Item)), + value: optional(number()), }); -export const Search = struct({ - search_term: 'string', - number_of_nights: 'number?', - number_of_rooms: 'number?', - number_of_passengers: 'number?', - origin: 'string?', - destination: 'string?', - start_date: 'shortDate?', - end_date: 'shortDate?', - travel_class: 'string?', +export const Search = object({ + search_term: string(), + number_of_nights: optional(number()), + number_of_rooms: optional(number()), + number_of_passengers: optional(number()), + origin: optional(string()), + destination: optional(string()), + start_date: optional(ShortDate), + end_date: optional(ShortDate), + travel_class: optional(string()), }); -export const SelectContent = struct({ - content_type: 'string', - item_id: 'string', +export const SelectContent = object({ + content_type: string(), + item_id: string(), }); -export const SelectItem = struct({ - items: struct.optional([Item]), - item_list_id: 'string?', - item_list_name: 'string?', - content_type: 'string?', +export const SelectItem = object({ + items: optional(array(Item)), + item_list_id: optional(string()), + item_list_name: optional(string()), + content_type: optional(string()), }); -export const SelectPromotion = struct({ - creative_name: 'string', - creative_slot: 'string', - items: struct.optional([Item]), - location_id: 'string', - promotion_id: 'string', - promotion_name: 'string', +export const SelectPromotion = object({ + creative_name: string(), + creative_slot: string(), + items: optional(array(Item)), + location_id: string(), + promotion_id: string(), + promotion_name: string(), }); -export const SetCheckoutOption = struct({ - checkout_step: 'number', - checkout_option: 'string', +export const SetCheckoutOption = object({ + checkout_step: number(), + checkout_option: string(), }); -export const Share = struct({ - content_type: 'string', - item_id: 'string', - method: 'string', +export const Share = object({ + content_type: string(), + item_id: string(), + method: string(), }); -export const SignUp = struct({ - method: 'string', +export const SignUp = object({ + method: string(), }); -export const SpendVirtualCurrency = struct({ - item_name: 'string', - virtual_currency_name: 'string', - value: 'number', +export const SpendVirtualCurrency = object({ + item_name: string(), + virtual_currency_name: string(), + value: number(), }); -export const UnlockAchievement = struct({ - achievement_id: 'string', +export const UnlockAchievement = object({ + achievement_id: string(), }); -export const ViewCart = struct({ - currency: 'string?', - items: struct.optional([Item]), - value: 'number?', +export const ViewCart = object({ + currency: optional(string()), + items: optional(array(Item)), + value: optional(number()), }); -export const ViewItem = struct({ - currency: 'string?', - items: struct.optional([Item]), - value: 'number?', +export const ViewItem = object({ + currency: optional(string()), + items: optional(array(Item)), + value: optional(number()), }); -export const ViewItemList = struct({ - items: struct.optional([Item]), - item_list_id: 'string?', - item_list_name: 'string?', +export const ViewItemList = object({ + items: optional(array(Item)), + item_list_id: optional(string()), + item_list_name: optional(string()), }); -export const ViewPromotion = struct({ - items: struct.optional([Item]), - location_id: 'string?', - creative_name: 'string?', - creative_slot: 'string?', - promotion_id: 'string?', - promotion_name: 'string?', +export const ViewPromotion = object({ + items: optional(array(Item)), + location_id: optional(string()), + creative_name: optional(string()), + creative_slot: optional(string()), + promotion_id: optional(string()), + promotion_name: optional(string()), }); -export const ViewSearchResults = struct({ - search_term: 'string', +export const ViewSearchResults = object({ + search_term: string(), }); diff --git a/packages/analytics/package.json b/packages/analytics/package.json index ce73669f45..f0afd2abbd 100644 --- a/packages/analytics/package.json +++ b/packages/analytics/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/analytics", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - The analytics module provides out of the box support with Google Analytics for Firebase. Integration with the Android & iOS allows for in-depth analytical insight reporting, such as device information, location, user actions and more.", "main": "lib/index.js", @@ -22,9 +22,12 @@ "analytics" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/app": "21.6.1" }, "publishConfig": { "access": "public" + }, + "dependencies": { + "superstruct": "^2.0.2" } } diff --git a/packages/app-check/CHANGELOG.md b/packages/app-check/CHANGELOG.md index d3f7a7b962..4149976944 100644 --- a/packages/app-check/CHANGELOG.md +++ b/packages/app-check/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/app-check + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/app-check + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Bug Fixes diff --git a/packages/app-check/package.json b/packages/app-check/package.json index 6caea13d20..15fd68f6f3 100644 --- a/packages/app-check/package.json +++ b/packages/app-check/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/app-check", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - App Check", "main": "lib/index.js", @@ -25,7 +25,7 @@ "appCheck" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0", + "@react-native-firebase/app": "21.6.1", "expo": ">=47.0.0" }, "devDependencies": { diff --git a/packages/app-distribution/CHANGELOG.md b/packages/app-distribution/CHANGELOG.md index 35182b1a41..75e1451100 100644 --- a/packages/app-distribution/CHANGELOG.md +++ b/packages/app-distribution/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/app-distribution + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/app-distribution + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) **Note:** Version bump only for package @react-native-firebase/app-distribution diff --git a/packages/app-distribution/package.json b/packages/app-distribution/package.json index d231e96af0..547d5c2e57 100644 --- a/packages/app-distribution/package.json +++ b/packages/app-distribution/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/app-distribution", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - App Distribution", "main": "lib/index.js", @@ -22,7 +22,7 @@ "app-distribution" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/app": "21.6.1" }, "publishConfig": { "access": "public" diff --git a/packages/app/CHANGELOG.md b/packages/app/CHANGELOG.md index 3ed32c3efc..4e11c604f4 100644 --- a/packages/app/CHANGELOG.md +++ b/packages/app/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +### Bug Fixes + +- **android, app:** fix hot-reload on react-native <= 0.73 ([81e5fc2](https://github.com/invertase/react-native-firebase/commit/81e5fc2b6c89fdb4aa5f0f5aa95e1e90dae5f2e4)) + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +### Features + +- **ios, sdk:** allow FIREBASE_SDK_VERSION override ([8cbe59f](https://github.com/invertase/react-native-firebase/commit/8cbe59fbf771df6ba932832c9d4fd17bf500ea91)) + +### Bug Fixes + +- **analytics:** update superstruct dependency / forward-port to new API ([#8153](https://github.com/invertase/react-native-firebase/issues/8153)) ([6db1fb4](https://github.com/invertase/react-native-firebase/commit/6db1fb471e62e2c7e434719f2616c76349f345be)) + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Bug Fixes diff --git a/packages/app/RNFBApp.podspec b/packages/app/RNFBApp.podspec index 2a907161ed..d37d9e4b99 100644 --- a/packages/app/RNFBApp.podspec +++ b/packages/app/RNFBApp.podspec @@ -27,6 +27,11 @@ Pod::Spec.new do |s| # React Native dependencies s.dependency 'React-Core' + if (ENV.include?('FIREBASE_SDK_VERSION')) + Pod::UI.puts "#{s.name}: Found Firebase SDK version in environment '#{ENV['FIREBASE_SDK_VERSION']}'" + $FirebaseSDKVersion = ENV['FIREBASE_SDK_VERSION'] + end + if defined?($FirebaseSDKVersion) Pod::UI.puts "#{s.name}: Using user specified Firebase SDK version '#{$FirebaseSDKVersion}'" firebase_sdk_version = $FirebaseSDKVersion diff --git a/packages/app/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseModule.java b/packages/app/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseModule.java index 57850abd23..cbb7539f14 100644 --- a/packages/app/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseModule.java +++ b/packages/app/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseModule.java @@ -92,12 +92,13 @@ public final ExecutorService getTransactionalExecutor(String identifier) { return executorService.getTransactionalExecutor(identifier); } - - // This is no longer called as of react-native 0.74 and is only here for - // compatibility with older versions. It delegates to thew new `invalidate` + // On react-native 0.73 this is called, but simply calls `invalidate()` + // https://github.com/facebook/react-native/blob/0.73-stable/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java#L65-L72 + // This is no longer called ever for react-native >= 0.74 and is only here for + // compatibility with older versions. We delegate to the new `invalidate` // method, which all modules should implement now // Remove this method when minimum supported react-native is 0.74 - /** @noinspection removal*/ + // @noinspection removal @SuppressWarnings({"deprecation", "removal"}) @Deprecated public void onCatalystInstanceDestroy() { @@ -107,11 +108,14 @@ public void onCatalystInstanceDestroy() { } // This should have an @Override annotation but we cannot do - // that until our minimum supported react-native version is 0.74, since the - // method did not exist before then + // that until our minimum supported react-native version is 0.74 + // + // No need to call super.invalidate and in fact it is dangerous to do so: + // - did not exist before react-native 0.73 + // - on 0.74 it calls onCatalystInstanceDestroy which would infinite loop here + // - on 0.75+ it is empty - meant as sub-class hook only @CallSuper public void invalidate() { - super.invalidate(); executorService.shutdown(); } diff --git a/packages/app/package.json b/packages/app/package.json index 527d020fa2..5cc59300d3 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/app", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "A well tested, feature rich Firebase implementation for React Native, supporting iOS & Android. Individual module support for Admob, Analytics, Auth, Crash Reporting, Cloud Firestore, Database, Dynamic Links, Functions, Messaging (FCM), Remote Config, Storage and more.", "main": "lib/index.js", @@ -57,8 +57,7 @@ "react-native": "*" }, "dependencies": { - "firebase": "10.13.2", - "superstruct": "^0.6.2" + "firebase": "10.13.2" }, "devDependencies": { "@react-native-async-storage/async-storage": "^1.24.0", diff --git a/packages/auth/CHANGELOG.md b/packages/auth/CHANGELOG.md index 569e5b09ec..3a96bf50df 100644 --- a/packages/auth/CHANGELOG.md +++ b/packages/auth/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/auth + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/auth + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Bug Fixes diff --git a/packages/auth/package.json b/packages/auth/package.json index 95f72861f9..a4a7f3ae65 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/auth", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - The authentication module provides an easy-to-use API to integrate an authentication workflow into new and existing applications. React Native Firebase provides access to all Firebase authentication methods and identity providers.", "main": "lib/index.js", @@ -27,7 +27,7 @@ "plist": "^3.1.0" }, "peerDependencies": { - "@react-native-firebase/app": "21.5.0", + "@react-native-firebase/app": "21.6.1", "expo": ">=47.0.0" }, "devDependencies": { diff --git a/packages/crashlytics/CHANGELOG.md b/packages/crashlytics/CHANGELOG.md index 84ef5c3a84..2ecf7cab1a 100644 --- a/packages/crashlytics/CHANGELOG.md +++ b/packages/crashlytics/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/crashlytics + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/crashlytics + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) **Note:** Version bump only for package @react-native-firebase/crashlytics diff --git a/packages/crashlytics/package.json b/packages/crashlytics/package.json index cfb44cf596..1217a701f9 100644 --- a/packages/crashlytics/package.json +++ b/packages/crashlytics/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/crashlytics", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - Firebase Crashlytics is a lightweight, realtime crash reporter that helps you track, prioritize, and fix stability issues that erode your app quality. React Native Firebase provides automatic crash reporting for both native and JavaScript errors, including unhandled promise rejections.", "main": "lib/index.js", @@ -29,7 +29,7 @@ "crashlytics" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0", + "@react-native-firebase/app": "21.6.1", "expo": ">=47.0.0" }, "dependencies": { diff --git a/packages/database/CHANGELOG.md b/packages/database/CHANGELOG.md index 70e427db3c..beb740d2dd 100644 --- a/packages/database/CHANGELOG.md +++ b/packages/database/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/database + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/database + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Bug Fixes diff --git a/packages/database/package.json b/packages/database/package.json index 3c24e4678f..96c81cd835 100644 --- a/packages/database/package.json +++ b/packages/database/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/database", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - The Firebase Realtime Database is a cloud-hosted database. Data is stored as JSON and synchronized in realtime to every connected client. React Native Firebase provides native integration with the Android & iOS Firebase SDKs, supporting both realtime data sync and offline capabilities.", "main": "lib/index.js", @@ -25,7 +25,7 @@ "realtome database" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/app": "21.6.1" }, "publishConfig": { "access": "public" diff --git a/packages/dynamic-links/CHANGELOG.md b/packages/dynamic-links/CHANGELOG.md index 99a71957b8..6cc63dd609 100644 --- a/packages/dynamic-links/CHANGELOG.md +++ b/packages/dynamic-links/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/dynamic-links + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/dynamic-links + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Bug Fixes diff --git a/packages/dynamic-links/package.json b/packages/dynamic-links/package.json index e114010607..36274898a6 100644 --- a/packages/dynamic-links/package.json +++ b/packages/dynamic-links/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/dynamic-links", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - Dynamic Links", "main": "lib/index.js", @@ -25,7 +25,7 @@ "dynamic link" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0", + "@react-native-firebase/app": "21.6.1", "expo": ">=47.0.0" }, "devDependencies": { diff --git a/packages/firestore/CHANGELOG.md b/packages/firestore/CHANGELOG.md index f1bf2a235d..876c41e5b6 100644 --- a/packages/firestore/CHANGELOG.md +++ b/packages/firestore/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/firestore + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/firestore + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Features diff --git a/packages/firestore/package.json b/packages/firestore/package.json index 58f51d1c12..e5257ce9dc 100644 --- a/packages/firestore/package.json +++ b/packages/firestore/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/firestore", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - Cloud Firestore is a NoSQL cloud database to store and sync data between your React Native application and Firebase's database. The API matches the Firebase Web SDK whilst taking advantage of the native SDKs performance and offline capabilities.", "main": "lib/index.js", @@ -27,7 +27,7 @@ "firestore" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/app": "21.6.1" }, "publishConfig": { "access": "public" diff --git a/packages/functions/CHANGELOG.md b/packages/functions/CHANGELOG.md index bca9eb4750..74842a7f4f 100644 --- a/packages/functions/CHANGELOG.md +++ b/packages/functions/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/functions + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/functions + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) **Note:** Version bump only for package @react-native-firebase/functions diff --git a/packages/functions/package.json b/packages/functions/package.json index 4d1308ae8d..3662c7165f 100644 --- a/packages/functions/package.json +++ b/packages/functions/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/functions", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - Cloud Functions for Firebase lets you automatically run backend code in response to events triggered by Firebase features and HTTPS requests. React Native Firebase supports integration with production and locally emulated Cloud Functions with a simple API interface.\n\n", "main": "lib/index.js", @@ -24,7 +24,7 @@ "functions" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/app": "21.6.1" }, "devDependencies": { "@react-native-firebase/private-tests-firebase-functions": "^0.0.1" diff --git a/packages/in-app-messaging/CHANGELOG.md b/packages/in-app-messaging/CHANGELOG.md index 9ee54d6b64..a5cf4d5873 100644 --- a/packages/in-app-messaging/CHANGELOG.md +++ b/packages/in-app-messaging/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/in-app-messaging + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/in-app-messaging + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) **Note:** Version bump only for package @react-native-firebase/in-app-messaging diff --git a/packages/in-app-messaging/package.json b/packages/in-app-messaging/package.json index 46e7dd65da..dbfdcb36cb 100644 --- a/packages/in-app-messaging/package.json +++ b/packages/in-app-messaging/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/in-app-messaging", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - Firebase In-App Messaging helps you engage your app's active users by sending them targeted, contextual messages that encourage them to use key app features. React Native Firebase provides support for both native Android & iOS integration with a simple JavaScript API.", "main": "lib/index.js", @@ -27,8 +27,8 @@ "inAppMessaging" ], "peerDependencies": { - "@react-native-firebase/analytics": "21.5.0", - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/analytics": "21.6.1", + "@react-native-firebase/app": "21.6.1" }, "publishConfig": { "access": "public" diff --git a/packages/installations/CHANGELOG.md b/packages/installations/CHANGELOG.md index 9e5904f947..c4e3a7e375 100644 --- a/packages/installations/CHANGELOG.md +++ b/packages/installations/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/installations + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/installations + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) **Note:** Version bump only for package @react-native-firebase/installations diff --git a/packages/installations/package.json b/packages/installations/package.json index c2fb90ae93..0de42605bd 100644 --- a/packages/installations/package.json +++ b/packages/installations/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/installations", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - Installations", "main": "lib/index.js", @@ -22,7 +22,7 @@ "installations" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/app": "21.6.1" }, "publishConfig": { "access": "public" diff --git a/packages/messaging/CHANGELOG.md b/packages/messaging/CHANGELOG.md index 147c7754f5..24ba356eaf 100644 --- a/packages/messaging/CHANGELOG.md +++ b/packages/messaging/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/messaging + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/messaging + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) **Note:** Version bump only for package @react-native-firebase/messaging diff --git a/packages/messaging/package.json b/packages/messaging/package.json index 0e5b5ece3a..74af3133b0 100644 --- a/packages/messaging/package.json +++ b/packages/messaging/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/messaging", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - React Native Firebase provides native integration of Firebase Cloud Messaging (FCM) for both Android & iOS. FCM is a cost free service, allowing for server-device and device-device communication. The React Native Firebase Messaging module provides a simple JavaScript API to interact with FCM.", "main": "lib/index.js", @@ -24,7 +24,7 @@ "messaging" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0", + "@react-native-firebase/app": "21.6.1", "expo": ">=47.0.0" }, "devDependencies": { diff --git a/packages/ml/CHANGELOG.md b/packages/ml/CHANGELOG.md index 9d415958a0..ea581c3982 100644 --- a/packages/ml/CHANGELOG.md +++ b/packages/ml/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/ml + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/ml + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) **Note:** Version bump only for package @react-native-firebase/ml diff --git a/packages/ml/package.json b/packages/ml/package.json index 692f7314e5..aaf7d2b2a1 100644 --- a/packages/ml/package.json +++ b/packages/ml/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/ml", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - Firebase ML brings the power of machine learning vision to your React Native application, supporting both Android & iOS.", "main": "lib/index.js", @@ -26,7 +26,7 @@ "image labeler" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/app": "21.6.1" }, "publishConfig": { "access": "public" diff --git a/packages/perf/CHANGELOG.md b/packages/perf/CHANGELOG.md index bc15d602df..e83b497860 100644 --- a/packages/perf/CHANGELOG.md +++ b/packages/perf/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/perf + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/perf + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Bug Fixes diff --git a/packages/perf/package.json b/packages/perf/package.json index 3f759faa4b..85647c28ac 100644 --- a/packages/perf/package.json +++ b/packages/perf/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/perf", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - React Native Firebase provides native integration with Performance Monitoring to gain insight into key performance characteristics within your React Native application.", "main": "lib/index.js", @@ -29,7 +29,7 @@ "performance monitoring" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0", + "@react-native-firebase/app": "21.6.1", "expo": ">=47.0.0" }, "devDependencies": { diff --git a/packages/remote-config/CHANGELOG.md b/packages/remote-config/CHANGELOG.md index 96b287bc1e..879c0532bf 100644 --- a/packages/remote-config/CHANGELOG.md +++ b/packages/remote-config/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/remote-config + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/remote-config + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Bug Fixes diff --git a/packages/remote-config/package.json b/packages/remote-config/package.json index 371328781b..fead590769 100644 --- a/packages/remote-config/package.json +++ b/packages/remote-config/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/remote-config", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - React Native Firebase provides native integration with Remote Config, allowing you to change the appearance and/or functionality of your app without requiring an app update.", "main": "lib/index.js", @@ -24,8 +24,8 @@ "remote-config" ], "peerDependencies": { - "@react-native-firebase/analytics": "21.5.0", - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/analytics": "21.6.1", + "@react-native-firebase/app": "21.6.1" }, "publishConfig": { "access": "public" diff --git a/packages/storage/CHANGELOG.md b/packages/storage/CHANGELOG.md index 3c6cc864f5..5e7db050cf 100644 --- a/packages/storage/CHANGELOG.md +++ b/packages/storage/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package @react-native-firebase/storage + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package @react-native-firebase/storage + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) ### Bug Fixes diff --git a/packages/storage/package.json b/packages/storage/package.json index e43da53d14..e3df71ec3a 100644 --- a/packages/storage/package.json +++ b/packages/storage/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-firebase/storage", - "version": "21.5.0", + "version": "21.6.1", "author": "Invertase (http://invertase.io)", "description": "React Native Firebase - React Native Firebase provides native integration with Cloud Storage, providing support to upload and download files directly from your device and from your Firebase Cloud Storage bucket.", "main": "lib/index.js", @@ -29,7 +29,7 @@ "download" ], "peerDependencies": { - "@react-native-firebase/app": "21.5.0" + "@react-native-firebase/app": "21.6.1" }, "publishConfig": { "access": "public" diff --git a/tests/CHANGELOG.md b/tests/CHANGELOG.md index b3124d4c2d..43b0fbd35f 100644 --- a/tests/CHANGELOG.md +++ b/tests/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [21.6.1](https://github.com/invertase/react-native-firebase/compare/v21.6.0...v21.6.1) (2024-11-25) + +**Note:** Version bump only for package react-native-firebase-tests + +## [21.6.0](https://github.com/invertase/react-native-firebase/compare/v21.5.0...v21.6.0) (2024-11-20) + +**Note:** Version bump only for package react-native-firebase-tests + ## [21.5.0](https://github.com/invertase/react-native-firebase/compare/v21.4.1...v21.5.0) (2024-11-16) **Note:** Version bump only for package react-native-firebase-tests diff --git a/tests/package.json b/tests/package.json index c6f9fbf869..739111ca13 100644 --- a/tests/package.json +++ b/tests/package.json @@ -1,6 +1,6 @@ { "name": "react-native-firebase-tests", - "version": "21.5.0", + "version": "21.6.1", "private": true, "scripts": { "build:clean": "rimraf dist && rimraf android/build && rimraf android/app/build && rimraf android/.gradle && rimraf ios/build && rimraf macos/build", @@ -9,24 +9,24 @@ }, "dependencies": { "@react-native-async-storage/async-storage": "^1.24.0", - "@react-native-firebase/analytics": "21.5.0", - "@react-native-firebase/app": "21.5.0", - "@react-native-firebase/app-check": "21.5.0", - "@react-native-firebase/app-distribution": "21.5.0", + "@react-native-firebase/analytics": "21.6.1", + "@react-native-firebase/app": "21.6.1", + "@react-native-firebase/app-check": "21.6.1", + "@react-native-firebase/app-distribution": "21.6.1", "@react-native-firebase/app-types": "6.7.2", - "@react-native-firebase/auth": "21.5.0", - "@react-native-firebase/crashlytics": "21.5.0", - "@react-native-firebase/database": "21.5.0", - "@react-native-firebase/dynamic-links": "21.5.0", - "@react-native-firebase/firestore": "21.5.0", - "@react-native-firebase/functions": "21.5.0", - "@react-native-firebase/in-app-messaging": "21.5.0", - "@react-native-firebase/installations": "21.5.0", - "@react-native-firebase/messaging": "21.5.0", - "@react-native-firebase/ml": "21.5.0", - "@react-native-firebase/perf": "21.5.0", - "@react-native-firebase/remote-config": "21.5.0", - "@react-native-firebase/storage": "21.5.0", + "@react-native-firebase/auth": "21.6.1", + "@react-native-firebase/crashlytics": "21.6.1", + "@react-native-firebase/database": "21.6.1", + "@react-native-firebase/dynamic-links": "21.6.1", + "@react-native-firebase/firestore": "21.6.1", + "@react-native-firebase/functions": "21.6.1", + "@react-native-firebase/in-app-messaging": "21.6.1", + "@react-native-firebase/installations": "21.6.1", + "@react-native-firebase/messaging": "21.6.1", + "@react-native-firebase/ml": "21.6.1", + "@react-native-firebase/perf": "21.6.1", + "@react-native-firebase/remote-config": "21.6.1", + "@react-native-firebase/storage": "21.6.1", "postinstall-postinstall": "2.1.0", "react": "18.3.1", "react-native": "0.74.5", diff --git a/yarn.lock b/yarn.lock index 8f8d3cd590..f72c195270 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6192,21 +6192,23 @@ __metadata: languageName: node linkType: hard -"@react-native-firebase/analytics@npm:21.5.0, @react-native-firebase/analytics@workspace:packages/analytics": +"@react-native-firebase/analytics@npm:21.6.1, @react-native-firebase/analytics@workspace:packages/analytics": version: 0.0.0-use.local resolution: "@react-native-firebase/analytics@workspace:packages/analytics" + dependencies: + superstruct: "npm:^2.0.2" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft -"@react-native-firebase/app-check@npm:21.5.0, @react-native-firebase/app-check@workspace:packages/app-check": +"@react-native-firebase/app-check@npm:21.6.1, @react-native-firebase/app-check@workspace:packages/app-check": version: 0.0.0-use.local resolution: "@react-native-firebase/app-check@workspace:packages/app-check" dependencies: expo: "npm:^50.0.21" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 expo: ">=47.0.0" peerDependenciesMeta: expo: @@ -6214,11 +6216,11 @@ __metadata: languageName: unknown linkType: soft -"@react-native-firebase/app-distribution@npm:21.5.0, @react-native-firebase/app-distribution@workspace:packages/app-distribution": +"@react-native-firebase/app-distribution@npm:21.6.1, @react-native-firebase/app-distribution@workspace:packages/app-distribution": version: 0.0.0-use.local resolution: "@react-native-firebase/app-distribution@workspace:packages/app-distribution" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft @@ -6229,14 +6231,13 @@ __metadata: languageName: node linkType: hard -"@react-native-firebase/app@npm:21.5.0, @react-native-firebase/app@workspace:packages/app": +"@react-native-firebase/app@npm:21.6.1, @react-native-firebase/app@workspace:packages/app": version: 0.0.0-use.local resolution: "@react-native-firebase/app@workspace:packages/app" dependencies: "@react-native-async-storage/async-storage": "npm:^1.24.0" expo: "npm:^50.0.21" firebase: "npm:10.13.2" - superstruct: "npm:^0.6.2" peerDependencies: expo: ">=47.0.0" react: "*" @@ -6247,7 +6248,7 @@ __metadata: languageName: unknown linkType: soft -"@react-native-firebase/auth@npm:21.5.0, @react-native-firebase/auth@workspace:packages/auth": +"@react-native-firebase/auth@npm:21.6.1, @react-native-firebase/auth@workspace:packages/auth": version: 0.0.0-use.local resolution: "@react-native-firebase/auth@workspace:packages/auth" dependencies: @@ -6255,7 +6256,7 @@ __metadata: expo: "npm:^50.0.21" plist: "npm:^3.1.0" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 expo: ">=47.0.0" peerDependenciesMeta: expo: @@ -6263,14 +6264,14 @@ __metadata: languageName: unknown linkType: soft -"@react-native-firebase/crashlytics@npm:21.5.0, @react-native-firebase/crashlytics@workspace:packages/crashlytics": +"@react-native-firebase/crashlytics@npm:21.6.1, @react-native-firebase/crashlytics@workspace:packages/crashlytics": version: 0.0.0-use.local resolution: "@react-native-firebase/crashlytics@workspace:packages/crashlytics" dependencies: expo: "npm:^50.0.21" stacktrace-js: "npm:^2.0.2" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 expo: ">=47.0.0" peerDependenciesMeta: expo: @@ -6278,21 +6279,21 @@ __metadata: languageName: unknown linkType: soft -"@react-native-firebase/database@npm:21.5.0, @react-native-firebase/database@workspace:packages/database": +"@react-native-firebase/database@npm:21.6.1, @react-native-firebase/database@workspace:packages/database": version: 0.0.0-use.local resolution: "@react-native-firebase/database@workspace:packages/database" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft -"@react-native-firebase/dynamic-links@npm:21.5.0, @react-native-firebase/dynamic-links@workspace:packages/dynamic-links": +"@react-native-firebase/dynamic-links@npm:21.6.1, @react-native-firebase/dynamic-links@workspace:packages/dynamic-links": version: 0.0.0-use.local resolution: "@react-native-firebase/dynamic-links@workspace:packages/dynamic-links" dependencies: expo: "npm:^50.0.21" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 expo: ">=47.0.0" peerDependenciesMeta: expo: @@ -6300,48 +6301,48 @@ __metadata: languageName: unknown linkType: soft -"@react-native-firebase/firestore@npm:21.5.0, @react-native-firebase/firestore@workspace:packages/firestore": +"@react-native-firebase/firestore@npm:21.6.1, @react-native-firebase/firestore@workspace:packages/firestore": version: 0.0.0-use.local resolution: "@react-native-firebase/firestore@workspace:packages/firestore" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft -"@react-native-firebase/functions@npm:21.5.0, @react-native-firebase/functions@workspace:packages/functions": +"@react-native-firebase/functions@npm:21.6.1, @react-native-firebase/functions@workspace:packages/functions": version: 0.0.0-use.local resolution: "@react-native-firebase/functions@workspace:packages/functions" dependencies: "@react-native-firebase/private-tests-firebase-functions": "npm:^0.0.1" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft -"@react-native-firebase/in-app-messaging@npm:21.5.0, @react-native-firebase/in-app-messaging@workspace:packages/in-app-messaging": +"@react-native-firebase/in-app-messaging@npm:21.6.1, @react-native-firebase/in-app-messaging@workspace:packages/in-app-messaging": version: 0.0.0-use.local resolution: "@react-native-firebase/in-app-messaging@workspace:packages/in-app-messaging" peerDependencies: - "@react-native-firebase/analytics": 21.5.0 - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/analytics": 21.6.1 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft -"@react-native-firebase/installations@npm:21.5.0, @react-native-firebase/installations@workspace:packages/installations": +"@react-native-firebase/installations@npm:21.6.1, @react-native-firebase/installations@workspace:packages/installations": version: 0.0.0-use.local resolution: "@react-native-firebase/installations@workspace:packages/installations" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft -"@react-native-firebase/messaging@npm:21.5.0, @react-native-firebase/messaging@workspace:packages/messaging": +"@react-native-firebase/messaging@npm:21.6.1, @react-native-firebase/messaging@workspace:packages/messaging": version: 0.0.0-use.local resolution: "@react-native-firebase/messaging@workspace:packages/messaging" dependencies: expo: "npm:^50.0.21" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 expo: ">=47.0.0" peerDependenciesMeta: expo: @@ -6349,21 +6350,21 @@ __metadata: languageName: unknown linkType: soft -"@react-native-firebase/ml@npm:21.5.0, @react-native-firebase/ml@workspace:packages/ml": +"@react-native-firebase/ml@npm:21.6.1, @react-native-firebase/ml@workspace:packages/ml": version: 0.0.0-use.local resolution: "@react-native-firebase/ml@workspace:packages/ml" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft -"@react-native-firebase/perf@npm:21.5.0, @react-native-firebase/perf@workspace:packages/perf": +"@react-native-firebase/perf@npm:21.6.1, @react-native-firebase/perf@workspace:packages/perf": version: 0.0.0-use.local resolution: "@react-native-firebase/perf@workspace:packages/perf" dependencies: expo: "npm:^50.0.21" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 expo: ">=47.0.0" peerDependenciesMeta: expo: @@ -6378,20 +6379,20 @@ __metadata: languageName: node linkType: hard -"@react-native-firebase/remote-config@npm:21.5.0, @react-native-firebase/remote-config@workspace:packages/remote-config": +"@react-native-firebase/remote-config@npm:21.6.1, @react-native-firebase/remote-config@workspace:packages/remote-config": version: 0.0.0-use.local resolution: "@react-native-firebase/remote-config@workspace:packages/remote-config" peerDependencies: - "@react-native-firebase/analytics": 21.5.0 - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/analytics": 21.6.1 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft -"@react-native-firebase/storage@npm:21.5.0, @react-native-firebase/storage@workspace:packages/storage": +"@react-native-firebase/storage@npm:21.6.1, @react-native-firebase/storage@workspace:packages/storage": version: 0.0.0-use.local resolution: "@react-native-firebase/storage@workspace:packages/storage" peerDependencies: - "@react-native-firebase/app": 21.5.0 + "@react-native-firebase/app": 21.6.1 languageName: unknown linkType: soft @@ -9400,18 +9401,6 @@ __metadata: languageName: node linkType: hard -"clone-deep@npm:^2.0.1": - version: 2.0.2 - resolution: "clone-deep@npm:2.0.2" - dependencies: - for-own: "npm:^1.0.0" - is-plain-object: "npm:^2.0.4" - kind-of: "npm:^6.0.0" - shallow-clone: "npm:^1.0.0" - checksum: 10/c33ae31e332cdfd477a8115c9d044984eb69bf009fce3e1f0ff002176652f572d8742aa5e6caeaf16cf5d6084e33fe51bfa482fec53f43e767b3518c797955b1 - languageName: node - linkType: hard - "clone@npm:^1.0.2": version: 1.0.4 resolution: "clone@npm:1.0.4" @@ -12486,29 +12475,6 @@ __metadata: languageName: node linkType: hard -"for-in@npm:^0.1.3": - version: 0.1.8 - resolution: "for-in@npm:0.1.8" - checksum: 10/f5bdad7811700ee6a0f96b33d72a1db966aea75a1f03c7245d147f8369305e709f53a55ee7ae8eaddcfa85c7c89bca78472be8f1bc605475ce5bb2c70f77f8da - languageName: node - linkType: hard - -"for-in@npm:^1.0.1": - version: 1.0.2 - resolution: "for-in@npm:1.0.2" - checksum: 10/09f4ae93ce785d253ac963d94c7f3432d89398bf25ac7a24ed034ca393bf74380bdeccc40e0f2d721a895e54211b07c8fad7132e8157827f6f7f059b70b4043d - languageName: node - linkType: hard - -"for-own@npm:^1.0.0": - version: 1.0.0 - resolution: "for-own@npm:1.0.0" - dependencies: - for-in: "npm:^1.0.1" - checksum: 10/233238f6e9060f61295a7f7c7e3e9de11aaef57e82a108e7f350dc92ae84fe2189848077ac4b8db47fd8edd45337ed8d9f66bd0b1efa4a6a1b3f38aa21b7ab2e - languageName: node - linkType: hard - "foreground-child@npm:^2.0.0": version: 2.0.0 resolution: "foreground-child@npm:2.0.0" @@ -14120,13 +14086,6 @@ __metadata: languageName: node linkType: hard -"is-extendable@npm:^0.1.1": - version: 0.1.1 - resolution: "is-extendable@npm:0.1.1" - checksum: 10/3875571d20a7563772ecc7a5f36cb03167e9be31ad259041b4a8f73f33f885441f778cee1f1fe0085eb4bc71679b9d8c923690003a36a6a5fdf8023e6e3f0672 - languageName: node - linkType: hard - "is-extglob@npm:^1.0.0": version: 1.0.0 resolution: "is-extglob@npm:1.0.0" @@ -15718,14 +15677,7 @@ __metadata: languageName: node linkType: hard -"kind-of@npm:^5.0.0": - version: 5.1.0 - resolution: "kind-of@npm:5.1.0" - checksum: 10/acf7cc73881f27629f700a80de77ff7fe4abc9430eac7ddb09117f75126e578ee8d7e44c4dacb6a9e802d5d881abf007ee6af3cfbe55f8b5cf0a7fdc49a02aa3 - languageName: node - linkType: hard - -"kind-of@npm:^6.0.0, kind-of@npm:^6.0.1, kind-of@npm:^6.0.2, kind-of@npm:^6.0.3": +"kind-of@npm:^6.0.2, kind-of@npm:^6.0.3": version: 6.0.3 resolution: "kind-of@npm:6.0.3" checksum: 10/5873d303fb36aad875b7538798867da2ae5c9e328d67194b0162a3659a627d22f742fc9c4ae95cd1704132a24b00cae5041fc00c0f6ef937dc17080dc4dbb962 @@ -17417,16 +17369,6 @@ __metadata: languageName: node linkType: hard -"mixin-object@npm:^2.0.1": - version: 2.0.1 - resolution: "mixin-object@npm:2.0.1" - dependencies: - for-in: "npm:^0.1.3" - is-extendable: "npm:^0.1.1" - checksum: 10/7d0eb7c2f06435fcc01d132824b4c973a0df689a117d8199d79911b506363b6f4f86a84458a63f3acfa7388f3052612cfe27105400b4932678452925a9739a4c - languageName: node - linkType: hard - "mkdirp@npm:^0.5.1, mkdirp@npm:^0.5.6, mkdirp@npm:~0.5.1": version: 0.5.6 resolution: "mkdirp@npm:0.5.6" @@ -20070,24 +20012,24 @@ __metadata: dependencies: "@firebase/rules-unit-testing": "npm:^3.0.4" "@react-native-async-storage/async-storage": "npm:^1.24.0" - "@react-native-firebase/analytics": "npm:21.5.0" - "@react-native-firebase/app": "npm:21.5.0" - "@react-native-firebase/app-check": "npm:21.5.0" - "@react-native-firebase/app-distribution": "npm:21.5.0" + "@react-native-firebase/analytics": "npm:21.6.1" + "@react-native-firebase/app": "npm:21.6.1" + "@react-native-firebase/app-check": "npm:21.6.1" + "@react-native-firebase/app-distribution": "npm:21.6.1" "@react-native-firebase/app-types": "npm:6.7.2" - "@react-native-firebase/auth": "npm:21.5.0" - "@react-native-firebase/crashlytics": "npm:21.5.0" - "@react-native-firebase/database": "npm:21.5.0" - "@react-native-firebase/dynamic-links": "npm:21.5.0" - "@react-native-firebase/firestore": "npm:21.5.0" - "@react-native-firebase/functions": "npm:21.5.0" - "@react-native-firebase/in-app-messaging": "npm:21.5.0" - "@react-native-firebase/installations": "npm:21.5.0" - "@react-native-firebase/messaging": "npm:21.5.0" - "@react-native-firebase/ml": "npm:21.5.0" - "@react-native-firebase/perf": "npm:21.5.0" - "@react-native-firebase/remote-config": "npm:21.5.0" - "@react-native-firebase/storage": "npm:21.5.0" + "@react-native-firebase/auth": "npm:21.6.1" + "@react-native-firebase/crashlytics": "npm:21.6.1" + "@react-native-firebase/database": "npm:21.6.1" + "@react-native-firebase/dynamic-links": "npm:21.6.1" + "@react-native-firebase/firestore": "npm:21.6.1" + "@react-native-firebase/functions": "npm:21.6.1" + "@react-native-firebase/in-app-messaging": "npm:21.6.1" + "@react-native-firebase/installations": "npm:21.6.1" + "@react-native-firebase/messaging": "npm:21.6.1" + "@react-native-firebase/ml": "npm:21.6.1" + "@react-native-firebase/perf": "npm:21.6.1" + "@react-native-firebase/remote-config": "npm:21.6.1" + "@react-native-firebase/storage": "npm:21.6.1" "@react-native/babel-preset": "npm:^0.74.87" "@react-native/metro-config": "npm:^0.74.87" axios: "npm:^1.7.7" @@ -21462,17 +21404,6 @@ __metadata: languageName: node linkType: hard -"shallow-clone@npm:^1.0.0": - version: 1.0.0 - resolution: "shallow-clone@npm:1.0.0" - dependencies: - is-extendable: "npm:^0.1.1" - kind-of: "npm:^5.0.0" - mixin-object: "npm:^2.0.1" - checksum: 10/51e36158d0fd7d9d0ce599a01a0a835d9e0a6ec10d6c69b62dda50ded5284ab92237ce5fa34cb58390e06c83961a17f1c39704e189ce0d7ae6daedae151da734 - languageName: node - linkType: hard - "shallow-clone@npm:^3.0.0": version: 3.0.1 resolution: "shallow-clone@npm:3.0.1" @@ -22461,13 +22392,10 @@ __metadata: languageName: node linkType: hard -"superstruct@npm:^0.6.2": - version: 0.6.2 - resolution: "superstruct@npm:0.6.2" - dependencies: - clone-deep: "npm:^2.0.1" - kind-of: "npm:^6.0.1" - checksum: 10/2377455173450769eaa19381bec851cafb8e356116f5b5fab1fb764b9fbdaff20322cf2f2d3185c3bb856233c9cdb8fb9e6dc03e5132adf902a71acee03822a3 +"superstruct@npm:^2.0.2": + version: 2.0.2 + resolution: "superstruct@npm:2.0.2" + checksum: 10/10e1944a9da4baee187fbaa6c5d97d7af266b55786dfe50bce67f0f1e7d93f1a5a42dd51e245a2e16404f8336d07c21c67f1c1fbc4ad0a252d3d2601d6c926da languageName: node linkType: hard