Skip to content

Commit 64164ab

Browse files
authored
Try following KSP incremental best practices on anvilcodegen (#5205)
The KotlinPoet docs suggest using the added flow for declaring dependencies. Make the dependencies of the generated files isolating instead of aggregating.
1 parent 8245ad8 commit 64164ab

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

anvilcodegen/src/main/kotlin/io/element/android/anvilcodegen/ContributesNodeProcessor.kt

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import com.squareup.kotlinpoet.KModifier
2828
import com.squareup.kotlinpoet.ParameterizedTypeName.Companion.parameterizedBy
2929
import com.squareup.kotlinpoet.STAR
3030
import com.squareup.kotlinpoet.TypeSpec
31+
import com.squareup.kotlinpoet.ksp.addOriginatingKSFile
3132
import com.squareup.kotlinpoet.ksp.toTypeName
3233
import com.squareup.kotlinpoet.ksp.writeTo
3334
import dagger.Binds
@@ -78,6 +79,7 @@ class ContributesNodeProcessor(
7879
)
7980
.addType(
8081
TypeSpec.classBuilder(moduleClassName)
82+
.addOriginatingKSFile(ksClass.containingFile!!)
8183
.addModifiers(KModifier.ABSTRACT)
8284
.addAnnotation(Module::class)
8385
.addAnnotation(AnnotationSpec.builder(ContributesTo::class).addMember("%T::class", scope.toTypeName()).build())
@@ -102,10 +104,7 @@ class ContributesNodeProcessor(
102104

103105
content.writeTo(
104106
codeGenerator = codeGenerator,
105-
dependencies = Dependencies(
106-
aggregating = true,
107-
ksClass.containingFile!!
108-
),
107+
dependencies = Dependencies(aggregating = false),
109108
)
110109
}
111110

@@ -139,6 +138,7 @@ class ContributesNodeProcessor(
139138
val content = FileSpec.builder(generatedPackage, assistedFactoryClassName)
140139
.addType(
141140
TypeSpec.interfaceBuilder(assistedFactoryClassName)
141+
.addOriginatingKSFile(ksClass.containingFile!!)
142142
.addSuperinterface(ClassName.bestGuess(assistedNodeFactoryFqName.asString()).parameterizedBy(nodeClassName))
143143
.addAnnotation(AssistedFactory::class)
144144
.addFunction(
@@ -155,10 +155,7 @@ class ContributesNodeProcessor(
155155

156156
content.writeTo(
157157
codeGenerator = codeGenerator,
158-
dependencies = Dependencies(
159-
aggregating = true,
160-
ksClass.containingFile!!
161-
),
158+
dependencies = Dependencies(aggregating = false),
162159
)
163160
}
164161

0 commit comments

Comments
 (0)