diff --git a/build.gradle.kts b/build.gradle.kts index e9a7bc3..4565be6 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -25,18 +25,18 @@ kotlin.explicitApiWarning() dependencies { api(libs.kotlin.gradle) - api("org.gradle.toolchains:foojay-resolver:0.7.0") + api("org.gradle.toolchains:foojay-resolver:0.8.0") implementation(libs.binary.compatibility.validator) implementation(libs.changelog.gradle) implementation(libs.dokka.gradle) implementation(libs.kotlin.jupyter.gradle) implementation(libs.kotlin.serialization) implementation(libs.kotlinx.html) - implementation("org.tomlj:tomlj:1.1.0") + implementation("org.tomlj:tomlj:1.1.1") // // nexus publishing plugin // implementation("io.github.gradle-nexus:publish-plugin:1.1.0") - implementation("org.freemarker:freemarker:2.3.31") + implementation("org.freemarker:freemarker:2.3.32") testImplementation(kotlin("test")) } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index b64c8e5..f5f9a47 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,16 +1,54 @@ +## Generated by $ ./gradlew refreshVersionsCatalog + +[plugins] + +changelog = { id = "org.jetbrains.changelog", version.ref = "changelog" } + +dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" } + +compose = { id = "org.jetbrains.compose", version.ref = "compose" } + +ktor = {id = "io.ktor.plugin", version.ref = "ktor"} + +gradle-common = { id = "space.kscience.gradle.common", version.ref = "tools" } +gradle-project = { id = "space.kscience.gradle.project", version.ref = "tools" } +gradle-mpp = { id = "space.kscience.gradle.mpp", version.ref = "tools" } +gradle-jvm = { id = "space.kscience.gradle.jvm", version.ref = "tools" } + +kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } +kotlin-android-extensions = { id = "org.jetbrains.kotlin.android.extensions", version.ref = "kotlin" } +kotlin-js = { id = "org.jetbrains.kotlin.js", version.ref = "kotlin" } +kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } +kotlin-kapt = { id = "org.jetbrains.kotlin.kapt", version.ref = "kotlin" } +kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } +kotlin-native-cocoapods = { id = "org.jetbrains.kotlin.native.cocoapods", version.ref = "kotlin" } +kotlin-plugin-allopen = { id = "org.jetbrains.kotlin.plugin.allopen", version.ref = "kotlin" } +kotlin-plugin-jpa = { id = "org.jetbrains.kotlin.plugin.jpa", version.ref = "kotlin" } +kotlin-plugin-lombok = { id = "org.jetbrains.kotlin.plugin.lombok", version.ref = "kotlin" } +kotlin-plugin-noarg = { id = "org.jetbrains.kotlin.plugin.noarg", version.ref = "kotlin" } +kotlin-plugin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", version.ref = "kotlin" } +kotlin-plugin-scripting = { id = "org.jetbrains.kotlin.plugin.scripting", version.ref = "kotlin" } +kotlin-plugin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } +kotlin-plugin-spring = { id = "org.jetbrains.kotlin.plugin.spring", version.ref = "kotlin" } + +kotlin-jupyter-api = { id = "org.jetbrains.kotlin.jupyter.api", version.ref = "kotlin-jupyter" } + +kotlinx-benchmark = { id = "org.jetbrains.kotlinx.benchmark", version.ref = "kotlinx-benchmark" } + [versions] -tools = "0.15.2-kotlin-2.0.0-Beta4" -kotlin = "2.0.0-Beta4" + +tools = "0.15.2-kotlin-2.0.0-RC1" +kotlin = "2.0.0-RC1" # https://github.com/Kotlin/kotlinx-atomicfu atomicfu = "0.23.1" # https://github.com/Kotlin/binary-compatibility-validator -binary-compatibility-validator = "0.13.2" +binary-compatibility-validator = "0.14.0" # https://github.com/JetBrains/gradle-changelog-plugin changelog = "2.2.0" # https://github.com/Kotlin/dokka -dokka = "1.9.10" +dokka = "1.9.20" # https://github.com/Kotlin/kotlin-jupyter -kotlin-jupyter = "0.12.0-93" +kotlin-jupyter = "0.12.0-192" # https://github.com/Kotlin/kotlinx-benchmark kotlinx-benchmark = "0.4.9" # https://github.com/Kotlin/kotlinx-cli @@ -20,7 +58,7 @@ kotlinx-coroutines = "1.8.0" # https://github.com/Kotlin/kotlinx-datetime kotlinx-datetime = "0.4.1" # https://github.com/Kotlin/kotlinx.html -kotlinx-html = "0.9.1" +kotlinx-html = "0.11.0" # https://github.com/Kotlin/kotlinx-knit kotlinx-knit = "0.4.0" # https://github.com/Kotlin/kotlinx-nodejs @@ -37,13 +75,14 @@ yamlkt = "0.13.0" jsBom = "1.0.0-pre.648" junit = "5.9.3" # https://github.com/JetBrains/compose-multiplatform -compose = "1.5.11" +compose = "1.6.10-beta01" # https://mvnrepository.com/artifact/org.slf4j/slf4j-api slf4j = "2.0.9" # https://mvnrepository.com/artifact/ch.qos.logback/logback-classic logback = "1.4.11" [libraries] + atomicfu-gradle = { module = "org.jetbrains.kotlinx:atomicfu-gradle-plugin", version.ref = "atomicfu" } atomicfu = { module = "org.jetbrains.kotlinx:atomicfu", version.ref = "atomicfu" } @@ -105,40 +144,3 @@ yamlkt = { module = "net.mamoe.yamlkt:yamlkt", version.ref = "yamlkt" } slf4j = { module = "org.slf4j:slf4j-api", version.ref = "slf4j" } logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback" } - -[plugins] -changelog = { id = "org.jetbrains.changelog", version.ref = "changelog" } - -dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" } - -compose = { id = "org.jetbrains.compose", version.ref = "compose" } - -ktor = {id = "io.ktor.plugin", version.ref = "ktor"} - -gradle-common = { id = "space.kscience.gradle.common", version.ref = "tools" } -gradle-project = { id = "space.kscience.gradle.project", version.ref = "tools" } -gradle-mpp = { id = "space.kscience.gradle.mpp", version.ref = "tools" } -gradle-jvm = { id = "space.kscience.gradle.jvm", version.ref = "tools" } -gradle-js = { id = "space.kscience.gradle.js", version.ref = "tools" } -gradle-native = { id = "space.kscience.gradle.native", version.ref = "tools" } -gradle-node = { id = "space.kscience.gradle.node", version.ref = "tools" } - -kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } -kotlin-android-extensions = { id = "org.jetbrains.kotlin.android.extensions", version.ref = "kotlin" } -kotlin-js = { id = "org.jetbrains.kotlin.js", version.ref = "kotlin" } -kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } -kotlin-kapt = { id = "org.jetbrains.kotlin.kapt", version.ref = "kotlin" } -kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } -kotlin-native-cocoapods = { id = "org.jetbrains.kotlin.native.cocoapods", version.ref = "kotlin" } -kotlin-plugin-allopen = { id = "org.jetbrains.kotlin.plugin.allopen", version.ref = "kotlin" } -kotlin-plugin-jpa = { id = "org.jetbrains.kotlin.plugin.jpa", version.ref = "kotlin" } -kotlin-plugin-lombok = { id = "org.jetbrains.kotlin.plugin.lombok", version.ref = "kotlin" } -kotlin-plugin-noarg = { id = "org.jetbrains.kotlin.plugin.noarg", version.ref = "kotlin" } -kotlin-plugin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", version.ref = "kotlin" } -kotlin-plugin-scripting = { id = "org.jetbrains.kotlin.plugin.scripting", version.ref = "kotlin" } -kotlin-plugin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } -kotlin-plugin-spring = { id = "org.jetbrains.kotlin.plugin.spring", version.ref = "kotlin" } - -kotlin-jupyter-api = { id = "org.jetbrains.kotlin.jupyter.api", version.ref = "kotlin-jupyter" } - -kotlinx-benchmark = { id = "org.jetbrains.kotlinx.benchmark", version.ref = "kotlinx-benchmark" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index e411586..48c0a02 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/settings.gradle.kts b/settings.gradle.kts index c16070c..79b57d7 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,5 +1,6 @@ rootProject.name = "gradle-tools" plugins { - id("org.gradle.toolchains.foojay-resolver-convention") version("0.7.0") + id("org.gradle.toolchains.foojay-resolver-convention") version("0.8.0") + id("de.fayard.refreshVersions") version "0.60.5" } diff --git a/src/main/kotlin/space/kscience/gradle/KScienceExtension.kt b/src/main/kotlin/space/kscience/gradle/KScienceExtension.kt index 45d4c8f..efcab46 100644 --- a/src/main/kotlin/space/kscience/gradle/KScienceExtension.kt +++ b/src/main/kotlin/space/kscience/gradle/KScienceExtension.kt @@ -230,8 +230,8 @@ public open class KScienceExtension(public val project: Project) { */ public fun useContextReceivers() { project.tasks.withType { - kotlinOptions { - freeCompilerArgs = freeCompilerArgs + "-Xcontext-receivers" + compilerOptions{ + freeCompilerArgs.add("-Xcontext-receivers") } } } @@ -359,10 +359,8 @@ public open class KScienceMppExtension(project: Project) : KScienceExtension(pro project.pluginManager.withPlugin("org.jetbrains.kotlin.multiplatform") { project.configure { jvm { - compilations.all { - compilerOptions.configure { - freeCompilerArgs.addAll(defaultKotlinJvmArgs) - } + compilerOptions{ + freeCompilerArgs.addAll(defaultKotlinJvmArgs) } block() } @@ -458,8 +456,8 @@ public open class KScienceMppExtension(project: Project) : KScienceExtension(pro ) { js { browser { - webpackTask { - mainOutputFileName.set(bundleName) + commonWebpackConfig{ + outputFileName = bundleName } browserConfig() } diff --git a/src/main/kotlin/space/kscience/gradle/KScienceMPPlugin.kt b/src/main/kotlin/space/kscience/gradle/KScienceMPPlugin.kt index 080bfcc..ada39c6 100644 --- a/src/main/kotlin/space/kscience/gradle/KScienceMPPlugin.kt +++ b/src/main/kotlin/space/kscience/gradle/KScienceMPPlugin.kt @@ -39,12 +39,8 @@ public open class KScienceMPPlugin : Plugin { } } - targets.all { - compilations.all { - kotlinOptions{ - freeCompilerArgs += defaultKotlinCommonArgs - } - } + compilerOptions{ + freeCompilerArgs.addAll(defaultKotlinCommonArgs) } if (explicitApi == null) explicitApiWarning() diff --git a/src/main/kotlin/space/kscience/gradle/internal/common.kt b/src/main/kotlin/space/kscience/gradle/internal/common.kt index 1008006..8013390 100644 --- a/src/main/kotlin/space/kscience/gradle/internal/common.kt +++ b/src/main/kotlin/space/kscience/gradle/internal/common.kt @@ -8,9 +8,7 @@ import space.kscience.gradle.KScienceVersions internal val defaultKotlinJvmArgs: List = listOf( - "-Xjvm-default=all", - "-Xlambdas=indy", - /* "-Xjdk-release=${KScienceVersions.JVM_TARGET}"*/ + "-Xjvm-default=all" ) internal val defaultKotlinCommonArgs: List = listOf(