aboutsummaryrefslogtreecommitdiff
path: root/gradle-plugin
diff options
context:
space:
mode:
authorTing-Yuan Huang <laszio@google.com>2021-08-30 17:03:07 -0700
committerlaszio <ting-yuan@users.noreply.github.com>2021-08-31 00:28:39 -0700
commitcceb70384b6b6e86c8c7cc60d348e4343f3c4653 (patch)
tree99663eaefc486c688078633931a6c9c1499133d3 /gradle-plugin
parent3190c309a42d8920ec1d3503109ab058a3e2673d (diff)
downloadksp-cceb70384b6b6e86c8c7cc60d348e4343f3c4653.tar.gz
Clear KSP incremental cache if not incremental
Diffstat (limited to 'gradle-plugin')
-rw-r--r--gradle-plugin/src/main/kotlin/com/google/devtools/ksp/gradle/KspSubplugin.kt26
1 files changed, 15 insertions, 11 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 9746cb04..e29162eb 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
@@ -607,16 +607,20 @@ abstract class KspTaskJvm : KotlinCompile(KotlinJvmOptionsImpl()), KspTask {
sourceRoots: SourceRoots,
changedFiles: ChangedFiles,
) {
- if (isKspIncremental && isIntermoduleIncremental) {
- // findClasspathChanges may clear caches, if there are
- // 1. unknown changes, or
- // 2. changes in annotation processors.
- val classpathChanges = findClasspathChanges(changedFiles)
- args.addChangedClasses(classpathChanges)
- } else {
- if (changedFiles.hasNonSourceChange()) {
- clearIncCache()
+ if (isKspIncremental) {
+ if (isIntermoduleIncremental) {
+ // findClasspathChanges may clear caches, if there are
+ // 1. unknown changes, or
+ // 2. changes in annotation processors.
+ val classpathChanges = findClasspathChanges(changedFiles)
+ args.addChangedClasses(classpathChanges)
+ } else {
+ if (changedFiles.hasNonSourceChange()) {
+ clearIncCache()
+ }
}
+ } else {
+ clearIncCache()
}
args.addChangedFiles(changedFiles)
super.callCompilerAsync(args, sourceRoots, changedFiles)
@@ -683,7 +687,7 @@ abstract class KspTaskJS @Inject constructor(
sourceRoots: SourceRoots,
changedFiles: ChangedFiles,
) {
- if (changedFiles.hasNonSourceChange()) {
+ if (!isKspIncremental || changedFiles.hasNonSourceChange()) {
clearIncCache()
} else {
args.addChangedFiles(changedFiles)
@@ -747,7 +751,7 @@ abstract class KspTaskMetadata : KotlinCompileCommon(KotlinMultiplatformCommonOp
sourceRoots: SourceRoots,
changedFiles: ChangedFiles,
) {
- if (changedFiles.hasNonSourceChange()) {
+ if (!isKspIncremental || changedFiles.hasNonSourceChange()) {
clearIncCache()
} else {
args.addChangedFiles(changedFiles)