import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { alias(libs.plugins.android.library) alias(libs.plugins.hilt) alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.serialization) alias(libs.plugins.ksp) } android { namespace = "com.bitwarden.data" compileSdk = libs.versions.compileSdk.get().toInt() defaultConfig { minSdk = libs.versions.minSdkBwa.get().toInt() testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles("consumer-rules.pro") } buildTypes { release { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro", ) } } compileOptions { sourceCompatibility(libs.versions.jvmTarget.get()) targetCompatibility(libs.versions.jvmTarget.get()) } @Suppress("UnstableApiUsage") testFixtures { enable = true } } kotlin { compilerOptions { jvmTarget = JvmTarget.fromTarget(libs.versions.jvmTarget.get()) } } dependencies { implementation(project(":annotation")) implementation(project(":core")) implementation(project(":network")) implementation(libs.androidx.core.ktx) implementation(libs.androidx.security.crypto) implementation(libs.google.hilt.android) ksp(libs.google.hilt.compiler) implementation(libs.kotlinx.serialization) implementation(libs.timber) // Pull in test fixtures from other modules testImplementation(testFixtures(project(":core"))) testImplementation(platform(libs.junit.bom)) testRuntimeOnly(libs.junit.platform.launcher) testImplementation(libs.junit.jupiter) testImplementation(libs.junit.vintage) testImplementation(libs.kotlinx.coroutines.test) testImplementation(libs.mockk.mockk) testImplementation(libs.square.turbine) testFixturesImplementation(project(":core")) testFixturesImplementation(libs.kotlinx.coroutines.test) } tasks { withType { useJUnitPlatform() maxHeapSize = "2g" maxParallelForks = Runtime.getRuntime().availableProcessors() jvmArgs = jvmArgs.orEmpty() + "-XX:+UseParallelGC" } }