From 13149c2ae5cf73d8f76f706b0e300f1e5c659c88 Mon Sep 17 00:00:00 2001 From: Rodrigo Lazo Paz Date: Thu, 28 Aug 2025 12:21:48 -0400 Subject: [PATCH 1/7] [Infra] Enable simple formatter for md Using the `prettier` formatter supported in spotless to limit markdown to 100 lines or less. --- CONTRIBUTING.md | 31 +++++---- README.md | 164 ++++++++++++++++++++++------------------------- build.gradle.kts | 4 ++ 3 files changed, 94 insertions(+), 105 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e0360670700..8dbfd45addb 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,26 +1,24 @@ # How to Contribute -We'd love to accept your patches and contributions to this project. There are -just a few small guidelines you need to follow. +We'd love to accept your patches and contributions to this project. There are just a few small +guidelines you need to follow. ## Contributor License Agreement -Contributions to this project must be accompanied by a Contributor License -Agreement. You (or your employer) retain the copyright to your contribution; -this simply gives us permission to use and redistribute your contributions as -part of the project. Head over to to see -your current agreements on file or to sign a new one. +Contributions to this project must be accompanied by a Contributor License Agreement. You (or your +employer) retain the copyright to your contribution; this simply gives us permission to use and +redistribute your contributions as part of the project. Head over to + to see your current agreements on file or to sign a new one. -You generally only need to submit a CLA once, so if you've already submitted one -(even if it was for a different project), you probably don't need to do it -again. +You generally only need to submit a CLA once, so if you've already submitted one (even if it was for +a different project), you probably don't need to do it again. ## Code reviews -All submissions, including submissions by project members, require review. We -use GitHub pull requests for this purpose. Consult -[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more -information on using pull requests. +All submissions, including submissions by project members, require review. We use GitHub pull +requests for this purpose. Consult +[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more information on using +pull requests. ## Community Guidelines @@ -29,5 +27,6 @@ This project follows ## Contributor Documentation -To know more about how to setup your environment, how Firebase internals work, and -best practices, take a look at our detailed [contributor documentation](https://firebase.github.io/firebase-android-sdk/). \ No newline at end of file +To know more about how to setup your environment, how Firebase internals work, and best practices, +take a look at our detailed +[contributor documentation](https://firebase.github.io/firebase-android-sdk/). diff --git a/README.md b/README.md index 236028bb6a5..948d6254ce3 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,9 @@ # Firebase Android Open Source Development -This repository contains the source code for all Android Firebase SDKs except -Analytics and Auth. +This repository contains the source code for all Android Firebase SDKs except Analytics and Auth. -Firebase is an app development platform with tools to help you build, grow and -monetize your app. More information about Firebase can be found at -https://firebase.google.com. +Firebase is an app development platform with tools to help you build, grow and monetize your app. +More information about Firebase can be found at https://firebase.google.com. ## Table of contents @@ -15,10 +13,8 @@ https://firebase.google.com. 1. [Integration Testing](#integration-testing) 1. [Proguarding](#proguarding) 1. [APIs used via reflection](#APIs-used-via-reflection) - 1. [APIs intended for developer - consumption](#APIs-intended-for-developer-consumption) - 1. [APIs intended for other Firebase - SDKs](#APIs-intended-for-other-firebase-sdks) + 1. [APIs intended for developer consumption](#APIs-intended-for-developer-consumption) + 1. [APIs intended for other Firebase SDKs](#APIs-intended-for-other-firebase-sdks) 1. [Publishing](#publishing) 1. [Dependencies](#dependencies) 1. [Commands](#commands) @@ -27,23 +23,22 @@ https://firebase.google.com. ## Getting Started -* Install the latest Android Studio (should be Meerkat | 2024.3.1 or later) -* Clone the repo (`git clone --recurse-submodules git@github.com:firebase/firebase-android-sdk.git`) - * When cloning the repo, it is important to get the submodules as well. If - you have already cloned the repo without the submodules, you can update the - submodules by running `git submodule update --init --recursive`. -* Import the firebase-android-sdk gradle project into Android Studio using the - **Import project(Gradle, Eclipse ADT, etc.)** option. -* `firebase-crashlytics-ndk` must be built with NDK 21. See - [firebase-crashlytics-ndk](firebase-crashlytics-ndk/README.md) for more - details. +- Install the latest Android Studio (should be Meerkat | 2024.3.1 or later) +- Clone the repo (`git clone --recurse-submodules git@github.com:firebase/firebase-android-sdk.git`) + - When cloning the repo, it is important to get the submodules as well. If you have already cloned + the repo without the submodules, you can update the submodules by running + `git submodule update --init --recursive`. +- Import the firebase-android-sdk gradle project into Android Studio using the **Import + project(Gradle, Eclipse ADT, etc.)** option. +- `firebase-crashlytics-ndk` must be built with NDK 21. See + [firebase-crashlytics-ndk](firebase-crashlytics-ndk/README.md) for more details. ## Testing Firebase Android libraries exercise all three types of tests recommended by the [Android Testing Pyramid](https://developer.android.com/training/testing/fundamentals#testing-pyramid). -Depending on the requirements of the specific project, some or all of these -tests may be used to support changes. +Depending on the requirements of the specific project, some or all of these tests may be used to +support changes. > :warning: **Running tests with errorprone** > @@ -53,48 +48,46 @@ tests may be used to support changes. ### Unit Testing -These are tests that run on your machine's local Java Virtual Machine (JVM). At -runtime, these tests are executed against a modified version of android.jar -where all final modifiers have been stripped off. This lets us sandbox behaviors -at desired places and use popular mocking libraries. +These are tests that run on your machine's local Java Virtual Machine (JVM). At runtime, these tests +are executed against a modified version of android.jar where all final modifiers have been stripped +off. This lets us sandbox behaviors at desired places and use popular mocking libraries. Unit tests can be executed on the command line by running + ```bash ./gradlew ::check ``` ### Integration Testing -These are tests that run on a hardware device or emulator. These tests have -access to Instrumentation APIs, give you access to information such as the -[Android Context](https://developer.android.com/reference/android/content/Context). -In Firebase, instrumentation tests are used at different capacities by different -projects. Some tests may exercise device capabilities, while stubbing any calls -to the backend, while some others may call out to nightly backend builds to -ensure distributed API compatibility. +These are tests that run on a hardware device or emulator. These tests have access to +Instrumentation APIs, give you access to information such as the +[Android Context](https://developer.android.com/reference/android/content/Context). In Firebase, +instrumentation tests are used at different capacities by different projects. Some tests may +exercise device capabilities, while stubbing any calls to the backend, while some others may call +out to nightly backend builds to ensure distributed API compatibility. -Along with Espresso, they are also used to test projects that have UI -components. +Along with Espresso, they are also used to test projects that have UI components. #### Project Setup -Before you can run integration tests, you need to add a `google-services.json` -file to the root of your checkout. You can use the `google-services.json` from -any project that includes an Android App, though you'll likely want one that's -separate from any production data you have because our tests write random data. +Before you can run integration tests, you need to add a `google-services.json` file to the root of +your checkout. You can use the `google-services.json` from any project that includes an Android App, +though you'll likely want one that's separate from any production data you have because our tests +write random data. If you don't have a suitable testing project already: - * Open the [Firebase console](https://console.firebase.google.com/) - * If you don't yet have a project you want to use for testing, create one. - * Add an Android app to the project - * Give the app any package name you like. - * Download the resulting `google-services.json` file and put it in the root of - your checkout. +- Open the [Firebase console](https://console.firebase.google.com/) +- If you don't yet have a project you want to use for testing, create one. +- Add an Android app to the project +- Give the app any package name you like. +- Download the resulting `google-services.json` file and put it in the root of your checkout. #### Running Integration Tests on Local Emulator Integration tests can be executed on the command line by running + ```bash ./gradlew ::connectedCheck ``` @@ -103,11 +96,12 @@ Integration tests can be executed on the command line by running > You need additional setup for this to work: > -> * `gcloud` needs to be [installed](https://cloud.google.com/sdk/install) on local machine -> * `gcloud` needs to be configured with a project that has billing enabled -> * `gcloud` needs to be authenticated with credentials that have 'Firebase Test Lab Admin' role +> - `gcloud` needs to be [installed](https://cloud.google.com/sdk/install) on local machine +> - `gcloud` needs to be configured with a project that has billing enabled +> - `gcloud` needs to be authenticated with credentials that have 'Firebase Test Lab Admin' role Integration tests can be executed on the command line by running + ```bash ./gradlew ::deviceCheck ``` @@ -134,70 +128,62 @@ Firebase SDKs use some special annotations for tooling purposes. ### @Keep APIs that need to be preserved up until the app's runtime can be annotated with -[@Keep](https://developer.android.com/reference/android/support/annotation/Keep). -The -[@Keep](https://developer.android.com/reference/android/support/annotation/Keep) -annotation is *blessed* to be honored by android's [default proguard -configuration](https://developer.android.com/studio/write/annotations#keep). A common use for -this annotation is because of reflection. These APIs should be generally **discouraged**, because -they can't be proguarded. +[@Keep](https://developer.android.com/reference/android/support/annotation/Keep). The +[@Keep](https://developer.android.com/reference/android/support/annotation/Keep) annotation is +_blessed_ to be honored by android's +[default proguard configuration](https://developer.android.com/studio/write/annotations#keep). A +common use for this annotation is because of reflection. These APIs should be generally +**discouraged**, because they can't be proguarded. ### @KeepForSdk -APIs that are intended to be used by Firebase SDKs should be annotated with -`@KeepForSdk`. The key benefit here is that the annotation is *blessed* to throw -linter errors on Android Studio if used by the developer from a non firebase -package, thereby providing a valuable guard rail. - +APIs that are intended to be used by Firebase SDKs should be annotated with `@KeepForSdk`. The key +benefit here is that the annotation is _blessed_ to throw linter errors on Android Studio if used by +the developer from a non firebase package, thereby providing a valuable guard rail. ### @PublicApi We annotate APIs that meant to be used by developers with -[@PublicAPI](firebase-common/src/main/java/com/google/firebase/annotations/PublicApi.java). This +[@PublicAPI](firebase-common/src/main/java/com/google/firebase/annotations/PublicApi.java). This annotation will be used by tooling to help inform the version bump (major, minor, patch) that is required for the next release. ## Proguarding -Firebase SDKs do not proguard themselves, but support proguarding. Firebase SDKs themselves are +Firebase SDKs do not proguard themselves, but support proguarding. Firebase SDKs themselves are proguard friendly, but the dependencies of Firebase SDKs may not be. ### Proguard config -In addition to preguard.txt, projects declare an additional set of proguard -rules in a proguard.txt that are honored by the developer's app while building -the app's proguarded apk. This file typically contains the keep rules that need -to be honored during the app' s proguarding phase. +In addition to preguard.txt, projects declare an additional set of proguard rules in a proguard.txt +that are honored by the developer's app while building the app's proguarded apk. This file typically +contains the keep rules that need to be honored during the app' s proguarding phase. -As a best practice, these explicit rules should be scoped to only libraries -whose source code is outside the firebase-android-sdk codebase making annotation -based approaches insufficient.The combination of keep rules resulting from the -annotations, the preguard.txt and the proguard.txt collectively determine the -APIs that are preserved at **runtime**. +As a best practice, these explicit rules should be scoped to only libraries whose source code is +outside the firebase-android-sdk codebase making annotation based approaches insufficient.The +combination of keep rules resulting from the annotations, the preguard.txt and the proguard.txt +collectively determine the APIs that are preserved at **runtime**. ## Publishing -Firebase is published as a collection of libraries each of which either -represents a top level product, or contains shared functionality used by one or -more projects. The projects are published as managed maven artifacts available -at [Google's Maven Repository](https://maven.google.com). This section helps -reason about how developers may make changes to firebase projects and have their -apps depend on the modified versions of Firebase. +Firebase is published as a collection of libraries each of which either represents a top level +product, or contains shared functionality used by one or more projects. The projects are published +as managed maven artifacts available at [Google's Maven Repository](https://maven.google.com). This +section helps reason about how developers may make changes to firebase projects and have their apps +depend on the modified versions of Firebase. ### Dependencies Any dependencies, within the projects, or outside of Firebase are encoded as [maven dependencies](https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html) -into the `pom` file that accompanies the published artifact. This allows the -developer's build system (typically Gradle) to build a dependency graph and -select the dependencies using its own [resolution -strategy](https://docs.gradle.org/current/dsl/org.gradle.api.artifacts.ResolutionStrategy.html) +into the `pom` file that accompanies the published artifact. This allows the developer's build +system (typically Gradle) to build a dependency graph and select the dependencies using its own +[resolution strategy](https://docs.gradle.org/current/dsl/org.gradle.api.artifacts.ResolutionStrategy.html) ### Commands -For more advanced use cases where developers wish to make changes to a project, -but have transitive dependencies point to publicly released versions, individual -projects may be published as follows. +For more advanced use cases where developers wish to make changes to a project, but have transitive +dependencies point to publicly released versions, individual projects may be published as follows. ```bash # e.g. to publish Firestore and Functions @@ -205,21 +191,21 @@ projects may be published as follows. publishReleasingLibrariesToMavenLocal ``` -Developers may take a dependency on these locally published versions by adding -the `mavenLocal()` repository to your [repositories -block](https://docs.gradle.org/current/userguide/declaring_repositories.html) in -your app module's build.gradle. +Developers may take a dependency on these locally published versions by adding the `mavenLocal()` +repository to your +[repositories block](https://docs.gradle.org/current/userguide/declaring_repositories.html) in your +app module's build.gradle. ### Code Formatting Java and Kotlin are both formatted using `spotless`. To run formatting on a project, run + ```bash ./gradlew ::spotlessApply ``` ### Contributing -We love contributions! Please read our -[contribution guidelines](/CONTRIBUTING.md) to get started. +We love contributions! Please read our [contribution guidelines](/CONTRIBUTING.md) to get started. diff --git a/build.gradle.kts b/build.gradle.kts index ec33368b81e..c0cfb596c6b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -60,6 +60,10 @@ fun Project.applySpotless() { target("*.gradle.kts") // default target for kotlinGradle ktfmt("0.41").googleStyle() } + format("styling") { + target("*.md") + prettier().config(mapOf("printWidth" to 100, "proseWrap" to "always")) + } } } From 912107b5662e1d978665e8bf4d9341a355502722 Mon Sep 17 00:00:00 2001 From: Rodrigo Lazo Paz Date: Thu, 28 Aug 2025 12:38:26 -0400 Subject: [PATCH 2/7] Actually apply the formatter to our md files --- .../CHANGELOG.md | 71 +- appcheck/firebase-appcheck-debug/CHANGELOG.md | 79 +- .../firebase-appcheck-interop/CHANGELOG.md | 2 - .../CHANGELOG.md | 53 +- appcheck/firebase-appcheck/CHANGELOG.md | 166 +-- encoders/README.md | 44 +- encoders/firebase-decoders-json/CHANGELOG.md | 2 - encoders/firebase-encoders-json/CHANGELOG.md | 2 - .../firebase-encoders-processor/CHANGELOG.md | 2 - encoders/firebase-encoders-proto/CHANGELOG.md | 4 +- .../firebase-encoders-reflective/CHANGELOG.md | 2 - encoders/firebase-encoders/CHANGELOG.md | 2 - .../protoc-gen-firebase-encoders/CHANGELOG.md | 2 - firebase-abt/CHANGELOG.md | 58 +- firebase-ai/CHANGELOG.md | 98 +- firebase-ai/README.md | 15 +- firebase-annotations/CHANGELOG.md | 4 +- firebase-appdistribution-api/CHANGELOG.md | 178 ++- firebase-appdistribution/CHANGELOG.md | 99 +- firebase-common/CHANGELOG.md | 46 +- firebase-common/README.md | 7 +- firebase-components/CHANGELOG.md | 13 +- .../CHANGELOG.md | 6 +- firebase-config-interop/CHANGELOG.md | 6 +- firebase-config/CHANGELOG.md | 580 ++++---- firebase-config/test-app/README.md | 16 +- firebase-crashlytics-ndk/CHANGELOG.md | 276 ++-- firebase-crashlytics-ndk/README.md | 6 +- firebase-crashlytics/CHANGELOG.md | 744 +++++------ firebase-crashlytics/README.md | 5 +- firebase-database-collection/CHANGELOG.md | 2 - firebase-database/CHANGELOG.md | 328 ++--- firebase-database/README.md | 11 +- firebase-dataconnect/CHANGELOG.md | 118 +- firebase-dataconnect/README.md | 88 +- firebase-dataconnect/testutil/README.md | 4 +- firebase-datatransport/CHANGELOG.md | 9 +- firebase-firestore/CHANGELOG.md | 1180 +++++++++-------- firebase-firestore/README.md | 120 +- firebase-functions/CHANGELOG.md | 254 ++-- firebase-functions/README.md | 6 +- firebase-inappmessaging-display/CHANGELOG.md | 396 +++--- firebase-inappmessaging-display/README.md | 17 +- firebase-inappmessaging/CHANGELOG.md | 393 +++--- firebase-inappmessaging/README.md | 10 +- firebase-installations-interop/CHANGELOG.md | 3 +- .../API_KEY_RESTRICTIONS.md | 26 +- firebase-installations/CHANGELOG.md | 55 +- firebase-installations/FCM_TOKENS_CHANGE.md | 40 +- .../REQUIRED_FIREBASE_OPTIONS_ANDROID.md | 78 +- firebase-messaging-directboot/CHANGELOG.md | 156 ++- firebase-messaging/CHANGELOG.md | 632 +++++---- firebase-ml-modeldownloader/CHANGELOG.md | 224 ++-- firebase-perf/CHANGELOG.md | 492 ++++--- firebase-perf/README.md | 37 +- firebase-perf/dev-app/README.md | 65 +- firebase-perf/e2e-app/README.md | 46 +- firebase-sessions/CHANGELOG.md | 71 +- firebase-sessions/README.md | 6 +- firebase-sessions/test-app/README.md | 16 +- firebase-storage/CHANGELOG.md | 255 ++-- firebase-storage/README.md | 30 +- protolite-well-known-types/CHANGELOG.md | 9 +- protolite-well-known-types/README.md | 34 +- transport/transport-api/CHANGELOG.md | 16 +- transport/transport-backend-cct/CHANGELOG.md | 16 +- .../transport-runtime-testing/CHANGELOG.md | 2 - transport/transport-runtime/CHANGELOG.md | 18 +- 68 files changed, 4051 insertions(+), 3800 deletions(-) diff --git a/appcheck/firebase-appcheck-debug-testing/CHANGELOG.md b/appcheck/firebase-appcheck-debug-testing/CHANGELOG.md index b59c142ca32..87f31442eb6 100644 --- a/appcheck/firebase-appcheck-debug-testing/CHANGELOG.md +++ b/appcheck/firebase-appcheck-debug-testing/CHANGELOG.md @@ -1,67 +1,78 @@ # Unreleased - # 19.0.0 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 18.0.0 -* [changed] Bump internal dependencies + +- [changed] Bump internal dependencies # 17.1.2 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 17.1.1 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 17.1.0 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 17.0.0 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 16.1.2 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 16.1.1 -* [changed] Integrated the [app_check] Debug Testing SDK with Firebase - components. - (GitHub [#4436](//github.com/firebase/firebase-android-sdk/issues/4436){: .external}) + +- [changed] Integrated the [app_check] Debug Testing SDK with Firebase components. (GitHub + [#4436](//github.com/firebase/firebase-android-sdk/issues/4436){: .external}) # 16.1.0 -* [unchanged] Updated to accommodate the release of the updated - [app_check] Kotlin extensions library. + +- [unchanged] Updated to accommodate the release of the updated [app_check] Kotlin extensions + library. # 16.0.1 -* [changed] Updated dependency of `play-services-basement` to its latest - version (v18.1.0). + +- [changed] Updated dependency of `play-services-basement` to its latest version (v18.1.0). # 16.0.0 -* [changed] [app_check] has exited beta and is now generally available for - use. + +- [changed] [app_check] has exited beta and is now generally available for use. # 16.0.0-beta06 -* [fixed] Fixed a bug in the [app_check] token refresh flow when using a - custom provider. + +- [fixed] Fixed a bug in the [app_check] token refresh flow when using a custom provider. # 16.0.0-beta05 -* [changed] Internal improvements. + +- [changed] Internal improvements. # 16.0.0-beta04 -* [changed] Improved error handling logic by minimizing the amount of requests - that are unlikely to succeed. -* [fixed] Fixed heartbeat reporting. + +- [changed] Improved error handling logic by minimizing the amount of requests that are unlikely to + succeed. +- [fixed] Fixed heartbeat reporting. # 16.0.0-beta03 -* [changed] Added `X-Android-Package` and `X-Android-Cert` request headers to - [app_check] network calls. + +- [changed] Added `X-Android-Package` and `X-Android-Cert` request headers to [app_check] network + calls. # 16.0.0-beta02 -* [feature] Added [`getAppCheckToken()`](/docs/reference/android/com/google/firebase/appcheck/FirebaseAppCheck#getAppCheckToken(boolean)), + +- [feature] Added + [`getAppCheckToken()`](), [`AppCheckTokenListener`](/docs/reference/android/com/google/firebase/appcheck/FirebaseAppCheck.AppCheckListener), - and associated setters and removers for developers to request and observe - changes to the [app_check] token. + and associated setters and removers for developers to request and observe changes to the + [app_check] token. # 16.0.0-beta01 -* [feature] Initial beta release of the [app_check] Debug Testing SDK with - abuse reduction features. +- [feature] Initial beta release of the [app_check] Debug Testing SDK with abuse reduction features. diff --git a/appcheck/firebase-appcheck-debug/CHANGELOG.md b/appcheck/firebase-appcheck-debug/CHANGELOG.md index cb3b7b23c55..ac26f2cdcae 100644 --- a/appcheck/firebase-appcheck-debug/CHANGELOG.md +++ b/appcheck/firebase-appcheck-debug/CHANGELOG.md @@ -1,72 +1,83 @@ # Unreleased - # 19.0.0 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 18.0.0 -* [changed] Bump internal dependencies + +- [changed] Bump internal dependencies # 17.1.2 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 17.1.1 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 17.1.0 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 17.0.0 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 16.1.2 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 16.1.1 -* [changed] Migrated [app_check] SDKs to use standard Firebase executors. - (GitHub [#4431](//github.com/firebase/firebase-android-sdk/issues/4431){: .external} - and + +- [changed] Migrated [app_check] SDKs to use standard Firebase executors. (GitHub + [#4431](//github.com/firebase/firebase-android-sdk/issues/4431){: .external} and [#4449](//github.com/firebase/firebase-android-sdk/issues/4449){: .external}) -* [changed] Integrated the [app_check] Debug SDK with Firebase components. - (GitHub [#4436](//github.com/firebase/firebase-android-sdk/issues/4436){: .external}) -* [changed] Moved Task continuations off the main thread. - (GitHub [#4453](//github.com/firebase/firebase-android-sdk/issues/4453){: .external}) +- [changed] Integrated the [app_check] Debug SDK with Firebase components. (GitHub + [#4436](//github.com/firebase/firebase-android-sdk/issues/4436){: .external}) +- [changed] Moved Task continuations off the main thread. (GitHub + [#4453](//github.com/firebase/firebase-android-sdk/issues/4453){: .external}) # 16.1.0 -* [unchanged] Updated to accommodate the release of the updated - [app_check] Kotlin extensions library. + +- [unchanged] Updated to accommodate the release of the updated [app_check] Kotlin extensions + library. # 16.0.1 -* [changed] Updated dependency of `play-services-basement` to its latest - version (v18.1.0). + +- [changed] Updated dependency of `play-services-basement` to its latest version (v18.1.0). # 16.0.0 -* [changed] [app_check] has exited beta and is now generally available for - use. + +- [changed] [app_check] has exited beta and is now generally available for use. # 16.0.0-beta06 -* [fixed] Fixed a bug in the [app_check] token refresh flow when using a - custom provider. + +- [fixed] Fixed a bug in the [app_check] token refresh flow when using a custom provider. # 16.0.0-beta05 -* [changed] Internal improvements. + +- [changed] Internal improvements. # 16.0.0-beta04 -* [changed] Improved error handling logic by minimizing the amount of requests - that are unlikely to succeed. -* [fixed] Fixed heartbeat reporting. + +- [changed] Improved error handling logic by minimizing the amount of requests that are unlikely to + succeed. +- [fixed] Fixed heartbeat reporting. # 16.0.0-beta03 -* [changed] Added `X-Android-Package` and `X-Android-Cert` request headers to - [app_check] network calls. + +- [changed] Added `X-Android-Package` and `X-Android-Cert` request headers to [app_check] network + calls. # 16.0.0-beta02 -* [feature] Added [`getAppCheckToken()`](/docs/reference/android/com/google/firebase/appcheck/FirebaseAppCheck#getAppCheckToken(boolean)), + +- [feature] Added + [`getAppCheckToken()`](), [`AppCheckTokenListener`](/docs/reference/android/com/google/firebase/appcheck/FirebaseAppCheck.AppCheckListener), - and associated setters and removers for developers to request and observe - changes to the [app_check] token. + and associated setters and removers for developers to request and observe changes to the + [app_check] token. # 16.0.0-beta01 -* [feature] Initial beta release of the [app_check] Debug SDK with abuse - reduction features. +- [feature] Initial beta release of the [app_check] Debug SDK with abuse reduction features. diff --git a/appcheck/firebase-appcheck-interop/CHANGELOG.md b/appcheck/firebase-appcheck-interop/CHANGELOG.md index f514bbb890e..79e701b844d 100644 --- a/appcheck/firebase-appcheck-interop/CHANGELOG.md +++ b/appcheck/firebase-appcheck-interop/CHANGELOG.md @@ -1,3 +1 @@ # Unreleased - - diff --git a/appcheck/firebase-appcheck-playintegrity/CHANGELOG.md b/appcheck/firebase-appcheck-playintegrity/CHANGELOG.md index 7a8f91b7e72..26af9a4c2dc 100644 --- a/appcheck/firebase-appcheck-playintegrity/CHANGELOG.md +++ b/appcheck/firebase-appcheck-playintegrity/CHANGELOG.md @@ -1,49 +1,54 @@ # Unreleased - # 19.0.0 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. + +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. # 18.0.0 -* [changed] Bump internal dependencies + +- [changed] Bump internal dependencies # 17.1.2 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 17.1.1 -* [fixed] Fixed client-side throttling in Play Integrity flows. -* [changed] Bumped Play Integrity API Library dependency version. + +- [fixed] Fixed client-side throttling in Play Integrity flows. +- [changed] Bumped Play Integrity API Library dependency version. # 17.1.0 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 17.0.0 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 16.1.2 -* [unchanged] Updated to keep [app_check] SDK versions aligned. + +- [unchanged] Updated to keep [app_check] SDK versions aligned. # 16.1.1 -* [changed] Migrated [app_check] SDKs to use standard Firebase executors. - (GitHub [#4431](//github.com/firebase/firebase-android-sdk/issues/4431){: .external} - and + +- [changed] Migrated [app_check] SDKs to use standard Firebase executors. (GitHub + [#4431](//github.com/firebase/firebase-android-sdk/issues/4431){: .external} and [#4449](//github.com/firebase/firebase-android-sdk/issues/4449){: .external}) -* [changed] Integrated the [app_check] Play integrity SDK with Firebase - components. - (GitHub [#4436](//github.com/firebase/firebase-android-sdk/issues/4436){: .external}) -* [changed] Moved Task continuations off the main thread. - (GitHub [#4453](//github.com/firebase/firebase-android-sdk/issues/4453){: .external}) +- [changed] Integrated the [app_check] Play integrity SDK with Firebase components. (GitHub + [#4436](//github.com/firebase/firebase-android-sdk/issues/4436){: .external}) +- [changed] Moved Task continuations off the main thread. (GitHub + [#4453](//github.com/firebase/firebase-android-sdk/issues/4453){: .external}) # 16.1.0 -* [unchanged] Updated to accommodate the release of the updated - [app_check] Kotlin extensions library. + +- [unchanged] Updated to accommodate the release of the updated [app_check] Kotlin extensions + library. # 16.0.1 -* [changed] Updated dependency of `play-services-basement` to its latest - version (v18.1.0). + +- [changed] Updated dependency of `play-services-basement` to its latest version (v18.1.0). # 16.0.0 -* [feature] Added support for - [Play Integrity](https://developer.android.com/google/play/integrity) as an - attestation provider. +- [feature] Added support for [Play Integrity](https://developer.android.com/google/play/integrity) + as an attestation provider. diff --git a/appcheck/firebase-appcheck/CHANGELOG.md b/appcheck/firebase-appcheck/CHANGELOG.md index 5a5c6231b96..4cd5b76aceb 100644 --- a/appcheck/firebase-appcheck/CHANGELOG.md +++ b/appcheck/firebase-appcheck/CHANGELOG.md @@ -1,148 +1,150 @@ # Unreleased - # 19.0.0 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. -* [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions - (KTX) module and removed it from the Firebase Android BoM. Instead, use the KTX APIs - from the main module. For details, see the + +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. +- [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions (KTX) module and + removed it from the Firebase Android BoM. Instead, use the KTX APIs from the main module. For + details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration). # 18.0.0 -* [changed] Bump internal dependencies -* [changed] Internal support for `SafetyNet` has been dropped, as the [SafetyNet Attestation API -has been deprecated.](https://developer.android.com/privacy-and-security/safetynet/deprecation-timeline#safetynet_attestation_deprecation_timeline) +- [changed] Bump internal dependencies +- [changed] Internal support for `SafetyNet` has been dropped, as the + [SafetyNet Attestation API has been deprecated.](https://developer.android.com/privacy-and-security/safetynet/deprecation-timeline#safetynet_attestation_deprecation_timeline) ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appcheck` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appcheck` library. The +Kotlin extensions library has no additional updates. # 17.1.2 -* [changed] Bump internal dependencies. +- [changed] Bump internal dependencies. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appcheck` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appcheck` library. The +Kotlin extensions library has no additional updates. # 17.1.1 -* [fixed] Fixed a bug causing internal tests to depend directly on `firebase-common`. -* [fixed] Fixed client-side throttling in Play Integrity flows. +- [fixed] Fixed a bug causing internal tests to depend directly on `firebase-common`. +- [fixed] Fixed client-side throttling in Play Integrity flows. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appcheck` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appcheck` library. The +Kotlin extensions library has no additional updates. # 17.1.0 -* [changed] Added Kotlin extensions (KTX) APIs from `com.google.firebase:firebase-appcheck-ktx` - to `com.google.firebase:firebase-appcheck` under the `com.google.firebase.appcheck` package. - For details, see the + +- [changed] Added Kotlin extensions (KTX) APIs from `com.google.firebase:firebase-appcheck-ktx` to + `com.google.firebase:firebase-appcheck` under the `com.google.firebase.appcheck` package. For + details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) -* [deprecated] All the APIs from `com.google.firebase:firebase-appcheck-ktx` have been added to - `com.google.firebase:firebase-appcheck` under the `com.google.firebase.appcheck` package, - and all the Kotlin extensions (KTX) APIs in `com.google.firebase:firebase-appcheck-ktx` are - now deprecated. As early as April 2024, we'll no longer release KTX modules. For details, see the +- [deprecated] All the APIs from `com.google.firebase:firebase-appcheck-ktx` have been added to + `com.google.firebase:firebase-appcheck` under the `com.google.firebase.appcheck` package, and all + the Kotlin extensions (KTX) APIs in `com.google.firebase:firebase-appcheck-ktx` are now + deprecated. As early as April 2024, we'll no longer release KTX modules. For details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) - ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appcheck` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appcheck` library. The +Kotlin extensions library has no additional updates. # 17.0.1 -* [changed] Internal updates to allow Firebase SDKs to obtain limited-use tokens. + +- [changed] Internal updates to allow Firebase SDKs to obtain limited-use tokens. # 17.0.0 -* [feature] Added [`getLimitedUseAppCheckToken()`](/docs/reference/android/com/google/firebase/appcheck/FirebaseAppCheck#getLimitedUseAppCheckToken()) - for obtaining limited-use tokens for protecting non-Firebase backends. +- [feature] Added + [`getLimitedUseAppCheckToken()`]() + for obtaining limited-use tokens for protecting non-Firebase backends. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appcheck` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appcheck` library. The +Kotlin extensions library has no additional updates. # 16.1.2 -* [unchanged] Updated to keep [app_check] SDK versions aligned. +- [unchanged] Updated to keep [app_check] SDK versions aligned. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appcheck` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appcheck` library. The +Kotlin extensions library has no additional updates. # 16.1.1 -* [changed] Migrated [app_check] SDKs to use standard Firebase executors. - (GitHub [#4431](//github.com/firebase/firebase-android-sdk/issues/4431){: .external} - and - [#4449](//github.com/firebase/firebase-android-sdk/issues/4449){: .external}) -* [changed] Moved Task continuations off the main thread. - (GitHub [#4453](//github.com/firebase/firebase-android-sdk/issues/4453){: .external}) +- [changed] Migrated [app_check] SDKs to use standard Firebase executors. (GitHub + [#4431](//github.com/firebase/firebase-android-sdk/issues/4431){: .external} and + [#4449](//github.com/firebase/firebase-android-sdk/issues/4449){: .external}) +- [changed] Moved Task continuations off the main thread. (GitHub + [#4453](//github.com/firebase/firebase-android-sdk/issues/4453){: .external}) ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appcheck` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appcheck` library. The +Kotlin extensions library has no additional updates. # 16.1.0 -* [unchanged] Updated to accommodate the release of the updated - [app_check] Kotlin extensions library. +- [unchanged] Updated to accommodate the release of the updated [app_check] Kotlin extensions + library. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appcheck` library. The Kotlin extensions library has the following -additional updates: - -* [feature] Firebase now supports Kotlin coroutines. - With this release, we added - [`kotlinx-coroutines-play-services`](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-play-services/){: .external} - to `firebase-appcheck-ktx` as a transitive dependency, which exposes the + +The Kotlin extensions library transitively includes the updated `firebase-appcheck` library. The +Kotlin extensions library has the following additional updates: + +- [feature] Firebase now supports Kotlin coroutines. With this release, we added + [`kotlinx-coroutines-play-services`](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-play-services/){: + .external} to `firebase-appcheck-ktx` as a transitive dependency, which exposes the `Task.await()` suspend function to convert a - [`Task`](https://developers.google.com/android/guides/tasks) into a Kotlin - coroutine. + [`Task`](https://developers.google.com/android/guides/tasks) into a Kotlin coroutine. # 16.0.1 -* [changed] Updated dependency of `play-services-basement` to its latest - version (v18.1.0). + +- [changed] Updated dependency of `play-services-basement` to its latest version (v18.1.0). # 16.0.0 -* [changed] [app_check] has exited beta and is now generally available for - use. -* [feature] Added support for - [Play Integrity](https://developer.android.com/google/play/integrity) as an - attestation provider. + +- [changed] [app_check] has exited beta and is now generally available for use. +- [feature] Added support for [Play Integrity](https://developer.android.com/google/play/integrity) + as an attestation provider. # 16.0.0-beta06 -* [fixed] Fixed a bug in the [app_check] token refresh flow when using a - custom provider. + +- [fixed] Fixed a bug in the [app_check] token refresh flow when using a custom provider. # 16.0.0-beta05 -* [changed] Internal improvements. + +- [changed] Internal improvements. # 16.0.0-beta04 -* [changed] Improved error handling logic by minimizing the amount of requests - that are unlikely to succeed. -* [fixed] Fixed heartbeat reporting. + +- [changed] Improved error handling logic by minimizing the amount of requests that are unlikely to + succeed. +- [fixed] Fixed heartbeat reporting. # 16.0.0-beta03 -* [changed] Added `X-Android-Package` and `X-Android-Cert` request headers to - [app_check] network calls. + +- [changed] Added `X-Android-Package` and `X-Android-Cert` request headers to [app_check] network + calls. # 16.0.0-beta02 -* [feature] Added [`getAppCheckToken()`](/docs/reference/android/com/google/firebase/appcheck/FirebaseAppCheck#getAppCheckToken(boolean)), + +- [feature] Added + [`getAppCheckToken()`](), [`AppCheckTokenListener`](/docs/reference/android/com/google/firebase/appcheck/FirebaseAppCheck.AppCheckListener), - and associated setters and removers for developers to request and observe - changes to the [app_check] token. + and associated setters and removers for developers to request and observe changes to the + [app_check] token. # 16.0.0-beta01 -* [feature] Initial beta release of the [app_check] SDK with abuse reduction - features. +- [feature] Initial beta release of the [app_check] SDK with abuse reduction features. diff --git a/encoders/README.md b/encoders/README.md index 6a33fcb1c81..afc897087d2 100644 --- a/encoders/README.md +++ b/encoders/README.md @@ -1,27 +1,24 @@ # Firebase Encoders -This project provides libraries and code generation infrastructure that allows -encoding java classes into various target serialization formats(currently -supported: **json** and **proto**). +This project provides libraries and code generation infrastructure that allows encoding java classes +into various target serialization formats(currently supported: **json** and **proto**). The project consists of multiple parts: -* `firebase_encoders` - Core API and Annotations library. -* `processor` - Java plugin that automatically generates encoders for - `@Encodable` annotated POJOs. -* `firebase_encoders_json` - JSON serialization support. -* `firebase_encoders_proto` - Protobuf serialization support. -* `protoc_gen` - Protobuf compiler plugin that generates encoder-compliant - classes. Can be used with `firebase_encoders_proto` and - `firebase_encoders_json`. -* `reflective` - Can be used to encode any given class via Java - reflection(**not recommented**). +- `firebase_encoders` - Core API and Annotations library. +- `processor` - Java plugin that automatically generates encoders for `@Encodable` annotated POJOs. +- `firebase_encoders_json` - JSON serialization support. +- `firebase_encoders_proto` - Protobuf serialization support. +- `protoc_gen` - Protobuf compiler plugin that generates encoder-compliant classes. Can be used with + `firebase_encoders_proto` and `firebase_encoders_json`. +- `reflective` - Can be used to encode any given class via Java reflection(**not recommented**). ### Protobuf gettings started ##### Step1. Place proto files into **src/main/proto/** -*src/main/proto/my.proto* +_src/main/proto/my.proto_ + ```proto syntax = "proto3"; @@ -35,10 +32,10 @@ message SimpleProto { } ``` - ##### Step2. Add the following configurations into gradle module build file. -*example.gradle* +_example.gradle_ + ```gradle plugins { id "java-library" @@ -86,11 +83,14 @@ dependencies { ##### Step3. Create a code-gen-cfg.textproto file at the module root folder(same location as the gradle module build file). -*code-gen-cfg.textproto* +_code-gen-cfg.textproto_ Note: + - The filename must be the same as the filename determined in the gradle build file. -- Only need to specify the "root" proto object, anything it references will automatically be included. +- Only need to specify the "root" proto object, anything it references will automatically be + included. + ```textproto # code_gen_cfg.textproto # proto-file: src/main/proto/my.proto @@ -112,8 +112,7 @@ com.google.google.protobuf.Timestamp com.google.google.protobuf.Timestamp$Builder ``` -Only `root` classes are "encodable" meaning that they have the following -methods: +Only `root` classes are "encodable" meaning that they have the following methods: ```java public class SimpleProto { @@ -124,7 +123,8 @@ public class SimpleProto { ### Annotation Processing on Kotlin -The default gradle `annotationProcessor` import doesn't run the processor over kotlin code, so we need to use `kapt` +The default gradle `annotationProcessor` import doesn't run the processor over kotlin code, so we +need to use `kapt` 1. Add the plugin to your build @@ -145,4 +145,4 @@ dependencies { // annotationProcessor project(":encoders:firebase-encoders-processor") kapt project(":encoders:firebase-encoders-processor") } -``` \ No newline at end of file +``` diff --git a/encoders/firebase-decoders-json/CHANGELOG.md b/encoders/firebase-decoders-json/CHANGELOG.md index f514bbb890e..79e701b844d 100644 --- a/encoders/firebase-decoders-json/CHANGELOG.md +++ b/encoders/firebase-decoders-json/CHANGELOG.md @@ -1,3 +1 @@ # Unreleased - - diff --git a/encoders/firebase-encoders-json/CHANGELOG.md b/encoders/firebase-encoders-json/CHANGELOG.md index f514bbb890e..79e701b844d 100644 --- a/encoders/firebase-encoders-json/CHANGELOG.md +++ b/encoders/firebase-encoders-json/CHANGELOG.md @@ -1,3 +1 @@ # Unreleased - - diff --git a/encoders/firebase-encoders-processor/CHANGELOG.md b/encoders/firebase-encoders-processor/CHANGELOG.md index f514bbb890e..79e701b844d 100644 --- a/encoders/firebase-encoders-processor/CHANGELOG.md +++ b/encoders/firebase-encoders-processor/CHANGELOG.md @@ -1,3 +1 @@ # Unreleased - - diff --git a/encoders/firebase-encoders-proto/CHANGELOG.md b/encoders/firebase-encoders-proto/CHANGELOG.md index f4e346bb920..d43e9b27315 100644 --- a/encoders/firebase-encoders-proto/CHANGELOG.md +++ b/encoders/firebase-encoders-proto/CHANGELOG.md @@ -1,4 +1,4 @@ # Unreleased -* [changed] Updated protobuf dependency to `3.25.5` to fix - [CVE-2024-7254](https://nvd.nist.gov/vuln/detail/CVE-2024-7254). +- [changed] Updated protobuf dependency to `3.25.5` to fix + [CVE-2024-7254](https://nvd.nist.gov/vuln/detail/CVE-2024-7254). diff --git a/encoders/firebase-encoders-reflective/CHANGELOG.md b/encoders/firebase-encoders-reflective/CHANGELOG.md index f514bbb890e..79e701b844d 100644 --- a/encoders/firebase-encoders-reflective/CHANGELOG.md +++ b/encoders/firebase-encoders-reflective/CHANGELOG.md @@ -1,3 +1 @@ # Unreleased - - diff --git a/encoders/firebase-encoders/CHANGELOG.md b/encoders/firebase-encoders/CHANGELOG.md index f514bbb890e..79e701b844d 100644 --- a/encoders/firebase-encoders/CHANGELOG.md +++ b/encoders/firebase-encoders/CHANGELOG.md @@ -1,3 +1 @@ # Unreleased - - diff --git a/encoders/protoc-gen-firebase-encoders/CHANGELOG.md b/encoders/protoc-gen-firebase-encoders/CHANGELOG.md index f514bbb890e..79e701b844d 100644 --- a/encoders/protoc-gen-firebase-encoders/CHANGELOG.md +++ b/encoders/protoc-gen-firebase-encoders/CHANGELOG.md @@ -1,3 +1 @@ # Unreleased - - diff --git a/firebase-abt/CHANGELOG.md b/firebase-abt/CHANGELOG.md index 6963fe572a4..bb9053ea820 100644 --- a/firebase-abt/CHANGELOG.md +++ b/firebase-abt/CHANGELOG.md @@ -1,54 +1,60 @@ # Unreleased - # 23.0.0 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. -* [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions - (KTX) module and removed it from the Firebase Android BoM. Instead, use the KTX APIs - from the main module. For details, see the + +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. +- [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions (KTX) module and + removed it from the Firebase Android BoM. Instead, use the KTX APIs from the main module. For + details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration). # 22.0.0 -* [changed] Bump internal dependencies + +- [changed] Bump internal dependencies # 21.1.2 -* [changed] Bump internal dependencies. + +- [changed] Bump internal dependencies. # 21.1.1 -* [changed] Internal changes to improve experiment reporting. + +- [changed] Internal changes to improve experiment reporting. # 21.1.0 -* [changed] Internal changes to ensure functionality alignment with other - SDK releases. + +- [changed] Internal changes to ensure functionality alignment with other SDK releases. # 21.0.2 -* [changed] Updated dependency of `play-services-basement` to its latest - version (v18.1.0). + +- [changed] Updated dependency of `play-services-basement` to its latest version (v18.1.0). # 21.0.1 -* [changed] Updated dependencies of `play-services-basement`, - `play-services-base`, and `play-services-tasks` to their latest versions - (v18.0.0, v18.0.1, and v18.0.1, respectively). For more information, see the - [note](#basement18-0-0_base18-0-1_tasks18-0-1) at the top of this release - entry. + +- [changed] Updated dependencies of `play-services-basement`, `play-services-base`, and + `play-services-tasks` to their latest versions (v18.0.0, v18.0.1, and v18.0.1, respectively). For + more information, see the [note](#basement18-0-0_base18-0-1_tasks18-0-1) at the top of this + release entry. # 21.0.0 -* [changed] Internal infrastructure improvements. -* [changed] Internal changes to support dynamic feature modules. + +- [changed] Internal infrastructure improvements. +- [changed] Internal changes to support dynamic feature modules. # 20.0.0 -* [removed] Removed the protocol buffer dependency and moved relevant protocol - buffer definitions to [inappmessaging_longer]. If you use [ab_testing] - with [inappmessaging], you'll need to update to + +- [removed] Removed the protocol buffer dependency and moved relevant protocol buffer definitions to + [inappmessaging_longer]. If you use [ab_testing] with [inappmessaging], you'll need to update to [inappmessaging] v19.1.2 or later. # 19.0.1 -* [changed] Internal changes to ensure functionality alignment with other SDK releases. + +- [changed] Internal changes to ensure functionality alignment with other SDK releases. # 17.1.1 -* [changed] Updated API to support the latest [remote_config] update. -* [changed] Updated minSdkVersion to API level 16. + +- [changed] Updated API to support the latest [remote_config] update. +- [changed] Updated minSdkVersion to API level 16. # 17.1.0 -* [changed] Updated API to support the latest [remote_config] update. +- [changed] Updated API to support the latest [remote_config] update. diff --git a/firebase-ai/CHANGELOG.md b/firebase-ai/CHANGELOG.md index 1d85bf47c86..471ca4071a4 100644 --- a/firebase-ai/CHANGELOG.md +++ b/firebase-ai/CHANGELOG.md @@ -1,62 +1,74 @@ # Unreleased -* [feature] Added support for returning thought summaries, which are synthesized - versions of a model's internal reasoning process. -* [fixed] Fixed an issue causing the accessor methods in `GenerateContentResponse` to throw an exception - when the response contained no candidates. -* [changed] Added better description for requests which fail due to the Gemini API not being + +- [feature] Added support for returning thought summaries, which are synthesized versions of a + model's internal reasoning process. +- [fixed] Fixed an issue causing the accessor methods in `GenerateContentResponse` to throw an + exception when the response contained no candidates. +- [changed] Added better description for requests which fail due to the Gemini API not being configured. -* [changed] Added a `dilation` parameter to `ImagenMaskReference.generateMaskAndPadForOutpainting` +- [changed] Added a `dilation` parameter to `ImagenMaskReference.generateMaskAndPadForOutpainting` (#7260) -* [feature] Added support for limited-use tokens with Firebase App Check. These short-lived tokens +- [feature] Added support for limited-use tokens with Firebase App Check. These short-lived tokens provide greater protection for the APIs that give you access to Gemini and Imagen models. Learn how to [enable usage of limited-use tokens](https://firebase.google.com/docs/ai-logic/app-check). (#7285) - # 17.1.0 + ======= -* [feature] added support for Imagen Editing, including inpainting, outpainting, control, style + +- [feature] added support for Imagen Editing, including inpainting, outpainting, control, style transfer, and subject references (#7075) -* [feature] **Preview:** Added support for bidirectional streaming in Gemini Developer Api +- [feature] **Preview:** Added support for bidirectional streaming in Gemini Developer Api # 17.0.0 -* [feature] Added support for configuring the "thinking" budget when using Gemini - 2.5 series models. (#6990) -* [feature] **Breaking Change**: Add support for Grounding with Google Search (#7042). - * **Action Required:** Update all references of `groundingAttributions`, `webSearchQueries`, `retrievalQueries` in `GroundingMetadata` to be non-optional. -* [changed] require at least one argument for `generateContent()`, `generateContentStream()` and + +- [feature] Added support for configuring the "thinking" budget when using Gemini 2.5 series models. + (#6990) +- [feature] **Breaking Change**: Add support for Grounding with Google Search (#7042). + - **Action Required:** Update all references of `groundingAttributions`, `webSearchQueries`, + `retrievalQueries` in `GroundingMetadata` to be non-optional. +- [changed] require at least one argument for `generateContent()`, `generateContentStream()` and `countTokens()`. -* [feature] Added new overloads for `generateContent()`, `generateContentStream()` and - `countTokens()` that take a `List` parameter. -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. +- [feature] Added new overloads for `generateContent()`, `generateContentStream()` and + `countTokens()` that take a `List` parameter. +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. # 16.2.0 -* [changed] Deprecate the `totalBillableCharacters` field (only usable with pre-2.0 models). (#7042) -* [feature] Added support for extra schema properties like `title`, `minItems`, `maxItems`, `minimum` - and `maximum`. As well as support for the `anyOf` schema. (#7013) + +- [changed] Deprecate the `totalBillableCharacters` field (only usable with pre-2.0 models). (#7042) +- [feature] Added support for extra schema properties like `title`, `minItems`, `maxItems`, + `minimum` and `maximum`. As well as support for the `anyOf` schema. (#7013) # 16.1.0 -* [fixed] Fixed `FirebaseAI.getInstance` StackOverflowException (#6971) -* [fixed] Fixed an issue that was causing the SDK to send empty `FunctionDeclaration` descriptions to the API. -* [changed] Introduced the `Voice` class, which accepts a voice name, and deprecated the `Voices` class. -* [changed] **Breaking Change**: Updated `SpeechConfig` to take in `Voice` class instead of `Voices` class. - * **Action Required:** Update all references of `SpeechConfig` initialization to use `Voice` class. -* [fixed] Fix incorrect model name in count token requests to the developer API backend + +- [fixed] Fixed `FirebaseAI.getInstance` StackOverflowException (#6971) +- [fixed] Fixed an issue that was causing the SDK to send empty `FunctionDeclaration` descriptions + to the API. +- [changed] Introduced the `Voice` class, which accepts a voice name, and deprecated the `Voices` + class. +- [changed] **Breaking Change**: Updated `SpeechConfig` to take in `Voice` class instead of `Voices` + class. + - **Action Required:** Update all references of `SpeechConfig` initialization to use `Voice` + class. +- [fixed] Fix incorrect model name in count token requests to the developer API backend # 16.0.0 -* [feature] Initial release of the Firebase AI SDK (`firebase-ai`). This SDK *replaces* the previous - Vertex AI in Firebase SDK (`firebase-vertexai`) to accommodate the evolving set of supported - features and services. - * The new Firebase AI SDK provides **Preview** support for the Gemini Developer API, including its - free tier offering. - * Using the Firebase AI SDK with the Vertex AI Gemini API is still generally available (GA). - - If you're using the old `firebase-vertexai`, we recommend - [migrating to `firebase-ai`](/docs/ai-logic/migrate-to-latest-sdk) - because all new development and features will be in this new SDK. -* [feature] **Preview:** Added support for specifying response modalities in `GenerationConfig` - (only available in the new `firebase-ai` package). This includes support for image generation using - [specific Gemini models](/docs/vertex-ai/models). - - Note: This feature is in Public Preview, which means that it is not subject to any SLA or - deprecation policy and could change in backwards-incompatible ways. + +- [feature] Initial release of the Firebase AI SDK (`firebase-ai`). This SDK _replaces_ the previous + Vertex AI in Firebase SDK (`firebase-vertexai`) to accommodate the evolving set of supported + features and services. + - The new Firebase AI SDK provides **Preview** support for the Gemini Developer API, including its + free tier offering. + - Using the Firebase AI SDK with the Vertex AI Gemini API is still generally available (GA). + +If you're using the old `firebase-vertexai`, we recommend +[migrating to `firebase-ai`](/docs/ai-logic/migrate-to-latest-sdk) because all new development and +features will be in this new SDK. + +- [feature] **Preview:** Added support for specifying response modalities in `GenerationConfig` + (only available in the new `firebase-ai` package). This includes support for image generation + using [specific Gemini models](/docs/vertex-ai/models). + +Note: This feature is in Public Preview, which means that it is not subject to any SLA or +deprecation policy and could change in backwards-incompatible ways. diff --git a/firebase-ai/README.md b/firebase-ai/README.md index e09f65c6092..2572fd8da18 100644 --- a/firebase-ai/README.md +++ b/firebase-ai/README.md @@ -1,7 +1,7 @@ # Firebase AI SDK -For developer documentation, please visit https://firebase.google.com/docs/vertex-ai. -This README is for contributors building and running tests for the SDK. +For developer documentation, please visit https://firebase.google.com/docs/vertex-ai. This README is +for contributors building and running tests for the SDK. ## Building @@ -11,9 +11,8 @@ All Gradle commands should be run from the root of this repository. ## Running Tests -> [!IMPORTANT] -> These unit tests require mock response files, which can be downloaded by running -`./firebase-ai/update_responses.sh` from the root of this repository. +> [!IMPORTANT] These unit tests require mock response files, which can be downloaded by running +> `./firebase-ai/update_responses.sh` from the root of this repository. Unit tests: @@ -25,8 +24,8 @@ Integration tests, requiring a running and connected device (emulator or real): ## Code Formatting -Format Kotlin code in this SDK in Android Studio using -the [spotless plugin]([https://plugins.jetbrains.com/plugin/14912-ktfmt](https://github.com/diffplug/spotless) -by running: +Format Kotlin code in this SDK in Android Studio using the [spotless +plugin]([https://plugins.jetbrains.com/plugin/14912-ktfmt](https://github.com/diffplug/spotless) by +running: `./gradlew firebase-ai:spotlessApply` diff --git a/firebase-annotations/CHANGELOG.md b/firebase-annotations/CHANGELOG.md index 5b97d49e713..b716a3fd418 100644 --- a/firebase-annotations/CHANGELOG.md +++ b/firebase-annotations/CHANGELOG.md @@ -1,3 +1,3 @@ # Unreleased -* [changed] Hid Executors from public API, as they are intended to be internal - anyhow. + +- [changed] Hid Executors from public API, as they are intended to be internal anyhow. diff --git a/firebase-appdistribution-api/CHANGELOG.md b/firebase-appdistribution-api/CHANGELOG.md index cd878864e41..2f7fc9b9fa1 100644 --- a/firebase-appdistribution-api/CHANGELOG.md +++ b/firebase-appdistribution-api/CHANGELOG.md @@ -1,167 +1,153 @@ # Unreleased - # 16.0.0-beta16 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. -* [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions - (KTX) module and removed it from the Firebase Android BoM. Instead, use the KTX APIs - from the main module. For details, see the + +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. +- [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions (KTX) module and + removed it from the Firebase Android BoM. Instead, use the KTX APIs from the main module. For + details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration). # 16.0.0-beta15 -* [unchanged] Updated to accommodate the release of the updated - [appdistro] library. +- [unchanged] Updated to accommodate the release of the updated [appdistro] library. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta14 -* [unchanged] Updated to accommodate the release of the updated - [appdistro] library. +- [unchanged] Updated to accommodate the release of the updated [appdistro] library. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta13 -* [changed] Bump internal dependencies +- [changed] Bump internal dependencies ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta12 -* [unchanged] Updated to accommodate the release of the updated - [appdistro] library. +- [unchanged] Updated to accommodate the release of the updated [appdistro] library. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta11 -* [changed] Added Kotlin extensions (KTX) APIs from - `com.google.firebase:firebase-appdistribution-api-ktx` - to `com.google.firebase:firebase-appdistribution-api` under the - `com.google.firebase.appdistribution` package. - For details, see the + +- [changed] Added Kotlin extensions (KTX) APIs from + `com.google.firebase:firebase-appdistribution-api-ktx` to + `com.google.firebase:firebase-appdistribution-api` under the `com.google.firebase.appdistribution` + package. For details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) -* [deprecated] All the APIs from `com.google.firebase:firebase-appdistribution-api-ktx` have been - added to - `com.google.firebase:firebase-appdistribution-api` under the - `com.google.firebase.appdistribution` package, - and all the Kotlin extensions (KTX) APIs in `com.google.firebase:firebase-appdistribution-api-ktx` - are now deprecated. As early as April 2024, we'll no longer release KTX modules. For details, - see the +- [deprecated] All the APIs from `com.google.firebase:firebase-appdistribution-api-ktx` have been + added to `com.google.firebase:firebase-appdistribution-api` under the + `com.google.firebase.appdistribution` package, and all the Kotlin extensions (KTX) APIs in + `com.google.firebase:firebase-appdistribution-api-ktx` are now deprecated. As early as April 2024, + we'll no longer release KTX modules. For details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) - ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta09 -* [feature] Improved development mode to allow all API calls to be made without having to sign in. +- [feature] Improved development mode to allow all API calls to be made without having to sign in. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no -additional updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta08 -* [fixed] Fixed an issue where a crash happened whenever a feedback - notification was shown on devices running Android 4.4 and lower. +- [fixed] Fixed an issue where a crash happened whenever a feedback notification was shown on + devices running Android 4.4 and lower. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no -additional updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta07 -* [feature] Added support for testers to attach JPEG screenshots to their - feedback. +- [feature] Added support for testers to attach JPEG screenshots to their feedback. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no -additional updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta06 -* [feature] Added support for in-app tester feedback. To learn more, see - [Collect feedback from testers](/docs/app-distribution/collect-feedback-from-testers?platform=android). -* [fixed] Fixed a bug where only the last listener added to an `UpdateTask` - using `addOnProgressListener()` would receive updates. +- [feature] Added support for in-app tester feedback. To learn more, see + [Collect feedback from testers](/docs/app-distribution/collect-feedback-from-testers?platform=android). +- [fixed] Fixed a bug where only the last listener added to an `UpdateTask` using + `addOnProgressListener()` would receive updates. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta05 -* [unchanged] Updated to accommodate the release of the updated - [appdistro] Kotlin extensions library. +- [unchanged] Updated to accommodate the release of the updated [appdistro] Kotlin extensions + library. ## Kotlin -The Kotlin extensions library transitively includes the updated - `firebase-appdistribution-api` library. The Kotlin extensions library has - the following additional updates: - -* [feature] Firebase now supports Kotlin coroutines. - With this release, we added - [`kotlinx-coroutines-play-services`](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-play-services/){: .external} - to `firebase-appdistribution-api-ktx` as a transitive dependency, which - exposes the `Task.await()` suspend function to convert a - [`Task`](https://developers.google.com/android/guides/tasks) - into a Kotlin coroutine. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has the following additional updates: + +- [feature] Firebase now supports Kotlin coroutines. With this release, we added + [`kotlinx-coroutines-play-services`](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-play-services/){: + .external} to `firebase-appdistribution-api-ktx` as a transitive dependency, which exposes the + `Task.await()` suspend function to convert a + [`Task`](https://developers.google.com/android/guides/tasks) into a Kotlin coroutine. # 16.0.0-beta04 -* [changed] Updated dependency of `play-services-basement` to its latest - version (v18.1.0). +- [changed] Updated dependency of `play-services-basement` to its latest version (v18.1.0). ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-appdistribution-api` library. The Kotlin extensions library has no -additional updates. + +The Kotlin extensions library transitively includes the updated `firebase-appdistribution-api` +library. The Kotlin extensions library has no additional updates. # 16.0.0-beta03 -* [feature] The [appdistro] SDK has been split into two libraries: - * `firebase-appdistribution-api` - The API-only library
- This new API-only library is functional only when the full - [appdistro] SDK implementation (`firebase-appdistribution`) is present. - `firebase-appdistribution-api` can be included in all +- [feature] The [appdistro] SDK has been split into two libraries: + + - `firebase-appdistribution-api` - The API-only library
This new API-only library is + functional only when the full [appdistro] SDK implementation (`firebase-appdistribution`) is + present. `firebase-appdistribution-api` can be included in all [build variants](https://developer.android.com/studio/build/build-variants){: .external}. - * `firebase-appdistribution` - The full SDK implementation
- This full SDK implementation is optional and should only be included in - pre-release builds. + - `firebase-appdistribution` - The full SDK implementation
This full SDK implementation is + optional and should only be included in pre-release builds. Visit the documentation to learn how to - [add these SDKs](/docs/app-distribution/set-up-alerts?platform=android#add-appdistro) - to your Android app. - + [add these SDKs](/docs/app-distribution/set-up-alerts?platform=android#add-appdistro) to your + Android app. ## Kotlin -With the removal of the Kotlin extensions library -`firebase-appdistribution-ktx`, its functionality has been moved to the new -API-only library: `firebase-appdistribution-api-ktx`. -This new Kotlin extensions library transitively includes the -`firebase-appdistribution-api` library. The Kotlin extensions library has no -additional updates. +With the removal of the Kotlin extensions library `firebase-appdistribution-ktx`, its functionality +has been moved to the new API-only library: `firebase-appdistribution-api-ktx`. +This new Kotlin extensions library transitively includes the `firebase-appdistribution-api` library. +The Kotlin extensions library has no additional updates. diff --git a/firebase-appdistribution/CHANGELOG.md b/firebase-appdistribution/CHANGELOG.md index 6d1d5e6a9aa..c1936b67678 100644 --- a/firebase-appdistribution/CHANGELOG.md +++ b/firebase-appdistribution/CHANGELOG.md @@ -1,91 +1,96 @@ # Unreleased - # 16.0.0-beta16 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. + +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. # 16.0.0-beta15 -* [fixed] Added custom tab support for more browsers [#6692] + +- [fixed] Added custom tab support for more browsers [#6692] # 16.0.0-beta14 -* [changed] Internal improvements to testing on Android 14 + +- [changed] Internal improvements to testing on Android 14 # 16.0.0-beta13 -* [changed] Bump internal dependencies + +- [changed] Bump internal dependencies # 16.0.0-beta12 -* [changed] Bump internal dependencies. + +- [changed] Bump internal dependencies. # 16.0.0-beta10 -* [fixed] Updated the third-party license file to include Dagger's license. + +- [fixed] Updated the third-party license file to include Dagger's license. # 16.0.0-beta09 -* [feature] Improved development mode to allow all API calls to be made without having to sign in. + +- [feature] Improved development mode to allow all API calls to be made without having to sign in. # 16.0.0-beta08 -* [fixed] Fixed an issue where a crash happened whenever a feedback - notification was shown on devices running Android 4.4 and lower. + +- [fixed] Fixed an issue where a crash happened whenever a feedback notification was shown on + devices running Android 4.4 and lower. # 16.0.0-beta07 -* [feature] Added support for testers to attach JPEG screenshots to their - feedback. + +- [feature] Added support for testers to attach JPEG screenshots to their feedback. # 16.0.0-beta06 -* [feature] Added support for in-app tester feedback. To learn more, see + +- [feature] Added support for in-app tester feedback. To learn more, see [Collect feedback from testers](/docs/app-distribution/collect-feedback-from-testers). -* [fixed] Fixed a bug where only the last listener added to an `UpdateTask` - using `addOnProgressListener()` would receive updates. +- [fixed] Fixed a bug where only the last listener added to an `UpdateTask` using + `addOnProgressListener()` would receive updates. # 16.0.0-beta05 -* [unchanged] Updated to accommodate the release of the updated - [appdistro] Kotlin extensions library. + +- [unchanged] Updated to accommodate the release of the updated [appdistro] Kotlin extensions + library. # 16.0.0-beta03 -* [feature] The [appdistro] SDK has been split into two libraries: - * `firebase-appdistribution-api` - The API-only library
- This new API-only library is functional only when the full - [appdistro] SDK implementation (`firebase-appdistribution`) is present. - `firebase-appdistribution-api` can be included in all +- [feature] The [appdistro] SDK has been split into two libraries: + + - `firebase-appdistribution-api` - The API-only library
This new API-only library is + functional only when the full [appdistro] SDK implementation (`firebase-appdistribution`) is + present. `firebase-appdistribution-api` can be included in all [build variants](https://developer.android.com/studio/build/build-variants){: .external}. - * `firebase-appdistribution` - The full SDK implementation
- This full SDK implementation is optional and should only be included in - pre-release builds. + - `firebase-appdistribution` - The full SDK implementation
This full SDK implementation is + optional and should only be included in pre-release builds. Visit the documentation to learn how to - [add these SDKs](/docs/app-distribution/set-up-alerts?platform=android#add-appdistro) - to your Android app. - + [add these SDKs](/docs/app-distribution/set-up-alerts?platform=android#add-appdistro) to your + Android app. ## Kotlin -* [removed] The Kotlin extensions library `firebase-appdistribution-ktx` - has been removed. All its functionality has been moved to the new API-only - library: `firebase-appdistribution-api-ktx`. + +- [removed] The Kotlin extensions library `firebase-appdistribution-ktx` has been removed. All its + functionality has been moved to the new API-only library: `firebase-appdistribution-api-ktx`. # 16.0.0-beta02 -* [fixed] Fixed a bug that prevented testers from signing in when the app had -an underscore in the package name. -* [fixed] Fixed a UI bug where the APK download notification displayed the -incorrect error message. -* [changed] Internal improvements to tests. +- [fixed] Fixed a bug that prevented testers from signing in when the app had an underscore in the + package name. +- [fixed] Fixed a UI bug where the APK download notification displayed the incorrect error message. +- [changed] Internal improvements to tests. ## Kotlin -The Kotlin extensions library transitively includes the base -`firebase-app-distribution` library. The Kotlin extensions library has no -additional updates. + +The Kotlin extensions library transitively includes the base `firebase-app-distribution` library. +The Kotlin extensions library has no additional updates. # 16.0.0-beta01 -* [feature] The [appdistro] Android SDK is now available in beta. You - can use this SDK to notify testers in-app when a new test build is available. - To learn more, visit the - [[appdistro] reference documentation](/docs/reference/android/com/google/firebase/appdistribution/package-summary). +- [feature] The [appdistro] Android SDK is now available in beta. You can use this SDK to notify + testers in-app when a new test build is available. To learn more, visit the + [[appdistro] reference documentation](/docs/reference/android/com/google/firebase/appdistribution/package-summary). ## Kotlin -The [appdistro] Android library with Kotlin extensions is now available in -beta. The Kotlin extensions library transitively includes the base -`firebase-app-distribution` library. To learn more, visit the -[[appdistro] KTX reference documentation](/docs/reference/kotlin/com/google/firebase/appdistribution/ktx/package-summary). +The [appdistro] Android library with Kotlin extensions is now available in beta. The Kotlin +extensions library transitively includes the base `firebase-app-distribution` library. To learn +more, visit the +[[appdistro] KTX reference documentation](/docs/reference/kotlin/com/google/firebase/appdistribution/ktx/package-summary). diff --git a/firebase-common/CHANGELOG.md b/firebase-common/CHANGELOG.md index 6650be1695a..e293f80284d 100644 --- a/firebase-common/CHANGELOG.md +++ b/firebase-common/CHANGELOG.md @@ -1,35 +1,39 @@ # Unreleased # 22.0.0 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. -* [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions - (KTX) module and removed it from the Firebase Android BoM. Instead, use the KTX APIs - from the main module. For details, see the + +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. +- [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions (KTX) module and + removed it from the Firebase Android BoM. Instead, use the KTX APIs from the main module. For + details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration). # 21.0.0 -* [fixed] Correctly declare dependency on firebase-components, issue #5732 -* [changed] Added extension method `Random.nextAlphanumericString()` (PR #5818) -* [changed] Migrated internal `SharedPreferences` usages to `DataStore`. ([GitHub PR #6801](https://github.com/firebase/firebase-android-sdk/pull/6801){ .external}) + +- [fixed] Correctly declare dependency on firebase-components, issue #5732 +- [changed] Added extension method `Random.nextAlphanumericString()` (PR #5818) +- [changed] Migrated internal `SharedPreferences` usages to `DataStore`. + ([GitHub PR #6801](https://github.com/firebase/firebase-android-sdk/pull/6801){ .external}) # 20.4.0 -* [changed] Added Kotlin extensions (KTX) APIs from `com.google.firebase:firebase-common-ktx` -to `com.google.firebase:firebase-common` under the `com.google.firebase` package. -For details, see the -[FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) + +- [changed] Added Kotlin extensions (KTX) APIs from `com.google.firebase:firebase-common-ktx` to + `com.google.firebase:firebase-common` under the `com.google.firebase` package. For details, see + the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) ## Kotlin -* [deprecated] All the APIs from `com.google.firebase:firebase-common-ktx` have been added to -`com.google.firebase:firebase-common` under the `com.google.firebase package`, and all the -Kotlin extensions (KTX) APIs in `com.google.firebase:firebase-common-ktx` are now deprecated. -As early as April 2024, we'll no longer release KTX modules. For details, see the -FAQ about this initiative. -[FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) + +- [deprecated] All the APIs from `com.google.firebase:firebase-common-ktx` have been added to + `com.google.firebase:firebase-common` under the `com.google.firebase package`, and all the Kotlin + extensions (KTX) APIs in `com.google.firebase:firebase-common-ktx` are now deprecated. As early as + April 2024, we'll no longer release KTX modules. For details, see the FAQ about this initiative. + [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) # 20.3.3 -* [fixed] Addressed issue with C++ being absent in user agent. + +- [fixed] Addressed issue with C++ being absent in user agent. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-common` library. The Kotlin extensions library has no additional -updates + +The Kotlin extensions library transitively includes the updated `firebase-common` library. The +Kotlin extensions library has no additional updates diff --git a/firebase-common/README.md b/firebase-common/README.md index 63ae423d0cd..3b3cea4b37a 100644 --- a/firebase-common/README.md +++ b/firebase-common/README.md @@ -1,11 +1,12 @@ # Firebase Common -firebase-common contains the FirebaseApp, which is used to configure -the firebase sdks as well as the infrastructure that firebase sdks use -to discover and interact with other firebase sdks. + +firebase-common contains the FirebaseApp, which is used to configure the firebase sdks as well as +the infrastructure that firebase sdks use to discover and interact with other firebase sdks. ## Running tests. Unit tests can be run by + ``` $ ./gradlew :firebase-common:check ``` diff --git a/firebase-components/CHANGELOG.md b/firebase-components/CHANGELOG.md index 1625e338b40..73f17b8e426 100644 --- a/firebase-components/CHANGELOG.md +++ b/firebase-components/CHANGELOG.md @@ -1,19 +1,20 @@ # Unreleased # 19.0.0 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. # 18.0.1 -* [fixed] updated proguard rules to keep component registrar working with newer proguard versions. +- [fixed] updated proguard rules to keep component registrar working with newer proguard versions. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-components` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-components` library. The +Kotlin extensions library has no additional updates. # 17.1.2 -* [changed] Internal changes to ensure only one interface is provided for + +- [changed] Internal changes to ensure only one interface is provided for kotlinx.coroutines.CoroutineDispatcher interfaces when both firebase-common and firebase-common-ktx provide them. diff --git a/firebase-components/firebase-dynamic-module-support/CHANGELOG.md b/firebase-components/firebase-dynamic-module-support/CHANGELOG.md index a7c21189679..e18540f051a 100644 --- a/firebase-components/firebase-dynamic-module-support/CHANGELOG.md +++ b/firebase-components/firebase-dynamic-module-support/CHANGELOG.md @@ -1,7 +1,9 @@ # Unreleased # 16.0.0-beta04 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. + +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. # 16.0.0-beta03 -* [changed] Updated dependency of play-services-basement to its latest version (v18.1.0). + +- [changed] Updated dependency of play-services-basement to its latest version (v18.1.0). diff --git a/firebase-config-interop/CHANGELOG.md b/firebase-config-interop/CHANGELOG.md index 225bbc02245..54976cbf39d 100644 --- a/firebase-config-interop/CHANGELOG.md +++ b/firebase-config-interop/CHANGELOG.md @@ -1,5 +1,7 @@ # Unreleased -* [unchanged] Updated to keep [config] SDK versions aligned. + +- [unchanged] Updated to keep [config] SDK versions aligned. # 16.0.0 -* [feature] Initial release. + +- [feature] Initial release. diff --git a/firebase-config/CHANGELOG.md b/firebase-config/CHANGELOG.md index ad818ea2b39..470e2a7da6a 100644 --- a/firebase-config/CHANGELOG.md +++ b/firebase-config/CHANGELOG.md @@ -1,193 +1,193 @@ # Unreleased - # 23.0.0 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. -* [changed] This update introduces improvements to how the SDK handles real-time requests when a + +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. +- [changed] This update introduces improvements to how the SDK handles real-time requests when a Firebase project has exceeded its available quota for real-time services. Released in anticipation of future quota enforcement, this change is designed to fetch the latest template even when the quota is exhausted. -* [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions - (KTX) module and removed it from the Firebase Android BoM. Instead, use the KTX APIs - from the main module. For details, see the +- [removed] **Breaking Change**: Stopped releasing the deprecated Kotlin extensions (KTX) module and + removed it from the Firebase Android BoM. Instead, use the KTX APIs from the main module. For + details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration). # 22.1.2 -* [fixed] Fixed `NetworkOnMainThreadException` on Android versions below 8 by disconnecting - `HttpURLConnection` only on API levels 26 and higher. GitHub Issue [#6934] +- [fixed] Fixed `NetworkOnMainThreadException` on Android versions below 8 by disconnecting + `HttpURLConnection` only on API levels 26 and higher. GitHub Issue [#6934] ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 22.1.1 -* [fixed] Fixed an issue where the connection to the real-time Remote Config backend could remain -open in the background. +- [fixed] Fixed an issue where the connection to the real-time Remote Config backend could remain + open in the background. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 22.1.0 -* [feature] Added support for custom signal targeting in Remote Config. Use `setCustomSignals` API for setting custom signals and use them to build custom targeting conditions in Remote Config. +- [feature] Added support for custom signal targeting in Remote Config. Use `setCustomSignals` API + for setting custom signals and use them to build custom targeting conditions in Remote Config. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 22.0.1 -* [changed] Updated protobuf dependency to `3.25.5` to fix - [CVE-2024-7254](https://nvd.nist.gov/vuln/detail/CVE-2024-7254). +- [changed] Updated protobuf dependency to `3.25.5` to fix + [CVE-2024-7254](https://nvd.nist.gov/vuln/detail/CVE-2024-7254). ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 22.0.0 -* [changed] Bump internal dependencies +- [changed] Bump internal dependencies ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.6.3 -* [fixed] Fixed a bug that could cause a crash if the app was backgrounded - while it was listening for real-time Remote Config updates. For more information, see #5751 + +- [fixed] Fixed a bug that could cause a crash if the app was backgrounded while it was listening + for real-time Remote Config updates. For more information, see #5751 # 21.6.2 -* [fixed] Fixed an issue that could cause [remote_config] personalizations to be logged early in + +- [fixed] Fixed an issue that could cause [remote_config] personalizations to be logged early in specific cases. -* [fixed] Fixed an issue where the connection to the real-time Remote Config backend could remain +- [fixed] Fixed an issue where the connection to the real-time Remote Config backend could remain open in the background. - ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.6.1 -* [changed] Bump internal dependencies. +- [changed] Bump internal dependencies. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.6.0 -* [changed] Added support for other Firebase products to integrate with [remote_config]. + +- [changed] Added support for other Firebase products to integrate with [remote_config]. # 21.5.0 -* [changed] Added Kotlin extensions (KTX) APIs from `com.google.firebase:firebase-config-ktx` - to `com.google.firebase:firebase-config` under the `com.google.firebase.remoteconfig` package. - For details, see the + +- [changed] Added Kotlin extensions (KTX) APIs from `com.google.firebase:firebase-config-ktx` to + `com.google.firebase:firebase-config` under the `com.google.firebase.remoteconfig` package. For + details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) -* [deprecated] All the APIs from `com.google.firebase:firebase-config-ktx` have been added to - `com.google.firebase:firebase-config` under the `com.google.firebase.remoteconfig` package, - and all the Kotlin extensions (KTX) APIs in `com.google.firebase:firebase-config-ktx` are - now deprecated. As early as April 2024, we'll no longer release KTX modules. For details, see the +- [deprecated] All the APIs from `com.google.firebase:firebase-config-ktx` have been added to + `com.google.firebase:firebase-config` under the `com.google.firebase.remoteconfig` package, and + all the Kotlin extensions (KTX) APIs in `com.google.firebase:firebase-config-ktx` are now + deprecated. As early as April 2024, we'll no longer release KTX modules. For details, see the [FAQ about this initiative](https://firebase.google.com/docs/android/kotlin-migration) - ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.4.1 -* [changed] Internal improvements to support Remote Config real-time updates. +- [changed] Internal improvements to support Remote Config real-time updates. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.4.0 -* [unchanged] Updated to accommodate the release of the updated - [remote_config] Kotlin extensions library. +- [unchanged] Updated to accommodate the release of the updated [remote_config] Kotlin extensions + library. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has the following -additional updates. -* [feature] Added the - [`FirebaseRemoteConfig.configUpdates`](/docs/reference/kotlin/com/google/firebase/remoteconfig/ktx/package-summary#(com.google.firebase.remoteconfig.FirebaseRemoteConfig).configUpdates()) +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has the following additional updates. + +- [feature] Added the + [`FirebaseRemoteConfig.configUpdates`]() Kotlin Flow to listen for real-time config updates. # 21.3.0 -* [feature] Added support for real-time config updates. To learn more, see - [Get started with [firebase_remote_config]](/docs/remote-config/get-started?platform=android#add-real-time-listener). +- [feature] Added support for real-time config updates. To learn more, see + [Get started with [firebase_remote_config]](/docs/remote-config/get-started?platform=android#add-real-time-listener). ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.2.1 -* [changed] Migrated [remote_config] to use standard Firebase executors. +- [changed] Migrated [remote_config] to use standard Firebase executors. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.2.0 -* [unchanged] Updated to accommodate the release of the updated - [remote_config] Kotlin extensions library. +- [unchanged] Updated to accommodate the release of the updated [remote_config] Kotlin extensions + library. ## Kotlin -The Kotlin extensions library transitively includes the updated - `firebase-config` library. The Kotlin extensions library has the following - additional updates: -* [feature] Firebase now supports Kotlin coroutines. - With this release, we added - [`kotlinx-coroutines-play-services`](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-play-services/){: .external} - to `firebase-config-ktx` as a transitive dependency, which exposes the +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has the following additional updates: + +- [feature] Firebase now supports Kotlin coroutines. With this release, we added + [`kotlinx-coroutines-play-services`](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-play-services/){: + .external} to `firebase-config-ktx` as a transitive dependency, which exposes the `Task.await()` suspend function to convert a - [`Task`](https://developers.google.com/android/guides/tasks) into a Kotlin - coroutine. + [`Task`](https://developers.google.com/android/guides/tasks) into a Kotlin coroutine. # 21.1.2 -* [changed] Updated dependency of `play-services-basement` to its latest - version (v18.1.0). +- [changed] Updated dependency of `play-services-basement` to its latest version (v18.1.0). ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.1.1 -* [fixed] Fixed a bug that caused HTTP errors in some locales. For more - information, see + +- [fixed] Fixed a bug that caused HTTP errors in some locales. For more information, see GitHub Issue #3757 - ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.1.0 + -* [changed] Added first-open time to [remote_config] server requests. - +- [changed] Added first-open time to [remote_config] server requests. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.0.2 -* [changed] Updated dependencies of `play-services-basement`, - `play-services-base`, and `play-services-tasks` to their latest versions - (v18.0.0, v18.0.1, and v18.0.1, respectively). For more information, see the - [note](#basement18-0-0_base18-0-1_tasks18-0-1) at the top of this release - entry. +- [changed] Updated dependencies of `play-services-basement`, `play-services-base`, and + `play-services-tasks` to their latest versions (v18.0.0, v18.0.1, and v18.0.1, respectively). For + more information, see the [note](#basement18-0-0_base18-0-1_tasks18-0-1) at the top of this + release entry. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.0.1 -* [fixed] Fixed a bug in the initialization of [remote_config] with a - non-primary Firebase app. +- [fixed] Fixed a bug in the initialization of [remote_config] with a non-primary Firebase app. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 21.0.0 -* [changed] Internal infrastructure improvements. -* [changed] Internal changes to support dynamic feature modules. +- [changed] Internal infrastructure improvements. +- [changed] Internal changes to support dynamic feature modules. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 20.0.4 -* [changed] Improved condition targeting signals. +- [changed] Improved condition targeting signals. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 20.0.3 -* [changed] Standardize support for other Firebase products that integrate - with [remote_config]. +- [changed] Standardize support for other Firebase products that integrate with [remote_config]. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 20.0.2 -* [fixed] Fixed an issue that was causing [remote_config] to return the - static default value even if a remote value was defined. (#2186) +- [fixed] Fixed an issue that was causing [remote_config] to return the static default value even if + a remote value was defined. (#2186) ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 20.0.1 -* [changed] Added support for other Firebase products to integrate with - [remote_config]. +- [changed] Added support for other Firebase products to integrate with [remote_config]. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 20.0.0 -* [removed] Removed the protocol buffer dependency. Also, removed support for - configs saved on device using the legacy protocol buffer format (the SDK - stopped using this legacy format starting with [remote_config] v16.3.0). -* [removed] Removed the deprecated synchronous method - `FirebaseRemoteConfig.activateFetched()`. Use the asynchronous - [`FirebaseRemoteConfig.activate()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#activate()) + +- [removed] Removed the protocol buffer dependency. Also, removed support for configs saved on + device using the legacy protocol buffer format (the SDK stopped using this legacy format starting + with [remote_config] v16.3.0). +- [removed] Removed the deprecated synchronous method `FirebaseRemoteConfig.activateFetched()`. Use + the asynchronous + [`FirebaseRemoteConfig.activate()`]() instead. -* [removed] Removed the deprecated synchronous methods - `FirebaseRemoteConfig.setDefaults(int)` and +- [removed] Removed the deprecated synchronous methods `FirebaseRemoteConfig.setDefaults(int)` and `FirebaseRemoteConfig.setDefaults(Map)`. Use the asynchronous - [`FirebaseRemoteConfig.setDefaultsAsync(int)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefaultsAsync(int)) - and [`FirebaseRemoteConfig.setDefaultsAsync(Map)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefaultsAsync(Map)) + [`FirebaseRemoteConfig.setDefaultsAsync(int)`]() + and + [`FirebaseRemoteConfig.setDefaultsAsync(Map)`](>) instead. -* [removed] Removed the deprecated synchronous method - `FirebaseRemoteConfig.setConfigSettings(FirebaseRemoteConfigSettings)`. - Use the asynchronous - [`FirebaseRemoteConfig.setConfigSettingsAsync(FirebaseRemoteConfigSettings)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setConfigSettingsAsync(FirebaseRemoteConfigSettings)) +- [removed] Removed the deprecated synchronous method + `FirebaseRemoteConfig.setConfigSettings(FirebaseRemoteConfigSettings)`. Use the asynchronous + [`FirebaseRemoteConfig.setConfigSettingsAsync(FirebaseRemoteConfigSettings)`]() instead. -* [removed] Removed the deprecated method - `FirebaseRemoteConfig.getByteArray(String)`. Use - [`FirebaseRemoteConfig.getString(String)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#getString(String)) +- [removed] Removed the deprecated method `FirebaseRemoteConfig.getByteArray(String)`. Use + [`FirebaseRemoteConfig.getString(String)`]() instead. -* [removed] Removed the deprecated methods - `FirebaseRemoteConfigSettings.isDeveloperModeEnabled()` and - `FirebaseRemoteConfigSettings.Builder.setDeveloperModeEnabled(boolean)`. Use - [`FirebaseRemoteConfigSettings#getMinimumFetchIntervalInSeconds()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings#getMinimumFetchIntervalInSeconds()) - and [`FirebaseRemoteConfigSettings.Builder#setMinimumFetchIntervalInSeconds(long)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder#setMinimumFetchIntervalInSeconds(long)) +- [removed] Removed the deprecated methods `FirebaseRemoteConfigSettings.isDeveloperModeEnabled()` + and `FirebaseRemoteConfigSettings.Builder.setDeveloperModeEnabled(boolean)`. Use + [`FirebaseRemoteConfigSettings#getMinimumFetchIntervalInSeconds()`]() + and + [`FirebaseRemoteConfigSettings.Builder#setMinimumFetchIntervalInSeconds(long)`]() instead. - ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 19.2.0 -* [changed] Migrated to use the [firebase_installations] service _directly_ - instead of using an indirect dependency via the Firebase Instance ID SDK. + +- [changed] Migrated to use the [firebase_installations] service _directly_ instead of using an + indirect dependency via the Firebase Instance ID SDK. {% include "docs/reference/android/client/_includes/_iid-indirect-dependency-solutions.html" %} -* [changed] Updated the protocol buffer dependency to the newer - `protobuf-javalite` artifact. The new artifact is incompatible with the old - one, so this library needed to be upgraded to avoid conflicts. No developer - action is necessary. +- [changed] Updated the protocol buffer dependency to the newer `protobuf-javalite` artifact. The + new artifact is incompatible with the old one, so this library needed to be upgraded to avoid + conflicts. No developer action is necessary. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 19.1.4 -* [changed] Updated dependency on the Firebase Instance ID library to v20.1.5, - which is a step towards a direct dependency on the Firebase installations - service in a future release. +- [changed] Updated dependency on the Firebase Instance ID library to v20.1.5, which is a step + towards a direct dependency on the Firebase installations service in a future release. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 19.1.3 -* [fixed] Fixed an issue where [`FirebaseRemoteConfig.fetch()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#fetch()) -would sometimes report a misformatted language tag. +- [fixed] Fixed an issue where + [`FirebaseRemoteConfig.fetch()`]() + would sometimes report a misformatted language tag. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 19.1.2 -* [fixed] Resolved known issue where + +- [fixed] Resolved known issue where [`FirebaseRemoteConfigSettings.Builder.setFetchTimeoutInSeconds()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder) was not always honored. - ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 19.1.1 -* [changed] Updated [`FirebaseRemoteConfig.fetch()`](docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#fetch()) -implementation to use [`FirebaseInstanceId.getInstanceId()`](/docs/reference/android/com/google/firebase/iid/FirebaseInstanceId.html#getInstanceId()) -in favor of the deprecated [`FirebaseInstanceId.getToken()`](/docs/reference/android/com/google/firebase/iid/FirebaseInstanceId.html#getToken()). +- [changed] Updated + [`FirebaseRemoteConfig.fetch()`]() + implementation to use + [`FirebaseInstanceId.getInstanceId()`]() + in favor of the deprecated + [`FirebaseInstanceId.getToken()`](). ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 19.1.0 -* [changed] Added getters to the fields of the + +- [changed] Added getters to the fields of the [`FirebaseRemoteConfigSettings.Builder`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder) object to provide better Kotlin patterns. - ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 19.0.4 -* [fixed] Resolved - [known issue](//github.com/firebase/firebase-android-sdk/issues/973) where - network calls may fail on devices using API 19 and earlier. +- [fixed] Resolved [known issue](//github.com/firebase/firebase-android-sdk/issues/973) where + network calls may fail on devices using API 19 and earlier. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 19.0.3 -* [fixed] Resolved - [known issue](https://github.com/firebase/firebase-android-sdk/issues/787) - where the [firebase_remote_config] SDK threw an error when Android - [StrictMode](https://developer.android.com/reference/android/os/StrictMode) - was turned on. -* [fixed] Resolved issue where setting Byte Arrays via - [`FirebaseRemoteConfig.setDefaultsAsync(int)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefaultsAsync(int)), - [`FirebaseRemoteConfig.setDefaultsAsync(Map)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefaultsAsync(Map)) - and their synchronous counterparts would cause `getByteArray` to return an - object reference instead of the Byte Array. Byte Arrays set via the - Firebase console were unaffected by this bug. +- [fixed] Resolved [known issue](https://github.com/firebase/firebase-android-sdk/issues/787) where + the [firebase_remote_config] SDK threw an error when Android + [StrictMode](https://developer.android.com/reference/android/os/StrictMode) was turned on. +- [fixed] Resolved issue where setting Byte Arrays via + [`FirebaseRemoteConfig.setDefaultsAsync(int)`](), + [`FirebaseRemoteConfig.setDefaultsAsync(Map)`](>) + and their synchronous counterparts would cause `getByteArray` to return an object reference + instead of the Byte Array. Byte Arrays set via the Firebase console were unaffected by this bug. ## Kotlin -The Kotlin extensions library transitively includes the updated -`firebase-config` library. The Kotlin extensions library has no additional -updates. + +The Kotlin extensions library transitively includes the updated `firebase-config` library. The +Kotlin extensions library has no additional updates. # 19.0.2 -* [unchanged] Updated to accommodate the release of the [remote_config] - Kotlin extensions library. +- [unchanged] Updated to accommodate the release of the [remote_config] Kotlin extensions library. ## Kotlin -* [feature] The beta release of a [remote_config] Android library with - Kotlin extensions is now available. The Kotlin extensions library transitively - includes the base `firebase-config` library. To learn more, visit the + +- [feature] The beta release of a [remote_config] Android library with Kotlin extensions is now + available. The Kotlin extensions library transitively includes the base `firebase-config` library. + To learn more, visit the [[remote_config] KTX documentation](/docs/reference/kotlin/com/google/firebase/remoteconfig/ktx/package-summary). # 19.0.1 -* [fixed] Resolved known issue where certain unicode characters were not - encoded correctly. The issue was introduced in v19.0.0. + +- [fixed] Resolved known issue where certain unicode characters were not encoded correctly. The + issue was introduced in v19.0.0. # 19.0.0 -* [changed] Versioned to add nullability annotations to improve the Kotlin - developer experience. No other changes. + +- [changed] Versioned to add nullability annotations to improve the Kotlin developer experience. No + other changes. # 17.0.0 -* [feature] Added an asynchronous way to set config settings: [`FirebaseRemoteConfig.setConfigSettingsAsync(FirebaseRemoteConfigSettings)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setConfigSettingsAsync(FirebaseRemoteConfigSettings)). -* [feature] Added [`FirebaseRemoteConfigServerException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigServerException) and [`FirebaseRemoteConfigClientException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigClientException) to provide more nuanced error reporting. -* [changed] Updated all "cache expiration" references to "minimum fetch interval" and "cache" references to "local storage". -* [deprecated] Deprecated developer mode. Use [`FirebaseRemoteConfigSettings.Builder.setMinimumFetchIntervalInSeconds(0L)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder#setMinimumFetchIntervalInSeconds(long)) instead. -* [deprecated] Deprecated the synchronous [`FirebaseRemoteConfig.setConfigSettings(FirebaseRemoteConfigSettings)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setConfigSettings(FirebaseRemoteConfigSettings)). Use the asynchronous [`FirebaseRemoteConfig.setConfigSettingsAsync(FirebaseRemoteConfigSettings)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setConfigSettingsAsync(FirebaseRemoteConfigSettings)) instead. -* [deprecated] Deprecated [`FirebaseRemoteConfigFetchException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigFetchException). Use the more granular [`FirebaseRemoteConfigServerException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigServerException) and [`FirebaseRemoteConfigClientException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigClientException) instead. -* [removed] Removed all namespace methods. -* [removed] Removed all default constructors for Exception classes. -* [changed] Updated minSdkVersion to API level 16. + +- [feature] Added an asynchronous way to set config settings: + [`FirebaseRemoteConfig.setConfigSettingsAsync(FirebaseRemoteConfigSettings)`](). +- [feature] Added + [`FirebaseRemoteConfigServerException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigServerException) + and + [`FirebaseRemoteConfigClientException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigClientException) + to provide more nuanced error reporting. +- [changed] Updated all "cache expiration" references to "minimum fetch interval" and "cache" + references to "local storage". +- [deprecated] Deprecated developer mode. Use + [`FirebaseRemoteConfigSettings.Builder.setMinimumFetchIntervalInSeconds(0L)`]() + instead. +- [deprecated] Deprecated the synchronous + [`FirebaseRemoteConfig.setConfigSettings(FirebaseRemoteConfigSettings)`](). + Use the asynchronous + [`FirebaseRemoteConfig.setConfigSettingsAsync(FirebaseRemoteConfigSettings)`]() + instead. +- [deprecated] Deprecated + [`FirebaseRemoteConfigFetchException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigFetchException). + Use the more granular + [`FirebaseRemoteConfigServerException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigServerException) + and + [`FirebaseRemoteConfigClientException`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigClientException) + instead. +- [removed] Removed all namespace methods. +- [removed] Removed all default constructors for Exception classes. +- [changed] Updated minSdkVersion to API level 16. # 16.5.0 -* [feature] Enabled multi-App support. Use [`FirebaseRemoteConfig.getInstance(FirebaseApp)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#getInstance(FirebaseApp)) to retrieve a singleton instance of [`FirebaseRemoteConfig`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig) for the given [`FirebaseApp`](/docs/reference/android/com/google/firebase/FirebaseApp). -* [feature] Added a method that fetches configs and activates them: [`FirebaseRemoteConfig.fetchAndActivate()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#fetchAndActivate()). -* [feature] Network connection timeout for fetch requests is now customizable. To set the network timeout, use [`FirebaseRemoteConfigSettings.Builder.setFetchTimeoutInSeconds(long)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder#setFetchTimeoutInSeconds(long)). -* [feature] The default minimum fetch interval is now customizable. To set the default minimum fetch interval, use [`FirebaseRemoteConfigSettings.Builder.setMinimumFetchIntervalInSeconds(long)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder#setMinimumFetchIntervalInSeconds(long)). -* [feature] Added a way to get all activated configs as a Java `Map`: [`FirebaseRemoteConfig.getAll()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#getAll()). -* [feature] Added the ability to reset a Firebase Remote Config instance: [`FirebaseRemoteConfig.reset()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#reset()). -* [feature] Added a way to determine if the Firebase Remote Config instance has finished initializing. To get a task that will complete when the Firebase Remote Config instance is finished initializing, use [`FirebaseRemoteConfig.ensureInitialized()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#ensureInitialized()). -* [feature] Added an asynchronous way to activate configs: [`FirebaseRemoteConfig.activate()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#activate()). -* [feature] Added an asynchronous way to set defaults: [`FirebaseRemoteConfig.setDefaultsAsync(int)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefaultsAsync(int)) and [`FirebaseRemoteConfig.setDefaultsAsync(Map)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefaultsAsync(Map)). -* [deprecated] Deprecated the synchronous [`FirebaseRemoteConfig.activateFetched()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#activateFetched()). Use the asynchronous [`FirebaseRemoteConfig.activate()`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#activate()) instead. -* [deprecated] Deprecated the synchronous [`FirebaseRemoteConfig.setDefaults(int)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefaults(int)) and [`FirebaseRemoteConfig.setDefaults(Map)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefalts(Map)). Use the asynchronous [`FirebaseRemoteConfig.setDefaultsAsync(int)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefaultsAsync(int)) and [`FirebaseRemoteConfig.setDefaultsAsync(Map)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#setDefaultsAsync(Map)) instead. -* [deprecated] Deprecated [`FirebaseRemoteConfig.getByteArray(String)`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig#getByteArray(String)). -* [deprecated] Deprecated all methods with a namespace parameter. + +- [feature] Enabled multi-App support. Use + [`FirebaseRemoteConfig.getInstance(FirebaseApp)`]() + to retrieve a singleton instance of + [`FirebaseRemoteConfig`](/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig) + for the given [`FirebaseApp`](/docs/reference/android/com/google/firebase/FirebaseApp). +- [feature] Added a method that fetches configs and activates them: + [`FirebaseRemoteConfig.fetchAndActivate()`](). +- [feature] Network connection timeout for fetch requests is now customizable. To set the network + timeout, use + [`FirebaseRemoteConfigSettings.Builder.setFetchTimeoutInSeconds(long)`](). +- [feature] The default minimum fetch interval is now customizable. To set the default minimum fetch + interval, use + [`FirebaseRemoteConfigSettings.Builder.setMinimumFetchIntervalInSeconds(long)`](). +- [feature] Added a way to get all activated configs as a Java `Map`: + [`FirebaseRemoteConfig.getAll()`](). +- [feature] Added the ability to reset a Firebase Remote Config instance: + [`FirebaseRemoteConfig.reset()`](). +- [feature] Added a way to determine if the Firebase Remote Config instance has finished + initializing. To get a task that will complete when the Firebase Remote Config instance is + finished initializing, use + [`FirebaseRemoteConfig.ensureInitialized()`](). +- [feature] Added an asynchronous way to activate configs: + [`FirebaseRemoteConfig.activate()`](). +- [feature] Added an asynchronous way to set defaults: + [`FirebaseRemoteConfig.setDefaultsAsync(int)`]() + and + [`FirebaseRemoteConfig.setDefaultsAsync(Map)`](>). +- [deprecated] Deprecated the synchronous + [`FirebaseRemoteConfig.activateFetched()`](). + Use the asynchronous + [`FirebaseRemoteConfig.activate()`]() + instead. +- [deprecated] Deprecated the synchronous + [`FirebaseRemoteConfig.setDefaults(int)`]() + and + [`FirebaseRemoteConfig.setDefaults(Map)`](>). + Use the asynchronous + [`FirebaseRemoteConfig.setDefaultsAsync(int)`]() + and + [`FirebaseRemoteConfig.setDefaultsAsync(Map)`](>) + instead. +- [deprecated] Deprecated + [`FirebaseRemoteConfig.getByteArray(String)`](). +- [deprecated] Deprecated all methods with a namespace parameter. # 16.4.1 -* [changed] The SDK now enforces Android API Key restrictions. -* [fixed] Resolved known issue where the local cache was not honored even if - it had not expired. The issue was introduced in version 16.3.0. + +- [changed] The SDK now enforces Android API Key restrictions. +- [fixed] Resolved known issue where the local cache was not honored even if it had not expired. The + issue was introduced in version 16.3.0. # 16.4.0 -* [changed] Internal changes to ensure functionality alignment with other SDK releases. + +- [changed] Internal changes to ensure functionality alignment with other SDK releases. # 16.3.0 -* [changed] The [firebase_remote_config] SDK requires the - [firebase_remote_config] REST API. For Firebase projects created before - March 7, 2018, you must manually enable the REST API. For more information, - see our + +- [changed] The [firebase_remote_config] SDK requires the [firebase_remote_config] REST API. For + Firebase projects created before March 7, 2018, you must manually enable the REST API. For more + information, see our [[remote_config] REST API user guide](https://firebase.google.com/docs/remote-config/use-config-rest#before_you_begin_enable_the_rest_api). -* [changed] Refactored the implementation of [remote_config] to improve SDK - stability and speed, and to remove the Google Play Services dependency. -* [changed] Improved error logs and exception messages. -* [changed] Updated the Android documentation to reflect that - [remote_config] uses `Locale` to retrieve location information, similar to - iOS's use of `countryCode`. +- [changed] Refactored the implementation of [remote_config] to improve SDK stability and speed, and + to remove the Google Play Services dependency. +- [changed] Improved error logs and exception messages. +- [changed] Updated the Android documentation to reflect that [remote_config] uses `Locale` to + retrieve location information, similar to iOS's use of `countryCode`. # 16.1.3 -* [fixed] Fixed an issue where [remote_config] experiments were not - collecting results. + +- [fixed] Fixed an issue where [remote_config] experiments were not collecting results. # 16.1.0 -* [fixed] Bug fixes and internal improvements to support Firebase Performance Monitoring features. +- [fixed] Bug fixes and internal improvements to support Firebase Performance Monitoring features. diff --git a/firebase-config/test-app/README.md b/firebase-config/test-app/README.md index 64149202d50..b8994701353 100644 --- a/firebase-config/test-app/README.md +++ b/firebase-config/test-app/README.md @@ -2,16 +2,16 @@ ## Setup -Download the `google-services.json` file -from [Firebase Console](https://console.firebase.google.com/) (for whatever Firebase project you -have or want to integrate the `test-app`) and store it under the current directory. +Download the `google-services.json` file from +[Firebase Console](https://console.firebase.google.com/) (for whatever Firebase project you have or +want to integrate the `test-app`) and store it under the current directory. Note: The [Package name](https://firebase.google.com/docs/android/setup#register-app) for your app -created on the Firebase Console (for which the `google-services.json` is downloaded) must match -the [applicationId](https://developer.android.com/studio/build/application-id.html) declared in -the `test-app/test-app.gradle.kts` for the app to link to Firebase. +created on the Firebase Console (for which the `google-services.json` is downloaded) must match the +[applicationId](https://developer.android.com/studio/build/application-id.html) declared in the +`test-app/test-app.gradle.kts` for the app to link to Firebase. ## Running -Run the test app directly from Android Studio by selecting and running -the `firebase-config.test-app` run configuration. +Run the test app directly from Android Studio by selecting and running the +`firebase-config.test-app` run configuration. diff --git a/firebase-crashlytics-ndk/CHANGELOG.md b/firebase-crashlytics-ndk/CHANGELOG.md index 0f9763a12f5..ea779464dcd 100644 --- a/firebase-crashlytics-ndk/CHANGELOG.md +++ b/firebase-crashlytics-ndk/CHANGELOG.md @@ -1,78 +1,103 @@ # Unreleased -* [changed] Updated `firebase-crashlytics` dependency to 20.0.1 + +- [changed] Updated `firebase-crashlytics` dependency to 20.0.1 # 20.0.0 -* [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. + +- [changed] **Breaking Change**: Updated minSdkVersion to API level 23 or higher. # 19.4.4 -* [changed] Updated `firebase-crashlytics` dependency to v19.4.4 + +- [changed] Updated `firebase-crashlytics` dependency to v19.4.4 # 19.4.3 -* [changed] Updated internal Crashpad version to commit `21a20e`. + +- [changed] Updated internal Crashpad version to commit `21a20e`. # 19.4.2 -* [changed] Updated `firebase-crashlytics` dependency to v19.4.2 + +- [changed] Updated `firebase-crashlytics` dependency to v19.4.2 # 19.4.1 -* [changed] Updated `firebase-crashlytics` dependency to v19.4.1 + +- [changed] Updated `firebase-crashlytics` dependency to v19.4.1 # 19.3.0 -* [changed] Updated `firebase-crashlytics` dependency to v19.3.0 + +- [changed] Updated `firebase-crashlytics` dependency to v19.3.0 # 19.2.1 -* [changed] Updated `firebase-crashlytics` dependency to v19.2.1 + +- [changed] Updated `firebase-crashlytics` dependency to v19.2.1 # 19.2.0 -* [changed] Updated `firebase-crashlytics` dependency to v19.2.0 + +- [changed] Updated `firebase-crashlytics` dependency to v19.2.0 # 19.1.0 -* [changed] Updated `firebase-crashlytics` dependency to v19.1.0 + +- [changed] Updated `firebase-crashlytics` dependency to v19.1.0 # 19.0.3 -* [changed] Updated `firebase-crashlytics` dependency to v19.0.3 + +- [changed] Updated `firebase-crashlytics` dependency to v19.0.3 # 19.0.2 -* [changed] Update libcrashlytics to support 16 kb page sizes. + +- [changed] Update libcrashlytics to support 16 kb page sizes. # 19.0.1 -* [changed] Updated `firebase-crashlytics` dependency to v19.0.1 + +- [changed] Updated `firebase-crashlytics` dependency to v19.0.1 # 19.0.0 -* [changed] Bump internal dependencies + +- [changed] Bump internal dependencies # 18.6.3 -* [changed] Updated `firebase-crashlytics` dependency to v18.6.3 + +- [changed] Updated `firebase-crashlytics` dependency to v18.6.3 # 18.6.0 -* [changed] Updated `firebase-crashlytics` dependency to v18.6.0 + +- [changed] Updated `firebase-crashlytics` dependency to v18.6.0 # 18.5.0 -* [changed] Updated `firebase-crashlytics` dependency to v18.5.0 + +- [changed] Updated `firebase-crashlytics` dependency to v18.5.0 # 18.4.3 -* [changed] Updated `firebase-crashlytics` dependency to v18.4.3 + +- [changed] Updated `firebase-crashlytics` dependency to v18.4.3 # 18.4.2 -* [changed] Updated `firebase-crashlytics` dependency to v18.4.2 + +- [changed] Updated `firebase-crashlytics` dependency to v18.4.2 # 18.4.1 -* [changed] Updated `firebase-crashlytics` dependency to v18.4.1 + +- [changed] Updated `firebase-crashlytics` dependency to v18.4.1 # 18.4.0 -* [changed] Updated `firebase-crashlytics` dependency to v18.4.0 + +- [changed] Updated `firebase-crashlytics` dependency to v18.4.0 # 18.3.7 -* [changed] Updated `firebase-crashlytics` dependency to v18.3.7 + +- [changed] Updated `firebase-crashlytics` dependency to v18.3.7 # 18.3.6 -* [changed] Updated `firebase-crashlytics` dependency to v18.3.6. + +- [changed] Updated `firebase-crashlytics` dependency to v18.3.6. # 18.3.5 -* [fixed] Updated `firebase-common` to its latest version (v20.3.0) to fix an - issue that was causing a nondeterministic crash on startup. -* [changed] Updated `firebase-crashlytics` dependency to v18.3.5. + +- [fixed] Updated `firebase-common` to its latest version (v20.3.0) to fix an issue that was causing + a nondeterministic crash on startup. +- [changed] Updated `firebase-crashlytics` dependency to v18.3.5. # 18.3.4 +