From 59c9df123183608fb798edabe8fb2fdcb746fa32 Mon Sep 17 00:00:00 2001 From: lhazlewood <121180+lhazlewood@users.noreply.github.com> Date: Thu, 5 Oct 2023 22:43:35 -0700 Subject: [PATCH] Released 0.12.2 (#856) * Released 0.12.2 * [maven-release-plugin] prepare release 0.12.2 * [maven-release-plugin] prepare for next development iteration --- CHANGELOG.md | 12 +++++++++ README.md | 26 +++++++++---------- api/pom.xml | 2 +- extensions/gson/pom.xml | 2 +- extensions/jackson/pom.xml | 2 +- extensions/orgjson/pom.xml | 2 +- extensions/pom.xml | 2 +- impl/pom.xml | 2 +- .../impl/io/BytesInputStream.java | 2 +- pom.xml | 2 +- tdjar/pom.xml | 2 +- 11 files changed, 34 insertions(+), 22 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ee3b3c6fc..5b2a12757 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ ## Release Notes +### 0.12.2 + +This is a follow-up release to finalize the work in 0.12.1 that tried to fix a reflection scope problem +on >= JDK 17. The 0.12.1 fix worked, but only if the importing project or application did _not_ have its own +`module-info.java` file. + +This release removes that reflection code entirely in favor of a JJWT-native implementation, eliminating JPMS +module (scope) problems on >= JDK 17. As such, `--add-opens` flags are no longer required to use JJWT. + +The fix has been tested up through JDK 21 in a separate application environment (out of JJWT's codebase) to assert +expected functionality in a 'clean room' environment in a project both with and without `module-info.java` usage. + ### 0.12.1 Enabled reflective access on JDK 17+ to `java.io.ByteArrayInputStream` and `sun.security.util.KeyUtil` for diff --git a/README.md b/README.md index 5059f820f..6ae9a8c0e 100644 --- a/README.md +++ b/README.md @@ -540,18 +540,18 @@ If you're building a (non-Android) JDK project, you will want to define the foll io.jsonwebtoken jjwt-api - 0.12.1 + 0.12.2 io.jsonwebtoken jjwt-impl - 0.12.1 + 0.12.2 runtime io.jsonwebtoken jjwt-jackson - 0.12.1 + 0.12.2 runtime ``` @@ -2961,7 +2961,7 @@ scope which is the typical JJWT default). That is: ```groovy dependencies { - implementation 'io.jsonwebtoken:jjwt-jackson:0.12.1' + implementation 'io.jsonwebtoken:jjwt-jackson:0.12.2' } ``` @@ -3069,7 +3069,7 @@ scope which is the typical JJWT default). That is: io.jsonwebtoken jjwt-gson - 0.12.1 + 0.12.2 compile ``` @@ -3078,7 +3078,7 @@ scope which is the typical JJWT default). That is: ```groovy dependencies { - implementation 'io.jsonwebtoken:jjwt-gson:0.12.1' + implementation 'io.jsonwebtoken:jjwt-gson:0.12.2' } ``` diff --git a/api/pom.xml b/api/pom.xml index 0478dde78..3c69caf8d 100644 --- a/api/pom.xml +++ b/api/pom.xml @@ -21,7 +21,7 @@ io.jsonwebtoken jjwt-root - 0.12.2-SNAPSHOT + 0.12.3-SNAPSHOT ../pom.xml diff --git a/extensions/gson/pom.xml b/extensions/gson/pom.xml index a530aa1f5..242f999de 100644 --- a/extensions/gson/pom.xml +++ b/extensions/gson/pom.xml @@ -21,7 +21,7 @@ io.jsonwebtoken jjwt-root - 0.12.2-SNAPSHOT + 0.12.3-SNAPSHOT ../../pom.xml diff --git a/extensions/jackson/pom.xml b/extensions/jackson/pom.xml index 201aa3dfa..f616b4625 100644 --- a/extensions/jackson/pom.xml +++ b/extensions/jackson/pom.xml @@ -21,7 +21,7 @@ io.jsonwebtoken jjwt-root - 0.12.2-SNAPSHOT + 0.12.3-SNAPSHOT ../../pom.xml diff --git a/extensions/orgjson/pom.xml b/extensions/orgjson/pom.xml index 56892a990..e3d849844 100644 --- a/extensions/orgjson/pom.xml +++ b/extensions/orgjson/pom.xml @@ -21,7 +21,7 @@ io.jsonwebtoken jjwt-root - 0.12.2-SNAPSHOT + 0.12.3-SNAPSHOT ../../pom.xml diff --git a/extensions/pom.xml b/extensions/pom.xml index 7b5a96f2a..feb4cb965 100644 --- a/extensions/pom.xml +++ b/extensions/pom.xml @@ -21,7 +21,7 @@ io.jsonwebtoken jjwt-root - 0.12.2-SNAPSHOT + 0.12.3-SNAPSHOT ../pom.xml diff --git a/impl/pom.xml b/impl/pom.xml index 6f56bd6f7..d27e17c46 100644 --- a/impl/pom.xml +++ b/impl/pom.xml @@ -21,7 +21,7 @@ io.jsonwebtoken jjwt-root - 0.12.2-SNAPSHOT + 0.12.3-SNAPSHOT ../pom.xml diff --git a/impl/src/main/java/io/jsonwebtoken/impl/io/BytesInputStream.java b/impl/src/main/java/io/jsonwebtoken/impl/io/BytesInputStream.java index b5f2cb927..9089d5cc4 100644 --- a/impl/src/main/java/io/jsonwebtoken/impl/io/BytesInputStream.java +++ b/impl/src/main/java/io/jsonwebtoken/impl/io/BytesInputStream.java @@ -24,7 +24,7 @@ * Allows read access to the internal byte array, avoiding the need copy/extract to a * {@link java.io.ByteArrayOutputStream}. * - * @since JJWT_RELEASE_VERSION + * @since 0.12.2 */ public final class BytesInputStream extends ByteArrayInputStream { diff --git a/pom.xml b/pom.xml index 0bd5e3bf9..ac0e08304 100644 --- a/pom.xml +++ b/pom.xml @@ -19,7 +19,7 @@ io.jsonwebtoken jjwt-root - 0.12.2-SNAPSHOT + 0.12.3-SNAPSHOT JJWT JSON Web Token support for the JVM and Android pom diff --git a/tdjar/pom.xml b/tdjar/pom.xml index 2219fd283..06347d902 100644 --- a/tdjar/pom.xml +++ b/tdjar/pom.xml @@ -21,7 +21,7 @@ io.jsonwebtoken jjwt-root - 0.12.2-SNAPSHOT + 0.12.3-SNAPSHOT ../pom.xml