From bc1356eafabec4082597a897eba0bdbb5d89e32f Mon Sep 17 00:00:00 2001 From: yoshihito-nagai Date: Thu, 17 Jul 2025 15:59:24 +0900 Subject: [PATCH 1/3] feature/jdk_21_PID-1924 kotlin DSL --- build.gradle | 59 ------------------------------------------------ build.gradle.kts | 47 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 59 deletions(-) delete mode 100644 build.gradle create mode 100644 build.gradle.kts diff --git a/build.gradle b/build.gradle deleted file mode 100644 index 8b7b88565..000000000 --- a/build.gradle +++ /dev/null @@ -1,59 +0,0 @@ -plugins { - id 'java' - id 'jacoco' -} - -repositories { - mavenCentral() -} - -jacocoTestReport { - reports { - xml.enabled = true - html.enabled = true - } -} - -java { - toolchain { - languageVersion = JavaLanguageVersion.of(8) - } -} - -compileJava { - sourceCompatibility '1.8' - targetCompatibility '1.8' - - options.compilerArgs << "-Xlint:deprecation" << "-Xlint:unchecked" << "-Werror" -} - -compileTestJava { - options.compilerArgs << "-Xlint:deprecation" << "-Werror" -} - -test { - testLogging { - events "skipped", "failed" - exceptionFormat "short" - } -} - -ext { - okhttpVersion = '4.9.0' - hamcrestVersion = '2.2' -} - -dependencies { - implementation "com.squareup.okhttp3:okhttp:${okhttpVersion}" - implementation "com.squareup.okhttp3:logging-interceptor:${okhttpVersion}" - implementation "com.fasterxml.jackson.core:jackson-databind:2.12.1" - implementation "com.auth0:java-jwt:3.14.0" - implementation "net.jodah:failsafe:2.4.1" - - testImplementation "org.bouncycastle:bcprov-jdk15on:1.68" - testImplementation "org.mockito:mockito-core:3.7.7" - testImplementation "com.squareup.okhttp3:mockwebserver:${okhttpVersion}" - testImplementation "org.hamcrest:hamcrest-core:${hamcrestVersion}" - testImplementation "org.hamcrest:hamcrest-library:${hamcrestVersion}" - testImplementation "junit:junit:4.13.1" -} diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 000000000..9af1b81cc --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,47 @@ +plugins { + java + jacoco +} + +repositories { + mavenCentral() +} + +java { + toolchain { + languageVersion.set(JavaLanguageVersion.of(21)) + } +} + +tasks.compileJava { + options.compilerArgs.addAll(listOf("-Xlint:deprecation", "-Xlint:unchecked", "-Werror")) +} + +tasks.compileTestJava { + options.compilerArgs.addAll(listOf("-Xlint:deprecation", "-Werror")) +} + +tasks.test { + testLogging { + events("skipped", "failed") + exceptionFormat = org.gradle.api.tasks.testing.logging.TestExceptionFormat.SHORT + } +} + +val okhttpVersion = "4.12.0" +val hamcrestVersion = "3.0" + +dependencies { + implementation("com.squareup.okhttp3:okhttp:$okhttpVersion") + implementation("com.squareup.okhttp3:logging-interceptor:$okhttpVersion") + implementation("com.fasterxml.jackson.core:jackson-databind:2.19.1") + implementation("com.auth0:java-jwt:4.5.0") + implementation("net.jodah:failsafe:2.4.4") + + testImplementation("org.bouncycastle:bcprov-jdk18on:1.81") + testImplementation("org.mockito:mockito-core:5.18.0") + testImplementation("com.squareup.okhttp3:mockwebserver:$okhttpVersion") + testImplementation("org.hamcrest:hamcrest-core:$hamcrestVersion") + testImplementation("org.hamcrest:hamcrest-library:$hamcrestVersion") + testImplementation("org.junit.jupiter:junit-jupiter-api:5.13.3") +} From 7d39c04e605fe1594946102d7ffb6da954f49965 Mon Sep 17 00:00:00 2001 From: yoshihito-nagai Date: Thu, 17 Jul 2025 16:03:25 +0900 Subject: [PATCH 2/3] feature/jdk_21_PID-1924 fix hard coding to version --- src/test/java/com/auth0/net/TelemetryTest.java | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/test/java/com/auth0/net/TelemetryTest.java b/src/test/java/com/auth0/net/TelemetryTest.java index f3dec4d80..27c77f1cf 100644 --- a/src/test/java/com/auth0/net/TelemetryTest.java +++ b/src/test/java/com/auth0/net/TelemetryTest.java @@ -18,17 +18,20 @@ public void shouldReturnBasicTelemetryBase64Value() throws Exception { Telemetry telemetry = new Telemetry("auth0-java", "1.0.0"); String value = telemetry.getValue(); assertThat(value, is(notNullValue())); - assertThat(value, is("eyJuYW1lIjoiYXV0aDAtamF2YSIsImVudiI6eyJqYXZhIjoiMS44In0sInZlcnNpb24iOiIxLjAuMCJ9")); + String javaVersion = System.getProperty("java.specification.version"); + String expectedJson = "{\"name\":\"auth0-java\",\"env\":{\"java\":\"" + javaVersion + "\"},\"version\":\"1.0.0\"}"; + String expect64value = Base64.getEncoder().encodeToString(expectedJson.getBytes()); + assertThat(value, is(expect64value)); String completeString = new String(Base64.getUrlDecoder().decode(value), StandardCharsets.UTF_8); - TypeReference> mapType = new TypeReference>() { + TypeReference> mapType = new TypeReference<>() { }; Map complete = new ObjectMapper().readValue(completeString, mapType); assertThat((String) complete.get("name"), is("auth0-java")); assertThat((String) complete.get("version"), is("1.0.0")); Map completeEnv = (Map) complete.get("env"); assertThat((String) completeEnv.get("auth0-java"), is(nullValue())); - assertThat((String) completeEnv.get("java"), is("1.8")); + assertThat((String) completeEnv.get("java"), is(System.getProperty("java.specification.version"))); } @Test @@ -36,17 +39,20 @@ public void shouldReturnCompleteTelemetryBase64Value() throws Exception { Telemetry telemetry = new Telemetry("lock", "1.0.0", "2.1.3"); String value = telemetry.getValue(); assertThat(value, is(notNullValue())); - assertThat(value, is("eyJuYW1lIjoibG9jayIsImVudiI6eyJqYXZhIjoiMS44IiwiYXV0aDAtamF2YSI6IjIuMS4zIn0sInZlcnNpb24iOiIxLjAuMCJ9")); + String javaVersion = System.getProperty("java.specification.version"); + String expectedJson = "{\"name\":\"lock\",\"env\":{\"java\":\"" + javaVersion + "\",\"auth0-java\":\"2.1.3\"},\"version\":\"1.0.0\"}"; + String expect64value = Base64.getEncoder().encodeToString(expectedJson.getBytes()); + assertThat(value, is(expect64value)); String completeString = new String(Base64.getUrlDecoder().decode(value), StandardCharsets.UTF_8); - TypeReference> mapType = new TypeReference>() { + TypeReference> mapType = new TypeReference<>() { }; Map complete = new ObjectMapper().readValue(completeString, mapType); assertThat((String) complete.get("name"), is("lock")); assertThat((String) complete.get("version"), is("1.0.0")); Map completeEnv = (Map) complete.get("env"); assertThat((String) completeEnv.get("auth0-java"), is("2.1.3")); - assertThat((String) completeEnv.get("java"), is("1.8")); + assertThat((String) completeEnv.get("java"), is(System.getProperty("java.specification.version"))); } @Test From b6a4160478528b68711824d8ee2baaa30b442eb8 Mon Sep 17 00:00:00 2001 From: yoshihito-nagai Date: Fri, 18 Jul 2025 08:44:50 +0900 Subject: [PATCH 3/3] feature/jdk_21_PID-1924 ci --- .circleci/config.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index a96a2162f..5cffe9382 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -35,7 +35,7 @@ commands: jobs: build: docker: - - image: openjdk:8-jdk + - image: amazoncorretto:21-alpine-jdk steps: - checkout-and-build - run-tests @@ -45,7 +45,7 @@ jobs: TERM: dumb api-diff: docker: - - image: openjdk:8-jdk + - image: amazoncorretto:21-alpine-jdk steps: - checkout-and-build - run-api-diff