Skip to content

Commit ac6dad3

Browse files
authored
Add support for TapmocExtension.checkDependencies (#113)
1 parent 22b5cf6 commit ac6dad3

File tree

4 files changed

+33
-8
lines changed

4 files changed

+33
-8
lines changed

gradle/libs.versions.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ bcv = "org.jetbrains.kotlinx:binary-compatibility-validator:0.16.3"
77
bouncycastle-pg = "org.bouncycastle:bcpg-jdk18on:1.78.1"
88
bouncycastle-prov = "org.bouncycastle:bcprov-jdk18on:1.78.1"
99
clikt = "com.github.ajalt.clikt:clikt:3.5.0"
10-
tapmoc = "com.gradleup.tapmoc:tapmoc-gradle-plugin:0.2.0"
10+
tapmoc = "com.gradleup.tapmoc:tapmoc-gradle-plugin:0.3.2"
1111
tapmoc-at-build-time = "com.gradleup.tapmoc:tapmoc-gradle-plugin:0.2.1-SNAPSHOT-dda1362c1d0f8389f50b362a08967793e320cf29"
1212
coroutines = "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.0"
1313
dokka = "org.jetbrains.dokka:dokka-gradle-plugin:2.1.0-Beta"

librarian-gradle-plugin/api/librarian-gradle-plugin.api

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public final class com/gradleup/librarian/gradle/MavenKt {
7878

7979
public final class com/gradleup/librarian/gradle/ModuleKt {
8080
public static final fun librarianModule (Lorg/gradle/api/Project;)V
81-
public static final fun librarianModule (Lorg/gradle/api/Project;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;Lcom/gradleup/librarian/gradle/Bcv;Ljava/lang/String;Lcom/gradleup/librarian/gradle/Publishing;Lcom/gradleup/librarian/gradle/Signing;)V
81+
public static final fun librarianModule (Lorg/gradle/api/Project;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;ZLcom/gradleup/librarian/gradle/Bcv;Ljava/lang/String;Lcom/gradleup/librarian/gradle/Publishing;Lcom/gradleup/librarian/gradle/Signing;)V
8282
}
8383

8484
public abstract class com/gradleup/librarian/gradle/Plugin : org/gradle/api/Plugin {

librarian-gradle-plugin/src/main/kotlin/com/gradleup/librarian/gradle/module.kt

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@ package com.gradleup.librarian.gradle
33
import com.gradleup.librarian.core.tooling.init.modulePropertiesFilename
44
import com.gradleup.librarian.core.tooling.init.rootPropertiesFilename
55
import com.gradleup.librarian.gradle.internal.findEnvironmentVariable
6-
import tapmoc.configureJavaCompatibility
7-
import tapmoc.configureKotlinCompatibility
86
import org.gradle.api.Project
7+
import tapmoc.TapmocExtension
98
import java.time.Duration
10-
import java.util.Properties
9+
import java.util.*
1110

1211
internal fun Properties.javaCompatibility(): Int {
1312
return getRequiredProperty("java.compatibility").toInt()
@@ -21,6 +20,10 @@ internal fun Properties.versionPackageName(): String? {
2120
return getProperty("version.packageName")
2221
}
2322

23+
internal fun Properties.checkDependencies(): Boolean {
24+
return getProperty("checkDependenciesCompatibility")?.toBoolean() ?: true
25+
}
26+
2427
internal fun Properties.publish(): Boolean? {
2528
return getProperty("publish")?.toBoolean()
2629
}
@@ -91,6 +94,7 @@ fun Project.librarianModule() {
9194
version = updateVersionAccordingToEnvironment(rootProperties.getRequiredProperty("pom.version")),
9295
jvmTarget = rootProperties.javaCompatibility(),
9396
kotlinTarget = rootProperties.kotlinCompatibility(),
97+
checkDependencies = rootProperties.checkDependencies(),
9498
bcv = bcv,
9599
versionPackageName = moduleProperties.versionPackageName(),
96100
publishing = Publishing(
@@ -120,6 +124,7 @@ fun Project.librarianModule(
120124
version: String,
121125
jvmTarget: Int?,
122126
kotlinTarget: String?,
127+
checkDependencies: Boolean,
123128
bcv: Bcv?,
124129
versionPackageName: String?,
125130
publishing: Publishing?,
@@ -131,8 +136,18 @@ fun Project.librarianModule(
131136
this.group = group
132137
this.version = version
133138

134-
jvmTarget?.let(::configureJavaCompatibility)
135-
kotlinTarget?.let(::configureKotlinCompatibility)
139+
pluginManager.apply("com.gradleup.tapmoc")
140+
project.extensions.getByType(TapmocExtension::class.java).apply {
141+
if (jvmTarget != null) {
142+
java(jvmTarget)
143+
}
144+
if (kotlinTarget != null) {
145+
kotlin(kotlinTarget)
146+
}
147+
if (checkDependencies) {
148+
checkDependencies()
149+
}
150+
}
136151

137152
if (versionPackageName != null) {
138153
configureGeneratedVersion(versionPackageName, version)

librarian-gradle-plugin/src/main/kotlin/com/gradleup/librarian/gradle/root.kt

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,17 @@ fun Project.librarianRoot(
3939
gcs: Gcs?,
4040
kdoc: Kdoc,
4141
) {
42-
librarianModule(group, version, null, null, null, null, publishing, signing)
42+
librarianModule(
43+
group = group,
44+
version = version,
45+
jvmTarget = null,
46+
kotlinTarget = null,
47+
checkDependencies = false,
48+
bcv = null,
49+
versionPackageName = null,
50+
publishing = publishing,
51+
signing = signing
52+
)
4353

4454
pluginManager.apply("com.gradleup.nmcp.aggregation")
4555
pluginManager.apply("com.gradleup.nmcp")

0 commit comments

Comments
 (0)