diff options
author | Ting-Yuan Huang <laszio@google.com> | 2021-08-30 15:42:20 -0700 |
---|---|---|
committer | laszio <ting-yuan@users.noreply.github.com> | 2021-08-31 00:28:39 -0700 |
commit | 3190c309a42d8920ec1d3503109ab058a3e2673d (patch) | |
tree | 2ccec4f43954c1e8c25cd71ed3088135030b6387 /gradle-plugin | |
parent | 7cc0db72cfb1e09d18c1f1646dc447943e57561d (diff) | |
download | ksp-3190c309a42d8920ec1d3503109ab058a3e2673d.tar.gz |
Disable isIntermoduleIncremental when isIncremental is false
Also label isKspIncremental and isIntermoduleIncremental with @Input
Diffstat (limited to 'gradle-plugin')
-rw-r--r-- | gradle-plugin/src/main/kotlin/com/google/devtools/ksp/gradle/KspSubplugin.kt | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/gradle-plugin/src/main/kotlin/com/google/devtools/ksp/gradle/KspSubplugin.kt b/gradle-plugin/src/main/kotlin/com/google/devtools/ksp/gradle/KspSubplugin.kt index 4128a7d3..9746cb04 100644 --- a/gradle-plugin/src/main/kotlin/com/google/devtools/ksp/gradle/KspSubplugin.kt +++ b/gradle-plugin/src/main/kotlin/com/google/devtools/ksp/gradle/KspSubplugin.kt @@ -286,6 +286,7 @@ class KspGradleSubplugin @Inject internal constructor(private val registry: Tool } ) } + kspTask.isKspIncremental = isIncremental } fun configureAsAbstractCompile(kspTask: AbstractCompile) { @@ -317,7 +318,6 @@ class KspGradleSubplugin @Inject internal constructor(private val registry: Tool kspTask.configureCompilation( kotlinCompilation as KotlinCompilationData<*>, kotlinCompileTask, - isIncremental ) } } @@ -445,10 +445,12 @@ interface KspTask : Task { @get:LocalState val kspCacheDir: DirectoryProperty + @get:Input + var isKspIncremental: Boolean + fun configureCompilation( kotlinCompilation: KotlinCompilationData<*>, kotlinCompile: AbstractKotlinCompile<*>, - isIncremental: Boolean, ) } @@ -459,13 +461,12 @@ abstract class KspTaskJvm : KotlinCompile(KotlinJvmOptionsImpl()), KspTask { @get:InputFiles abstract val classpathStructure: ConfigurableFileCollection - @get:Internal + @get:Input var isIntermoduleIncremental: Boolean = false override fun configureCompilation( kotlinCompilation: KotlinCompilationData<*>, kotlinCompile: AbstractKotlinCompile<*>, - isIncremental: Boolean, ) { Configurator<KspTaskJvm>(kotlinCompilation).configure(this) kotlinCompile as KotlinCompile @@ -476,8 +477,10 @@ abstract class KspTaskJvm : KotlinCompile(KotlinJvmOptionsImpl()), KspTask { } ) - isIntermoduleIncremental = project.findProperty("ksp.incremental.intermodule")?.toString()?.toBoolean() ?: true - if (isIncremental && isIntermoduleIncremental) { + isIntermoduleIncremental = + (project.findProperty("ksp.incremental.intermodule")?.toString()?.toBoolean() ?: true) && + isKspIncremental + if (isIntermoduleIncremental) { val classStructureIfIncremental = project.configurations.detachedConfiguration( project.dependencies.create(project.files(project.provider { kotlinCompile.classpath })) ) @@ -604,7 +607,7 @@ abstract class KspTaskJvm : KotlinCompile(KotlinJvmOptionsImpl()), KspTask { sourceRoots: SourceRoots, changedFiles: ChangedFiles, ) { - if (isIntermoduleIncremental) { + if (isKspIncremental && isIntermoduleIncremental) { // findClasspathChanges may clear caches, if there are // 1. unknown changes, or // 2. changes in annotation processors. @@ -629,7 +632,6 @@ abstract class KspTaskJS @Inject constructor( override fun configureCompilation( kotlinCompilation: KotlinCompilationData<*>, kotlinCompile: AbstractKotlinCompile<*>, - isIncremental: Boolean, ) { Configurator<KspTaskJS>(kotlinCompilation).configure(this) kotlinCompile as Kotlin2JsCompile @@ -694,7 +696,6 @@ abstract class KspTaskMetadata : KotlinCompileCommon(KotlinMultiplatformCommonOp override fun configureCompilation( kotlinCompilation: KotlinCompilationData<*>, kotlinCompile: AbstractKotlinCompile<*>, - isIncremental: Boolean, ) { Configurator<KspTaskMetadata>(kotlinCompilation).configure(this) kotlinCompile as KotlinCompileCommon @@ -773,7 +774,6 @@ abstract class KspTaskNative @Inject constructor( override fun configureCompilation( kotlinCompilation: KotlinCompilationData<*>, kotlinCompile: AbstractKotlinCompile<*>, - isIncremental: Boolean, ) = Unit // KotlinNativeCompile doesn't support Gradle incremental compilation. Therefore, there is no information about |