From b39f2ff36784b6d217683f58ce2c2249252851f2 Mon Sep 17 00:00:00 2001 From: marmoure Date: Wed, 28 Jan 2026 16:03:02 +0100 Subject: [PATCH 1/5] [bugfix] Update dependencies and plugins --- pom.xml | 171 ++++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 141 insertions(+), 30 deletions(-) diff --git a/pom.xml b/pom.xml index 182b146..1e597eb 100644 --- a/pom.xml +++ b/pom.xml @@ -16,11 +16,13 @@ 21 21 UTF-8 - 4.10.9 + 4.10.14 + 4.10.2 4.12.0 2.8.2 netty - 6.0.1 + 2.19.1 + 6.0.2 com.evolvedbinary.bblValidator.Application @@ -29,8 +31,7 @@ io.micronaut micronaut-http-server-netty - - 4.10.12 + ${micronaut.version} @@ -47,13 +48,6 @@ ${micronaut.version} - - - io.micronaut.validation - micronaut-validation - ${micronaut.validation.version} - - io.micronaut.serde @@ -90,11 +84,62 @@ 5.9.0 + + io.micronaut + micronaut-context + ${micronaut.version} + + + io.micronaut + micronaut-http + ${micronaut.version} + + + io.micronaut + micronaut-aop + ${micronaut.version} + compile + + + io.micronaut + micronaut-core + ${micronaut.version} + compile + + + jakarta.inject + jakarta.inject-api + 2.0.1 + + + jakarta.annotation + jakarta.annotation-api + 3.0.0 + compile + + + org.slf4j + slf4j-api + 2.0.17 + + + org.reactivestreams + reactive-streams + 1.0.4 + compile + + + io.projectreactor + reactor-core + 3.8.2 + compile + + ch.qos.logback logback-classic - 1.5.21 + 1.5.26 runtime @@ -102,28 +147,42 @@ org.yaml snakeyaml - 2.0 + 2.5 runtime + + com.fasterxml.jackson.core + jackson-core + ${jackson.version} + + com.fasterxml.jackson.core jackson-databind - 2.15.3 + ${jackson.version} uk.gov.nationalarchives csv-validator-java-api - 1.4.1 + 1.4.3 + + + + org.apache.httpcomponents.client5 + httpclient5 + 5.6 + compile - org.apache.httpcomponents - httpclient - 4.5.14 + org.apache.httpcomponents.core5 + httpcore5 + 5.4 + compile @@ -142,7 +201,7 @@ io.micronaut.test micronaut-test-junit5 - 4.6.0 + ${micronaut.test.version} test @@ -154,9 +213,9 @@ - org.junit.jupiter - junit-jupiter-engine - ${junit.version} + io.micronaut.test + micronaut-test-core + ${micronaut.test.version} test @@ -166,6 +225,33 @@ ${micronaut.version} test + + + io.micronaut + micronaut-http-client-core + ${micronaut.version} + test + + + + org.junit.jupiter + junit-jupiter-engine + ${junit.version} + test + + + + org.junit.platform + junit-platform-commons + ${junit.version} + + + + org.apiguardian + apiguardian-api + 1.1.2 + test + @@ -198,7 +284,7 @@ org.apache.maven.plugins maven-source-plugin - 3.3.1 + 3.4.0 org.apache.maven.plugins @@ -213,18 +299,43 @@ org.sonatype.central central-publishing-maven-plugin - 0.9.0 + 0.10.0 true + + org.apache.maven.plugins + maven-enforcer-plugin + 3.6.2 + + + enforce-maven-version + + enforce + + + + + [21,) + + + [3.6.3,) + + + true + + + + + org.apache.maven.plugins maven-compiler-plugin - 3.11.0 + 3.14.1 21 @@ -246,7 +357,7 @@ org.apache.maven.plugins maven-shade-plugin - 3.5.1 + 3.6.1 package @@ -269,7 +380,7 @@ io.micronaut.maven micronaut-maven-plugin - 4.11.4 + 4.11.6 ${micronaut.test.resources.version} true @@ -278,7 +389,7 @@ io.fabric8 docker-maven-plugin - 0.46.0 + 0.48.0 true @@ -384,7 +495,7 @@ org.apache.maven.plugins maven-release-plugin - 3.2.0 + 3.3.1 bbl-validator-@{project.version} bbl-validator-release @@ -487,4 +598,4 @@ - \ No newline at end of file + From 80cd12a9f23433f8811e3b811968be70e4a14706 Mon Sep 17 00:00:00 2001 From: Adam Retter Date: Fri, 30 Jan 2026 12:44:41 +0100 Subject: [PATCH 2/5] [bugfix] Fix Maven dependency issues --- pom.xml | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 1e597eb..41dd848 100644 --- a/pom.xml +++ b/pom.xml @@ -32,6 +32,7 @@ io.micronaut micronaut-http-server-netty ${micronaut.version} + runtime @@ -46,6 +47,7 @@ io.micronaut micronaut-runtime ${micronaut.version} + runtime @@ -68,6 +70,7 @@ io.micronaut.reactor micronaut-reactor 3.9.1 + runtime @@ -82,6 +85,7 @@ io.micronaut.views micronaut-views-velocity 5.9.0 + runtime @@ -157,7 +161,6 @@ jackson-core ${jackson.version} - com.fasterxml.jackson.core jackson-databind @@ -244,6 +247,7 @@ org.junit.platform junit-platform-commons ${junit.version} + test @@ -450,17 +454,17 @@ true + true + - org.apache.maven:maven-compat:jar + io.micronaut:micronaut-http-client + org.junit.jupiter:junit-jupiter-engine - - - org.eclipse.sisu:org.eclipse.sisu.plexus:jar - + - org.eclipse.sisu:org.eclipse.sisu.plexus:jar + com.fasterxml.jackson.core:jackson-core + From 22201aef0c95860d2374ed287bc054d10e14d4e6 Mon Sep 17 00:00:00 2001 From: marmoure Date: Wed, 28 Jan 2026 16:05:53 +0100 Subject: [PATCH 3/5] [refactor] migrate from org.apache.httpcomponents to org.apache.httpcomponents.client5 --- .../service/FileDownloadService.java | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/evolvedbinary/bblValidator/service/FileDownloadService.java b/src/main/java/com/evolvedbinary/bblValidator/service/FileDownloadService.java index c81bb62..dee8ada 100644 --- a/src/main/java/com/evolvedbinary/bblValidator/service/FileDownloadService.java +++ b/src/main/java/com/evolvedbinary/bblValidator/service/FileDownloadService.java @@ -3,15 +3,17 @@ import com.fasterxml.uuid.Generators; import com.fasterxml.uuid.impl.RandomBasedGenerator; import jakarta.inject.Singleton; +import org.apache.hc.client5.http.classic.methods.HttpGet; +import org.apache.hc.client5.http.config.RequestConfig; +import org.apache.hc.client5.http.impl.classic.CloseableHttpClient; +import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse; +import org.apache.hc.client5.http.impl.classic.HttpClients; +import org.apache.hc.client5.http.impl.io.PoolingHttpClientConnectionManager; +import org.apache.hc.core5.http.HttpStatus; +import org.apache.hc.core5.util.TimeValue; +import org.apache.hc.core5.util.Timeout; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.apache.http.HttpStatus; -import org.apache.http.client.config.RequestConfig; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import java.io.IOException; import java.io.InputStream; @@ -19,7 +21,6 @@ import java.nio.file.Path; import java.nio.file.StandardCopyOption; import java.util.UUID; -import java.util.concurrent.TimeUnit; @Singleton public class FileDownloadService { @@ -37,13 +38,13 @@ public FileDownloadService() { this.poolingHttpClientConnectionManager = new PoolingHttpClientConnectionManager(); this.poolingHttpClientConnectionManager.setMaxTotal(20); this.poolingHttpClientConnectionManager.setDefaultMaxPerRoute(15); - this.poolingHttpClientConnectionManager.setValidateAfterInactivity(15_000); + this.poolingHttpClientConnectionManager.setValidateAfterInactivity(TimeValue.ofMilliseconds(15_000)); this.httpRequestConfig = RequestConfig.custom() - .setConnectTimeout(10_000) - .setSocketTimeout(10_000) - .setConnectionRequestTimeout(3_000) - .build(); + .setConnectTimeout(Timeout.ofMilliseconds(10_000)) + .setResponseTimeout(Timeout.ofMilliseconds(10_000)) + .setConnectionRequestTimeout(Timeout.ofMilliseconds(3_000)) + .build(); try { this.sharedTempDir = Files.createTempDirectory(TEMP_DIR_NAME); @@ -57,7 +58,7 @@ private CloseableHttpClient buildHttpClient() { .custom() .setConnectionManager(poolingHttpClientConnectionManager) .setDefaultRequestConfig(httpRequestConfig) - .evictIdleConnections(30, TimeUnit.SECONDS) + .evictIdleConnections(TimeValue.ofSeconds(30)) .evictExpiredConnections() .build(); } @@ -77,8 +78,9 @@ public Path downloadToTemp(final String url) throws IOException { final HttpGet httpGet = new HttpGet(url); try (final CloseableHttpResponse response = buildHttpClient().execute(httpGet)) { - - final int statusCode = response.getStatusLine().getStatusCode(); + + final int statusCode = response.getCode(); + if (statusCode != HttpStatus.SC_OK) { throw new IOException("Non Resolvable url: " + url); } @@ -122,4 +124,4 @@ private String generateUuidFilename() { final UUID uuid = generator.generate(); return uuid.toString() + ".csv"; } -} +} \ No newline at end of file From eca1e4c8af776cabd41bd749d588a8430104478b Mon Sep 17 00:00:00 2001 From: Adam Retter Date: Fri, 30 Jan 2026 12:10:52 +0100 Subject: [PATCH 4/5] [refactor] Use same property names for maven-compiler-plugin is our other Maven projects --- pom.xml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 41dd848..33180f7 100644 --- a/pom.xml +++ b/pom.xml @@ -13,9 +13,10 @@ - 21 - 21 + 21 + 21 UTF-8 + 4.10.14 4.10.2 4.12.0 @@ -341,7 +342,9 @@ maven-compiler-plugin 3.14.1 - 21 + ${project.build.source} + ${project.build.target} + ${project.build.sourceEncoding} io.micronaut From fb689e983ced69bf34cc5e6988cef7daf2637478 Mon Sep 17 00:00:00 2001 From: Adam Retter Date: Fri, 30 Jan 2026 12:16:25 +0100 Subject: [PATCH 5/5] [CI] Add JavaDoc checks to CI --- .github/workflows/ci.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1f82cf9..ce8e475 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,4 +17,8 @@ jobs: distribution: liberica cache: maven - name: Build with Maven - run: mvn -V -B package \ No newline at end of file + run: mvn -V -B package -DskipTests + - name: Run Tests + run: mvn -V -B test + - name: Check JavaDoc + run: mvn -V -B javadoc:javadoc \ No newline at end of file