From 368ed94c52a3fc229bdffbf0c5924588252a22a4 Mon Sep 17 00:00:00 2001 From: Alexander Nozik Date: Wed, 13 Apr 2022 16:47:00 +0300 Subject: [PATCH 1/7] 0.11.4 --- CHANGELOG.md | 2 + gradle/libs.versions.toml | 56 +----------------- gradle/wrapper/gradle-wrapper.properties | 2 +- .../mipt/npm/gradle/KScienceCommonPlugin.kt | 3 +- .../mipt/npm/gradle/commonConfigurations.kt | 12 ++-- .../ru/mipt/npm/gradle/internal/publishing.kt | 59 +++++++++++-------- 6 files changed, 44 insertions(+), 90 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8c45f7a..837cf71 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,8 +19,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Deprecated ### Removed +- Ktor specific artifacts from version catalog ### Fixed +- Moved signing out of sonatype block ### Security diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 98a51c7..43b2c04 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,5 @@ [versions] -tools = "0.11.3-kotlin-1.6.20" +tools = "0.11.4-kotlin-1.6.20" kotlin = "1.6.20" atomicfu = "0.17.1" binary-compatibility-validator = "0.8.0" @@ -73,60 +73,6 @@ kotlinx-serialization-protobuf = { module = "org.jetbrains.kotlinx:kotlinx-seria kotlinx-serialization-properties = { module = "org.jetbrains.kotlinx:kotlinx-serialization-properties", version.ref = "kotlinx-serialization" } ktor-bom = { module = "io.ktor:ktor-bom", version.ref = "ktor" } -ktor-client-android = { module = "io.ktor:ktor-client-android", version.ref = "ktor" } -ktor-client-apache = { module = "io.ktor:ktor-client-apache", version.ref = "ktor" } -ktor-client-cio = { module = "io.ktor:ktor-client-cio", version.ref = "ktor" } -ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" } -ktor-client-curl = { module = "io.ktor:ktor-client-curl", version.ref = "ktor" } -ktor-client-auth-basic = { module = "io.ktor:ktor-client-auth-basic", version.ref = "ktor" } -ktor-client-auth = { module = "io.ktor:ktor-client-auth", version.ref = "ktor" } -ktor-client-encoding = { module = "io.ktor:ktor-client-encoding", version.ref = "ktor" } -ktor-client-json = { module = "io.ktor:ktor-client-json", version.ref = "ktor" } -ktor-client-gson = { module = "io.ktor:ktor-client-gson", version.ref = "ktor" } -ktor-client-jackson = { module = "io.ktor:ktor-client-jackson", version.ref = "ktor" } -ktor-client-serialization = { module = "io.ktor:ktor-client-serialization", version.ref = "ktor" } -ktor-client-logging = { module = "io.ktor:ktor-client-loggin", version.ref = "ktor" } -ktor-client-tracing = { module = "io.ktor:ktor-client-tracing", version.ref = "ktor" } -ktor-client-websockets = { module = "io.ktor:ktor-client-websockets", version.ref = "ktor" } -ktor-client-java = { module = "io.ktor:ktor-client-java", version.ref = "ktor" } -ktor-client-jetty = { module = "io.ktor:ktor-client-jetty", version.ref = "ktor" } -ktor-client-js = { module = "io.ktor:ktor-client-js", version.ref = "ktor" } -ktor-client-mock = { module = "io.ktor:ktor-client-mock", version.ref = "ktor" } -ktor-client-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref = "ktor" } -ktor-auth-jwt = { module = "io.ktor:ktor-auth-jwt", version.ref = "ktor" } -ktor-auth-ldap = { module = "io.ktor:ktor-auth-ldap", version.ref = "ktor" } -ktor-auth = { module = "io.ktor:ktor-auth", version.ref = "ktor" } -ktor-freemaker = { module = "io.ktor:ktor-freemaker", version.ref = "ktor" } -ktor-gson = { module = "io.ktor:ktor-gson", version.ref = "ktor" } -ktor-html-builder = { module = "io.ktor:ktor-html-builder", version.ref = "ktor" } -ktor-jackson = { module = "io.ktor:ktor-jackson", version.ref = "ktor" } -ktor-locations = { module = "io.ktor:ktor-locations", version.ref = "ktor" } -ktor-metrics-micrometer = { module = "io.ktor:ktor-metrics-micrometer", version.ref = "ktor" } -ktor-metrics = { module = "io.ktor:ktor-metrics", version.ref = "ktor" } -ktor-mustache = { module = "io.ktor:ktor-mustache", version.ref = "ktor" } -ktor-pebble = { module = "io.ktor:ktor-pebble", version.ref = "ktor" } -ktor-serialization = { module = "io.ktor:ktor-serialization", version.ref = "ktor" } -ktor-server-sessions = { module = "io.ktor:ktor-server-sessions", version.ref = "ktor" } -ktor-thymeleaf = { module = "io.ktor:ktor-thymeleaf", version.ref = "ktor" } -ktor-velocity = { module = "io.ktor:ktor-velocity", version.ref = "ktor" } -ktor-webjars = { module = "io.ktor:ktor-webjars", version.ref = "ktor" } -ktor-websockets = { module = "io.ktor:ktor-websockets", version.ref = "ktor" } -ktor-http = { module = "io.ktor:ktor-http", version.ref = "ktor" } -ktor-http-cio = { module = "io.ktor:ktor-http-cio", version.ref = "ktor" } -ktor-io = { module = "io.ktor:ktor-io", version.ref = "ktor" } -ktor-network = { module = "io.ktor:ktor-network", version.ref = "ktor" } -ktor-network-tls = { module = "io.ktor:ktor-network-tls", version.ref = "ktor" } -ktor-network-tls-certificates = { module = "io.ktor:ktor-network-tls-certificates", version.ref = "ktor" } -ktor-server-cio = { module = "io.ktor:ktor-server-cio", version.ref = "ktor" } -ktor-server-core = { module = "io.ktor:ktor-server-core", version.ref = "ktor" } -ktor-server-host-common = { module = "io.ktor:ktor-server-host-common", version.ref = "ktor" } -ktor-server-jetty = { module = "io.ktor:ktor-server-jetty", version.ref = "ktor" } -ktor-server-netty = { module = "io.ktor:ktor-server-netty", version.ref = "ktor" } -ktor-server-servlet = { module = "io.ktor:ktor-server-servlet", version.ref = "ktor" } -ktor-server-test-host = { module = "io.ktor:ktor-server-test-host", version.ref = "ktor" } -ktor-server-tomcat = { module = "io.ktor:ktor-server-tomcat", version.ref = "ktor" } -ktor-test-dispatcher = { module = "io.ktor:ktor-test-dispatcher", version.ref = "ktor" } -ktor-utils = { module = "io.ktor:ktor-utils", version.ref = "ktor" } xmlutil-core = { module = "io.github.pdvrieze.xmlutil:core", version.ref = "xmlutil" } xmlutil-ktor = { module = "io.github.pdvrieze.xmlutil:ktor", version.ref = "xmlutil" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 00e33ed..aa991fc 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-7.4.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt b/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt index 51b22fc..de3f16c 100644 --- a/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt +++ b/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt @@ -3,9 +3,8 @@ package ru.mipt.npm.gradle import org.gradle.api.Plugin import org.gradle.api.Project -@Suppress("UNUSED_VARIABLE") public open class KScienceCommonPlugin : Plugin { override fun apply(project: Project): Unit = project.configureKScience( - KotlinVersion(1, 6, 10) + KotlinVersion(1, 6, 20) ) } diff --git a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt index 433e462..8d59542 100644 --- a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt +++ b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt @@ -28,8 +28,6 @@ public fun Project.configureKScience( pluginManager.withPlugin("org.jetbrains.kotlin.jvm") { //logger.info("Applying KScience configuration for JVM project") configure { - explicitApiWarning() - sourceSets.all { languageSettings.applySettings(kotlinVersion) } @@ -41,6 +39,8 @@ public fun Project.configureKScience( implementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:${KScienceVersions.coroutinesVersion}") } } + + explicitApiWarning() } tasks.withType { kotlinOptions { @@ -61,8 +61,6 @@ public fun Project.configureKScience( pluginManager.withPlugin("org.jetbrains.kotlin.js") { //logger.info("Applying KScience configuration for JS project") configure { - explicitApiWarning() - js(IR) { browser { commonWebpackConfig { @@ -87,6 +85,8 @@ public fun Project.configureKScience( implementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:${KScienceVersions.coroutinesVersion}") } } + + explicitApiWarning() } (tasks.findByName("processResources") as? Copy)?.apply { @@ -97,8 +97,6 @@ public fun Project.configureKScience( pluginManager.withPlugin("org.jetbrains.kotlin.multiplatform") { configure { - explicitApiWarning() - jvm { compilations.all { kotlinOptions { @@ -159,6 +157,8 @@ public fun Project.configureKScience( tasks.withType { useJUnitPlatform() } + + explicitApiWarning() } } diff --git a/src/main/kotlin/ru/mipt/npm/gradle/internal/publishing.kt b/src/main/kotlin/ru/mipt/npm/gradle/internal/publishing.kt index 921631d..2b6e6b6 100644 --- a/src/main/kotlin/ru/mipt/npm/gradle/internal/publishing.kt +++ b/src/main/kotlin/ru/mipt/npm/gradle/internal/publishing.kt @@ -10,6 +10,7 @@ import org.gradle.plugins.signing.SigningExtension import org.gradle.plugins.signing.SigningPlugin import org.jetbrains.kotlin.gradle.dsl.KotlinJsProjectExtension import org.jetbrains.kotlin.gradle.dsl.KotlinJvmProjectExtension +import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.targets internal fun Project.requestPropertyOrNull(propertyName: String): String? = findProperty(propertyName) as? String ?: System.getenv(propertyName) @@ -31,12 +32,15 @@ internal fun Project.setupPublication(mavenPomConfiguration: MavenPom.() -> Unit from(it.kotlin) } } - publications.create("js") { - kotlin.js().components.forEach { - from(it) - } - artifact(sourcesJar) + afterEvaluate { + publications.create("js") { + kotlin.targets.flatMap { it.components }.forEach { + from(it) + } + + artifact(sourcesJar) + } } } @@ -51,12 +55,14 @@ internal fun Project.setupPublication(mavenPomConfiguration: MavenPom.() -> Unit } } - publications.create("jvm") { - kotlin.target.components.forEach { - from(it) - } + afterEvaluate { + publications.create("jvm") { + kotlin.target.components.forEach { + from(it) + } - artifact(sourcesJar) + artifact(sourcesJar) + } } } @@ -98,6 +104,23 @@ internal fun Project.setupPublication(mavenPomConfiguration: MavenPom.() -> Unit mavenPomConfiguration() } } + + + if (!plugins.hasPlugin("signing")) { + apply() + } + + extensions.configure("signing") { + val signingId: String? = requestPropertyOrNull("publishing.signing.id") + if (!signingId.isNullOrBlank()) { + val signingKey: String = requestProperty("publishing.signing.key") + val signingPassphrase: String = requestProperty("publishing.signing.passPhrase") + + // if key is provided, use it + useInMemoryPgpKeys(signingId, signingKey, signingPassphrase) + } // else use file signing + sign(publications) + } } } } @@ -194,22 +217,6 @@ internal fun Project.addSonatypePublishing() { allprojects { plugins.withId("maven-publish") { configure { - if (!plugins.hasPlugin("signing")) { - apply() - } - - extensions.configure("signing") { - val signingId: String? = requestPropertyOrNull("publishing.signing.id") - if (!signingId.isNullOrBlank()) { - val signingKey: String = requestProperty("publishing.signing.key") - val signingPassphrase: String = requestProperty("publishing.signing.passPhrase") - - // if key is provided, use it - useInMemoryPgpKeys(signingId, signingKey, signingPassphrase) - } // else use file signing - sign(publications) - } - repositories.maven { val sonatypeRepo = "https://oss.sonatype.org/service/local/staging/deploy/maven2" name = "sonatype" From 6526a486f9d8973dc61a26f9410a3bcf9d3e7041 Mon Sep 17 00:00:00 2001 From: Alexander Nozik Date: Tue, 19 Apr 2022 10:44:44 +0300 Subject: [PATCH 2/7] Explicit API relaxation --- CHANGELOG.md | 1 + .../kotlin/ru/mipt/npm/gradle/commonConfigurations.kt | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 837cf71..045a7b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Kotlin 1.6.20 - Context receivers enabled - Ktor 2.0 +- ExplicitAPI does not override existing value ### Deprecated diff --git a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt index 8d59542..f8a33e4 100644 --- a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt +++ b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt @@ -18,8 +18,8 @@ import ru.mipt.npm.gradle.internal.fromJsDependencies private val defaultJvmArgs: List = listOf("-Xjvm-default=all", "-Xlambdas=indy", "-Xcontext-receivers") public fun Project.configureKScience( - kotlinVersion: KotlinVersion -){ + kotlinVersion: KotlinVersion, +) { //Common configuration registerKScienceExtension() repositories.applyRepos() @@ -40,7 +40,7 @@ public fun Project.configureKScience( } } - explicitApiWarning() + if (explicitApi != null) explicitApiWarning() } tasks.withType { kotlinOptions { @@ -86,7 +86,7 @@ public fun Project.configureKScience( } } - explicitApiWarning() + if (explicitApi != null) explicitApiWarning() } (tasks.findByName("processResources") as? Copy)?.apply { @@ -158,7 +158,7 @@ public fun Project.configureKScience( useJUnitPlatform() } - explicitApiWarning() + if (explicitApi != null) explicitApiWarning() } } From e3ecfb54c976791c72682cbde908a31353e79748 Mon Sep 17 00:00:00 2001 From: Alexander Nozik Date: Sun, 15 May 2022 12:59:49 +0300 Subject: [PATCH 3/7] Remove context receivers by default. --- CHANGELOG.md | 5 ++- gradle/libs.versions.toml | 31 +++++++++---------- .../mipt/npm/gradle/KScienceCommonPlugin.kt | 2 +- .../mipt/npm/gradle/commonConfigurations.kt | 2 +- 4 files changed, 18 insertions(+), 22 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 045a7b4..c7aab19 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,9 +12,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Separate release tasks for each target -- Kotlin 1.6.20 -- Context receivers enabled -- Ktor 2.0 +- Kotlin 1.7.0 +- Ktor 2.0.1 - ExplicitAPI does not override existing value ### Deprecated diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 43b2c04..e457841 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,24 +1,23 @@ [versions] -tools = "0.11.4-kotlin-1.6.20" -kotlin = "1.6.20" -atomicfu = "0.17.1" -binary-compatibility-validator = "0.8.0" +tools = "0.11.5-kotlin-1.6.21" +kotlin = "1.6.21" +atomicfu = "0.17.2" +binary-compatibility-validator = "0.9.0" changelog = "1.3.1" -dokka = "1.6.10" -kotlin-jupyter = "0.11.0-71" +dokka = "1.6.21" +kotlin-jupyter = "0.11.0-89-1" kotlinx-benchmark = "0.4.2" kotlinx-cli = "0.3.4" -kotlinx-collections-immutable = "0.3.5" kotlinx-coroutines = "1.6.1" -kotlinx-datetime = "0.3.2" -kotlinx-html = "0.7.3" -kotlinx-knit = "0.3.0" +kotlinx-datetime = "0.3.3" +kotlinx-html = "0.7.5" +kotlinx-knit = "0.4.0" kotlinx-nodejs = "0.0.7" -kotlinx-serialization = "1.3.2" -ktor = "2.0.0" -xmlutil = "0.84.1" -yamlkt = "0.10.2" -jsBom = "0.0.1-pre.313-kotlin-1.6.10" +kotlinx-serialization = "1.3.3" +ktor = "2.0.1" +xmlutil = "0.84.2" +yamlkt = "0.11.0" +jsBom = "1.0.0-pre.337" junit = "5.8.2" [libraries] @@ -38,8 +37,6 @@ kotlin-jupyter-gradle = { module = "org.jetbrains.kotlin:kotlin-jupyter-api-grad kotlinx-benchmark-runtime = { module = "org.jetbrains.kotlinx:kotlinx-benchmark-runtime", version.ref = "kotlinx-benchmark" } -kotlinx-collections-immutable = { module = "org.jetbrains.kotlinx:kotlinx-collections-immutable", version.ref = "kotlinx-collections-immutable" } - kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines" } kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "kotlinx-coroutines" } kotlinx-coroutines-debug = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-debug", version.ref = "kotlinx-coroutines" } diff --git a/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt b/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt index de3f16c..5eaf4d5 100644 --- a/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt +++ b/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt @@ -5,6 +5,6 @@ import org.gradle.api.Project public open class KScienceCommonPlugin : Plugin { override fun apply(project: Project): Unit = project.configureKScience( - KotlinVersion(1, 6, 20) + KotlinVersion(1, 6, 21) ) } diff --git a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt index f8a33e4..c7fcda8 100644 --- a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt +++ b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt @@ -15,7 +15,7 @@ import ru.mipt.npm.gradle.internal.applySettings import ru.mipt.npm.gradle.internal.fromJsDependencies -private val defaultJvmArgs: List = listOf("-Xjvm-default=all", "-Xlambdas=indy", "-Xcontext-receivers") +private val defaultJvmArgs: List = listOf("-Xjvm-default=all", "-Xlambdas=indy") public fun Project.configureKScience( kotlinVersion: KotlinVersion, From eed0f274c7d791da47b54dab2cf0516267e86a76 Mon Sep 17 00:00:00 2001 From: Alexander Nozik Date: Tue, 17 May 2022 10:13:17 +0300 Subject: [PATCH 4/7] Fix explicit api application --- src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt index c7fcda8..4492542 100644 --- a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt +++ b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt @@ -40,7 +40,7 @@ public fun Project.configureKScience( } } - if (explicitApi != null) explicitApiWarning() + if (explicitApi == null) explicitApiWarning() } tasks.withType { kotlinOptions { @@ -86,7 +86,7 @@ public fun Project.configureKScience( } } - if (explicitApi != null) explicitApiWarning() + if (explicitApi == null) explicitApiWarning() } (tasks.findByName("processResources") as? Copy)?.apply { @@ -158,7 +158,7 @@ public fun Project.configureKScience( useJUnitPlatform() } - if (explicitApi != null) explicitApiWarning() + if (explicitApi == null) explicitApiWarning() } } From 90880fc10faaf5212d905b2280d34c4532f03e74 Mon Sep 17 00:00:00 2001 From: Alexander Nozik Date: Thu, 9 Jun 2022 19:38:15 +0300 Subject: [PATCH 5/7] To Kotlin 1.7.0 --- build.gradle.kts | 1 + gradle/libs.versions.toml | 4 ++-- src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt | 2 +- src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt | 4 ++-- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 61dc866..389ecc3 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,6 +1,7 @@ plugins { alias(libs.plugins.changelog) alias(libs.plugins.dokka) + alias(libs.plugins.kotlin.jvm) `java-gradle-plugin` `kotlin-dsl` `maven-publish` diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index e457841..d86cbad 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,6 +1,6 @@ [versions] -tools = "0.11.5-kotlin-1.6.21" -kotlin = "1.6.21" +tools = "0.11.5-kotlin-1.7.0" +kotlin = "1.7.0" atomicfu = "0.17.2" binary-compatibility-validator = "0.9.0" changelog = "1.3.1" diff --git a/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt b/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt index 5eaf4d5..0db1539 100644 --- a/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt +++ b/src/main/kotlin/ru/mipt/npm/gradle/KScienceCommonPlugin.kt @@ -5,6 +5,6 @@ import org.gradle.api.Project public open class KScienceCommonPlugin : Plugin { override fun apply(project: Project): Unit = project.configureKScience( - KotlinVersion(1, 6, 21) + KotlinVersion(1, 7, 0) ) } diff --git a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt index 4492542..b94d86d 100644 --- a/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt +++ b/src/main/kotlin/ru/mipt/npm/gradle/commonConfigurations.kt @@ -7,9 +7,9 @@ import org.gradle.api.tasks.testing.Test import org.gradle.kotlin.dsl.* import org.jetbrains.dokka.gradle.DokkaPlugin import org.jetbrains.kotlin.gradle.dsl.KotlinJsProjectExtension -import org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompile import org.jetbrains.kotlin.gradle.dsl.KotlinJvmProjectExtension import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension +import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import ru.mipt.npm.gradle.internal.applyRepos import ru.mipt.npm.gradle.internal.applySettings import ru.mipt.npm.gradle.internal.fromJsDependencies @@ -42,7 +42,7 @@ public fun Project.configureKScience( if (explicitApi == null) explicitApiWarning() } - tasks.withType { + tasks.withType { kotlinOptions { jvmTarget = KScienceVersions.JVM_TARGET.toString() freeCompilerArgs = freeCompilerArgs + defaultJvmArgs From 19f3d1ba5da9204435fd4d65b8c30dac4982284c Mon Sep 17 00:00:00 2001 From: Alexander Nozik Date: Thu, 9 Jun 2022 19:41:46 +0300 Subject: [PATCH 6/7] Update versions --- gradle/libs.versions.toml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index d86cbad..83ff673 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,23 +1,23 @@ [versions] tools = "0.11.5-kotlin-1.7.0" kotlin = "1.7.0" -atomicfu = "0.17.2" +atomicfu = "0.17.3" binary-compatibility-validator = "0.9.0" changelog = "1.3.1" dokka = "1.6.21" -kotlin-jupyter = "0.11.0-89-1" +kotlin-jupyter = "0.11.0-106" kotlinx-benchmark = "0.4.2" kotlinx-cli = "0.3.4" -kotlinx-coroutines = "1.6.1" +kotlinx-coroutines = "1.6.2" kotlinx-datetime = "0.3.3" kotlinx-html = "0.7.5" kotlinx-knit = "0.4.0" kotlinx-nodejs = "0.0.7" kotlinx-serialization = "1.3.3" -ktor = "2.0.1" +ktor = "2.0.2" xmlutil = "0.84.2" yamlkt = "0.11.0" -jsBom = "1.0.0-pre.337" +jsBom = "1.0.0-pre.343" junit = "5.8.2" [libraries] From 8ba91f805e9e89ece7ce97dd15bdfba167f1d405 Mon Sep 17 00:00:00 2001 From: Alexander Nozik Date: Thu, 9 Jun 2022 19:44:30 +0300 Subject: [PATCH 7/7] Patch changelog --- CHANGELOG.md | 45 ++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 40 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c7aab19..581f827 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,50 +7,65 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] ### Added + +### Changed + +### Deprecated + +### Removed + +### Fixed + +### Security + +## [0.11.5-kotlin-1.7.0] +### Added - Coroutine tests as default dependency for tests - Context receiver flag + ### Changed - Separate release tasks for each target - Kotlin 1.7.0 - Ktor 2.0.1 - ExplicitAPI does not override existing value + ### Deprecated ### Removed - Ktor specific artifacts from version catalog + ### Fixed - Moved signing out of sonatype block + ### Security ## [0.11.1-kotlin-1.6.10] ### Added - Default templates for README and ARTIFACT + ### Changed - Replaced Groovy templates by FreeMarker -### Deprecated - -### Removed ### Fixed - JS publication sources jar -### Security - ## [0.10.9-kotlin-1.6.10] ### Added - html builders for readme + ### Changed - Kotlin 1.6.0 - Use indy lambdas by default #32 - Change version scheme to `-kotlin-` + ### Fixed - remove `nativeMain` dependency from `nativeTest` @@ -58,6 +73,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Kotlin 1.6 + ### Fixed - Some issues with opt-ins @@ -65,9 +81,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Experimental automatic JS project bundling in MPP + ### Changed - Remove vcs requirement for Space publication + ### Fixed -Release task (#19) @@ -77,10 +95,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - BOM for kotlin-wrappers on JS - Jupyter loader + ### Changed - API validation disabled for dev versions - Kotlin plugins are propagated downstream + ### Removed - bson support @@ -89,15 +109,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Disable API validation for snapshots - `-Xjvm-default=all` on JVM + ### Changed - `publication.platform` changed to `publishing.platform` - Dokka version to `1.4.30` - `useDateTime` in extension - Kotlin 1.5 + ### Removed - Publish plugin. Use MavenPublish instead + ### Fixed - Removed unnecessary `afterEvaluate` for compatibility with gradle 7.0 @@ -105,13 +128,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Skip sonatype publishing for dev versions + ### Changed - Publishing repositories are explicit and defined in the top level project - Paths to publishing properties now use dot notation like `publishing.github.user` + ### Deprecated - Publishing plugin + ### Removed - Bintray publishing @@ -120,10 +146,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Adaptive support for host OS in native - CSS support for JS targets + ### Changed - Kotlin 1.4.31 - Coroutines 1.4.3 + ### Fixed - Plugin loading order for publishing - Release task @@ -135,6 +163,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Add sonatype publishing - Per-platform release publishing + ### Changed - Kotlin to 1.4.30 stable. - Added intermediate jsCommon main/test sourcesSet for node plugin. @@ -142,9 +171,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Common plugin id changed to `common` - Plugins group changed to `ru.mipt.npm` with `gradle` prefix + ### Removed - kaml + ### Fixed - Fix publishing load order for sonatype - Fix root project readme @@ -158,6 +189,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Moved all logic to a common plugin, leaving only proxies for platform plugins - Suppress API validation for modules with maturity below DEVELOPMENT + ### Changed - Remove node plugin. Node binaries should be turned on manually. - Use default webpack distribution path. @@ -168,10 +200,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Moved internals to internals - Kotlin 1.4.30-RC + ### Deprecated - Support of `kaml` and `snake-yaml` in favor of `yamlKt` - Publish plugin + ### Removed - `useDokka` method. Documentation jar should be added manually if needed. @@ -182,6 +216,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Add `application()` toggle in plugin configuration to produce binaries on JS and applicaion plugin on jvm. - Add `publish` to expose publishing configuration. + ### Changed -Publishing in bintray now is automatic.