Skip to content

Commit de77a1c

Browse files
committed
Merge pull request '0.19.0-kotlin-2.2.0' (!52) from dev into master
Reviewed-on: https://git.sciprog.center/kscience/gradle-tools/pulls/52
2 parents 36dae25 + 47ed350 commit de77a1c

File tree

15 files changed

+334
-457
lines changed

15 files changed

+334
-457
lines changed

.space.kts

Lines changed: 0 additions & 43 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,50 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1818

1919
### Security
2020

21+
## 0.19.0-kotlin-2.2.0 - 2025-07-24
22+
23+
### Changed
24+
25+
- Replace manual JS dependency resource handling with `opensavvy` plugin.
26+
- Replace `useContextRecievers` with `useContextParameters`.
27+
- Submodule readme generated for all projects, not only for root
28+
- Replace `wasm` plugin configuration block with `wasmJs`
29+
30+
### Deprecated
31+
32+
- `useContextRecievers`
33+
- `wasm` configuration block
34+
35+
### Removed
36+
37+
- `fullStackApplication` configuration. Replaced by optional field in `fullStack`
38+
- Jupyter integration
39+
40+
## 0.17.x
41+
42+
### Added
43+
44+
- kotlinx-io dependency in version catalog
45+
46+
### Changed
47+
48+
- Use the new jvm executable option for full-stack instead of gradle application plugin.
49+
50+
### Removed
51+
52+
- `application` option
53+
54+
### Fixed
55+
56+
- Fix readme generation
57+
58+
## 0.16.0-kotlin-2.1.0 - 2025-01-02
59+
60+
### Changed
61+
62+
- Kotlin 2.1.0
63+
- Publication to central via `com.vanniktech.maven.publish.base`
64+
2165
## 0.15.4-kotlin-2.0.0 - 2024-06-04
2266

2367
### Added

README.md

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,3 @@ Includes JVM-IR and JS-IR-Browser targets.
1717

1818
## space.kscience.gradle.jvm
1919
`= kotlin("jvm") + space.kscience.gradle.common`
20-
21-
## space.kscience.gradle.js
22-
`= kotlin("js") + space.kscience.gradle.common`
23-
24-
## space.kscience.gradle.native
25-
add default native targets to `space.kscience.gradle.mpp`
26-
27-
## space.kscience.gradle.node
28-
add node target to `space.kscience.gradle.mpp`

build.gradle.kts

Lines changed: 29 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
1-
21
plugins {
32
`java-gradle-plugin`
43
`kotlin-dsl`
54
`maven-publish`
6-
// signing
75
`version-catalog`
8-
alias(libs.plugins.maven.publish)
96
alias(libs.plugins.jetbrains.changelog)
107
alias(libs.plugins.jetbrains.dokka)
11-
alias(libs.plugins.versions)
128
alias(libs.plugins.versions.update)
9+
alias(libs.plugins.maven.publish.base)
1310
}
1411

1512
group = "space.kscience"
@@ -26,12 +23,16 @@ repositories {
2623
}
2724

2825
dependencies {
29-
api(libs.kotlin.gradle)
30-
api(libs.foojay.resolver)
31-
implementation(libs.binary.compatibility.validator)
32-
implementation(libs.changelog.gradle)
33-
implementation(libs.dokka.gradle)
34-
implementation(libs.kotlin.jupyter.gradle)
26+
api("org.jetbrains.kotlin:kotlin-gradle-plugin:${libs.versions.kotlin.asProvider().get()}")
27+
api("org.gradle.toolchains:foojay-resolver:1.0.0")
28+
api("com.vanniktech:gradle-maven-publish-plugin:0.33.0")
29+
api("org.jetbrains.kotlinx:binary-compatibility-validator:0.18.0")
30+
api("org.jetbrains.intellij.plugins:gradle-changelog-plugin:${libs.versions.changelog.get()}")
31+
api("org.jetbrains.dokka:dokka-gradle-plugin:${libs.versions.dokka.get()}")
32+
33+
implementation("dev.opensavvy.resources.producer:dev.opensavvy.resources.producer.gradle.plugin:${libs.versions.opensavvy.resources.get()}")
34+
implementation("dev.opensavvy.resources.consumer:dev.opensavvy.resources.consumer.gradle.plugin:${libs.versions.opensavvy.resources.get()}")
35+
3536
implementation(libs.kotlin.serialization)
3637
implementation(libs.kotlinx.html)
3738
implementation(libs.tomlj)
@@ -71,7 +72,7 @@ gradlePlugin {
7172
}
7273
}
7374

74-
tasks.create("version") {
75+
tasks.register("version") {
7576
group = "publishing"
7677
val versionFileProvider = project.layout.buildDirectory.file("project-version.txt")
7778
outputs.file(versionFileProvider)
@@ -89,40 +90,21 @@ catalog.versionCatalog {
8990
}
9091

9192
//publishing the artifact
92-
93-
val sourcesJar by tasks.creating(Jar::class) {
94-
archiveClassifier.set("sources")
95-
from(sourceSets.named("main").get().allSource)
96-
}
97-
98-
val javadocsJar by tasks.creating(Jar::class) {
99-
group = JavaBasePlugin.DOCUMENTATION_GROUP
100-
archiveClassifier.set("javadoc")
101-
from(tasks.dokkaHtml)
102-
}
103-
104-
val emptyJavadocJar by tasks.creating(Jar::class) {
105-
group = JavaBasePlugin.DOCUMENTATION_GROUP
106-
archiveBaseName.set("empty")
107-
archiveClassifier.set("javadoc")
108-
}
109-
110-
111-
val emptySourcesJar by tasks.creating(Jar::class) {
112-
archiveClassifier.set("sources")
113-
archiveBaseName.set("empty")
114-
}
115-
11693
mavenPublishing {
117-
configure(
118-
com.vanniktech.maven.publish.GradlePlugin(
119-
javadocJar = com.vanniktech.maven.publish.JavadocJar.Dokka("dokkaHtml"),
120-
sourcesJar = true,
121-
)
122-
)
123-
124-
project.publishing.publications.create("maven", MavenPublication::class.java) {
125-
from(project.components.getByName("versionCatalog"))
94+
// configure(
95+
// com.vanniktech.maven.publish.GradlePlugin(
96+
// javadocJar = com.vanniktech.maven.publish.JavadocJar.Dokka("dokkaGenerate"),
97+
// sourcesJar = true,
98+
// )
99+
// )
100+
101+
publishing.publications.create<MavenPublication>("version-catalog") {
102+
from(components["versionCatalog"])
103+
artifactId = "version-catalog"
104+
105+
pom {
106+
name.set("version-catalog")
107+
}
126108
}
127109

128110
val vcs = "https://git.sciprog.center/kscience/gradle-tools"
@@ -175,7 +157,7 @@ mavenPublishing {
175157
val centralPassword: String? = project.findProperty("mavenCentralPassword") as? String
176158

177159
if (centralUser != null && centralPassword != null) {
178-
publishToMavenCentral(com.vanniktech.maven.publish.SonatypeHost.CENTRAL_PORTAL)
160+
publishToMavenCentral()
179161
signAllPublications()
180162
}
181163
}
@@ -197,10 +179,7 @@ tasks.withType<AbstractPublishToMaven>().configureEach {
197179

198180
versionCatalogUpdate {
199181
sortByKey.set(false)
200-
keep {
201-
keepUnusedVersions = true
202-
keepUnusedPlugins = true
203-
keepUnusedLibraries = true
204-
}
182+
183+
keep.keepUnusedVersions = true
205184
}
206185

gradle.properties

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
kotlin.code.style=official
22

3-
nl.littlerobots.vcu.resolver=true
3+
nl.littlerobots.vcu.resolver=true
4+
5+
org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled

gradle/libs.versions.toml

Lines changed: 35 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,48 @@
11
[versions]
22
# @pin
3-
kotlin = "2.1.0"
3+
kotlin = "2.2.0"
44
# @pin
5-
tools = "0.15.8-kotlin-2.1.0"
6-
atomicfu = "0.26.1"
5+
tools = "0.19.0-kotlin-2.2.0"
6+
atomicfu = "0.29.0"
77
changelog = "2.2.1"
8-
compose = "1.7.1"
9-
dokka = "2.0.0-Beta"
10-
jsBom = "1.0.0-pre.847"
8+
compose = "1.8.2"
9+
dokka = "2.0.0"
10+
jsBom = "2025.7.1"
1111
junit = "5.10.2"
12-
kotlin-jupyter = "0.12.0-352"
13-
kotlinx-benchmark = "0.4.13"
12+
kotlin-jupyter = "0.14.1-544-1"
13+
kotlinx-benchmark = "0.4.14"
1414
kotlinx-cli = "0.3.6"
15-
kotlinx-coroutines = "1.9.0"
16-
kotlinx-datetime = "0.6.1"
17-
kotlinx-html = "0.11.0"
15+
kotlinx-coroutines = "1.10.2"
16+
kotlinx-datetime = "0.7.1"
17+
kotlinx-html = "0.12.0"
1818
kotlinx-knit = "0.5.0"
1919
kotlinx-nodejs = "0.0.7"
20-
kotlinx-serialization = "1.7.3"
21-
kover = "0.8.3"
22-
ktor = "3.0.2"
23-
ksp = "2.1.0-1.0.29"
24-
logback = "1.5.12"
25-
slf4j = "2.0.16"
26-
xmlutil = "0.90.3"
20+
kotlinx-serialization = "1.9.0"
21+
kotlinx-io = "0.8.0"
22+
kover = "0.9.1"
23+
ktor = "3.2.1"
24+
ksp = "2.2.0-2.0.2"
25+
logback = "1.5.18"
26+
slf4j = "2.0.17"
27+
xmlutil = "0.91.1"
2728
yamlkt = "0.13.0"
29+
opensavvy-resources = "0.5.1"
2830

2931
[plugins]
30-
maven-publish = { id = "com.vanniktech.maven.publish", version = "0.30.0" }
32+
maven-publish = "com.vanniktech.maven.publish:0.33.0"
33+
maven-publish-base = "com.vanniktech.maven.publish.base:0.33.0"
3134
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
3235
compose-jb = { id = "org.jetbrains.compose", version.ref = "compose" }
33-
jetbrains-changelog = "org.jetbrains.changelog:2.2.1"
36+
jetbrains-changelog = { id = "org.jetbrains.changelog", version.ref = "changelog" }
3437
jetbrains-dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" }
3538
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
3639
kotlin-android-extensions = { id = "org.jetbrains.kotlin.android.extensions", version.ref = "kotlin" }
37-
kotlin-dsl = "org.gradle.kotlin.kotlin-dsl:5.1.2"
40+
kotlin-dsl = "org.gradle.kotlin.kotlin-dsl:6.1.2"
41+
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
42+
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
3843
kotlin-js = { id = "org.jetbrains.kotlin.js", version.ref = "kotlin" }
3944
kotlin-jupyter-api = { id = "org.jetbrains.kotlin.jupyter.api", version.ref = "kotlin-jupyter" }
40-
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
4145
kotlin-kapt = { id = "org.jetbrains.kotlin.kapt", version.ref = "kotlin" }
42-
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
4346
kotlin-native-cocoapods = { id = "org.jetbrains.kotlin.native.cocoapods", version.ref = "kotlin" }
4447
kotlin-plugin-allopen = { id = "org.jetbrains.kotlin.plugin.allopen", version.ref = "kotlin" }
4548
kotlin-plugin-jpa = { id = "org.jetbrains.kotlin.plugin.jpa", version.ref = "kotlin" }
@@ -49,32 +52,22 @@ kotlin-plugin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", versio
4952
kotlin-plugin-scripting = { id = "org.jetbrains.kotlin.plugin.scripting", version.ref = "kotlin" }
5053
kotlin-plugin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
5154
kotlin-plugin-spring = { id = "org.jetbrains.kotlin.plugin.spring", version.ref = "kotlin" }
55+
atomicfu = { id = "org.jetbrains.kotlinx.atomicfu", version.ref = "atomicfu" }
5256
kotlinx-benchmark = { id = "org.jetbrains.kotlinx.benchmark", version.ref = "kotlinx-benchmark" }
5357
kotlinx-kover = { id = "org.jetbrains.kotlinx.kover", version.ref = "kover" }
5458
kscience-mpp = { id = "space.kscience.gradle.mpp", version.ref = "tools" }
5559
kscience-project = { id = "space.kscience.gradle.project", version.ref = "tools" }
5660
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
5761
ktor = { id = "io.ktor.plugin", version.ref = "ktor" }
58-
versions = "com.github.ben-manes.versions:0.51.0"
59-
versions-update = "nl.littlerobots.version-catalog-update:0.8.5"
62+
opensavvy-resources-producer = { id = "dev.opensavvy.resources.producer", version.ref = "opensavvy-resources" }
63+
opensavvy-resources-consumer = { id = "dev.opensavvy.resources.consumer", version.ref = "opensavvy-resources" }
64+
versions = "com.github.ben-manes.versions:0.52.0"
65+
versions-update = "nl.littlerobots.version-catalog-update:1.0.0"
6066

6167
[libraries]
6268
atomicfu = { module = "org.jetbrains.kotlinx:atomicfu", version.ref = "atomicfu" }
63-
atomicfu-gradle = { module = "org.jetbrains.kotlinx:atomicfu-gradle-plugin", version.ref = "atomicfu" }
64-
binary-compatibility-validator = "org.jetbrains.kotlinx:binary-compatibility-validator:0.15.0-Beta.3"
65-
changelog-gradle = { module = "org.jetbrains.intellij.plugins:gradle-changelog-plugin", version.ref = "changelog" }
66-
dokka-base = { module = "org.jetbrains.dokka:dokka-base", version.ref = "dokka" }
67-
dokka-gradle = { module = "org.jetbrains.dokka:dokka-gradle-plugin", version.ref = "dokka" }
68-
dokka-gradle-plugin = { module = "org.jetbrains.dokka:dokka-gradle-plugin", version.ref = "dokka" }
69-
foojay-resolver = "org.gradle.toolchains:foojay-resolver:0.9.0"
70-
freemarker = "org.freemarker:freemarker:2.3.33"
71-
gradle-changelog-plugin = { module = "org.jetbrains.intellij.plugins:gradle-changelog-plugin", version.ref = "changelog" }
72-
kotlin-assignment-compiler-plugin-embeddable = { module = "org.jetbrains.kotlin:kotlin-assignment-compiler-plugin-embeddable", version.ref = "kotlin" }
73-
kotlin-gradle = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
74-
kotlin-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
69+
freemarker = "org.freemarker:freemarker:2.3.34"
7570
kotlin-js-wrappers = { module = "org.jetbrains.kotlin-wrappers:kotlin-wrappers-bom", version.ref = "jsBom" }
76-
kotlin-jupyter-api-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-jupyter-api-gradle-plugin", version.ref = "kotlin" }
77-
kotlin-jupyter-gradle = { module = "org.jetbrains.kotlin:kotlin-jupyter-api-gradle-plugin", version.ref = "kotlin-jupyter" }
7871
kotlin-reflect = { module = "org.jetbrains.kotlin:kotlin-reflect", version.ref = "kotlin" }
7972
kotlin-sam-with-receiver-compiler-plugin-embeddable = { module = "org.jetbrains.kotlin:kotlin-sam-with-receiver-compiler-plugin-embeddable", version.ref = "kotlin" }
8073
kotlin-scripting-compiler-embeddable = { module = "org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable", version.ref = "kotlin" }
@@ -107,6 +100,9 @@ kotlinx-serialization-hocon = { module = "org.jetbrains.kotlinx:kotlinx-serializ
107100
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization" }
108101
kotlinx-serialization-properties = { module = "org.jetbrains.kotlinx:kotlinx-serialization-properties", version.ref = "kotlinx-serialization" }
109102
kotlinx-serialization-protobuf = { module = "org.jetbrains.kotlinx:kotlinx-serialization-protobuf", version.ref = "kotlinx-serialization" }
103+
kotlinx-browser = "org.jetbrains.kotlinx:kotlinx-browser:0.3"
104+
kotlinx-io-core = { module = "org.jetbrains.kotlinx:kotlinx-io-core", version.ref = "kotlinx-io" }
105+
kotlinx-io-bytestring = { module = "org.jetbrains.kotlinx:kotlinx-io-bytestring", version.ref = "kotlinx-io" }
110106
ksp-api = { module = "com.google.devtools.ksp:symbol-processing-api", version.ref = "ksp" }
111107
ktor-bom = { module = "io.ktor:ktor-bom", version.ref = "ktor" }
112108
logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback" }
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists

settings.gradle.kts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
11
rootProject.name = "gradle-tools"
22

3+
pluginManagement {
4+
repositories {
5+
gradlePluginPortal()
6+
mavenCentral()
7+
maven("https://repo.kotlin.link")
8+
}
9+
}
10+
311
plugins {
4-
id("org.gradle.toolchains.foojay-resolver-convention") version("0.8.0")
12+
id("org.gradle.toolchains.foojay-resolver-convention") version("0.9.0")
513
}
14+

0 commit comments

Comments
 (0)