diff --git a/firebase-dataconnect/CHANGELOG.md b/firebase-dataconnect/CHANGELOG.md index 00557cdb68b..5cfcaa311fc 100644 --- a/firebase-dataconnect/CHANGELOG.md +++ b/firebase-dataconnect/CHANGELOG.md @@ -13,12 +13,13 @@ must implement equals() to be a _logical_ comparsion, rather than just checking for _referencial_ equality using the `===` operator. ([#6424](https://github.com/firebase/firebase-android-sdk/pull/6424)) -* [feature] FirebaseDataConnectExperimental annotation added, and some +* [feature] ExperimentalFirebaseDataConnect annotation added, and some APIs have been annotated with it, requiring applications that make use of these experimental APIs to opt-in using - `@OptIn(FirebaseDataConnectExperimental::class)` to suppress warnings or + `@OptIn(ExperimentalFirebaseDataConnect::class)` to suppress warnings or errors related to using these experimental APIs. - ([#6424](https://github.com/firebase/firebase-android-sdk/pull/6424)) + ([#6424](https://github.com/firebase/firebase-android-sdk/pull/6424)) and + ([#6433](https://github.com/firebase/firebase-android-sdk/pull/6433)) # 16.0.0-beta02 * [changed] Updated protobuf dependency to `3.25.5` to fix diff --git a/firebase-dataconnect/api.txt b/firebase-dataconnect/api.txt index d30cfefd13a..c00a753379a 100644 --- a/firebase-dataconnect/api.txt +++ b/firebase-dataconnect/api.txt @@ -54,6 +54,9 @@ package com.google.firebase.dataconnect { method @NonNull public static com.google.firebase.dataconnect.DataConnectSettings copy(@NonNull com.google.firebase.dataconnect.DataConnectSettings, @NonNull String host = host, boolean sslEnabled = sslEnabled); } + @kotlin.RequiresOptIn(level=kotlin.RequiresOptIn.Level.WARNING, message="This declaration is \"experimental\": its signature and/or semantics " + "may change in backwards-incompatible ways at any time without notice, " + "up to and including complete removal. " + "If you have a use case that relies on this declaration please open a " + "\"feature request\" issue at https://github.com/firebase/firebase-android-sdk " + "requesting this declaration\'s promotion from \"experimental\" to \"fully-supported\".") @kotlin.annotation.MustBeDocumented @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention.BINARY) public @interface ExperimentalFirebaseDataConnect { + } + public interface FirebaseDataConnect extends java.lang.AutoCloseable { method public void close(); method public boolean equals(@Nullable Object other); @@ -106,9 +109,6 @@ package com.google.firebase.dataconnect { property @Nullable public abstract kotlinx.serialization.modules.SerializersModule variablesSerializersModule; } - @kotlin.RequiresOptIn(level=kotlin.RequiresOptIn.Level.WARNING, message="This declaration is \"experimental\": its signature and/or semantics " + "may change in backwards-incompatible ways at any time without notice, " + "up to and including complete removal. " + "If you have a use case that relies on this declaration please open a " + "\"feature request\" issue at https://github.com/firebase/firebase-android-sdk " + "requesting this declaration\'s promotion from \"experimental\" to \"fully-supported\".") @kotlin.annotation.MustBeDocumented @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention.BINARY) public @interface FirebaseDataConnectExperimental { - } - public final class FirebaseDataConnectKt { method @NonNull public static com.google.firebase.dataconnect.FirebaseDataConnect getInstance(@NonNull com.google.firebase.dataconnect.FirebaseDataConnect.Companion, @NonNull com.google.firebase.FirebaseApp app, @NonNull com.google.firebase.dataconnect.ConnectorConfig config, @NonNull com.google.firebase.dataconnect.DataConnectSettings settings = com.google.firebase.dataconnect.DataConnectSettings()); method @NonNull public static com.google.firebase.dataconnect.FirebaseDataConnect getInstance(@NonNull com.google.firebase.dataconnect.FirebaseDataConnect.Companion, @NonNull com.google.firebase.dataconnect.ConnectorConfig config, @NonNull com.google.firebase.dataconnect.DataConnectSettings settings = com.google.firebase.dataconnect.DataConnectSettings()); @@ -125,10 +125,10 @@ package com.google.firebase.dataconnect { } public interface MutationRef extends com.google.firebase.dataconnect.OperationRef { - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.MutationRef copy(@NonNull String operationName, @Nullable Variables variables, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @NonNull com.google.firebase.dataconnect.FirebaseDataConnect.CallerSdkType callerSdkType, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.MutationRef copy(@NonNull String operationName, @Nullable Variables variables, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @NonNull com.google.firebase.dataconnect.FirebaseDataConnect.CallerSdkType callerSdkType, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule); method @Nullable public suspend Object execute(@NonNull kotlin.coroutines.Continuation>); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.MutationRef withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.MutationRef withVariablesSerializer(@Nullable NewVariables variables, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.MutationRef withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.MutationRef withVariablesSerializer(@Nullable NewVariables variables, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule); } public interface MutationResult extends com.google.firebase.dataconnect.OperationResult { @@ -137,7 +137,7 @@ package com.google.firebase.dataconnect { } public interface OperationRef { - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.OperationRef copy(@NonNull String operationName = this.operationName, @Nullable Variables variables = this.variables, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer = this.dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer = this.variablesSerializer, @NonNull com.google.firebase.dataconnect.FirebaseDataConnect.CallerSdkType callerSdkType = this.callerSdkType, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule = this.dataSerializersModule, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule = this.variablesSerializersModule); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.OperationRef copy(@NonNull String operationName = this.operationName, @Nullable Variables variables = this.variables, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer = this.dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer = this.variablesSerializer, @NonNull com.google.firebase.dataconnect.FirebaseDataConnect.CallerSdkType callerSdkType = this.callerSdkType, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule = this.dataSerializersModule, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule = this.variablesSerializersModule); method public boolean equals(@Nullable Object other); method @Nullable public suspend Object execute(@NonNull kotlin.coroutines.Continuation>); method @NonNull public com.google.firebase.dataconnect.FirebaseDataConnect.CallerSdkType getCallerSdkType(); @@ -150,8 +150,8 @@ package com.google.firebase.dataconnect { method @Nullable public kotlinx.serialization.modules.SerializersModule getVariablesSerializersModule(); method public int hashCode(); method @NonNull public String toString(); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.OperationRef withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule = this.dataSerializersModule); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.OperationRef withVariablesSerializer(@Nullable NewVariables variables, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule = this.variablesSerializersModule); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.OperationRef withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule = this.dataSerializersModule); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.OperationRef withVariablesSerializer(@Nullable NewVariables variables, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule = this.variablesSerializersModule); property @NonNull public abstract com.google.firebase.dataconnect.FirebaseDataConnect.CallerSdkType callerSdkType; property @NonNull public abstract com.google.firebase.dataconnect.FirebaseDataConnect dataConnect; property @NonNull public abstract kotlinx.serialization.DeserializationStrategy dataDeserializer; @@ -200,11 +200,11 @@ package com.google.firebase.dataconnect { } public interface QueryRef extends com.google.firebase.dataconnect.OperationRef { - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.QueryRef copy(@NonNull String operationName, @Nullable Variables variables, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @NonNull com.google.firebase.dataconnect.FirebaseDataConnect.CallerSdkType callerSdkType, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.QueryRef copy(@NonNull String operationName, @Nullable Variables variables, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @NonNull com.google.firebase.dataconnect.FirebaseDataConnect.CallerSdkType callerSdkType, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule); method @Nullable public suspend Object execute(@NonNull kotlin.coroutines.Continuation>); method @NonNull public com.google.firebase.dataconnect.QuerySubscription subscribe(); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.QueryRef withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.QueryRef withVariablesSerializer(@Nullable NewVariables variables, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.QueryRef withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @Nullable kotlinx.serialization.modules.SerializersModule dataSerializersModule); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.QueryRef withVariablesSerializer(@Nullable NewVariables variables, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer, @Nullable kotlinx.serialization.modules.SerializersModule variablesSerializersModule); } public interface QueryResult extends com.google.firebase.dataconnect.OperationResult { @@ -237,26 +237,26 @@ package com.google.firebase.dataconnect { package com.google.firebase.dataconnect.generated { public interface GeneratedConnector> { - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public T copy(@NonNull com.google.firebase.dataconnect.FirebaseDataConnect dataConnect = this.dataConnect); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public T copy(@NonNull com.google.firebase.dataconnect.FirebaseDataConnect dataConnect = this.dataConnect); method public boolean equals(@Nullable Object other); method @NonNull public com.google.firebase.dataconnect.FirebaseDataConnect getDataConnect(); method public int hashCode(); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public java.util.List> mutations(); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public java.util.List> operations(); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public java.util.List> queries(); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public java.util.List> mutations(); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public java.util.List> operations(); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public java.util.List> queries(); method @NonNull public String toString(); property @NonNull public abstract com.google.firebase.dataconnect.FirebaseDataConnect dataConnect; } public interface GeneratedMutation, Data, Variables> extends com.google.firebase.dataconnect.generated.GeneratedOperation { - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.generated.GeneratedMutation copy(@NonNull Connector connector, @NonNull String operationName, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.generated.GeneratedMutation copy(@NonNull Connector connector, @NonNull String operationName, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); method @NonNull public default com.google.firebase.dataconnect.MutationRef ref(@Nullable Variables variables); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.generated.GeneratedMutation withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.generated.GeneratedMutation withVariablesSerializer(@NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.generated.GeneratedMutation withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.generated.GeneratedMutation withVariablesSerializer(@NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); } public interface GeneratedOperation, Data, Variables> { - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.generated.GeneratedOperation copy(@NonNull Connector connector = this.connector, @NonNull String operationName = this.operationName, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer = this.dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer = this.variablesSerializer); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.generated.GeneratedOperation copy(@NonNull Connector connector = this.connector, @NonNull String operationName = this.operationName, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer = this.dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer = this.variablesSerializer); method public boolean equals(@Nullable Object other); method @NonNull public Connector getConnector(); method @NonNull public kotlinx.serialization.DeserializationStrategy getDataDeserializer(); @@ -265,8 +265,8 @@ package com.google.firebase.dataconnect.generated { method public int hashCode(); method @NonNull public default com.google.firebase.dataconnect.OperationRef ref(@Nullable Variables variables); method @NonNull public String toString(); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.generated.GeneratedOperation withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.generated.GeneratedOperation withVariablesSerializer(@NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.generated.GeneratedOperation withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.generated.GeneratedOperation withVariablesSerializer(@NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); property @NonNull public abstract Connector connector; property @NonNull public abstract kotlinx.serialization.DeserializationStrategy dataDeserializer; property @NonNull public abstract String operationName; @@ -274,10 +274,10 @@ package com.google.firebase.dataconnect.generated { } public interface GeneratedQuery, Data, Variables> extends com.google.firebase.dataconnect.generated.GeneratedOperation { - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.generated.GeneratedQuery copy(@NonNull Connector connector, @NonNull String operationName, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.generated.GeneratedQuery copy(@NonNull Connector connector, @NonNull String operationName, @NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer, @NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); method @NonNull public default com.google.firebase.dataconnect.QueryRef ref(@Nullable Variables variables); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.generated.GeneratedQuery withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer); - method @NonNull @com.google.firebase.dataconnect.FirebaseDataConnectExperimental public com.google.firebase.dataconnect.generated.GeneratedQuery withVariablesSerializer(@NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.generated.GeneratedQuery withDataDeserializer(@NonNull kotlinx.serialization.DeserializationStrategy dataDeserializer); + method @NonNull @com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect public com.google.firebase.dataconnect.generated.GeneratedQuery withVariablesSerializer(@NonNull kotlinx.serialization.SerializationStrategy variablesSerializer); } } diff --git a/firebase-dataconnect/connectors/src/androidTest/kotlin/com/google/firebase/dataconnect/connectors/demo/DateScalarIntegrationTest.kt b/firebase-dataconnect/connectors/src/androidTest/kotlin/com/google/firebase/dataconnect/connectors/demo/DateScalarIntegrationTest.kt index 3778fe2ca7c..eda897697f6 100644 --- a/firebase-dataconnect/connectors/src/androidTest/kotlin/com/google/firebase/dataconnect/connectors/demo/DateScalarIntegrationTest.kt +++ b/firebase-dataconnect/connectors/src/androidTest/kotlin/com/google/firebase/dataconnect/connectors/demo/DateScalarIntegrationTest.kt @@ -14,12 +14,12 @@ * limitations under the License. */ -@file:OptIn(FirebaseDataConnectExperimental::class) +@file:OptIn(ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect.connectors.demo import com.google.firebase.dataconnect.DataConnectException -import com.google.firebase.dataconnect.FirebaseDataConnectExperimental +import com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect import com.google.firebase.dataconnect.connectors.demo.testutil.DemoConnectorIntegrationTestBase import com.google.firebase.dataconnect.generated.GeneratedMutation import com.google.firebase.dataconnect.generated.GeneratedQuery diff --git a/firebase-dataconnect/connectors/src/androidTest/kotlin/com/google/firebase/dataconnect/connectors/demo/TimestampScalarIntegrationTest.kt b/firebase-dataconnect/connectors/src/androidTest/kotlin/com/google/firebase/dataconnect/connectors/demo/TimestampScalarIntegrationTest.kt index 794f8d7e850..0cb9e87eac2 100644 --- a/firebase-dataconnect/connectors/src/androidTest/kotlin/com/google/firebase/dataconnect/connectors/demo/TimestampScalarIntegrationTest.kt +++ b/firebase-dataconnect/connectors/src/androidTest/kotlin/com/google/firebase/dataconnect/connectors/demo/TimestampScalarIntegrationTest.kt @@ -14,12 +14,12 @@ * limitations under the License. */ -@file:OptIn(FirebaseDataConnectExperimental::class) +@file:OptIn(ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect.connectors.demo import com.google.firebase.Timestamp -import com.google.firebase.dataconnect.FirebaseDataConnectExperimental +import com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect import com.google.firebase.dataconnect.MutationResult import com.google.firebase.dataconnect.OperationResult import com.google.firebase.dataconnect.connectors.demo.testutil.DemoConnectorIntegrationTestBase diff --git a/firebase-dataconnect/connectors/src/test/kotlin/com/google/firebase/dataconnect/connectors/GeneratedConnectorUnitTest.kt b/firebase-dataconnect/connectors/src/test/kotlin/com/google/firebase/dataconnect/connectors/GeneratedConnectorUnitTest.kt index ccebfa6b294..ed198fdff10 100644 --- a/firebase-dataconnect/connectors/src/test/kotlin/com/google/firebase/dataconnect/connectors/GeneratedConnectorUnitTest.kt +++ b/firebase-dataconnect/connectors/src/test/kotlin/com/google/firebase/dataconnect/connectors/GeneratedConnectorUnitTest.kt @@ -14,15 +14,15 @@ * limitations under the License. */ -@file:OptIn(ExperimentalKotest::class, FirebaseDataConnectExperimental::class) +@file:OptIn(ExperimentalKotest::class, ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect.connectors import androidx.test.ext.junit.runners.AndroidJUnit4 import com.google.firebase.dataconnect.ConnectorConfig import com.google.firebase.dataconnect.DataConnectSettings +import com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect import com.google.firebase.dataconnect.FirebaseDataConnect -import com.google.firebase.dataconnect.FirebaseDataConnectExperimental import com.google.firebase.dataconnect.connectors.demo.DemoConnector import com.google.firebase.dataconnect.connectors.demo.getInstance import com.google.firebase.dataconnect.generated.GeneratedConnector diff --git a/firebase-dataconnect/connectors/src/test/kotlin/com/google/firebase/dataconnect/connectors/GeneratedOperationUnitTest.kt b/firebase-dataconnect/connectors/src/test/kotlin/com/google/firebase/dataconnect/connectors/GeneratedOperationUnitTest.kt index c53832bfce5..c02422c173c 100644 --- a/firebase-dataconnect/connectors/src/test/kotlin/com/google/firebase/dataconnect/connectors/GeneratedOperationUnitTest.kt +++ b/firebase-dataconnect/connectors/src/test/kotlin/com/google/firebase/dataconnect/connectors/GeneratedOperationUnitTest.kt @@ -14,12 +14,12 @@ * limitations under the License. */ -@file:OptIn(ExperimentalKotest::class, FirebaseDataConnectExperimental::class) +@file:OptIn(ExperimentalKotest::class, ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect.connectors import androidx.test.ext.junit.runners.AndroidJUnit4 -import com.google.firebase.dataconnect.FirebaseDataConnectExperimental +import com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect import com.google.firebase.dataconnect.connectors.demo.DemoConnector import com.google.firebase.dataconnect.connectors.demo.getInstance import com.google.firebase.dataconnect.generated.GeneratedConnector diff --git a/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/DataConnectUntypedDataIntegrationTest.kt b/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/DataConnectUntypedDataIntegrationTest.kt index 2ede1df8d95..620e160415e 100644 --- a/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/DataConnectUntypedDataIntegrationTest.kt +++ b/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/DataConnectUntypedDataIntegrationTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -@file:OptIn(FirebaseDataConnectExperimental::class) +@file:OptIn(ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect diff --git a/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/GrpcMetadataIntegrationTest.kt b/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/GrpcMetadataIntegrationTest.kt index 1f70660db18..6ad17b40106 100644 --- a/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/GrpcMetadataIntegrationTest.kt +++ b/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/GrpcMetadataIntegrationTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -@file:OptIn(FirebaseDataConnectExperimental::class) +@file:OptIn(ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect diff --git a/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/QuerySubscriptionIntegrationTest.kt b/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/QuerySubscriptionIntegrationTest.kt index 69a41c5e86e..908382ccdcc 100644 --- a/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/QuerySubscriptionIntegrationTest.kt +++ b/firebase-dataconnect/src/androidTest/kotlin/com/google/firebase/dataconnect/QuerySubscriptionIntegrationTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -@file:OptIn(FlowPreview::class, FirebaseDataConnectExperimental::class) +@file:OptIn(FlowPreview::class, ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/FirebaseDataConnectExperimental.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/ExperimentalFirebaseDataConnect.kt similarity index 93% rename from firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/FirebaseDataConnectExperimental.kt rename to firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/ExperimentalFirebaseDataConnect.kt index ea7d582f0e2..4529bee9d0c 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/FirebaseDataConnectExperimental.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/ExperimentalFirebaseDataConnect.kt @@ -19,7 +19,7 @@ package com.google.firebase.dataconnect /** * Marks declarations in the Firebase Data Connect SDK that are **experimental**. * - * A declaration annotated with [FirebaseDataConnectExperimental] is "experimental": its signature + * A declaration annotated with [ExperimentalFirebaseDataConnect] is "experimental": its signature * and/or semantics may change in backwards-incompatible ways at any time without notice, up to and * including complete removal. If you have a use case that relies on such a declaration please open * a "feature request" issue at https://github.com/firebase/firebase-android-sdk requesting the @@ -37,4 +37,4 @@ package com.google.firebase.dataconnect "\"feature request\" issue at https://github.com/firebase/firebase-android-sdk " + "requesting this declaration's promotion from \"experimental\" to \"fully-supported\"." ) -public annotation class FirebaseDataConnectExperimental +public annotation class ExperimentalFirebaseDataConnect diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/MutationRef.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/MutationRef.kt index ebb761ddf0e..ad054e021ee 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/MutationRef.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/MutationRef.kt @@ -36,7 +36,7 @@ import kotlinx.serialization.modules.SerializersModule public interface MutationRef : OperationRef { override suspend fun execute(): MutationResult - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun copy( operationName: String, variables: Variables, @@ -47,14 +47,14 @@ public interface MutationRef : OperationRef { variablesSerializersModule: SerializersModule?, ): MutationRef - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun withVariablesSerializer( variables: NewVariables, variablesSerializer: SerializationStrategy, variablesSerializersModule: SerializersModule?, ): MutationRef - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun withDataDeserializer( dataDeserializer: DeserializationStrategy, dataSerializersModule: SerializersModule?, diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/OperationRef.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/OperationRef.kt index 3669aa773b4..b464feabc0e 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/OperationRef.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/OperationRef.kt @@ -184,7 +184,7 @@ public interface OperationRef { * @see withDataDeserializer * @see withVariablesSerializer */ - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect public fun copy( operationName: String = this.operationName, variables: Variables = this.variables, @@ -202,7 +202,7 @@ public interface OperationRef { * @see copy * @see withDataDeserializer */ - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect public fun withVariablesSerializer( variables: NewVariables, variablesSerializer: SerializationStrategy, @@ -216,7 +216,7 @@ public interface OperationRef { * @see copy * @see withVariablesSerializer */ - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect public fun withDataDeserializer( dataDeserializer: DeserializationStrategy, dataSerializersModule: SerializersModule? = this.dataSerializersModule, diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/QueryRef.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/QueryRef.kt index c038bcd7ffe..da7486652f4 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/QueryRef.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/QueryRef.kt @@ -47,7 +47,7 @@ public interface QueryRef : OperationRef { */ public fun subscribe(): QuerySubscription - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun copy( operationName: String, variables: Variables, @@ -58,14 +58,14 @@ public interface QueryRef : OperationRef { variablesSerializersModule: SerializersModule?, ): QueryRef - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun withVariablesSerializer( variables: NewVariables, variablesSerializer: SerializationStrategy, variablesSerializersModule: SerializersModule?, ): QueryRef - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun withDataDeserializer( dataDeserializer: DeserializationStrategy, dataSerializersModule: SerializersModule?, diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/MutationRefImpl.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/MutationRefImpl.kt index 56734a11486..edd978a2ec9 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/MutationRefImpl.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/MutationRefImpl.kt @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -@file:OptIn(com.google.firebase.dataconnect.FirebaseDataConnectExperimental::class) +@file:OptIn(com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect.core diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/OperationRefImpl.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/OperationRefImpl.kt index 398e8c645e5..9db42bc121d 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/OperationRefImpl.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/OperationRefImpl.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -@file:OptIn(com.google.firebase.dataconnect.FirebaseDataConnectExperimental::class) +@file:OptIn(com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect.core diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/QueryRefImpl.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/QueryRefImpl.kt index 11c5f4c8e69..53e247e3d14 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/QueryRefImpl.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/QueryRefImpl.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -@file:OptIn(com.google.firebase.dataconnect.FirebaseDataConnectExperimental::class) +@file:OptIn(com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect.core diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/QuerySubscriptionImpl.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/QuerySubscriptionImpl.kt index 6655433f4da..ceeb861cab8 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/QuerySubscriptionImpl.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/core/QuerySubscriptionImpl.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -@file:OptIn(com.google.firebase.dataconnect.FirebaseDataConnectExperimental::class) +@file:OptIn(com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect::class) package com.google.firebase.dataconnect.core diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedConnector.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedConnector.kt index c0d62f5c5ed..f3ba0285117 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedConnector.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedConnector.kt @@ -16,8 +16,8 @@ package com.google.firebase.dataconnect.generated +import com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect import com.google.firebase.dataconnect.FirebaseDataConnect -import com.google.firebase.dataconnect.FirebaseDataConnectExperimental /** * The interface to be implemented by the over-arching "connector" classes that are generated by the @@ -48,7 +48,7 @@ public interface GeneratedConnector> { * This function is essentially the same as the `copy()` method that is generated by the Kotlin * compiler for `data class` classes. */ - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect public fun copy( dataConnect: FirebaseDataConnect = this.dataConnect, ): T @@ -63,7 +63,7 @@ public interface GeneratedConnector> { * @see queries * @see mutations */ - @FirebaseDataConnectExperimental public fun operations(): List> + @ExperimentalFirebaseDataConnect public fun operations(): List> /** * Returns a list containing all [GeneratedQuery] objects defined as properties in this object in @@ -72,7 +72,7 @@ public interface GeneratedConnector> { * @see operations * @see mutations */ - @FirebaseDataConnectExperimental public fun queries(): List> + @ExperimentalFirebaseDataConnect public fun queries(): List> /** * Returns a list containing all [GeneratedMutation] objects defined as properties in this object @@ -81,7 +81,7 @@ public interface GeneratedConnector> { * @see operations * @see queries */ - @FirebaseDataConnectExperimental public fun mutations(): List> + @ExperimentalFirebaseDataConnect public fun mutations(): List> /** * Compares this object with another object for equality. diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedMutation.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedMutation.kt index 8a7e9fa1e75..377563afab6 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedMutation.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedMutation.kt @@ -16,8 +16,8 @@ package com.google.firebase.dataconnect.generated +import com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect import com.google.firebase.dataconnect.FirebaseDataConnect -import com.google.firebase.dataconnect.FirebaseDataConnectExperimental import com.google.firebase.dataconnect.MutationRef import kotlinx.serialization.DeserializationStrategy import kotlinx.serialization.SerializationStrategy @@ -51,7 +51,7 @@ public interface GeneratedMutation, Da callerSdkType = FirebaseDataConnect.CallerSdkType.Generated } - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun copy( connector: Connector, operationName: String, @@ -59,12 +59,12 @@ public interface GeneratedMutation, Da variablesSerializer: SerializationStrategy, ): GeneratedMutation - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun withVariablesSerializer( variablesSerializer: SerializationStrategy, ): GeneratedMutation - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun withDataDeserializer( dataDeserializer: DeserializationStrategy, ): GeneratedMutation diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedOperation.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedOperation.kt index b0f0a7ece31..90b3082fbea 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedOperation.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedOperation.kt @@ -16,7 +16,7 @@ package com.google.firebase.dataconnect.generated -import com.google.firebase.dataconnect.FirebaseDataConnectExperimental +import com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect import com.google.firebase.dataconnect.OperationRef import com.google.firebase.dataconnect.copy import kotlinx.serialization.DeserializationStrategy @@ -78,7 +78,7 @@ public interface GeneratedOperation, D * @see withDataDeserializer * @see withVariablesSerializer */ - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect public fun copy( connector: Connector = this.connector, operationName: String = this.operationName, @@ -93,7 +93,7 @@ public interface GeneratedOperation, D * @see copy * @see withDataDeserializer */ - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect public fun withVariablesSerializer( variablesSerializer: SerializationStrategy, ): GeneratedOperation @@ -105,7 +105,7 @@ public interface GeneratedOperation, D * @see copy * @see withVariablesSerializer */ - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect public fun withDataDeserializer( dataDeserializer: DeserializationStrategy, ): GeneratedOperation diff --git a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedQuery.kt b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedQuery.kt index 62e5679a057..235a76ab324 100644 --- a/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedQuery.kt +++ b/firebase-dataconnect/src/main/kotlin/com/google/firebase/dataconnect/generated/GeneratedQuery.kt @@ -16,8 +16,8 @@ package com.google.firebase.dataconnect.generated +import com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect import com.google.firebase.dataconnect.FirebaseDataConnect -import com.google.firebase.dataconnect.FirebaseDataConnectExperimental import com.google.firebase.dataconnect.QueryRef import kotlinx.serialization.DeserializationStrategy import kotlinx.serialization.SerializationStrategy @@ -51,7 +51,7 @@ public interface GeneratedQuery, Data, callerSdkType = FirebaseDataConnect.CallerSdkType.Generated } - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun copy( connector: Connector, operationName: String, @@ -59,12 +59,12 @@ public interface GeneratedQuery, Data, variablesSerializer: SerializationStrategy, ): GeneratedQuery - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun withVariablesSerializer( variablesSerializer: SerializationStrategy, ): GeneratedQuery - @FirebaseDataConnectExperimental + @ExperimentalFirebaseDataConnect override fun withDataDeserializer( dataDeserializer: DeserializationStrategy, ): GeneratedQuery diff --git a/firebase-dataconnect/src/test/kotlin/com/google/firebase/dataconnect/DataConnectErrorUnitTest.kt b/firebase-dataconnect/src/test/kotlin/com/google/firebase/dataconnect/DataConnectErrorUnitTest.kt index 4fd77d223ec..204b6f1fc48 100644 --- a/firebase-dataconnect/src/test/kotlin/com/google/firebase/dataconnect/DataConnectErrorUnitTest.kt +++ b/firebase-dataconnect/src/test/kotlin/com/google/firebase/dataconnect/DataConnectErrorUnitTest.kt @@ -15,6 +15,7 @@ */ @file:Suppress("ReplaceCallWithBinaryOperator") +@file:OptIn(ExperimentalKotest::class) package com.google.firebase.dataconnect @@ -27,6 +28,7 @@ import com.google.firebase.dataconnect.testutil.property.arbitrary.pathSegment import com.google.firebase.dataconnect.testutil.property.arbitrary.sourceLocation import com.google.firebase.dataconnect.testutil.shouldContainWithNonAbuttingText import io.kotest.assertions.assertSoftly +import io.kotest.common.ExperimentalKotest import io.kotest.matchers.shouldBe import io.kotest.matchers.shouldNotBe import io.kotest.matchers.types.shouldBeSameInstanceAs diff --git a/firebase-dataconnect/testutil/src/main/kotlin/com/google/firebase/dataconnect/testutil/EmptyVariables.kt b/firebase-dataconnect/testutil/src/main/kotlin/com/google/firebase/dataconnect/testutil/EmptyVariables.kt index acbb419443e..c216cb9918a 100644 --- a/firebase-dataconnect/testutil/src/main/kotlin/com/google/firebase/dataconnect/testutil/EmptyVariables.kt +++ b/firebase-dataconnect/testutil/src/main/kotlin/com/google/firebase/dataconnect/testutil/EmptyVariables.kt @@ -15,7 +15,7 @@ */ package com.google.firebase.dataconnect.testutil -import com.google.firebase.dataconnect.FirebaseDataConnectExperimental +import com.google.firebase.dataconnect.ExperimentalFirebaseDataConnect import com.google.firebase.dataconnect.generated.GeneratedOperation import kotlinx.serialization.KSerializer import kotlinx.serialization.Serializable @@ -42,6 +42,6 @@ private class EmptyVariablesSerializer : KSerializer { } } -@FirebaseDataConnectExperimental +@ExperimentalFirebaseDataConnect suspend fun GeneratedOperation<*, Data, *>.executeWithEmptyVariables() = withVariablesSerializer(serializer()).ref(EmptyVariables).execute()