Skip to content

Commit 18914e1

Browse files
authored
Update a bunch of dependencies and cleanup publishing logic (#119)
* Update Gratatouille * Use JavaPluginExtension.withSourcesJar() and only set the javadoc jar for the actual Android publication * Update the build time nmcp * update api dump
1 parent b82defc commit 18914e1

4 files changed

Lines changed: 12 additions & 22 deletions

File tree

gradle/libs.versions.toml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
[versions]
22
kgp = "2.3.0"
3-
nmcp = "1.4.2"
3+
nmcp = "1.4.3"
4+
nmcp-build-time = "1.4.4-SNAPSHOT-7b0410ef4061d1249c7b161698764b8194838354"
45
mosaic = "0.18.0"
56

67
[libraries]
@@ -16,7 +17,7 @@ coroutines = "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.0"
1617
dokka = "org.jetbrains.dokka:dokka-gradle-plugin:2.1.0-Beta"
1718
google-auth = "com.google.auth:google-auth-library-oauth2-http:1.19.0"
1819
gradle-api = "dev.gradleplugins:gradle-api:8.8"
19-
gratatouille-gradle-plugin = "com.gradleup.gratatouille:com.gradleup.gratatouille.gradle.plugin:0.2.0"
20+
gratatouille-gradle-plugin = "com.gradleup.gratatouille:com.gradleup.gratatouille.gradle.plugin:0.2.2"
2021
inquirer = "com.github.kotlin-inquirer:kotlin-inquirer:0.1.0"
2122
jansi = "org.fusesource.jansi:jansi:2.4.0"
2223
jsonpath = "com.eygraber:jsonpathkt-kotlinx:3.0.2"
@@ -31,7 +32,7 @@ mordant = "com.github.ajalt.mordant:mordant:2.7.1"
3132
mosaic-runtime = { module = "com.jakewharton.mosaic:mosaic-runtime", version.ref = "mosaic" }
3233
nmcp = { module = "com.gradleup.nmcp:com.gradleup.nmcp.gradle.plugin", version.ref = "nmcp" }
3334
nmcp-tasks = { module = "com.gradleup.nmcp:nmcp-tasks", version.ref = "nmcp" }
34-
nmcp-build-time = "com.gradleup.nmcp:com.gradleup.nmcp.gradle.plugin:1.2.0-SNAPSHOT-b2b859946a8e9938f7b7f22003e9dc029aac69af"
35+
nmcp-build-time = { module = "com.gradleup.nmcp:com.gradleup.nmcp.gradle.plugin", version.ref = "nmcp-build-time" }
3536
okhttp = "com.squareup.okhttp3:okhttp:4.12.0"
3637
serialization-gradle-plugin = {module = "org.jetbrains.kotlin.plugin.serialization:org.jetbrains.kotlin.plugin.serialization.gradle.plugin", version.ref = "kgp"}
3738
serialization-json = "org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.0"

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ public final class com/gradleup/librarian/gradle/internal/Project_androidKt {
148148
}
149149

150150
public final class com/gradleup/librarian/gradle/internal/Publishing_androidKt {
151-
public static final fun createAndroidPublication (Lorg/gradle/api/Project;Ljava/lang/String;)V
151+
public static final fun createAndroidPublication (Lorg/gradle/api/Project;Ljava/lang/String;Lorg/gradle/api/tasks/TaskProvider;)V
152152
}
153153

154154
public final class com/gradleup/librarian/gradle/internal/task/GenerateMarkerFilesEntryPoint {

librarian-gradle-plugin/src/main/kotlin/com/gradleup/librarian/gradle/internal/publishing.android.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ package com.gradleup.librarian.gradle.internal
33
import com.android.build.api.dsl.LibraryExtension
44
import com.android.build.gradle.tasks.SourceJarTask
55
import com.gradleup.librarian.gradle.LIBRARIAN_GENERATE_VERSION
6-
import com.gradleup.librarian.gradle.internal.androidExtension
76
import org.gradle.api.Project
87
import org.gradle.api.publish.PublishingExtension
98
import org.gradle.api.publish.maven.MavenPublication
9+
import org.gradle.api.tasks.TaskProvider
1010

11-
fun Project.createAndroidPublication(variantName: String) {
11+
fun Project.createAndroidPublication(variantName: String, javadocTaskProvider: TaskProvider<*>) {
1212
val android = androidExtension
1313
check (android is LibraryExtension) {
1414
"Librarian: cannot publish non-library project"
@@ -23,6 +23,7 @@ fun Project.createAndroidPublication(variantName: String) {
2323
publications.register("default", MavenPublication::class.java) { publication ->
2424
afterEvaluate {
2525
publication.from(components.getByName(variantName))
26+
publication.artifact(javadocTaskProvider)
2627
}
2728
}
2829
}

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

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -161,15 +161,6 @@ private fun Project.emptyJavadoc(repositoryUrl: String?): TaskProvider<Jar> {
161161
}
162162
}
163163

164-
private fun Project.javaSources(): TaskProvider<Jar> {
165-
return tasks.register("librarianSources", Jar::class.java) {
166-
it.archiveClassifier.set("sources")
167-
168-
val sourceSets = project.extensions.getByType(JavaPluginExtension::class.java).sourceSets
169-
it.from(sourceSets.getByName("main").allSource)
170-
}
171-
}
172-
173164
/**
174165
* Creates missing publications based on the plugins being applied and the tasks found in the project.
175166
*
@@ -186,6 +177,9 @@ fun Project.createMissingPublications(
186177
) = configurePublishingInternal {
187178
val emptyJavadoc = emptyJavadoc(docUrl)
188179

180+
val javaPluginExtension = project.extensions.findByType(JavaPluginExtension::class.java)
181+
javaPluginExtension?.withSourcesJar()
182+
189183
when {
190184
project.plugins.hasPlugin("org.jetbrains.kotlin.multiplatform") -> {
191185
/**
@@ -212,25 +206,19 @@ fun Project.createMissingPublications(
212206
// Only add sources and javadoc for the main publication
213207
if (!it.name.endsWith("PluginMarkerMaven")) {
214208
it.artifact(emptyJavadoc)
215-
it.artifact(javaSources())
216209
}
217210
}
218211
}
219212

220213
hasAndroid -> {
221-
createAndroidPublication("release")
222-
223-
publications.withType(MavenPublication::class.java) {
224-
it.artifact(emptyJavadoc)
225-
}
214+
createAndroidPublication("release", emptyJavadoc)
226215
}
227216

228217
extensions.findByName("java") != null -> {
229218
publications.create("default", MavenPublication::class.java) {
230219

231220
it.from(components.findByName("java"))
232221
it.artifact(emptyJavadoc)
233-
it.artifact(javaSources())
234222
}
235223
}
236224
}

0 commit comments

Comments
 (0)