From 29983ffe31d9909ea8b9a2f648c99b060bb784ef Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Tue, 16 Aug 2022 13:45:42 -0500 Subject: [PATCH 1/9] prepare for Micronaut 4 (no deprecated code found to remove) --- .../micronaut-kotlin.module-conventions.gradle | 5 +++++ gradle.properties | 17 ++++++++--------- settings.gradle | 7 +++++++ 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/buildSrc/src/main/groovy/micronaut-kotlin.module-conventions.gradle b/buildSrc/src/main/groovy/micronaut-kotlin.module-conventions.gradle index 548c7621..5f14ef21 100644 --- a/buildSrc/src/main/groovy/micronaut-kotlin.module-conventions.gradle +++ b/buildSrc/src/main/groovy/micronaut-kotlin.module-conventions.gradle @@ -4,3 +4,8 @@ plugins { id("org.jetbrains.dokka") id("org.jetbrains.kotlin.kapt") } + +repositories { + mavenCentral() + maven { url "https://s01.oss.sonatype.org/content/repositories/snapshots/" } +} diff --git a/gradle.properties b/gradle.properties index 29175948..3297da9e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,18 +1,17 @@ org.gradle.jvmargs=-XX:MaxMetaspaceSize=512m -projectVersion=3.3.0-SNAPSHOT +projectVersion=4.0.0-SNAPSHOT projectGroup=io.micronaut.kotlin micronautDocsVersion=2.0.0 -micronautVersion=3.3.4 -micronautTestVersion=3.1.1 +micronautVersion=4.0.0-SNAPSHOT +micronautTestVersion=3.4.0 -groovyVersion=3.0.10 -spockVersion=2.0-groovy-3.0 +groovyVersion=3.0.12 +spockVersion=2.1-groovy-3.0 -kotlinVersion=1.6.10 -ktorVersion=1.6.8 -dokka_version=1.6.10 +kotlinVersion=1.7.10 +ktorVersion=2.0.3 junitVersion=5.9.0 title=Micronaut Kotlin Integrations @@ -21,5 +20,5 @@ projectUrl=https://micronaut.io githubSlug=micronaut-projects/micronaut-kotlin developers=Graeme Rocher -githubCoreBranch=3.7.x +githubCoreBranch=4.0.x bomProperty=micronautKotlinVersion diff --git a/settings.gradle b/settings.gradle index 3a46b368..5980440f 100644 --- a/settings.gradle +++ b/settings.gradle @@ -16,3 +16,10 @@ include "kotlin-runtime" include "ktor" include "kotlin-extension-functions" include "examples:greeting" + +dependencyResolutionManagement { + repositories { + mavenCentral() + maven { url "https://s01.oss.sonatype.org/content/repositories/snapshots/" } + } +} From 3a8d97691603d8bd6052f1613363397a32470ad7 Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Fri, 26 Aug 2022 11:27:26 -0500 Subject: [PATCH 2/9] prepare for Micronaut 4 (no deprecated code found to remove) --- .../kotlin/io/micronaut/jackson/kotlin/KotlinModuleFactory.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kotlin-runtime/src/main/kotlin/io/micronaut/jackson/kotlin/KotlinModuleFactory.kt b/kotlin-runtime/src/main/kotlin/io/micronaut/jackson/kotlin/KotlinModuleFactory.kt index b602f859..dfebe11b 100644 --- a/kotlin-runtime/src/main/kotlin/io/micronaut/jackson/kotlin/KotlinModuleFactory.kt +++ b/kotlin-runtime/src/main/kotlin/io/micronaut/jackson/kotlin/KotlinModuleFactory.kt @@ -32,6 +32,6 @@ class KotlinModuleFactory { @Requires(property = "jackson.module-scan", value = "false") @Singleton fun kotlinModuleFactory() : KotlinModule { - return KotlinModule() + return KotlinModule.Builder().build() } } From 8f2ed67707048dcbb0ed4392a82e659f2579d3ae Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Wed, 31 Aug 2022 12:08:58 -0500 Subject: [PATCH 3/9] WIP: temporarily disable ktor upgrade to address broken test for kotlin --- examples/greeting/build.gradle | 1 + gradle.properties | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/examples/greeting/build.gradle b/examples/greeting/build.gradle index b5cc0125..21c49b31 100644 --- a/examples/greeting/build.gradle +++ b/examples/greeting/build.gradle @@ -7,6 +7,7 @@ plugins { repositories { mavenCentral() + maven { url "https://s01.oss.sonatype.org/content/repositories/snapshots/" } } mainClassName = 'app.ApplicationKt' diff --git a/gradle.properties b/gradle.properties index 3297da9e..c15ddc46 100644 --- a/gradle.properties +++ b/gradle.properties @@ -11,7 +11,8 @@ groovyVersion=3.0.12 spockVersion=2.1-groovy-3.0 kotlinVersion=1.7.10 -ktorVersion=2.0.3 +#ktorVersion=2.0.3 +ktorVersion=1.6.8 junitVersion=5.9.0 title=Micronaut Kotlin Integrations From 71cceb007366de6eb2ae90dd5e4eee40828d9703 Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Wed, 31 Aug 2022 12:24:39 -0500 Subject: [PATCH 4/9] add snapshot repo to root (needed by code coverage report and docs) --- build.gradle | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/build.gradle b/build.gradle index b4eb54a0..4d1889a3 100644 --- a/build.gradle +++ b/build.gradle @@ -6,6 +6,11 @@ plugins { id "org.jetbrains.kotlin.jvm" version "$kotlinVersion" apply false } +repositories { + mavenCentral() + maven { url "https://s01.oss.sonatype.org/content/repositories/snapshots/" } +} + tasks.named("dokkaHtmlMultiModule") { outputDirectory.set(rootProject.layout.buildDirectory.dir("docs/api").map(d -> d.asFile)) } From 7737d5e7c95a3ba6768bf1aaa50d1ae7f8a0fba7 Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Wed, 31 Aug 2022 12:59:11 -0500 Subject: [PATCH 5/9] fixing broken test --- ktor/src/test/kotlin/app/AppTest.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ktor/src/test/kotlin/app/AppTest.kt b/ktor/src/test/kotlin/app/AppTest.kt index 144bcc5a..cc411f9f 100644 --- a/ktor/src/test/kotlin/app/AppTest.kt +++ b/ktor/src/test/kotlin/app/AppTest.kt @@ -45,6 +45,6 @@ class AppTest { client.toBlocking().retrieve("/authenticated") } - assertEquals("Unauthorized", exception.message) + assertEquals("Client '/': Unauthorized", exception.message) } } From a3c5cad0ced24f755fe8104f433fefbe28244e57 Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Wed, 7 Sep 2022 16:49:41 -0500 Subject: [PATCH 6/9] fixing broken test --- examples/greeting/build.gradle | 2 +- gradle.properties | 1 - .../micronaut/kotlin/inject/QualifiersExtensionsTest.kt | 9 ++++----- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/examples/greeting/build.gradle b/examples/greeting/build.gradle index 21c49b31..a905d76a 100644 --- a/examples/greeting/build.gradle +++ b/examples/greeting/build.gradle @@ -32,7 +32,7 @@ dependencies { implementation "io.ktor:ktor-jackson:$ktorVersion" implementation "io.ktor:ktor-server-netty:$ktorVersion" - runtimeOnly "ch.qos.logback:logback-classic:1.2.6" + runtimeOnly 'ch.qos.logback:logback-classic:1.2.9' testImplementation "io.micronaut:micronaut-http-client" testImplementation "io.micronaut.test:micronaut-test-junit5" diff --git a/gradle.properties b/gradle.properties index c15ddc46..f5c30065 100644 --- a/gradle.properties +++ b/gradle.properties @@ -11,7 +11,6 @@ groovyVersion=3.0.12 spockVersion=2.1-groovy-3.0 kotlinVersion=1.7.10 -#ktorVersion=2.0.3 ktorVersion=1.6.8 junitVersion=5.9.0 diff --git a/kotlin-extension-functions/src/test/kotlin/io/micronaut/kotlin/inject/QualifiersExtensionsTest.kt b/kotlin-extension-functions/src/test/kotlin/io/micronaut/kotlin/inject/QualifiersExtensionsTest.kt index 8e918740..0d40840a 100644 --- a/kotlin-extension-functions/src/test/kotlin/io/micronaut/kotlin/inject/QualifiersExtensionsTest.kt +++ b/kotlin-extension-functions/src/test/kotlin/io/micronaut/kotlin/inject/QualifiersExtensionsTest.kt @@ -1,5 +1,5 @@ /* - * Copyright 2017-2020 original authors + * Copyright 2017-2022 original authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,7 +31,7 @@ class QualifiersExtensionsTest { fun qualifierByStereotype() { // given // when - val result = io.micronaut.kotlin.inject.qualifierByStereotype() + val result = qualifierByStereotype() // then assertEquals(result::class, Qualifiers.byStereotype(Context::class.java)::class) } @@ -41,10 +41,9 @@ class QualifiersExtensionsTest { // given val metadata = AnnotationMetadata.EMPTY_METADATA // when - val result = io.micronaut.kotlin.inject.qualifierByAnnotation(metadata) + val result = qualifierByAnnotation(metadata) // then assertEquals(result::class, Qualifiers.byAnnotation(metadata, Context::class.java)::class) - assertEquals((result as Named).name, (Qualifiers.byAnnotation(metadata, Context::class.java) as Named).name) } @Test @@ -52,7 +51,7 @@ class QualifiersExtensionsTest { // given val name = "foo" // when - val result = io.micronaut.kotlin.inject.qualifierByName(name) + val result = qualifierByName(name) // then assertEquals(name, (result as Named).name) } From b44ad6a53e10a20a6aeb642230e32e27d93bceca Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Wed, 7 Sep 2022 18:10:24 -0500 Subject: [PATCH 7/9] bump Micronaut Test to 3.5.0 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index f5c30065..6304927a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,7 +5,7 @@ projectGroup=io.micronaut.kotlin micronautDocsVersion=2.0.0 micronautVersion=4.0.0-SNAPSHOT -micronautTestVersion=3.4.0 +micronautTestVersion=3.5.0 groovyVersion=3.0.12 spockVersion=2.1-groovy-3.0 From 92f8ade5c3e1183f09ad84cb614b3a9c7963a0bb Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Thu, 8 Sep 2022 10:11:13 -0500 Subject: [PATCH 8/9] bump kotlin version to 1.7.10 --- gradle/libs.versions.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index b07a7af2..4918cfdd 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -5,8 +5,9 @@ ktor = "1.6.8" logback-classic = "1.2.11" mockito-core = "4.4.0" mockito-junit-jupiter = "4.4.0" + mockito-kotlin = "2.2.0" -kotlin = "1.6.10" +kotlin = "1.7.10" [libraries] typesafe-config = { module = "com.typesafe:config", version.ref = "typesafe-config" } From e91a08f29eb5c5a302b5b5ddad0a2d07eb3bc18d Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Thu, 8 Sep 2022 11:04:00 -0500 Subject: [PATCH 9/9] change buildSrc scripts to be consistent with micronaut projects std --- ....gradle => io.micronaut.build.internal.kotlin-base.gradle} | 1 - .../groovy/io.micronaut.build.internal.kotlin-module.gradle | 4 ++++ kotlin-extension-functions/build.gradle | 2 +- kotlin-runtime/build.gradle | 2 +- ktor/build.gradle | 2 +- 5 files changed, 7 insertions(+), 4 deletions(-) rename buildSrc/src/main/groovy/{micronaut-kotlin.module-conventions.gradle => io.micronaut.build.internal.kotlin-base.gradle} (83%) create mode 100644 buildSrc/src/main/groovy/io.micronaut.build.internal.kotlin-module.gradle diff --git a/buildSrc/src/main/groovy/micronaut-kotlin.module-conventions.gradle b/buildSrc/src/main/groovy/io.micronaut.build.internal.kotlin-base.gradle similarity index 83% rename from buildSrc/src/main/groovy/micronaut-kotlin.module-conventions.gradle rename to buildSrc/src/main/groovy/io.micronaut.build.internal.kotlin-base.gradle index 5f14ef21..bc53d98d 100644 --- a/buildSrc/src/main/groovy/micronaut-kotlin.module-conventions.gradle +++ b/buildSrc/src/main/groovy/io.micronaut.build.internal.kotlin-base.gradle @@ -1,5 +1,4 @@ plugins { - id("io.micronaut.build.internal.module") id("org.jetbrains.kotlin.jvm") id("org.jetbrains.dokka") id("org.jetbrains.kotlin.kapt") diff --git a/buildSrc/src/main/groovy/io.micronaut.build.internal.kotlin-module.gradle b/buildSrc/src/main/groovy/io.micronaut.build.internal.kotlin-module.gradle new file mode 100644 index 00000000..6ed8f8aa --- /dev/null +++ b/buildSrc/src/main/groovy/io.micronaut.build.internal.kotlin-module.gradle @@ -0,0 +1,4 @@ +plugins { + id "io.micronaut.build.internal.kotlin-base" + id "io.micronaut.build.internal.module" +} diff --git a/kotlin-extension-functions/build.gradle b/kotlin-extension-functions/build.gradle index 8a755a64..577e4d9f 100644 --- a/kotlin-extension-functions/build.gradle +++ b/kotlin-extension-functions/build.gradle @@ -1,5 +1,5 @@ plugins { - id("micronaut-kotlin.module-conventions") + id("io.micronaut.build.internal.kotlin-module") } sourceCompatibility = 1.8 diff --git a/kotlin-runtime/build.gradle b/kotlin-runtime/build.gradle index dccf3df1..16badf58 100644 --- a/kotlin-runtime/build.gradle +++ b/kotlin-runtime/build.gradle @@ -1,5 +1,5 @@ plugins { - id("micronaut-kotlin.module-conventions") + id("io.micronaut.build.internal.kotlin-module") } sourceCompatibility = 1.8 diff --git a/ktor/build.gradle b/ktor/build.gradle index a6173e52..554e88c1 100644 --- a/ktor/build.gradle +++ b/ktor/build.gradle @@ -1,5 +1,5 @@ plugins { - id("micronaut-kotlin.module-conventions") + id("io.micronaut.build.internal.kotlin-module") } sourceCompatibility = 1.8