Skip to content

Commit 3c56062

Browse files
committed
Cleanup build task
1 parent f8e3ded commit 3c56062

File tree

4 files changed

+15
-26
lines changed

4 files changed

+15
-26
lines changed

api/binary-compatibility-validator.api

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ public final class kotlinx/validation/api/klib/KlibDumpKt {
162162
public static final fun saveTo (Lkotlinx/validation/api/klib/KlibDump;Ljava/io/File;)V
163163
}
164164

165-
public final class kotlinx/validation/api/klib/KlibSignatureVersion {
165+
public final class kotlinx/validation/api/klib/KlibSignatureVersion : java/io/Serializable {
166166
public static final field Companion Lkotlinx/validation/api/klib/KlibSignatureVersion$Companion;
167167
public fun equals (Ljava/lang/Object;)Z
168168
public fun hashCode ()I

src/main/kotlin/BinaryCompatibilityValidatorPlugin.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -614,9 +614,8 @@ private class KlibValidationPipelineBuilder(
614614
// 'group' is not specified deliberately, so it will be hidden from ./gradlew tasks
615615
description = "Builds Kotlin KLib ABI dump for 'main' compilations of $projectName. " +
616616
"Complementary task and shouldn't be called manually"
617-
klibFile = project.files(project.provider { compilation.output.classesDirs })
618-
compilationDependencies = project.files(project.provider { compilation.compileDependencyFiles })
619-
signatureVersion = SerializableSignatureVersion(extension.klib.signatureVersion)
617+
klibFile.from(project.provider { compilation.output.classesDirs })
618+
signatureVersion = extension.klib.signatureVersion
620619
outputApiFile = apiBuildDir.resolve(klibDumpFileName)
621620
}
622621
return buildTask

src/main/kotlin/KotlinKlibAbiBuildTask.kt

Lines changed: 6 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -9,42 +9,27 @@ import kotlinx.validation.api.klib.KLibDumpFilters
99
import kotlinx.validation.api.klib.KlibDump
1010
import kotlinx.validation.api.klib.KlibSignatureVersion
1111
import kotlinx.validation.api.klib.saveTo
12-
import org.gradle.api.file.FileCollection
12+
import org.gradle.api.file.ConfigurableFileCollection
1313
import org.gradle.api.tasks.Input
1414
import org.gradle.api.tasks.InputFiles
15-
import org.gradle.api.tasks.Optional
1615
import org.gradle.api.tasks.TaskAction
17-
import java.io.Serializable
18-
19-
internal class SerializableSignatureVersion(val version: Int) : Serializable {
20-
constructor(version: KlibSignatureVersion) : this(version.version)
21-
22-
fun toKlibSignatureVersion(): KlibSignatureVersion = KlibSignatureVersion(version)
23-
}
2416

2517
/**
2618
* Generates a text file with a KLib ABI dump for a single klib.
2719
*/
2820
internal abstract class KotlinKlibAbiBuildTask : BuildTaskBase() {
2921

3022
/**
31-
* Path to a klib to dump.
32-
*/
33-
@InputFiles
34-
lateinit var klibFile: FileCollection
35-
36-
/**
37-
* Bind this task with a klib compilation.
23+
* Collection consisting of a single path to compiled klib (either file, or directory).
3824
*/
39-
@InputFiles
40-
lateinit var compilationDependencies: FileCollection
25+
@get:InputFiles
26+
val klibFile: ConfigurableFileCollection = project.objects.fileCollection()
4127

4228
/**
4329
* Refer to [KlibValidationSettings.signatureVersion] for details.
4430
*/
45-
@Optional
4631
@get:Input
47-
var signatureVersion: SerializableSignatureVersion = SerializableSignatureVersion(KlibSignatureVersion.LATEST)
32+
var signatureVersion: KlibSignatureVersion = KlibSignatureVersion.LATEST
4833

4934
/**
5035
* Name of a target [klibFile] was compiled for.
@@ -62,7 +47,7 @@ internal abstract class KotlinKlibAbiBuildTask : BuildTaskBase() {
6247
ignoredClasses.addAll(this@KotlinKlibAbiBuildTask.ignoredClasses)
6348
ignoredPackages.addAll(this@KotlinKlibAbiBuildTask.ignoredPackages)
6449
nonPublicMarkers.addAll(this@KotlinKlibAbiBuildTask.nonPublicMarkers)
65-
signatureVersion = this@KotlinKlibAbiBuildTask.signatureVersion.toKlibSignatureVersion()
50+
signatureVersion = this@KotlinKlibAbiBuildTask.signatureVersion
6651
})
6752

6853
dump.saveTo(outputApiFile)

src/main/kotlin/api/klib/KlibSignatureVersion.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55

66
package kotlinx.validation.api.klib
77

8-
public class KlibSignatureVersion internal constructor(internal val version: Int) {
8+
import java.io.Serializable
9+
10+
public class KlibSignatureVersion internal constructor(internal val version: Int) : Serializable {
911

1012
public companion object {
1113
public fun of(value: Int): KlibSignatureVersion {
@@ -16,6 +18,9 @@ public class KlibSignatureVersion internal constructor(internal val version: Int
1618
}
1719

1820
public val LATEST: KlibSignatureVersion = KlibSignatureVersion(Int.MIN_VALUE)
21+
22+
@JvmStatic
23+
private val serialVersionUID: Long = 1
1924
}
2025

2126
override fun equals(other: Any?): Boolean {

0 commit comments

Comments
 (0)