diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts index 68f225fcafb3..bf7b513f6c07 100644 --- a/android/app/build.gradle.kts +++ b/android/app/build.gradle.kts @@ -1,3 +1,4 @@ +import com.android.build.api.variant.BuildConfigField import com.android.build.gradle.internal.tasks.factory.dependsOn import com.github.triplet.gradle.androidpublisher.ReleaseStatus import java.io.FileInputStream @@ -24,14 +25,13 @@ plugins { alias(libs.plugins.mullvad.utilities) alias(libs.plugins.android.application) alias(libs.plugins.play.publisher) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) alias(libs.plugins.compose) alias(libs.plugins.baselineprofile) alias(libs.plugins.mullvad.unit.test) + alias(libs.plugins.rust.android) id("de.mannodermaus.android-junit5") - id("net.mullvad.rust-android") } val repoRootPath = rootProject.projectDir.absoluteFile.parentFile.absolutePath @@ -222,69 +222,78 @@ android { ) } } +} + +androidComponents { + onVariants { variant -> + val mainSources = variant.sources.getByName("main") + mainSources.addStaticSourceDirectory(relayListDirectory) + mainSources.addStaticSourceDirectory(changelogAssetsDirectory) + } - applicationVariants.configureEach { - buildConfigField( - "boolean", + onVariants { + it.buildConfigFields!!.put( "ENABLE_IN_APP_VERSION_NOTIFICATIONS", - getBooleanProperty("mullvad.app.config.inAppVersionNotifications.enable").toString(), + BuildConfigField( + "boolean", + getBooleanProperty("mullvad.app.config.inAppVersionNotifications.enable"), + "Show in-app version notifications", + ), ) val shouldRequireBundleRelayFile = isReleaseBuild() && !appVersion.isDev - buildConfigField( - "Boolean", + it.buildConfigFields!!.put( "REQUIRE_BUNDLED_RELAY_FILE", - shouldRequireBundleRelayFile.toString(), + BuildConfigField( + "boolean", + shouldRequireBundleRelayFile.toString(), + "Whether to require a bundled relay list or not.", + ), ) } + onVariants { + val productFlavors = it.productFlavors.map { it.first } + // buildType.name? + val buildType = it.buildType - applicationVariants.all { val artifactSuffix = buildString { - productFlavors.getOrNull(0)?.name?.let { billingFlavorName -> + productFlavors.getOrNull(0)?.let { billingFlavorName -> if (billingFlavorName != Flavors.OSS) { append(".$billingFlavorName") } } - productFlavors.getOrNull(1)?.name?.let { infrastructureFlavorName -> + productFlavors.getOrNull(1)?.let { infrastructureFlavorName -> if (infrastructureFlavorName != Flavors.PROD) { append(".$infrastructureFlavorName") } } - if (buildType.name != BuildTypes.RELEASE) { - append(".${buildType.name}") + if (buildType != BuildTypes.RELEASE) { + append(".${buildType}") } } val variantName = name val capitalizedVariantName = variantName.toString().capitalized() - val artifactName = "MullvadVPN-${versionName}${artifactSuffix}" - - tasks.register("create${capitalizedVariantName}DistApk") { - from(packageApplicationProvider) - into("${rootDir.parent}/dist") - include { it.name.endsWith(".apk") } - rename { "$artifactName.apk" } - } - - val createDistBundle = - tasks.register("create${capitalizedVariantName}DistBundle") { - from("${layout.buildDirectory.get()}/outputs/bundle/$variantName") - into("${rootDir.parent}/dist") - include { it.name.endsWith(".aab") } - rename { "$artifactName.aab" } - } - - createDistBundle.dependsOn("bundle$capitalizedVariantName") - - // Ensure that we have all the JNI libs before merging them. - tasks["merge${capitalizedVariantName}JniLibFolders"].apply { - // This is required for the merge task to run every time the .so files are updated. - // See this comment for more information: - // https://github.com/mozilla/rust-android-gradle/issues/118#issuecomment-1569407058 - inputs.dir(rustJniLibsDir) - dependsOn("cargoBuild") - } + val artifactName = "MullvadVPN-${appVersion.name}${artifactSuffix}" + + // TODO How to access packageApplicationProvider? + // Replace with: it.outputProviders.provideApkOutputToTask() ? + // tasks.register("create${capitalizedVariantName}DistApk") { + // from(packageApplicationProvider) + // into("${rootDir.parent}/dist") + // include { it.name.endsWith(".apk") } + // rename { "$artifactName.apk" } + // } + + // val createDistBundle = + // tasks.register("create${capitalizedVariantName}DistBundle") { + // from("${layout.buildDirectory.get()}/outputs/bundle/$variantName") + // into("${rootDir.parent}/dist") + // include { it.name.endsWith(".aab") } + // rename { "$artifactName.aab" } + // } + // createDistBundle.dependsOn("bundle$capitalizedVariantName") tasks.findByPath("generate${capitalizedVariantName}BaselineProfile")?.let { it.doLast { @@ -298,12 +307,20 @@ android { } } -junitPlatform { - instrumentationTests { - version.set(libs.versions.junit5.android.asProvider()) - includeExtensions.set(true) +// Don't merge the jni lib folders until after the Rust libraries have been built. +tasks + .matching { it.name.matches(Regex("merge.*JniLibFolders")) } + .configureEach { + inputs.dir(rustJniLibsDir) + dependsOn("cargoBuild") } -} + +// junitPlatform { +// instrumentationTests { +// version.set(libs.versions.junit5.android.asProvider()) +// includeExtensions.set(true) +// } +// } cargo { val isReleaseBuild = isReleaseBuild() diff --git a/android/build.gradle.kts b/android/build.gradle.kts index 11793483667a..15dac2b79eb9 100644 --- a/android/build.gradle.kts +++ b/android/build.gradle.kts @@ -11,11 +11,10 @@ plugins { alias(libs.plugins.ktfmt) apply false alias(libs.plugins.compose) apply false alias(libs.plugins.play.publisher) apply false - alias(libs.plugins.kotlin.android) apply false alias(libs.plugins.kotlin.ksp) apply false alias(libs.plugins.kotlin.parcelize) apply false alias(libs.plugins.protobuf.core) apply false - id("net.mullvad.rust-android") apply false + alias(libs.plugins.rust.android) apply false alias(libs.plugins.detekt) apply true alias(libs.plugins.dependency.versions) apply true diff --git a/android/gradle/build-logic/src/main/kotlin/AndroidLibraryPlugin.kt b/android/gradle/build-logic/src/main/kotlin/AndroidLibraryPlugin.kt index 1391a7cd4fed..cf16f6fc896f 100644 --- a/android/gradle/build-logic/src/main/kotlin/AndroidLibraryPlugin.kt +++ b/android/gradle/build-logic/src/main/kotlin/AndroidLibraryPlugin.kt @@ -1,4 +1,5 @@ -import com.android.build.gradle.LibraryExtension +import com.android.build.api.dsl.CommonExtension +import com.android.build.api.dsl.LibraryExtension import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.internal.Actions.with @@ -12,7 +13,6 @@ class AndroidLibraryPlugin : Plugin { override fun apply(target: Project) { with(target) { apply(plugin = "com.android.library") - apply(plugin = "org.jetbrains.kotlin.android") apply(plugin = "mullvad.kotlin-toolchain") extensions.configure { diff --git a/android/gradle/build-logic/src/main/kotlin/utilities/AndroidCompose.kt b/android/gradle/build-logic/src/main/kotlin/utilities/AndroidCompose.kt index 65bd21b6bc01..3d0cad66544a 100644 --- a/android/gradle/build-logic/src/main/kotlin/utilities/AndroidCompose.kt +++ b/android/gradle/build-logic/src/main/kotlin/utilities/AndroidCompose.kt @@ -4,7 +4,7 @@ import com.android.build.api.dsl.CommonExtension import org.gradle.api.Project import org.gradle.kotlin.dsl.dependencies -internal fun Project.configureAndroidCompose(commonExtension: CommonExtension<*, *, *, *, *, *>) { +internal fun Project.configureAndroidCompose(commonExtension: CommonExtension) { commonExtension.apply { buildFeatures.apply { compose = true } diff --git a/android/gradle/libs.versions.toml b/android/gradle/libs.versions.toml index fef5fe39361f..f46ef4a61c03 100644 --- a/android/gradle/libs.versions.toml +++ b/android/gradle/libs.versions.toml @@ -14,7 +14,7 @@ ndk = "27.3.13750724" # Find the relevant AAPT version here: # https://mvnrepository.com/artifact/com.android.tools.build/aapt2 android-gradle-aapt = "14304508" -android-gradle-plugin = "8.13.2" +android-gradle-plugin = "9.0.0" # Other android-billingclient = "8.3.0" androidx-activitycompose = "1.13.0" @@ -33,7 +33,7 @@ androidx-tv = "1.0.1" androidx-uiautomator = "2.4.0-beta02" androidx-work = "2.11.1" arrow = "2.2.2" -baselineprofile = "1.4.1" +baselineprofile = "1.5.0-alpha01" benchmark-macro-junit4 = "1.4.1" commonsvalidator = "1.10.1" compose = "1.10.5" @@ -49,8 +49,8 @@ grpc = "1.79.0" grpc-kotlin = "1.5.0" junit = "5.13.4" junit4 = "1.3.0" -junit5-android = "1.8.0" -junit5-android-plugin = "1.13.1.0" +junit5-android = "2.0.1" +junit5-android-plugin = "2.0.1" kermit = "2.1.0" koin = "4.1.1" koin-compose = "4.1.1" @@ -65,7 +65,7 @@ ktfmt = "0.25.0" ktor = "3.4.1" leakcanary = "2.14" mockk = "1.14.9" -play-publisher = "3.13.0" +play-publisher = "4.0.0" play-services-location = "21.3.0" profileinstaller = "1.4.1" protobuf = "4.34.0" @@ -74,6 +74,7 @@ turbine = "1.2.1" annotation-jvm = "1.9.1" junit-version = "4.13.2" material = "1.13.0" +rust-android = "0.10.0" [libraries] accompanist-drawablepainter = { module = "com.google.accompanist:accompanist-drawablepainter", version.ref = "accompanist" } @@ -194,6 +195,7 @@ ktfmt = { id = "com.ncorti.ktfmt.gradle", version.ref = "ktfmt" } play-publisher = { id = "com.github.triplet.play", version.ref = "play-publisher" } protobuf-core = { id = "com.google.protobuf", version.ref = "protobuf-gradle-plugin" } protobuf-protoc = { id = "com.google.protobuf:protoc", version.ref = "protobuf" } +rust-android = { id = "net.mullvad.rust-android", version.ref = "rust-android" } # Convention plugins mullvad-android-library = { id = "mullvad.android-library" } mullvad-android-library-feature-impl = { id = "mullvad.android-library-feature-impl" } diff --git a/android/gradle/verification-metadata.xml b/android/gradle/verification-metadata.xml index 71817137aa42..e69de29bb2d1 100644 --- a/android/gradle/verification-metadata.xml +++ b/android/gradle/verification-metadata.xml @@ -1,7784 +0,0 @@ - - - - - true - false - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/android/lib/common-compose/build.gradle.kts b/android/lib/common-compose/build.gradle.kts index 2ed1631b4cfb..d280ade62fde 100644 --- a/android/lib/common-compose/build.gradle.kts +++ b/android/lib/common-compose/build.gradle.kts @@ -1,7 +1,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/account/impl/build.gradle.kts b/android/lib/feature/account/impl/build.gradle.kts index 8fe3c5147a28..816113e10fdb 100644 --- a/android/lib/feature/account/impl/build.gradle.kts +++ b/android/lib/feature/account/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/addtime/impl/build.gradle.kts b/android/lib/feature/addtime/impl/build.gradle.kts index 2b73170a2428..5c7f30d936b8 100644 --- a/android/lib/feature/addtime/impl/build.gradle.kts +++ b/android/lib/feature/addtime/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/anticensorship/impl/build.gradle.kts b/android/lib/feature/anticensorship/impl/build.gradle.kts index e6aeb952ede4..435d03ab7f1b 100644 --- a/android/lib/feature/anticensorship/impl/build.gradle.kts +++ b/android/lib/feature/anticensorship/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/apiaccess/impl/build.gradle.kts b/android/lib/feature/apiaccess/impl/build.gradle.kts index e480488c3ce9..4310603c66e3 100644 --- a/android/lib/feature/apiaccess/impl/build.gradle.kts +++ b/android/lib/feature/apiaccess/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/appearance/impl/build.gradle.kts b/android/lib/feature/appearance/impl/build.gradle.kts index 45e7872b784e..0b84a069ebd2 100644 --- a/android/lib/feature/appearance/impl/build.gradle.kts +++ b/android/lib/feature/appearance/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/appinfo/impl/build.gradle.kts b/android/lib/feature/appinfo/impl/build.gradle.kts index ec9e02a1c73d..7ee70082bbd4 100644 --- a/android/lib/feature/appinfo/impl/build.gradle.kts +++ b/android/lib/feature/appinfo/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/autoconnect/impl/build.gradle.kts b/android/lib/feature/autoconnect/impl/build.gradle.kts index 45a20e000611..cc7d12605150 100644 --- a/android/lib/feature/autoconnect/impl/build.gradle.kts +++ b/android/lib/feature/autoconnect/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/customlist/impl/build.gradle.kts b/android/lib/feature/customlist/impl/build.gradle.kts index 82a475ca8ff8..579a63bb9e9f 100644 --- a/android/lib/feature/customlist/impl/build.gradle.kts +++ b/android/lib/feature/customlist/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/daita/impl/build.gradle.kts b/android/lib/feature/daita/impl/build.gradle.kts index 39796982a1e8..3ef9afc9049e 100644 --- a/android/lib/feature/daita/impl/build.gradle.kts +++ b/android/lib/feature/daita/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/filter/impl/build.gradle.kts b/android/lib/feature/filter/impl/build.gradle.kts index 2d6a5c29af6b..c4f4eb4aef4d 100644 --- a/android/lib/feature/filter/impl/build.gradle.kts +++ b/android/lib/feature/filter/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/home/impl/build.gradle.kts b/android/lib/feature/home/impl/build.gradle.kts index 970ed2cdeb70..d00d431b0900 100644 --- a/android/lib/feature/home/impl/build.gradle.kts +++ b/android/lib/feature/home/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/location/impl/build.gradle.kts b/android/lib/feature/location/impl/build.gradle.kts index 852dae4b9870..1d45e15b9dc1 100644 --- a/android/lib/feature/location/impl/build.gradle.kts +++ b/android/lib/feature/location/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/login/impl/build.gradle.kts b/android/lib/feature/login/impl/build.gradle.kts index 96ccad35401f..a9ff4c3c2ca5 100644 --- a/android/lib/feature/login/impl/build.gradle.kts +++ b/android/lib/feature/login/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/managedevices/impl/build.gradle.kts b/android/lib/feature/managedevices/impl/build.gradle.kts index 15d46164b64b..919ae01fc9d0 100644 --- a/android/lib/feature/managedevices/impl/build.gradle.kts +++ b/android/lib/feature/managedevices/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/multihop/impl/build.gradle.kts b/android/lib/feature/multihop/impl/build.gradle.kts index 1a3ed8f0783d..3a56687194dd 100644 --- a/android/lib/feature/multihop/impl/build.gradle.kts +++ b/android/lib/feature/multihop/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/notification/impl/build.gradle.kts b/android/lib/feature/notification/impl/build.gradle.kts index a85d5729140b..39569a49fe34 100644 --- a/android/lib/feature/notification/impl/build.gradle.kts +++ b/android/lib/feature/notification/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/problemreport/impl/build.gradle.kts b/android/lib/feature/problemreport/impl/build.gradle.kts index c09c7e74fe21..e05629020ba8 100644 --- a/android/lib/feature/problemreport/impl/build.gradle.kts +++ b/android/lib/feature/problemreport/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/redeemvoucher/impl/build.gradle.kts b/android/lib/feature/redeemvoucher/impl/build.gradle.kts index af5da55da649..df5557199379 100644 --- a/android/lib/feature/redeemvoucher/impl/build.gradle.kts +++ b/android/lib/feature/redeemvoucher/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/serveripoverride/impl/build.gradle.kts b/android/lib/feature/serveripoverride/impl/build.gradle.kts index 5d8430dae1ac..41bd4cb48a3a 100644 --- a/android/lib/feature/serveripoverride/impl/build.gradle.kts +++ b/android/lib/feature/serveripoverride/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/settings/impl/build.gradle.kts b/android/lib/feature/settings/impl/build.gradle.kts index da30a3976170..e5bac1c0c16c 100644 --- a/android/lib/feature/settings/impl/build.gradle.kts +++ b/android/lib/feature/settings/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/splittunneling/impl/build.gradle.kts b/android/lib/feature/splittunneling/impl/build.gradle.kts index 9a4ae9d26d78..3348acb16dce 100644 --- a/android/lib/feature/splittunneling/impl/build.gradle.kts +++ b/android/lib/feature/splittunneling/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/feature/vpnsettings/impl/build.gradle.kts b/android/lib/feature/vpnsettings/impl/build.gradle.kts index 4dbffc77a1e8..d193c1824661 100644 --- a/android/lib/feature/vpnsettings/impl/build.gradle.kts +++ b/android/lib/feature/vpnsettings/impl/build.gradle.kts @@ -2,7 +2,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.feature.impl) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/navigation/build.gradle.kts b/android/lib/navigation/build.gradle.kts index f45b2645c833..47d3f830b591 100644 --- a/android/lib/navigation/build.gradle.kts +++ b/android/lib/navigation/build.gradle.kts @@ -1,7 +1,6 @@ plugins { alias(libs.plugins.mullvad.android.library) alias(libs.plugins.mullvad.android.library.compose) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.ksp) } diff --git a/android/lib/push-notification/build.gradle.kts b/android/lib/push-notification/build.gradle.kts index 74ec7ef44e1f..94c58e095743 100644 --- a/android/lib/push-notification/build.gradle.kts +++ b/android/lib/push-notification/build.gradle.kts @@ -1,6 +1,5 @@ plugins { alias(libs.plugins.mullvad.android.library) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.mullvad.unit.test) } diff --git a/android/rust-android-gradle-plugin b/android/rust-android-gradle-plugin deleted file mode 160000 index 505aa265d754..000000000000 --- a/android/rust-android-gradle-plugin +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 505aa265d754f915e81a4becb83c8171cf77fbca diff --git a/android/service/build.gradle.kts b/android/service/build.gradle.kts new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/android/settings.gradle.kts b/android/settings.gradle.kts index dbb890de1dfa..047fb8c31204 100644 --- a/android/settings.gradle.kts +++ b/android/settings.gradle.kts @@ -19,7 +19,6 @@ dependencyResolutionManagement { } } -includeBuild("rust-android-gradle-plugin") includeBuild("gradle/build-logic") enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS") diff --git a/android/test/arch/build.gradle.kts b/android/test/arch/build.gradle.kts index 16459b17adab..b4a2d288d71c 100644 --- a/android/test/arch/build.gradle.kts +++ b/android/test/arch/build.gradle.kts @@ -1,6 +1,5 @@ plugins { alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) alias(libs.plugins.mullvad.unit.test) } diff --git a/android/test/baselineprofile/build.gradle.kts b/android/test/baselineprofile/build.gradle.kts index 769da2826633..6c91f03329b9 100644 --- a/android/test/baselineprofile/build.gradle.kts +++ b/android/test/baselineprofile/build.gradle.kts @@ -7,7 +7,6 @@ import utilities.matches plugins { alias(libs.plugins.mullvad.utilities) alias(libs.plugins.android.test) - alias(libs.plugins.kotlin.android) alias(libs.plugins.baselineprofile) } diff --git a/android/test/common/build.gradle.kts b/android/test/common/build.gradle.kts index b1e6bead54a9..1e1e62dff1ec 100644 --- a/android/test/common/build.gradle.kts +++ b/android/test/common/build.gradle.kts @@ -5,7 +5,6 @@ import utilities.Flavors plugins { alias(libs.plugins.mullvad.utilities) alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) } diff --git a/android/test/e2e/build.gradle.kts b/android/test/e2e/build.gradle.kts index 702d887b72a3..cc1a46ddf60b 100644 --- a/android/test/e2e/build.gradle.kts +++ b/android/test/e2e/build.gradle.kts @@ -8,9 +8,8 @@ import utilities.playStagemoleDebug plugins { alias(libs.plugins.mullvad.utilities) alias(libs.plugins.android.test) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlinx.serialization) - id("de.mannodermaus.android-junit5") +// id("de.mannodermaus.android-junit5") } android { @@ -22,8 +21,8 @@ android { minSdk = libs.versions.min.sdk.get().toInt() testApplicationId = "net.mullvad.mullvadvpn.test.e2e" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" - testInstrumentationRunnerArguments["runnerBuilder"] = - "de.mannodermaus.junit5.AndroidJUnit5Builder" +// testInstrumentationRunnerArguments["runnerBuilder"] = +// "de.mannodermaus.junit5.AndroidJUnit5Builder" targetProjectPath = ":app" testInstrumentationRunnerArguments += buildMap { @@ -108,11 +107,11 @@ dependencies { implementation(libs.androidx.test.uiautomator) implementation(libs.androidx.ui.test) implementation(libs.kermit) - implementation(libs.junit.jupiter.api) - implementation(libs.junit5.android.test.core) - implementation(libs.junit5.android.test.compose) - implementation(libs.junit5.android.test.extensions) - implementation(libs.junit5.android.test.runner) +// implementation(libs.junit.jupiter.api) +// implementation(libs.junit5.android.test.core) +// implementation(libs.junit5.android.test.compose) +// implementation(libs.junit5.android.test.extensions) +// implementation(libs.junit5.android.test.runner) implementation(libs.kotlin.stdlib) implementation(libs.ktor.client.core) implementation(libs.ktor.client.cio) diff --git a/android/test/mockapi/build.gradle.kts b/android/test/mockapi/build.gradle.kts index a8df61a65596..331218eaf5f5 100644 --- a/android/test/mockapi/build.gradle.kts +++ b/android/test/mockapi/build.gradle.kts @@ -4,8 +4,7 @@ import utilities.Flavors plugins { alias(libs.plugins.mullvad.utilities) alias(libs.plugins.android.test) - alias(libs.plugins.kotlin.android) - id("de.mannodermaus.android-junit5") +// id("de.mannodermaus.android-junit5") } android { @@ -17,8 +16,8 @@ android { minSdk = libs.versions.min.sdk.get().toInt() testApplicationId = "net.mullvad.mullvadvpn.test.mockapi" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" - testInstrumentationRunnerArguments["runnerBuilder"] = - "de.mannodermaus.junit5.AndroidJUnit5Builder" +// testInstrumentationRunnerArguments["runnerBuilder"] = +// "de.mannodermaus.junit5.AndroidJUnit5Builder" targetProjectPath = ":app" missingDimensionStrategy(FlavorDimensions.BILLING, Flavors.OSS) diff --git a/android/tile/build.gradle.kts b/android/tile/build.gradle.kts new file mode 100644 index 000000000000..e69de29bb2d1