diff --git a/appcheck/firebase-appcheck/firebase-appcheck.gradle b/appcheck/firebase-appcheck/firebase-appcheck.gradle index 8bb131495f3..0133ce3ae0a 100644 --- a/appcheck/firebase-appcheck/firebase-appcheck.gradle +++ b/appcheck/firebase-appcheck/firebase-appcheck.gradle @@ -70,7 +70,6 @@ dependencies { testImplementation libs.junit testImplementation libs.junit testImplementation libs.mockito.core - testImplementation libs.mockito.mockito.inline testImplementation libs.robolectric androidTestImplementation project(':appcheck:firebase-appcheck') @@ -85,5 +84,4 @@ dependencies { androidTestImplementation libs.truth androidTestImplementation libs.junit androidTestImplementation libs.mockito.core - androidTestImplementation libs.mockito.mockito.inline } diff --git a/encoders/firebase-encoders-processor/firebase-encoders-processor.gradle b/encoders/firebase-encoders-processor/firebase-encoders-processor.gradle index 140928763fd..3aa0b029c8a 100644 --- a/encoders/firebase-encoders-processor/firebase-encoders-processor.gradle +++ b/encoders/firebase-encoders-processor/firebase-encoders-processor.gradle @@ -44,7 +44,7 @@ configurations.testImplementation.resolutionStrategy { } dependencies { - implementation 'androidx.annotation:annotation:1.1.0' + implementation libs.androidx.annotation } test { diff --git a/encoders/firebase-encoders-proto/firebase-encoders-proto.gradle b/encoders/firebase-encoders-proto/firebase-encoders-proto.gradle index 7fecc47b267..58bec1c6a2a 100644 --- a/encoders/firebase-encoders-proto/firebase-encoders-proto.gradle +++ b/encoders/firebase-encoders-proto/firebase-encoders-proto.gradle @@ -19,7 +19,7 @@ plugins { firebaseLibrary { publishJavadoc = false - releaseNotes { + releaseNotes { enabled.set(false) } } @@ -39,7 +39,7 @@ protobuf { dependencies { api 'com.google.firebase:firebase-encoders:17.0.0' - implementation 'androidx.annotation:annotation:1.1.0' + implementation libs.androidx.annotation annotationProcessor project(':encoders:firebase-encoders-processor') diff --git a/firebase-appdistribution-api/firebase-appdistribution-api.gradle b/firebase-appdistribution-api/firebase-appdistribution-api.gradle index ed9f7d9f63c..71416c85e58 100644 --- a/firebase-appdistribution-api/firebase-appdistribution-api.gradle +++ b/firebase-appdistribution-api/firebase-appdistribution-api.gradle @@ -69,7 +69,6 @@ dependencies { testImplementation libs.truth testImplementation libs.junit testImplementation libs.mockito.core - testImplementation libs.mockito.mockito.inline testImplementation libs.robolectric androidTestImplementation libs.androidx.test.core diff --git a/firebase-appdistribution/firebase-appdistribution.gradle b/firebase-appdistribution/firebase-appdistribution.gradle index 55a5a09884e..a6333aff391 100644 --- a/firebase-appdistribution/firebase-appdistribution.gradle +++ b/firebase-appdistribution/firebase-appdistribution.gradle @@ -98,7 +98,7 @@ dependencies { testImplementation libs.androidx.test.core testImplementation libs.truth testImplementation libs.junit - testImplementation libs.mockito.mockito.inline + testImplementation libs.mockito.core testImplementation libs.robolectric androidTestImplementation(project(":integ-testing")){ @@ -111,5 +111,4 @@ dependencies { androidTestImplementation libs.truth androidTestImplementation libs.junit androidTestImplementation libs.mockito.core - androidTestImplementation libs.mockito.mockito.inline } diff --git a/firebase-inappmessaging-display/src/test/java/com/google/firebase/inappmessaging/display/internal/FiamWindowManagerTest.java b/firebase-inappmessaging-display/src/test/java/com/google/firebase/inappmessaging/display/internal/FiamWindowManagerTest.java index 714fa513f11..61a69b8c656 100644 --- a/firebase-inappmessaging-display/src/test/java/com/google/firebase/inappmessaging/display/internal/FiamWindowManagerTest.java +++ b/firebase-inappmessaging-display/src/test/java/com/google/firebase/inappmessaging/display/internal/FiamWindowManagerTest.java @@ -95,6 +95,7 @@ public void show_addsViewOnlyOnce() { expectedLayoutParams.dimAmount = 0.3f; expectedLayoutParams.gravity = WINDOW_GRAVITY; expectedLayoutParams.windowAnimations = 0; + expectedLayoutParams.flags = 16777217; // Ignore flags (unblocks robolectric >4.12 update) fiamWindowManager.show(bindingWrapper, activity); fiamWindowManager.show(bindingWrapper, activity); diff --git a/firebase-installations/firebase-installations.gradle b/firebase-installations/firebase-installations.gradle index 4765c720fc9..47d5ee852ea 100644 --- a/firebase-installations/firebase-installations.gradle +++ b/firebase-installations/firebase-installations.gradle @@ -73,7 +73,6 @@ dependencies { testImplementation libs.truth testImplementation libs.junit testImplementation libs.mockito.core - testImplementation libs.mockito.mockito.inline testImplementation libs.robolectric androidTestImplementation(project(":integ-testing")){ @@ -86,5 +85,4 @@ dependencies { androidTestImplementation libs.truth androidTestImplementation libs.junit androidTestImplementation libs.mockito.core - androidTestImplementation libs.mockito.mockito.inline } diff --git a/firebase-messaging/firebase-messaging.gradle b/firebase-messaging/firebase-messaging.gradle index f014b9eaa7c..4321ffc653d 100644 --- a/firebase-messaging/firebase-messaging.gradle +++ b/firebase-messaging/firebase-messaging.gradle @@ -155,5 +155,4 @@ dependencies { androidTestImplementation libs.truth androidTestImplementation libs.junit androidTestImplementation libs.mockito.core - androidTestImplementation libs.mockito.mockito.inline } diff --git a/firebase-messaging/src/test/java/com/google/firebase/messaging/shadows/ShadowMessenger.java b/firebase-messaging/src/test/java/com/google/firebase/messaging/shadows/ShadowMessenger.java index ef946522750..c3de6854ba9 100644 --- a/firebase-messaging/src/test/java/com/google/firebase/messaging/shadows/ShadowMessenger.java +++ b/firebase-messaging/src/test/java/com/google/firebase/messaging/shadows/ShadowMessenger.java @@ -13,13 +13,16 @@ // limitations under the License. package com.google.firebase.messaging.shadows; +import static org.robolectric.util.reflector.Reflector.reflector; + import android.os.Message; import android.os.Messenger; import android.os.RemoteException; import org.robolectric.annotation.Implementation; import org.robolectric.annotation.Implements; import org.robolectric.annotation.RealObject; -import org.robolectric.shadow.api.Shadow; +import org.robolectric.util.reflector.Direct; +import org.robolectric.util.reflector.ForType; @Implements(Messenger.class) public class ShadowMessenger { @@ -28,12 +31,18 @@ public class ShadowMessenger { private static RemoteException sendException = null; + @ForType(Messenger.class) + interface MessengerReflector { + @Direct + void send(Messenger messenger, Message message) throws RemoteException; + } + @Implementation protected void send(Message message) throws RemoteException { if (sendException != null) { throw sendException; } else { - Shadow.directlyOn(realMessenger, Messenger.class).send(message); + reflector(Messenger.class, realMessenger).send(message); } } diff --git a/firebase-ml-modeldownloader/firebase-ml-modeldownloader.gradle b/firebase-ml-modeldownloader/firebase-ml-modeldownloader.gradle index 2e709015da1..eb5776ab83e 100644 --- a/firebase-ml-modeldownloader/firebase-ml-modeldownloader.gradle +++ b/firebase-ml-modeldownloader/firebase-ml-modeldownloader.gradle @@ -100,7 +100,7 @@ dependencies { api("com.google.firebase:firebase-installations:17.2.0") api 'com.google.firebase:firebase-installations-interop:17.1.0' - implementation 'androidx.annotation:annotation:1.1.0' + implementation libs.androidx.annotation implementation 'com.google.android.datatransport:transport-api:3.0.0' implementation 'com.google.android.datatransport:transport-runtime:3.1.8' implementation 'com.google.auto.service:auto-service-annotations:1.0.1' diff --git a/firebase-perf/dev-app/dev-app.gradle b/firebase-perf/dev-app/dev-app.gradle index 41b7a98e48e..f09917b2607 100644 --- a/firebase-perf/dev-app/dev-app.gradle +++ b/firebase-perf/dev-app/dev-app.gradle @@ -97,7 +97,7 @@ dependencies { } // Google Deps - implementation 'androidx.annotation:annotation:1.4.0' + implementation libs.androidx.annotation implementation 'androidx.multidex:multidex:2.0.1' implementation 'com.google.android.gms:play-services-tasks:18.0.2' implementation 'androidx.appcompat:appcompat:1.4.2' diff --git a/firebase-perf/e2e-app/e2e-app.gradle b/firebase-perf/e2e-app/e2e-app.gradle index 6bdd3840de8..97f12fb502b 100644 --- a/firebase-perf/e2e-app/e2e-app.gradle +++ b/firebase-perf/e2e-app/e2e-app.gradle @@ -87,7 +87,7 @@ dependencies { // Google Deps implementation "com.google.android.gms:play-services-tasks:18.0.1" implementation "com.google.guava:guava:30.1.1-android" - implementation 'androidx.annotation:annotation:1.1.0' + implementation libs.androidx.annotation implementation 'androidx.multidex:multidex:2.0.1' implementation "androidx.recyclerview:recyclerview:1.1.0" implementation 'androidx.appcompat:appcompat:1.4.0' diff --git a/firebase-perf/firebase-perf.gradle b/firebase-perf/firebase-perf.gradle index c0fd6df6056..4c49ed6aad6 100644 --- a/firebase-perf/firebase-perf.gradle +++ b/firebase-perf/firebase-perf.gradle @@ -136,6 +136,5 @@ dependencies { testImplementation libs.androidx.test.rules testImplementation libs.junit testImplementation libs.mockito.core - testImplementation libs.mockito.mockito.inline testImplementation group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.6' } diff --git a/firebase-perf/src/main/java/com/google/firebase/perf/config/RemoteConfigManager.java b/firebase-perf/src/main/java/com/google/firebase/perf/config/RemoteConfigManager.java index 36d8c272aef..8065997974d 100644 --- a/firebase-perf/src/main/java/com/google/firebase/perf/config/RemoteConfigManager.java +++ b/firebase-perf/src/main/java/com/google/firebase/perf/config/RemoteConfigManager.java @@ -363,7 +363,7 @@ private void triggerFirebaseRemoteConfigFetchAndActivateOnSuccessfulFetch() { @VisibleForTesting protected void syncConfigValues(Map newlyFetchedMap) { allRcConfigMap.putAll(newlyFetchedMap); - for (String existingKey : allRcConfigMap.keySet()) { + for (String existingKey : ((Map) allRcConfigMap).keySet()) { if (!newlyFetchedMap.containsKey(existingKey)) { allRcConfigMap.remove(existingKey); } diff --git a/firebase-sessions/firebase-sessions.gradle.kts b/firebase-sessions/firebase-sessions.gradle.kts index b136a281660..f912236f2f2 100644 --- a/firebase-sessions/firebase-sessions.gradle.kts +++ b/firebase-sessions/firebase-sessions.gradle.kts @@ -52,7 +52,10 @@ android { targetSdk = targetSdkVersion unitTests { isIncludeAndroidResources = true } } - lint { targetSdk = targetSdkVersion } + lint { + baseline = file("lint-baseline.xml") + targetSdk = targetSdkVersion + } } tasks.withType(org.jetbrains.kotlin.gradle.tasks.KaptGenerateStubs::class.java).configureEach { diff --git a/firebase-sessions/lint-baseline.xml b/firebase-sessions/lint-baseline.xml new file mode 100644 index 00000000000..ea2cac1e638 --- /dev/null +++ b/firebase-sessions/lint-baseline.xml @@ -0,0 +1,4 @@ + + + + diff --git a/firebase-sessions/src/main/kotlin/com/google/firebase/sessions/InstallationId.kt b/firebase-sessions/src/main/kotlin/com/google/firebase/sessions/InstallationId.kt index 0df42fda953..b8c164c0355 100644 --- a/firebase-sessions/src/main/kotlin/com/google/firebase/sessions/InstallationId.kt +++ b/firebase-sessions/src/main/kotlin/com/google/firebase/sessions/InstallationId.kt @@ -37,7 +37,7 @@ internal class InstallationId private constructor(val fid: String, val authToken } val fid: String = try { - firebaseInstallations.id.await() + firebaseInstallations.id.await() ?: "" } catch (ex: Exception) { Log.w(TAG, "Error getting Firebase installation id .", ex) "" diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 64682610bd7..d70cbe40b29 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -17,8 +17,8 @@ cardview = "1.0.0" checkerQual = "2.5.2" constraintlayout = "2.1.4" coreKtx = "1.12.0" -coroutines = "1.7.3" -dagger = "2.43.2" +coroutines = "1.9.0" +dagger = "2.51" # Don't bump above 2.51 as it causes a bug in AppDistro FeedbackSender JPEG code datastore = "1.1.3" dexmaker = "2.28.1" dexmakerVersion = "1.2" @@ -45,16 +45,16 @@ javalite = "3.25.5" jsonassert = "1.5.0" kotest = "5.9.0" # Do not use 5.9.1 because it reverts the fix for https://github.com/kotest/kotest/issues/3981 kotestAssertionsCore = "5.8.1" -kotlin = "1.8.22" -ktorVersion = "2.3.2" +kotlin = "2.0.21" +ktorVersion = "3.0.3" legacySupportV4 = "1.0.0" lifecycleProcess = "2.3.1" material = "1.12.0" mavenResolverApi = "1.9.23" mavenResolverProvider = "3.9.9" -mockito = "5.2.0" +mockito = "5.16.0" mockitoAndroid = "3.4.0" -mockk = "1.13.11" +mockk = "1.14.0" # Do not use 1.14.2 or above due to a bug in spyK and bumps kotlin to 2.1.x playServicesCloudMessaging = "17.2.0" playServicesStats = "17.0.2" playServicesVision = "20.1.3" @@ -64,11 +64,11 @@ protobufjavautil = "3.25.5" protoc = "3.25.5" quickcheck = "0.6" reactiveStreams = "1.0.4" -robolectric = "4.12" +robolectric = "4.12.2" runner = "1.0.2" rxandroid = "2.0.2" rxjava = "2.1.14" -serialization = "1.5.1" +serialization = "1.7.3" slf4jNop = "2.0.9" spotless = "7.0.4" testServices = "1.2.0" @@ -195,7 +195,6 @@ kotlin-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-te mockito-android = { module = "org.mockito:mockito-android", version.ref = "mockitoAndroid" } mockito-core = { module = "org.mockito:mockito-core", version.ref = "mockito" } mockito-dexmaker = { module = "com.linkedin.dexmaker:dexmaker-mockito", version = "2.28.3" } -mockito-mockito-inline = { module = "org.mockito:mockito-inline", version.ref = "mockito" } mockk = { module = "io.mockk:mockk", version.ref = "mockk" } mockk-android = { module = "io.mockk:mockk-android", version.ref = "mockk" } protobuf-java-util = { module = "com.google.protobuf:protobuf-java-util", version.ref = "protobufjavautil" } diff --git a/plugins/src/main/java/com/google/firebase/gradle/plugins/GradleExtensions.kt b/plugins/src/main/java/com/google/firebase/gradle/plugins/GradleExtensions.kt index 88cd9927045..90d4e3fc50b 100644 --- a/plugins/src/main/java/com/google/firebase/gradle/plugins/GradleExtensions.kt +++ b/plugins/src/main/java/com/google/firebase/gradle/plugins/GradleExtensions.kt @@ -22,6 +22,8 @@ import java.io.BufferedOutputStream import java.io.File import java.util.zip.ZipEntry import java.util.zip.ZipOutputStream +import kotlin.properties.ReadOnlyProperty +import kotlin.reflect.KProperty import org.gradle.api.DefaultTask import org.gradle.api.Project import org.gradle.api.Task @@ -39,7 +41,6 @@ import org.gradle.kotlin.dsl.apply import org.gradle.workers.WorkAction import org.gradle.workers.WorkParameters import org.gradle.workers.WorkQueue -import org.jetbrains.kotlin.gradle.utils.provider /** * Creates a file at the buildDir for the given [Project]. @@ -307,3 +308,15 @@ val Provider.nestedFile: Provider */ val Directory.nestedFile: File get() = asFileTree.single { it.isFile } + +/** + * Creates a delegated provider. + * + * Useful to expose a provide via delegated properties. See [tempFile] for a reference usage. + */ +internal fun provider(provider: () -> T) = + object : ReadOnlyProperty { + override operator fun getValue(thisRef: Any?, property: KProperty<*>): T { + return provider() + } + } diff --git a/plugins/src/main/java/com/google/firebase/gradle/plugins/ci/Coverage.java b/plugins/src/main/java/com/google/firebase/gradle/plugins/ci/Coverage.java index a785420ab0f..e1ce2758093 100644 --- a/plugins/src/main/java/com/google/firebase/gradle/plugins/ci/Coverage.java +++ b/plugins/src/main/java/com/google/firebase/gradle/plugins/ci/Coverage.java @@ -36,7 +36,7 @@ public static void apply(FirebaseLibraryExtension firebaseLibrary) { File reportsDir = new File(project.getBuildDir(), "/reports/jacoco"); JacocoPluginExtension jacoco = project.getExtensions().getByType(JacocoPluginExtension.class); - jacoco.setToolVersion("0.8.8"); + jacoco.setToolVersion("0.8.13"); jacoco.getReportsDirectory().set(reportsDir); project .getTasks() diff --git a/smoke-tests/build.gradle b/smoke-tests/build.gradle index 0df93b49a47..572c52cdff8 100644 --- a/smoke-tests/build.gradle +++ b/smoke-tests/build.gradle @@ -23,10 +23,10 @@ buildscript { } dependencies { - classpath "com.android.tools.build:gradle:8.3.2" - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0" - classpath "com.google.gms:google-services:4.3.14" - classpath "com.google.firebase:firebase-crashlytics-gradle:2.8.1" + classpath "com.android.tools.build:gradle:8.6.1" + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.21" + classpath "com.google.gms:google-services:4.4.3" + classpath "com.google.firebase:firebase-crashlytics-gradle:3.0.4" } } @@ -69,33 +69,33 @@ apply from: "configure.gradle" dependencies { implementation libs.androidx.test.core // Common utilities (application side) - implementation "androidx.test:rules:1.4.0" - implementation "androidx.test:runner:1.4.0" + implementation "androidx.test:rules:1.5.0" + implementation "androidx.test:runner:1.6.2" // Firebase implementation "com.google.firebase:firebase-analytics" implementation "com.google.firebase:firebase-annotations" - implementation "com.google.firebase:firebase-appdistribution:16.0.0-beta03" - implementation "com.google.firebase:firebase-appdistribution-api:16.0.0-beta03" + implementation "com.google.firebase:firebase-appdistribution:16.0.0-beta15" + implementation "com.google.firebase:firebase-appdistribution-api:16.0.0-beta15" implementation "com.google.firebase:firebase-auth" implementation "com.google.firebase:firebase-common" implementation "com.google.firebase:firebase-config" - implementation "com.google.firebase:firebase-crashlytics:18.6.4" + implementation "com.google.firebase:firebase-crashlytics:19.4.4" implementation "com.google.firebase:firebase-database" implementation "com.google.firebase:firebase-firestore" implementation "com.google.firebase:firebase-functions" // TODO(yifany): remove after the issue is fixed // https://github.com/firebase/firebase-android-sdk/issues/4206 - implementation "com.google.firebase:firebase-iid:21.1.0" + implementation "com.google.firebase:firebase-iid" implementation "com.google.firebase:firebase-inappmessaging" implementation "com.google.firebase:firebase-messaging" - implementation "com.google.firebase:firebase-ml-modeldownloader:24.2.3" + implementation "com.google.firebase:firebase-ml-modeldownloader:25.0.1" implementation "com.google.firebase:firebase-perf" implementation "com.google.firebase:firebase-storage" - implementation "com.google.truth:truth:1.0.1" + implementation "com.google.truth:truth:1.4.4" implementation libs.junit // Common utilities (instrumentation side) - androidTestImplementation "androidx.test:runner:1.4.0" + androidTestImplementation "androidx.test:runner:1.6.2" androidTestImplementation libs.junit // Desugaring library diff --git a/smoke-tests/configure.gradle b/smoke-tests/configure.gradle index 65e5aac2690..44fee11f4f8 100644 --- a/smoke-tests/configure.gradle +++ b/smoke-tests/configure.gradle @@ -14,7 +14,7 @@ def configurePlatform() { - def bom = "com.google.firebase:firebase-bom:20.0.0" + def bom = "com.google.firebase:firebase-bom:33.16.0" if (project.hasProperty("firebase-bom")) { bom = project.getProperty("firebase-bom") } diff --git a/smoke-tests/gradle.properties b/smoke-tests/gradle.properties index 372e31337a0..21666b332ee 100644 --- a/smoke-tests/gradle.properties +++ b/smoke-tests/gradle.properties @@ -12,7 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -android.enableR8=true android.useAndroidX=true org.gradle.jvmargs=-Xmx8g diff --git a/subprojects.cfg b/subprojects.cfg index 72e06c9248f..dc90f71a394 100644 --- a/subprojects.cfg +++ b/subprojects.cfg @@ -59,7 +59,7 @@ firebase-sessions:benchmark firebase-sessions:test-app firebase-storage firebase-storage:ktx -firebase-vertexai +# firebase-vertexai protolite-well-known-types encoders diff --git a/tools/lint/src/test/kotlin/FirebaseAppGetDetectorTests.kt b/tools/lint/src/test/kotlin/FirebaseAppGetDetectorTests.kt index 535c9c2befa..48c1f958d81 100644 --- a/tools/lint/src/test/kotlin/FirebaseAppGetDetectorTests.kt +++ b/tools/lint/src/test/kotlin/FirebaseAppGetDetectorTests.kt @@ -120,7 +120,7 @@ class FirebaseAppGetDetectorTests : LintDetectorTest() { val instance = FirebaseApp.getInstance().get(Foo::class.java) @JvmStatic - fun getInstance(app: FirebaseApp) = app.get(Foo::class.java) + fun getInstance(app: FirebaseApp): Foo = app.get(Foo::class.java) } } """ @@ -145,7 +145,7 @@ class FirebaseAppGetDetectorTests : LintDetectorTest() { val instance = FirebaseApp.getInstance().get(FooImpl::class.java) @JvmStatic - fun getInstance(app: FirebaseApp) = app.get(FooImpl::class.java) + fun getInstance(app: FirebaseApp): Foo = app.get(FooImpl::class.java) } } class FooImpl : Foo() diff --git a/transport/transport-backend-cct/transport-backend-cct.gradle b/transport/transport-backend-cct/transport-backend-cct.gradle index 2baae70620d..149df8b4c58 100644 --- a/transport/transport-backend-cct/transport-backend-cct.gradle +++ b/transport/transport-backend-cct/transport-backend-cct.gradle @@ -15,12 +15,13 @@ plugins { id 'firebase-library' id 'com.google.protobuf' + id("kotlin-android") } firebaseLibrary{ libraryGroup = "transport" publishJavadoc = false - releaseNotes { + releaseNotes { enabled.set(false) } } @@ -41,7 +42,7 @@ protobuf { } android { - namespace "com.google.android.datatransport.backend.cct" + namespace "com.google.android.datatransport.backend.cct" compileSdkVersion project.compileSdkVersion defaultConfig { minSdkVersion project.minSdkVersion @@ -62,7 +63,7 @@ dependencies { api 'com.google.firebase:firebase-encoders:17.0.0' api 'com.google.firebase:firebase-encoders-json:18.0.0' - implementation 'androidx.annotation:annotation:1.1.0' + implementation libs.androidx.annotation compileOnly "com.google.auto.value:auto-value-annotations:1.6.6" diff --git a/transport/transport-runtime-testing/transport-runtime-testing.gradle b/transport/transport-runtime-testing/transport-runtime-testing.gradle index 2268e8eea2a..384271822d5 100644 --- a/transport/transport-runtime-testing/transport-runtime-testing.gradle +++ b/transport/transport-runtime-testing/transport-runtime-testing.gradle @@ -18,7 +18,7 @@ plugins { } android { - namespace "com.google.android.datatransport.runtime.testing" + namespace "com.google.android.datatransport.runtime.testing" compileSdkVersion project.compileSdkVersion defaultConfig { minSdkVersion project.minSdkVersion @@ -35,7 +35,7 @@ android { } dependencies { - implementation 'androidx.annotation:annotation:1.3.0' + implementation libs.androidx.annotation implementation 'com.google.android.datatransport:transport-api:3.0.0' implementation 'com.google.android.datatransport:transport-backend-cct:3.1.8' implementation 'com.google.android.datatransport:transport-runtime:3.1.8' diff --git a/transport/transport-runtime/transport-runtime.gradle b/transport/transport-runtime/transport-runtime.gradle index eeb18a0513d..cfd34c23ff9 100644 --- a/transport/transport-runtime/transport-runtime.gradle +++ b/transport/transport-runtime/transport-runtime.gradle @@ -16,6 +16,7 @@ plugins { id "com.google.protobuf" id 'firebase-library' id 'firebase-vendor' + id("kotlin-android") } // add a dependency on the protoc plugin's fat jar to make it available to protobuf below. @@ -52,7 +53,7 @@ protobuf { firebaseLibrary { libraryGroup = "transport" publishJavadoc = false - releaseNotes { + releaseNotes { enabled.set(false) } testLab { @@ -105,34 +106,34 @@ dependencies { exclude group: "javax.inject", module: "javax.inject" } - api "com.google.android.datatransport:transport-api:4.0.0" - api 'com.google.firebase:firebase-encoders:17.0.0' - api "com.google.firebase:firebase-encoders-proto:16.0.0" + api project(":transport:transport-api") + api project(":encoders:firebase-encoders") + api project(":encoders:firebase-encoders-proto") - implementation 'androidx.annotation:annotation:1.3.0' + implementation libs.androidx.annotation implementation libs.javax.inject compileOnly "com.google.auto.value:auto-value-annotations:1.6.6" compileOnly "com.google.errorprone:error_prone_annotations:2.9.0" annotationProcessor project(":encoders:firebase-encoders-processor") - annotationProcessor "com.google.auto.value:auto-value:1.6.5" + annotationProcessor libs.autovalue annotationProcessor libs.dagger.compiler - androidTestAnnotationProcessor 'com.google.dagger:dagger-compiler:2.27' + androidTestAnnotationProcessor libs.dagger.compiler testImplementation libs.androidx.test.core testImplementation libs.androidx.test.junit testImplementation libs.truth - testImplementation 'junit:junit:4.13-beta-2' - testImplementation 'org.mockito:mockito-core:2.25.0' + testImplementation libs.junit + testImplementation libs.mockito.core testImplementation libs.robolectric - androidTestImplementation 'androidx.test:rules:1.2.0' - androidTestImplementation 'androidx.test:runner:1.2.0' + androidTestImplementation libs.androidx.test.rules + androidTestImplementation libs.androidx.test.runner androidTestImplementation libs.androidx.test.junit androidTestImplementation libs.truth - androidTestImplementation 'junit:junit:4.13-beta-3' - androidTestImplementation 'org.mockito:mockito-android:2.25.0' - androidTestImplementation 'org.mockito:mockito-core:2.25.0' + androidTestImplementation libs.junit + androidTestImplementation libs.mockito.android + androidTestImplementation libs.mockito.core }