From 6ee6bb623447e4dedb4dd3830b2cc7f063668518 Mon Sep 17 00:00:00 2001 From: Vsevolod Tolstopyatov Date: Mon, 31 May 2021 20:16:21 +0300 Subject: [PATCH] Do not use objects container to retreive project name, compute it statically once instead --- src/main/kotlin/ApiCompareCompareTask.kt | 5 ++--- src/main/kotlin/BinaryCompatibilityValidatorPlugin.kt | 3 --- src/main/kotlin/KotlinApiBuildTask.kt | 6 +++--- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/main/kotlin/ApiCompareCompareTask.kt b/src/main/kotlin/ApiCompareCompareTask.kt index ba9bb37a..5810bdab 100644 --- a/src/main/kotlin/ApiCompareCompareTask.kt +++ b/src/main/kotlin/ApiCompareCompareTask.kt @@ -39,8 +39,7 @@ open class ApiCompareCompareTask @Inject constructor(private val objects: Object @Optional val dummyOutputFile: File? = null - @get:Input - internal val projectName = objects.property(String::class.java) + private val projectName = project.name private val rootDir = project.rootProject.rootDir @@ -52,7 +51,7 @@ open class ApiCompareCompareTask @Inject constructor(private val objects: Object "Please ensure that ':apiDump' was executed in order to get API dump to compare the build against") } - val subject = projectName.get() + val subject = projectName val apiBuildDirFiles = mutableSetOf() val expectedApiFiles = mutableSetOf() objects.fileTree().from(apiBuildDir).visit { file -> diff --git a/src/main/kotlin/BinaryCompatibilityValidatorPlugin.kt b/src/main/kotlin/BinaryCompatibilityValidatorPlugin.kt index 84940089..7bf2ddd8 100644 --- a/src/main/kotlin/BinaryCompatibilityValidatorPlugin.kt +++ b/src/main/kotlin/BinaryCompatibilityValidatorPlugin.kt @@ -97,7 +97,6 @@ private fun Project.configureKotlinCompilation( inputDependencies = files(provider { if (isEnabled) compilation.compileDependencyFiles else emptyList() }) } outputApiDir = apiBuildDir - this.projectName.set(project.name) } configureCheckTasks(apiBuildDir, apiBuild, extension) } @@ -119,7 +118,6 @@ private fun Project.configureApiTasks(sourceSet: SourceSet, extension: ApiValida inputClassesDirs = files(provider { if (isEnabled) sourceSet.output.classesDirs else emptyList() }) inputDependencies = files(provider { if (isEnabled) sourceSet.output.classesDirs else emptyList() }) outputApiDir = apiBuildDir - this.projectName.set(project.name) } configureCheckTasks(apiBuildDir, apiBuild, extension) @@ -143,7 +141,6 @@ private fun Project.configureCheckTasks( null } this.apiBuildDir = apiBuildDir - this.projectName.set(project.name) dependsOn(apiBuild) } diff --git a/src/main/kotlin/KotlinApiBuildTask.kt b/src/main/kotlin/KotlinApiBuildTask.kt index a739ea60..af13e387 100644 --- a/src/main/kotlin/KotlinApiBuildTask.kt +++ b/src/main/kotlin/KotlinApiBuildTask.kt @@ -36,8 +36,8 @@ open class KotlinApiBuildTask @Inject constructor( @get:Input val ignoredClasses : Set get() = extension.ignoredClasses - @get:Input - val projectName = project.objects.property(String::class.java) + @get:Internal + internal val projectName = project.name @TaskAction fun generate() { @@ -53,7 +53,7 @@ open class KotlinApiBuildTask @Inject constructor( .filterOutNonPublic(ignoredPackages, ignoredClasses) .filterOutAnnotated(nonPublicMarkers.map { it.replace(".", "/") }.toSet()) - outputApiDir.resolve("${projectName.get()}.api").bufferedWriter().use { writer -> + outputApiDir.resolve("$projectName.api").bufferedWriter().use { writer -> signatures .sortedBy { it.name } .forEach { api ->