Reproducer for Android Gradle plugin gRPC bug
diff --git a/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.kt b/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.kt index e386be0..b91718a 100644 --- a/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.kt +++ b/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.kt
@@ -49,9 +49,9 @@ //keep it globally to avoid test grouping on TC private val generatedTestNames = hashSetOf<String>() - private val common = FlavorConfig(TargetBackend.ANDROID, "common", 4) + private val common = FlavorConfig(TargetBackend.ANDROID, "common") private val reflect = FlavorConfig(TargetBackend.ANDROID, "reflect") - private val commonIr = FlavorConfig(TargetBackend.ANDROID_IR, "common_ir", 4) + private val commonIr = FlavorConfig(TargetBackend.ANDROID_IR, "common_ir") private val reflectIr = FlavorConfig(TargetBackend.ANDROID_IR, "reflect_ir") class FlavorConfig(private val backend: TargetBackend, private val prefix: String, private val limit: Int = 1) { @@ -66,7 +66,7 @@ // Allocating up to 2500 files per folder should be fine for each app flavor, // thus avoiding the need for multidex, which is necessary when there are more than 64K methods. // Each folder will be archived using build.gradle.kts. - val index = writtenFilesCount / 2500 + val index = writtenFilesCount / 65535 val name = "$prefix$index" check(index < limit) { "Please add a new flavor in build.gradle for $name" } return name
diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/android/AndroidCodegenIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/android/AndroidCodegenIT.kt index cbcfd67..903dfa6 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/android/AndroidCodegenIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/android/AndroidCodegenIT.kt
@@ -39,6 +39,7 @@ enableGradleDebug = false, buildJdk = jdkVersion.location ) { + makeSnapshotTo("tmp") build("assembleAndroidTest", forceOutput = true, enableGradleDaemonMemoryLimitInMb = 6000) build("nexusCheck", forceOutput = true, enableGradleDaemonMemoryLimitInMb = 6000) }
diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/codegen-tests/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/codegen-tests/build.gradle.kts index 1373b73..a120a36 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/codegen-tests/build.gradle.kts +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/codegen-tests/build.gradle.kts
@@ -7,7 +7,7 @@ defaultConfig { applicationId = "org.jetbrains.kotlin.android.tests" - minSdk = 14 + minSdk = 21 compileSdk = 34 targetSdk = 34 versionCode = 1 @@ -28,14 +28,8 @@ productFlavors { listOf( "common0", - "common1", - "common2", - "common3", "reflect0", "common_ir0", - "common_ir1", - "common_ir2", - "common_ir3", "reflect_ir0" ).forEach { create(it) {