From ebeaaf7703d34e9c3572a0363e1f6b59777d6748 Mon Sep 17 00:00:00 2001 From: Daniel Santiago Date: Thu, 29 Jun 2023 06:32:10 -0700 Subject: [PATCH] Migrated mutable*Of().apply pattern to the build APIs and opt-in to those stdlib APIs. Also cleanup two sets of warnings in the plugin code: * A warning was being emitted due to the lack of usage of jvmToolchain() in the agp-* modules. * Unused local val in IncrementalProcessorTest RELNOTES=N/A PiperOrigin-RevId: 544338888 --- java/dagger/hilt/android/plugin/agp-wrapper-7-0/build.gradle | 4 ++++ java/dagger/hilt/android/plugin/agp-wrapper-7-1/build.gradle | 4 ++++ java/dagger/hilt/android/plugin/agp-wrapper-7-2/build.gradle | 4 ++++ java/dagger/hilt/android/plugin/agp-wrapper-impl/build.gradle | 4 ++++ java/dagger/hilt/android/plugin/agp-wrapper/build.gradle | 4 ++++ java/dagger/hilt/android/plugin/main/build.gradle | 1 + .../hilt/android/plugin/HiltCommandLineArgumentProvider.kt | 2 +- .../kotlin/dagger/hilt/android/plugin/HiltGradlePlugin.kt | 4 ++-- .../main/kotlin/dagger/hilt/android/plugin/root/Aggregator.kt | 4 ++-- .../plugin/main/src/test/kotlin/IncrementalProcessorTest.kt | 1 - 10 files changed, 26 insertions(+), 6 deletions(-) diff --git a/java/dagger/hilt/android/plugin/agp-wrapper-7-0/build.gradle b/java/dagger/hilt/android/plugin/agp-wrapper-7-0/build.gradle index d3332970c34..3c034956504 100644 --- a/java/dagger/hilt/android/plugin/agp-wrapper-7-0/build.gradle +++ b/java/dagger/hilt/android/plugin/agp-wrapper-7-0/build.gradle @@ -2,6 +2,10 @@ plugins { id 'org.jetbrains.kotlin.jvm' } +kotlin { + jvmToolchain(11) +} + dependencies { implementation project(':agp-wrapper') compileOnly gradleApi() diff --git a/java/dagger/hilt/android/plugin/agp-wrapper-7-1/build.gradle b/java/dagger/hilt/android/plugin/agp-wrapper-7-1/build.gradle index ee75692a649..5bc8d3d1c7d 100644 --- a/java/dagger/hilt/android/plugin/agp-wrapper-7-1/build.gradle +++ b/java/dagger/hilt/android/plugin/agp-wrapper-7-1/build.gradle @@ -2,6 +2,10 @@ plugins { id 'org.jetbrains.kotlin.jvm' } +kotlin { + jvmToolchain(11) +} + dependencies { implementation project(':agp-wrapper') compileOnly gradleApi() diff --git a/java/dagger/hilt/android/plugin/agp-wrapper-7-2/build.gradle b/java/dagger/hilt/android/plugin/agp-wrapper-7-2/build.gradle index a6b92071b77..a4133019651 100644 --- a/java/dagger/hilt/android/plugin/agp-wrapper-7-2/build.gradle +++ b/java/dagger/hilt/android/plugin/agp-wrapper-7-2/build.gradle @@ -2,6 +2,10 @@ plugins { id 'org.jetbrains.kotlin.jvm' } +kotlin { + jvmToolchain(11) +} + dependencies { implementation project(':agp-wrapper') compileOnly gradleApi() diff --git a/java/dagger/hilt/android/plugin/agp-wrapper-impl/build.gradle b/java/dagger/hilt/android/plugin/agp-wrapper-impl/build.gradle index 7f2bfacdec1..3ad558a8af9 100644 --- a/java/dagger/hilt/android/plugin/agp-wrapper-impl/build.gradle +++ b/java/dagger/hilt/android/plugin/agp-wrapper-impl/build.gradle @@ -2,6 +2,10 @@ plugins { id 'org.jetbrains.kotlin.jvm' } +kotlin { + jvmToolchain(11) +} + dependencies { api project(':agp-wrapper') implementation project(':agp-wrapper-7-0') diff --git a/java/dagger/hilt/android/plugin/agp-wrapper/build.gradle b/java/dagger/hilt/android/plugin/agp-wrapper/build.gradle index e959d7af95f..71ea7242403 100644 --- a/java/dagger/hilt/android/plugin/agp-wrapper/build.gradle +++ b/java/dagger/hilt/android/plugin/agp-wrapper/build.gradle @@ -2,6 +2,10 @@ plugins { id 'org.jetbrains.kotlin.jvm' } +kotlin { + jvmToolchain(11) +} + dependencies { compileOnly gradleApi() compileOnly "com.android.tools.build:gradle:$agp_version" diff --git a/java/dagger/hilt/android/plugin/main/build.gradle b/java/dagger/hilt/android/plugin/main/build.gradle index 367bda0b118..10eb02aa043 100644 --- a/java/dagger/hilt/android/plugin/main/build.gradle +++ b/java/dagger/hilt/android/plugin/main/build.gradle @@ -91,6 +91,7 @@ kotlin { compileKotlin { kotlinOptions { allWarningsAsErrors = true + freeCompilerArgs += [ "-opt-in=kotlin.ExperimentalStdlibApi" ] } } diff --git a/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/HiltCommandLineArgumentProvider.kt b/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/HiltCommandLineArgumentProvider.kt index 11f4d483a06..88c9f87eeda 100644 --- a/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/HiltCommandLineArgumentProvider.kt +++ b/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/HiltCommandLineArgumentProvider.kt @@ -36,7 +36,7 @@ internal class HiltCommandLineArgumentProvider( private val prefix = if (forKsp) "" else "-A" - override fun asArguments() = mutableMapOf().apply { + override fun asArguments() = buildMap { // Enable Dagger's fast-init, the best mode for Hilt. put("dagger.fastInit", "enabled") // Disable @AndroidEntryPoint superclass validation. diff --git a/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/HiltGradlePlugin.kt b/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/HiltGradlePlugin.kt index 5bf0f87be81..3762a66e4a5 100644 --- a/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/HiltGradlePlugin.kt +++ b/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/HiltGradlePlugin.kt @@ -313,7 +313,7 @@ class HiltGradlePlugin @Inject constructor( config.isCanBeResolved = true // Add user annotation processor configuration, so that SPI plugins and other processors // are discoverable. - val apConfigurations: List = mutableListOf().apply { + val apConfigurations: List = buildList { add(variant.annotationProcessorConfiguration) // TODO(danysantiago): Also add KSP config project.configurations.findByName(getKaptConfigName(variant))?.let { add(it) } @@ -324,7 +324,7 @@ class HiltGradlePlugin @Inject constructor( } fun getInputClasspath(artifactAttributeValue: String) = - mutableListOf().apply { + buildList { @Suppress("DEPRECATION") // Older variant API is deprecated if (variant is com.android.build.gradle.api.TestVariant) { add(variant.testedVariant.runtimeConfiguration) diff --git a/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/root/Aggregator.kt b/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/root/Aggregator.kt index e3af04db583..ba419352ac9 100644 --- a/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/root/Aggregator.kt +++ b/java/dagger/hilt/android/plugin/main/src/main/kotlin/dagger/hilt/android/plugin/root/Aggregator.kt @@ -123,10 +123,10 @@ private constructor( return object : AnnotationVisitor(asmApiVersion, nextAnnotationVisitor) { lateinit var rootClass: String var rootPackage: String? = null - val rootSimpleNames: MutableList = mutableListOf() + val rootSimpleNames = mutableListOf() lateinit var originatingRootClass: String var originatingRootPackage: String? = null - val originatingRootSimpleNames: MutableList = mutableListOf() + val originatingRootSimpleNames = mutableListOf() lateinit var rootAnnotationClassName: Type override fun visit(name: String, value: Any?) { diff --git a/java/dagger/hilt/android/plugin/main/src/test/kotlin/IncrementalProcessorTest.kt b/java/dagger/hilt/android/plugin/main/src/test/kotlin/IncrementalProcessorTest.kt index d13253b02aa..1e8490f1b06 100644 --- a/java/dagger/hilt/android/plugin/main/src/test/kotlin/IncrementalProcessorTest.kt +++ b/java/dagger/hilt/android/plugin/main/src/test/kotlin/IncrementalProcessorTest.kt @@ -195,7 +195,6 @@ class IncrementalProcessorTest(private val incapMode: String) { // Compute directory paths val defaultGenSrcDir = "build/generated/ap_generated_sources/debug/out/" - val testDefaultGenSrcDir = "build/generated/ap_generated_sources/debugUnitTest/out/" fun getComponentTreeDepsGenSrcDir(variant: String) = if (incapMode == ISOLATING_MODE) { "build/generated/hilt/component_trees/$variant/" } else {