Skip to content

Conversation

dconeybe
Copy link
Contributor

@dconeybe dconeybe commented Aug 1, 2025

This PR fixes the flaky test realtime_stream_listen_backgrounded_disconnects in FirebaseRemoteConfigTest.java. The flake was due to a race condition in the test.

The test called ConfigRealtimeHttpClient.beginRealtimeHttpStream() followed immediately by a call to ConfigRealtimeHttpClient.setIsInBackground(true). It then ensured that HttpURLConnection.disconnect() was called by setIsInBackground(true). The problem is that beginRealtimeHttpStream() sets the HttpURLConnection asynchronously and if setIsInBackground(true) is called before it is set then its disconnect() method is never called.

The flake is easily reproduced by adding a call to Thread.sleep(500) into the asynchronous task in ConfigRealtimeHttpClient.beginRealtimeHttpStream():

.

The fix in this PR simply moves the call to flushScheduledTasks() in the test from after setIsInBackground(true) to before setIsInBackground(true). This ensures that setIsInBackground(true) runs after the HttpURLConnection object is set, fixing the flake.

Copy link
Contributor

github-actions bot commented Aug 1, 2025

Javadoc Changes:
--- /home/runner/diff/original/reports/problems/problems-report.html	2025-08-01 20:14:58.041328324 +0000
+++ /home/runner/diff/modified/reports/problems/problems-report.html	2025-08-01 20:13:01.492734908 +0000
@@ -650,7 +650,7 @@
 <script type="text/javascript">
 function configurationCacheProblems() { return (
 // begin-report-data
-{"diagnostics":[{"locations":[{"pluginId":"firebase-library"}],"problem":[{"text":"The Report.destination property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The Report.destination property has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/dsl/org.gradle.api.reporting.Report.html#org.gradle.api.reporting.Report:destination","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-report-destination-property-has-been-deprecated","displayName":"The Report.destination property has been deprecated."}],"solutions":[[{"text":"Please use the outputLocation property instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-abt/firebase-abt.gradle'","line":31}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('abortOnError = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-abt/firebase-abt.gradle'","line":34}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"pluginId":"firebase-java-library"}],"problem":[{"text":"The Report.destination property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The Report.destination property has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/dsl/org.gradle.api.reporting.Report.html#org.gradle.api.reporting.Report:destination","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-report-destination-property-has-been-deprecated","displayName":"The Report.destination property has been deprecated."}],"solutions":[[{"text":"Please use the outputLocation property instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution/firebase-appdistribution.gradle'","line":31}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution/firebase-appdistribution.gradle'","line":37}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution-api/firebase-appdistribution-api.gradle'","line":30}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution-api/firebase-appdistribution-api.gradle'","line":36}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('ndkVersion = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('includeAndroidResources = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('compileSdk = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('abortOnError = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('sourceCompatibility = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('targetCompatibility = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('testBuildType = <value>') instead."}]]}],"problemsReport":{"totalProblemCount":17,"buildName":"com.google.firebase","requestedTasks":"kotlindoc","documentationLink":"https://docs.gradle.org/8.13/userguide/reporting_problems.html","documentationLinkCaption":"Problem report","summaries":[{"problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"count":4}]}}
+{"diagnostics":[{"locations":[{"pluginId":"com.android.internal.library"}],"problem":[{"text":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"Starting with Gradle 9.0, this property will be ignored by Gradle."}],"contextualLabel":"Declaring an 'is-' property with a Boolean type has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_boolean_properties","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"declaring-an-is-property-with-a-boolean-type","displayName":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"solutions":[[{"text":"Add a method named 'getCrunchPngs' with the same behavior and mark the old one with @Deprecated, or change the type of 'com.android.build.gradle.internal.dsl.BuildType$AgpDecorated.isCrunchPngs' (and the setter) to 'boolean'."}],[{"text":"The combination of method name and return type is not consistent with Java Bean property rules and will become unsupported in future versions of Groovy."}]]},{"locations":[{"pluginId":"com.android.internal.library"}],"problem":[{"text":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"Starting with Gradle 9.0, this property will be ignored by Gradle."}],"contextualLabel":"Declaring an 'is-' property with a Boolean type has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_boolean_properties","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"declaring-an-is-property-with-a-boolean-type","displayName":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"solutions":[[{"text":"Add a method named 'getUseProguard' with the same behavior and mark the old one with @Deprecated, or change the type of 'com.android.build.gradle.internal.dsl.BuildType.isUseProguard' (and the setter) to 'boolean'."}],[{"text":"The combination of method name and return type is not consistent with Java Bean property rules and will become unsupported in future versions of Groovy."}]]},{"locations":[{"pluginId":"firebase-library"}],"problem":[{"text":"The Report.destination property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The Report.destination property has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/dsl/org.gradle.api.reporting.Report.html#org.gradle.api.reporting.Report:destination","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-report-destination-property-has-been-deprecated","displayName":"The Report.destination property has been deprecated."}],"solutions":[[{"text":"Please use the outputLocation property instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-abt/firebase-abt.gradle'","line":31}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('abortOnError = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-abt/firebase-abt.gradle'","line":34}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"pluginId":"firebase-java-library"}],"problem":[{"text":"The Report.destination property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The Report.destination property has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/dsl/org.gradle.api.reporting.Report.html#org.gradle.api.reporting.Report:destination","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-report-destination-property-has-been-deprecated","displayName":"The Report.destination property has been deprecated."}],"solutions":[[{"text":"Please use the outputLocation property instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution/firebase-appdistribution.gradle'","line":31}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution/firebase-appdistribution.gradle'","line":37}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution-api/firebase-appdistribution-api.gradle'","line":30}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution-api/firebase-appdistribution-api.gradle'","line":36}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('ndkVersion = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('includeAndroidResources = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('compileSdk = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('abortOnError = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('sourceCompatibility = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('targetCompatibility = <value>') instead."}]]},{"locations":[{"pluginId":"com.android.internal.application"}],"problem":[{"text":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"Starting with Gradle 9.0, this property will be ignored by Gradle."}],"contextualLabel":"Declaring an 'is-' property with a Boolean type has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_boolean_properties","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"declaring-an-is-property-with-a-boolean-type","displayName":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"solutions":[[{"text":"Add a method named 'getWearAppUnbundled' with the same behavior and mark the old one with @Deprecated, or change the type of 'com.android.build.api.variant.impl.ApplicationVariantImpl.isWearAppUnbundled' (and the setter) to 'boolean'."}],[{"text":"The combination of method name and return type is not consistent with Java Bean property rules and will become unsupported in future versions of Groovy."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('testBuildType = <value>') instead."}]]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-config/src/main/java/com/google/firebase/remoteconfig/RemoteConfigComponent.java"},{"taskPath":":firebase-config:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-config/src/main/java/com/google/firebase/remoteconfig/RemoteConfigComponent.java"},{"taskPath":":firebase-config:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/FirebaseCommonRegistrar.java"},{"taskPath":":firebase-common:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/FirebaseCommonRegistrar.java"},{"taskPath":":firebase-common:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/heartbeatinfo/HeartBeatInfoStorage.java"},{"taskPath":":firebase-common:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/heartbeatinfo/HeartBeatInfoStorage.java uses unchecked or unsafe operations."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/heartbeatinfo/HeartBeatInfoStorage.java uses unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/heartbeatinfo/HeartBeatInfoStorage.java"},{"taskPath":":firebase-common:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-database/src/main/java/com/google/firebase/database/core/utilities/Utilities.java"},{"taskPath":":firebase-database:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use unchecked or unsafe operations."}],"contextualLabel":"Some input files use unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-database/src/main/java/com/google/firebase/database/core/utilities/Utilities.java"},{"taskPath":":firebase-database:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java","line":17,"column":18,"length":10},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java:17: warning: [deprecation] AsyncTask in android.os has been deprecated\nimport android.os.AsyncTask;\n                 ^"}],"contextualLabel":"android.os.AsyncTask in android.os has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java","line":417,"column":21,"length":21},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java:417: warning: [deprecation] isPersistenceEnabled() in FirebaseFirestoreSettings has been deprecated\n        && (settings.isPersistenceEnabled()\n                    ^"}],"contextualLabel":"isPersistenceEnabled() in com.google.firebase.firestore.FirebaseFirestoreSettings has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java","line":499,"column":18,"length":5},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java:499: warning: [deprecation] <TResult>call(Executor,Callable<TResult>) in Tasks has been deprecated\n            Tasks.call(\n                 ^\n  where TResult is a type-variable:\n    TResult extends Object declared in method <TResult>call(Executor,Callable<TResult>)"}],"contextualLabel":"<TResult>call(java.util.concurrent.Executor,java.util.concurrent.Callable<TResult>) in com.google.android.gms.tasks.Tasks has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/ComponentProvider.java","line":62,"column":20,"length":21},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/ComponentProvider.java:62: warning: [deprecation] isPersistenceEnabled() in FirebaseFirestoreSettings has been deprecated\n    return settings.isPersistenceEnabled()\n                   ^"}],"contextualLabel":"isPersistenceEnabled() in com.google.firebase.firestore.FirebaseFirestoreSettings has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/GrpcCallProvider.java","line":239,"column":14,"length":5},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/GrpcCallProvider.java:239: warning: [deprecation] <TResult>call(Executor,Callable<TResult>) in Tasks has been deprecated\n        Tasks.call(\n             ^\n  where TResult is a type-variable:\n    TResult extends Object declared in method <TResult>call(Executor,Callable<TResult>)"}],"contextualLabel":"<TResult>call(java.util.concurrent.Executor,java.util.concurrent.Callable<TResult>) in com.google.android.gms.tasks.Tasks has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirestoreRegistrar.java","line":56,"column":28,"length":9},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirestoreRegistrar.java:56: warning: [deprecation] optional(Class<?>) in Dependency has been deprecated\n            .add(Dependency.optional(FirebaseOptions.class))\n                           ^"}],"contextualLabel":"optional(java.lang.Class<?>) in com.google.firebase.components.Dependency has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/MemoryComponentProvider.java","line":83,"column":65,"length":18},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/MemoryComponentProvider.java:83: warning: [deprecation] getCacheSizeBytes() in FirebaseFirestoreSettings has been deprecated\n          LruGarbageCollector.Params.WithCacheSizeBytes(settings.getCacheSizeBytes());\n                                                                ^"}],"contextualLabel":"getCacheSizeBytes() in com.google.firebase.firestore.FirebaseFirestoreSettings has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/SQLiteComponentProvider.java","line":49,"column":63,"length":18},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/SQLiteComponentProvider.java:49: warning: [deprecation] getCacheSizeBytes() in FirebaseFirestoreSettings has been deprecated\n        LruGarbageCollector.Params.WithCacheSizeBytes(settings.getCacheSizeBytes());\n                                                              ^"}],"contextualLabel":"getCacheSizeBytes() in com.google.firebase.firestore.FirebaseFirestoreSettings has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java","line":44,"column":50,"length":9},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java:44: warning: [deprecation] AsyncTask in android.os has been deprecated\n          ASYNC_THREAD_POOL_MAXIMUM_CONCURRENCY, AsyncTask.THREAD_POOL_EXECUTOR);\n                                                 ^"}],"contextualLabel":"android.os.AsyncTask in android.os has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java","line":44,"column":59,"length":21},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java:44: warning: [deprecation] THREAD_POOL_EXECUTOR in AsyncTask has been deprecated\n          ASYNC_THREAD_POOL_MAXIMUM_CONCURRENCY, AsyncTask.THREAD_POOL_EXECUTOR);\n                                                          ^"}],"contextualLabel":"THREAD_POOL_EXECUTOR in android.os.AsyncTask has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java","line":209,"column":16,"length":12},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java:209: warning: [deprecation] NetworkInfo in android.net has been deprecated\n    android.net.NetworkInfo networkInfo = conn.getActiveNetworkInfo();\n               ^"}],"contextualLabel":"android.net.NetworkInfo in android.net has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java","line":209,"column":47,"length":21},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java:209: warning: [deprecation] getActiveNetworkInfo() in ConnectivityManager has been deprecated\n    android.net.NetworkInfo networkInfo = conn.getActiveNetworkInfo();\n                                              ^"}],"contextualLabel":"getActiveNetworkInfo() in android.net.ConnectivityManager has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java","line":210,"column":46,"length":12},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java:210: warning: [deprecation] isConnected() in NetworkInfo has been deprecated\n    return networkInfo != null && networkInfo.isConnected();\n                                             ^"}],"contextualLabel":"isConnected() in android.net.NetworkInfo has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/FirestoreCallCredentials.java","line":52,"column":15,"length":24},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/FirestoreCallCredentials.java:52: warning: [deprecation] thisUsesUnstableApi() in CallCredentials has been deprecated\n  public void thisUsesUnstableApi() {}\n              ^"}],"contextualLabel":"thisUsesUnstableApi() in io.grpc.CallCredentials has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/model/BasePath.java"},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use unchecked or unsafe operations."}],"contextualLabel":"Some input files use unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/model/BasePath.java"},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/model/BannerMessage.java"},{"taskPath":":firebase-inappmessaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/model/BannerMessage.java"},{"taskPath":":firebase-inappmessaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/DeveloperListenerManager.java"},{"taskPath":":firebase-inappmessaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/DeveloperListenerManager.java uses unchecked or unsafe operations."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/DeveloperListenerManager.java uses unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/DeveloperListenerManager.java"},{"taskPath":":firebase-inappmessaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-installations/src/main/java/com/google/firebase/installations/FirebaseInstallationsException.java"},{"taskPath":":firebase-installations:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-installations/src/main/java/com/google/firebase/installations/FirebaseInstallationsException.java"},{"taskPath":":firebase-installations:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/internal/model/CrashlyticsReport.java","line":246,"column":30,"length":14},{"taskPath":":firebase-crashlytics:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/internal/model/CrashlyticsReport.java:246: warning: [AutoValueMutable] An @AutoValue property that is a primitive array returns the original array, which can therefore be modified by the caller. If this is OK, you can suppress this warning with @SuppressWarnings(\"mutable\"). Otherwise, you should replace the property with an immutable type, perhaps a simple wrapper around the original array.\n      public abstract byte[] getContents();\n                             ^"}],"contextualLabel":"[AutoValueMutable] An @AutoValue property that is a primitive array returns the original array, which can therefore be modified by the caller. If this is OK, you can suppress this warning with @SuppressWarnings(\"mutable\"). Otherwise, you should replace the property with an immutable type, perhaps a simple wrapper around the original array.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-proc-messager","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/internal/common/CommonUtils.java"},{"taskPath":":firebase-crashlytics:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/internal/common/CommonUtils.java"},{"taskPath":":firebase-crashlytics:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-ml-modeldownloader/src/main/java/com/google/firebase/ml/modeldownloader/ModelDownloaderComponent.java"},{"taskPath":":firebase-ml-modeldownloader:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-ml-modeldownloader/src/main/java/com/google/firebase/ml/modeldownloader/ModelDownloaderComponent.java"},{"taskPath":":firebase-ml-modeldownloader:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"taskPath":":encoders:protoc-gen-firebase-encoders:shadowJar"}],"problem":[{"text":"The FileTreeElement.getMode() method has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The FileTreeElement.getMode() method has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#unix_file_permissions_deprecated","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-filetreeelement-getmode-method-has-been-deprecated","displayName":"The FileTreeElement.getMode() method has been deprecated."}],"solutions":[[{"text":"Please use the getPermissions() method instead."}]]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-messaging/src/main/java/com/google/firebase/messaging/SyncTask.java"},{"taskPath":":firebase-messaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-messaging/src/main/java/com/google/firebase/messaging/SyncTask.java"},{"taskPath":":firebase-messaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/NetworkClient.java"},{"taskPath":":appcheck:firebase-appcheck:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/NetworkClient.java uses or overrides a deprecated API."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/NetworkClient.java uses or overrides a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/NetworkClient.java"},{"taskPath":":appcheck:firebase-appcheck:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/StorageHelper.java"},{"taskPath":":appcheck:firebase-appcheck:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/StorageHelper.java uses unchecked or unsafe operations."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/StorageHelper.java uses unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/StorageHelper.java"},{"taskPath":":appcheck:firebase-appcheck:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging-display/src/main/java/com/google/firebase/inappmessaging/display/FirebaseInAppMessagingDisplay.java"},{"taskPath":":firebase-inappmessaging-display:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging-display/src/main/java/com/google/firebase/inappmessaging/display/FirebaseInAppMessagingDisplay.java"},{"taskPath":":firebase-inappmessaging-display:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug/src/main/java/com/google/firebase/appcheck/debug/internal/DebugAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-debug:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug/src/main/java/com/google/firebase/appcheck/debug/internal/DebugAppCheckProvider.java uses or overrides a deprecated API."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug/src/main/java/com/google/firebase/appcheck/debug/internal/DebugAppCheckProvider.java uses or overrides a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug/src/main/java/com/google/firebase/appcheck/debug/internal/DebugAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-debug:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-perf/src/main/java/com/google/firebase/perf/metrics/AppStartTrace.java"},{"taskPath":":firebase-perf:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-perf/src/main/java/com/google/firebase/perf/metrics/AppStartTrace.java"},{"taskPath":":firebase-perf:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug-testing/src/main/java/com/google/firebase/appcheck/debug/testing/DebugAppCheckTestHelper.java"},{"taskPath":":appcheck:firebase-appcheck-debug-testing:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug-testing/src/main/java/com/google/firebase/appcheck/debug/testing/DebugAppCheckTestHelper.java uses unchecked or unsafe operations."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug-testing/src/main/java/com/google/firebase/appcheck/debug/testing/DebugAppCheckTestHelper.java uses unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug-testing/src/main/java/com/google/firebase/appcheck/debug/testing/DebugAppCheckTestHelper.java"},{"taskPath":":appcheck:firebase-appcheck-debug-testing:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-playintegrity/src/main/java/com/google/firebase/appcheck/playintegrity/internal/PlayIntegrityAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-playintegrity:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-playintegrity/src/main/java/com/google/firebase/appcheck/playintegrity/internal/PlayIntegrityAppCheckProvider.java uses or overrides a deprecated API."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-playintegrity/src/main/java/com/google/firebase/appcheck/playintegrity/internal/PlayIntegrityAppCheckProvider.java uses or overrides a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-playintegrity/src/main/java/com/google/firebase/appcheck/playintegrity/internal/PlayIntegrityAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-playintegrity:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-recaptchaenterprise/src/main/java/com/google/firebase/appcheck/recaptchaenterprise/internal/RecaptchaEnterpriseAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-recaptchaenterprise:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-recaptchaenterprise/src/main/java/com/google/firebase/appcheck/recaptchaenterprise/internal/RecaptchaEnterpriseAppCheckProvider.java uses or overrides a deprecated API."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-recaptchaenterprise/src/main/java/com/google/firebase/appcheck/recaptchaenterprise/internal/RecaptchaEnterpriseAppCheckProvider.java uses or overrides a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-recaptchaenterprise/src/main/java/com/google/firebase/appcheck/recaptchaenterprise/internal/RecaptchaEnterpriseAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-recaptchaenterprise:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]}],"problemsReport":{"totalProblemCount":74,"buildName":"com.google.firebase","requestedTasks":"kotlindoc","documentationLink":"https://docs.gradle.org/8.13/userguide/reporting_problems.html","documentationLinkCaption":"Problem report","summaries":[{"problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"count":4}]}}
 // end-report-data
 );}
 </script>

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary of Changes

Hello @dconeybe, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request provides a targeted fix for a specific flaky test in the Firebase Remote Config module. The change ensures the correct sequencing of asynchronous operations within the test, thereby eliminating a timing-dependent failure and improving test reliability.

Highlights

  • Test Fix: I've addressed a known flakiness issue in the realtime_stream_listen_backgrounded_disconnects test within FirebaseRemoteConfigTest.java.
  • Race Condition Resolution: The fix resolves a race condition where the setIsInBackground(true) call was sometimes executed before the HttpURLConnection object was fully initialized by beginRealtimeHttpStream(), preventing the disconnect() method from being called as expected by the test.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments or fill out our survey to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request addresses a flaky test, realtime_stream_listen_backgrounded_disconnects, by fixing a race condition. The change correctly reorders flushScheduledTasks() and setIsInBackground(true) to ensure an asynchronous operation completes before its result is used. My review confirms the fix is correct. I've added one suggestion to include a comment explaining the necessity of this ordering to improve code maintainability and prevent future regressions.

@google-oss-bot
Copy link
Contributor

Coverage Report 1

Affected Products

  • firebase-config

    Overall coverage changed from ? (a00e2be) to 84.53% (c3768bf) by ?.

    34 individual files with coverage change

    FilenameBase (a00e2be)Merge (c3768bf)Diff
    AutoValue_ConfigUpdate.java?29.41%?
    Code.java?0.00%?
    ConfigAutoFetch.java?87.90%?
    ConfigCacheClient.java?93.33%?
    ConfigContainer.java?94.29%?
    ConfigFetchHandler.java?92.94%?
    ConfigFetchHttpClient.java?86.27%?
    ConfigGetParameterHandler.java?96.45%?
    ConfigRealtimeHandler.java?41.38%?
    ConfigRealtimeHttpClient.java?72.81%?
    ConfigSharedPrefsClient.java?83.83%?
    ConfigStorageClient.java?100.00%?
    ConfigUpdate.java?100.00%?
    ConfigUpdateListener.java?0.00%?
    ConfigUpdateListenerRegistration.java?0.00%?
    CustomSignals.java?100.00%?
    DefaultsXmlParser.java?0.00%?
    FirebaseRemoteConfig.java?89.76%?
    FirebaseRemoteConfigClientException.java?75.00%?
    FirebaseRemoteConfigException.java?95.65%?
    FirebaseRemoteConfigFetchThrottledException.java?100.00%?
    FirebaseRemoteConfigInfo.java?0.00%?
    FirebaseRemoteConfigInfoImpl.java?100.00%?
    FirebaseRemoteConfigServerException.java?68.42%?
    FirebaseRemoteConfigSettings.java?61.54%?
    FirebaseRemoteConfigValue.java?0.00%?
    FirebaseRemoteConfigValueImpl.java?84.62%?
    Personalization.java?91.43%?
    RemoteConfig.kt?47.37%?
    RemoteConfigComponent.java?90.70%?
    RemoteConfigConstants.java?0.00%?
    RemoteConfigRegistrar.java?100.00%?
    RolloutsStateFactory.java?95.24%?
    RolloutsStateSubscriptionsHandler.java?100.00%?

Test Logs

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/BgIs9NEC74.html

@google-oss-bot
Copy link
Contributor

@VinayGuthal VinayGuthal self-requested a review August 1, 2025 20:37
@google-oss-bot
Copy link
Contributor

Startup Time Report 1

Note: Layout is sometimes suboptimal due to limited formatting support on GitHub. Please check this report on GCS.

Notes

Startup Times

  • fire-rc

    DeviceStatisticsDistributions
    oriole-32
    Percentilea00e2bec3768bfDiffSignificant (?)
    p10147 ±131 μs198 ±174 μs+51.0 μs (+34.7%)NO
    p25165 ±130 μs207 ±179 μs+42.5 μs (+25.8%)NO
    p50201 ±135 μs235 ±186 μs+33.3 μs (+16.5%)NO
    p75253 ±148 μs266 ±195 μs+13.2 μs (+5.2%)NO
    p90322 ±157 μs340 ±217 μs+18.1 μs (+5.6%)NO

    20 test runs in comparison
    CommitTest Runs
    a00e2be
    • 2025-08-01_18:25:52.822020_DKIh
    • 2025-08-01_18:25:52.822056_PdzX
    • 2025-08-01_18:25:52.822066_tjRA
    • 2025-08-01_18:25:52.822074_RUIn
    • 2025-08-01_18:25:52.822081_AnnG
    • 2025-08-01_18:25:52.822088_DnMQ
    • 2025-08-01_18:25:52.822095_CKeM
    • 2025-08-01_18:25:52.822102_XUmw
    • 2025-08-01_18:25:52.822108_NbBa
    • 2025-08-01_18:25:52.822114_rfjk
    c3768bf
    • 2025-08-01_20:29:13.411011_Uzdn
    • 2025-08-01_20:29:13.411044_TxsT
    • 2025-08-01_20:29:13.411056_bRdU
    • 2025-08-01_20:29:13.411065_Wgkp
    • 2025-08-01_20:29:13.411072_xlFr
    • 2025-08-01_20:29:13.411080_QiqY
    • 2025-08-01_20:29:13.411088_vKwQ
    • 2025-08-01_20:29:13.411096_OJiL
    • 2025-08-01_20:29:13.411103_rrkU
    • 2025-08-01_20:29:13.411109_wxoW
    redfin-30
    Percentilea00e2bec3768bfDiffSignificant (?)
    p10401 ±473 μs460 ±600 μs+59.1 μs (+14.7%)NO
    p25473 ±568 μs534 ±708 μs+61.8 μs (+13.1%)NO
    p50601 ±742 μs657 ±826 μs+56.0 μs (+9.3%)NO
    p75754 ±906 μs812 ±971 μs+58.0 μs (+7.7%)NO
    p901.05 ±1 ms1.09 ±1 ms+48.3 μs (+4.6%)NO

    20 test runs in comparison
    CommitTest Runs
    a00e2be
    • 2025-08-01_18:25:52.822020_DKIh
    • 2025-08-01_18:25:52.822056_PdzX
    • 2025-08-01_18:25:52.822066_tjRA
    • 2025-08-01_18:25:52.822074_RUIn
    • 2025-08-01_18:25:52.822081_AnnG
    • 2025-08-01_18:25:52.822088_DnMQ
    • 2025-08-01_18:25:52.822095_CKeM
    • 2025-08-01_18:25:52.822102_XUmw
    • 2025-08-01_18:25:52.822108_NbBa
    • 2025-08-01_18:25:52.822114_rfjk
    c3768bf
    • 2025-08-01_20:29:13.411011_Uzdn
    • 2025-08-01_20:29:13.411044_TxsT
    • 2025-08-01_20:29:13.411056_bRdU
    • 2025-08-01_20:29:13.411065_Wgkp
    • 2025-08-01_20:29:13.411072_xlFr
    • 2025-08-01_20:29:13.411080_QiqY
    • 2025-08-01_20:29:13.411088_vKwQ
    • 2025-08-01_20:29:13.411096_OJiL
    • 2025-08-01_20:29:13.411103_rrkU
    • 2025-08-01_20:29:13.411109_wxoW
  • timeToInitialDisplay

    DeviceStatisticsDistributions
    oriole-32
    Percentilea00e2bec3768bfDiffSignificant (?)
    p10202 ±2 ms204 ±3 ms+2.41 ms (+1.2%)NO
    p25207 ±2 ms210 ±3 ms+2.63 ms (+1.3%)NO
    p50214 ±3 ms217 ±3 ms+2.69 ms (+1.3%)NO
    p75221 ±2 ms224 ±4 ms+3.32 ms (+1.5%)NO
    p90228 ±3 ms234 ±5 ms+5.98 ms (+2.6%)NO

    20 test runs in comparison
    CommitTest Runs
    a00e2be
    • 2025-08-01_18:25:52.822020_DKIh
    • 2025-08-01_18:25:52.822056_PdzX
    • 2025-08-01_18:25:52.822066_tjRA
    • 2025-08-01_18:25:52.822074_RUIn
    • 2025-08-01_18:25:52.822081_AnnG
    • 2025-08-01_18:25:52.822088_DnMQ
    • 2025-08-01_18:25:52.822095_CKeM
    • 2025-08-01_18:25:52.822102_XUmw
    • 2025-08-01_18:25:52.822108_NbBa
    • 2025-08-01_18:25:52.822114_rfjk
    c3768bf
    • 2025-08-01_20:29:13.411011_Uzdn
    • 2025-08-01_20:29:13.411044_TxsT
    • 2025-08-01_20:29:13.411056_bRdU
    • 2025-08-01_20:29:13.411065_Wgkp
    • 2025-08-01_20:29:13.411072_xlFr
    • 2025-08-01_20:29:13.411080_QiqY
    • 2025-08-01_20:29:13.411088_vKwQ
    • 2025-08-01_20:29:13.411096_OJiL
    • 2025-08-01_20:29:13.411103_rrkU
    • 2025-08-01_20:29:13.411109_wxoW
    redfin-30
    Percentilea00e2bec3768bfDiffSignificant (?)
    p10232 ±3 ms256 ±3 ms+23.9 ms (+10.3%)YES
    p25238 ±3 ms262 ±2 ms+24.4 ms (+10.2%)YES
    p50245 ±3 ms270 ±3 ms+24.4 ms (+9.9%)YES
    p75252 ±3 ms279 ±4 ms+27.2 ms (+10.8%)YES
    p90262 ±5 ms296 ±9 ms+34.0 ms (+13.0%)MAYBE

    20 test runs in comparison
    CommitTest Runs
    a00e2be
    • 2025-08-01_18:25:52.822020_DKIh
    • 2025-08-01_18:25:52.822056_PdzX
    • 2025-08-01_18:25:52.822066_tjRA
    • 2025-08-01_18:25:52.822074_RUIn
    • 2025-08-01_18:25:52.822081_AnnG
    • 2025-08-01_18:25:52.822088_DnMQ
    • 2025-08-01_18:25:52.822095_CKeM
    • 2025-08-01_18:25:52.822102_XUmw
    • 2025-08-01_18:25:52.822108_NbBa
    • 2025-08-01_18:25:52.822114_rfjk
    c3768bf
    • 2025-08-01_20:29:13.411011_Uzdn
    • 2025-08-01_20:29:13.411044_TxsT
    • 2025-08-01_20:29:13.411056_bRdU
    • 2025-08-01_20:29:13.411065_Wgkp
    • 2025-08-01_20:29:13.411072_xlFr
    • 2025-08-01_20:29:13.411080_QiqY
    • 2025-08-01_20:29:13.411088_vKwQ
    • 2025-08-01_20:29:13.411096_OJiL
    • 2025-08-01_20:29:13.411103_rrkU
    • 2025-08-01_20:29:13.411109_wxoW

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/ly17zMqB70/index.html

@dconeybe dconeybe merged commit fd4b83e into main Aug 1, 2025
38 checks passed
@dconeybe dconeybe deleted the dconeybe/remoteconfig/realtime_stream_listen_backgrounded_disconnects_flake_fix branch August 1, 2025 20:49
@firebase firebase locked and limited conversation to collaborators Sep 1, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants