From b5f2fa0e579368efb202cc653339136a6e72147b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 7 Nov 2023 06:31:54 +0000 Subject: [PATCH 1/6] fix(deps): update dependency org.shredzone.acme4j:acme4j-client to v3 --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index ca2b02ba..48c4df5c 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -9,7 +9,7 @@ spock = '2.3-groovy-4.0' testcontainers = "1.19.1" netty-http3 = "0.0.21.Final" -managed-acme4j = "2.16" +managed-acme4j = "3.1.0" micronaut-serde = "2.3.0" micronaut-validation = "4.0.3" micronaut-gradle-plugin = "4.1.2" From 8000c4cd61115ace283b6458d54522c84391589a Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Wed, 8 Nov 2023 13:44:26 -0600 Subject: [PATCH 2/6] latest acme4j-utils (2.16) isn't same as latest acme-client (3.1.0) --- 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 48c4df5c..6d0168d1 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -10,6 +10,7 @@ testcontainers = "1.19.1" netty-http3 = "0.0.21.Final" managed-acme4j = "3.1.0" +managed-acme4j-utils = "2.16" micronaut-serde = "2.3.0" micronaut-validation = "4.0.3" micronaut-gradle-plugin = "4.1.2" @@ -19,7 +20,7 @@ micronaut-gradle-plugin = "4.1.2" micronaut-core = { module = 'io.micronaut:micronaut-core-bom', version.ref = 'micronaut' } managed-acme4j-client = { module = 'org.shredzone.acme4j:acme4j-client', version.ref = 'managed-acme4j' } -managed-acme4j-utils = { module = 'org.shredzone.acme4j:acme4j-utils', version.ref = 'managed-acme4j' } +managed-acme4j-utils = { module = 'org.shredzone.acme4j:acme4j-utils', version.ref = 'managed-acme4j-utils' } micronaut-serde = { module = 'io.micronaut.serde:micronaut-serde-bom', version.ref = 'micronaut-serde' } micronaut-validation = { module = "io.micronaut.validation:micronaut-validation-bom", version.ref = "micronaut-validation" } From 091a495d4e1039945c2f7db710bc6f9a21e1257b Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Thu, 9 Nov 2023 15:39:04 -0600 Subject: [PATCH 3/6] acme4j 3.x moves acme-utils to acme-client lib --- acme-bom/build.gradle | 8 ++++++++ acme/build.gradle | 1 - gradle/libs.versions.toml | 2 -- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/acme-bom/build.gradle b/acme-bom/build.gradle index af06f50f..d09dfd73 100644 --- a/acme-bom/build.gradle +++ b/acme-bom/build.gradle @@ -1,3 +1,11 @@ plugins { id "io.micronaut.build.internal.bom" } + +micronautBom { + suppressions { + // as of micronaut-acme 5.0.0 + // acme removed this acme4j-utils and included it in the acme4j-client lib as of v3.0.0 + acceptedLibraryRegressions.add("acme4j-utils") + } +} diff --git a/acme/build.gradle b/acme/build.gradle index 288db9a1..396b6128 100644 --- a/acme/build.gradle +++ b/acme/build.gradle @@ -9,7 +9,6 @@ dependencies { implementation mn.micronaut.http.server implementation mn.micronaut.http.server.netty implementation libs.managed.acme4j.client - implementation libs.managed.acme4j.utils implementation libs.netty.tcnative.boringssl.static compileOnly libs.netty.incubator.codec.http3 testImplementation(mnSerde.micronaut.serde.jackson) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 6d0168d1..2c0d70c5 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -10,7 +10,6 @@ testcontainers = "1.19.1" netty-http3 = "0.0.21.Final" managed-acme4j = "3.1.0" -managed-acme4j-utils = "2.16" micronaut-serde = "2.3.0" micronaut-validation = "4.0.3" micronaut-gradle-plugin = "4.1.2" @@ -20,7 +19,6 @@ micronaut-gradle-plugin = "4.1.2" micronaut-core = { module = 'io.micronaut:micronaut-core-bom', version.ref = 'micronaut' } managed-acme4j-client = { module = 'org.shredzone.acme4j:acme4j-client', version.ref = 'managed-acme4j' } -managed-acme4j-utils = { module = 'org.shredzone.acme4j:acme4j-utils', version.ref = 'managed-acme4j-utils' } micronaut-serde = { module = 'io.micronaut.serde:micronaut-serde-bom', version.ref = 'micronaut-serde' } micronaut-validation = { module = "io.micronaut.validation:micronaut-validation-bom", version.ref = "micronaut-validation" } From 66578a32663d92bde6fc579b4c2aec2448421db9 Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Thu, 9 Nov 2023 15:39:55 -0600 Subject: [PATCH 4/6] major to 5.0.0-SNAPSHOT (due to acme4j major update to 3.0.0 with breaking changes) --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 16618e82..eee17205 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ -projectVersion=4.1.1-SNAPSHOT +projectVersion=5.0.0-SNAPSHOT projectGroup=io.micronaut.acme title=Micronaut Acme From 61e8bedf63814cac6abe5913b038074438e5f598 Mon Sep 17 00:00:00 2001 From: Dean Wette Date: Thu, 9 Nov 2023 15:41:31 -0600 Subject: [PATCH 5/6] micronaut framework catalog version updates --- 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 2c0d70c5..eaee9487 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,17 +1,17 @@ [versions] micronaut-docs = '2.0.0' micronaut = "4.1.11" -micronaut-platform = "4.0.0-RC1" -micronaut-test = "4.0.0" +micronaut-platform = "4.1.6" +micronaut-test = "4.1.0" -groovy = "4.0.12" +groovy = "4.0.15" spock = '2.3-groovy-4.0' testcontainers = "1.19.1" netty-http3 = "0.0.21.Final" managed-acme4j = "3.1.0" -micronaut-serde = "2.3.0" -micronaut-validation = "4.0.3" +micronaut-serde = "2.3.3" +micronaut-validation = "4.1.0" micronaut-gradle-plugin = "4.1.2" [libraries] From f10c6afb43346515b19ebe904fd8c335b2b3d219 Mon Sep 17 00:00:00 2001 From: Tim Yates Date: Fri, 10 Nov 2023 09:16:23 +0000 Subject: [PATCH 6/6] Fix timeout test for different HttpClient --- .../AcmeCertRefresherTaskSetsTimeoutSpec.groovy | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/acme/src/test/groovy/io/micronaut/acme/AcmeCertRefresherTaskSetsTimeoutSpec.groovy b/acme/src/test/groovy/io/micronaut/acme/AcmeCertRefresherTaskSetsTimeoutSpec.groovy index fa5ebcfe..1a2c64e2 100644 --- a/acme/src/test/groovy/io/micronaut/acme/AcmeCertRefresherTaskSetsTimeoutSpec.groovy +++ b/acme/src/test/groovy/io/micronaut/acme/AcmeCertRefresherTaskSetsTimeoutSpec.groovy @@ -12,13 +12,11 @@ import org.testcontainers.shaded.org.apache.commons.lang3.exception.ExceptionUti import spock.lang.AutoCleanup import spock.lang.Shared import spock.lang.Specification -import spock.lang.Stepwise -import spock.lang.Unroll +import java.net.http.HttpTimeoutException import java.security.KeyPair import java.time.Duration -@Stepwise class AcmeCertRefresherTaskSetsTimeoutSpec extends Specification { public static final String EXPECTED_DOMAIN = "localhost" @@ -91,8 +89,7 @@ class AcmeCertRefresherTaskSetsTimeoutSpec extends Specification { ] as Map } - @Unroll - def "validate timeout applied if signup is slow"(SlowServerConfig config) { + def "validate timeout applied if signup is #config"(SlowServerConfig config) { given: "we have all the ports we could ever need" expectedHttpPort = SocketUtils.findAvailableTcpPort() expectedSecurePort = SocketUtils.findAvailableTcpPort() @@ -121,8 +118,8 @@ class AcmeCertRefresherTaskSetsTimeoutSpec extends Specification { ane?.message == "Network error" Throwable rootEx = ExceptionUtils.getRootCause(ex) - rootEx instanceof SocketTimeoutException - rootEx.message == "Read timed out" + rootEx instanceof HttpTimeoutException + rootEx.message == "request timed out" cleanup: appServer?.stop() @@ -136,9 +133,14 @@ class AcmeCertRefresherTaskSetsTimeoutSpec extends Specification { } class ActualSlowServerConfig implements SlowServerConfig { + boolean slowSignup boolean slowOrdering boolean slowAuthorization Duration duration = Duration.ofSeconds(networkTimeoutInSecs + 2) + + String toString() { + "slowSignup: $slowSignup, slowOrdering: $slowOrdering, slowAuthorization: $slowAuthorization, duration: $duration" + } } }