From c838a51cbc6f416b97c7dfe1d319a16a922125b1 Mon Sep 17 00:00:00 2001 From: "Wakefield-Olson, Allan M." Date: Wed, 25 Mar 2026 11:29:54 -0500 Subject: [PATCH 1/4] Update configuration for Java 21 support and clean up outdated versions --- .circleci/config.yml | 52 +---- CHANGELOG.md | 4 + pom.xml | 537 ++++++++++++++++++++++--------------------- 3 files changed, 276 insertions(+), 317 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c943ca0..07b337b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,54 +3,6 @@ version: 2.1 workflows: tests: jobs: - - unit-tests: - name: java8 - image: "cimg/openjdk" - version: "8.0" - - unit-tests: - name: java9 - image: "circleci/openjdk" - version: "9" - - unit-tests: - name: java10 - image: "circleci/openjdk" - version: "10" - - unit-tests: - name: java11 - image: "cimg/openjdk" - version: "11.0" - - unit-tests: - name: java12 - image: "cimg/openjdk" - version: "12.0.2" - - unit-tests: - name: java13 - image: "cimg/openjdk" - version: "13.0.0" - - unit-tests: - name: java14 - image: "cimg/openjdk" - version: "14.0.0" - - unit-tests: - name: java15 - image: "cimg/openjdk" - version: "15.0.0" - - unit-tests: - name: java16 - image: "cimg/openjdk" - version: "16.0.0" - - unit-tests: - name: java17 - image: "cimg/openjdk" - version: "17.0" - - unit-tests: - name: java18 - image: "cimg/openjdk" - version: "18.0.1" - - unit-tests: - name: java19 - image: "cimg/openjdk" - version: "19.0.0" - unit-tests: name: java21 image: "cimg/openjdk" @@ -78,7 +30,7 @@ workflows: jobs: security-scan: docker: - - image: cimg/openjdk:11.0 + - image: cimg/openjdk:21.0 steps: - checkout - run: @@ -118,4 +70,4 @@ jobs: command: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -Dgpg.skip=true -B -V - run: name: Run tests - command: mvn test -DforkCount=1 -DreuseForks=false + command: mvn test -DforkCount=1 -DreuseForks=false diff --git a/CHANGELOG.md b/CHANGELOG.md index d7540d9..ef5dad0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 2.0.0 +* Update SDK to Java21 +* This fixes a compression issue with Java 21 applications when converting the response body of the requests. + ## 1.13.0 * A new feature (metadata on InboundMessage) diff --git a/pom.xml b/pom.xml index 33bedc8..a7b5468 100644 --- a/pom.xml +++ b/pom.xml @@ -1,280 +1,283 @@ - 4.0.0 - - - com.postmarkapp - postmark - ${postmark.version} - postmark - Postmark is a transactional email service provider. + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + + + com.postmarkapp + postmark + ${postmark.version} + postmark + Postmark is a transactional email service provider. + https://github.com/activecampaign/postmark-java + + + + Igor Balos + ActiveCampaign + https://www.activecampaign.com + https://twitter.com/ibalosh/ + ibalosh@gmail.com + + + + + 1.13.0 + UTF-8 + 21 + 2.9.7 + 2.15.0 + 5.8.2 + 1.3.2 + + + + + MIT License + http://www.opensource.org/licenses/mit-license.php + repo + + + + https://github.com/activecampaign/postmark-java + scm:git@github.com:ActiveCampaign/postmark-java.git + scm:git@github.com:ActiveCampaign/postmark-java.git + + + + + + org.apache.httpcomponents.client5 + httpclient5 + 5.5 + + + + + com.fasterxml.jackson.core + jackson-core + 2.15.0 + + + + com.fasterxml.jackson.core + jackson-annotations + 2.15.0 + + + + com.fasterxml.jackson.core + jackson-databind + 2.15.0 + + + + + org.apache.tika + tika-core + 3.2.3 + + + + + + org.junit.jupiter + junit-jupiter-api + 5.8.2 + test + + + + org.junit.jupiter + junit-jupiter-engine + 5.8.2 + test + + + + org.junit.platform + junit-platform-runner + 1.8.0 + test + + + + + org.mockito + mockito-core + 4.11.0 + test + + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.13.0 + + ${java.version} + ${java.version} + + + + + org.apache.maven.plugins + maven-surefire-plugin + 3.2.5 + + false + 1 + false + + + + + org.apache.maven.plugins + maven-failsafe-plugin + 3.2.5 + + + + + + + src/main/resources + true + + + + + - - - Igor Balos - ActiveCampaign - https://www.activecampaign.com - https://twitter.com/ibalosh/ - ibalosh@gmail.com - - - - - 1.13.0 - UTF-8 - 1.8 - 2.9.7 - 2.15.0 - 5.8.2 - 1.3.2 - - - - - MIT License - http://www.opensource.org/licenses/mit-license.php - repo - - - - - https://github.com/activecampaign/postmark-java - scm:git@github.com:ActiveCampaign/postmark-java.git - scm:git@github.com:ActiveCampaign/postmark-java.git - - - - - - org.apache.httpcomponents.client5 - httpclient5 - 5.5 - - - - - com.fasterxml.jackson.core - jackson-core - 2.15.0 - - - - com.fasterxml.jackson.core - jackson-annotations - 2.15.0 - - - - com.fasterxml.jackson.core - jackson-databind - 2.15.0 - - - - - org.apache.tika - tika-core - 2.9.4 - - - - - - org.junit.jupiter - junit-jupiter-api - 5.8.2 - test - - - - org.junit.jupiter - junit-jupiter-engine - 5.8.2 - test - - - - org.junit.platform - junit-platform-runner - 1.8.0 - test - - - - - org.mockito - mockito-core - 2.11.0 - test - - - - - - + + + release - - - org.apache.maven.plugins - maven-compiler-plugin - 3.8.1 - - ${java.version} - ${java.version} - - + + + performRelease + + - - org.apache.maven.plugins - maven-surefire-plugin - 2.22.2 - + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.7 + true + + central + https://ossrh-staging-api.central.sonatype.com/ + true + + + + + org.apache.maven.plugins + maven-source-plugin + 2.2.1 + + + attach-sources + + jar-no-fork + + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.6.3 + + + attach-javadocs + + jar + + + + + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + sign-artifacts + verify + + sign + + + + + + + org.apache.maven.plugins + maven-enforcer-plugin + 3.0.0-M2 + + + + enforce-banned-dependencies + + enforce + - false - 1 - false + + + true + + + com.fasterxml.jackson.core:jackson-annotations:(,${jackson.minimum.version}] + + com.fasterxml.jackson.core:jackson-core:jar:(,${jackson.minimum.version}] + + com.fasterxml.jackson.core:jackson-databind:jar:(,${jackson.minimum.version}] + + A banned dependency was found! Need to use jackson newer than + ${jackson.minimum.version}. + + + true - + + + - - org.apache.maven.plugins - maven-failsafe-plugin - 2.22.2 - + - - - - src/main/resources - true - - - + + + + central + https://central.sonatype.com/repository/maven-snapshots/ + + + central + https://ossrh-staging-api.central.sonatype.com/service/local/staging/deploy/maven2/ + + - - - - release - - - - performRelease - - - - - - - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.7 - true - - central - https://ossrh-staging-api.central.sonatype.com/ - true - - - - - org.apache.maven.plugins - maven-source-plugin - 2.2.1 - - - attach-sources - - jar-no-fork - - - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.9.1 - - - attach-javadocs - - jar - - - - - - - - org.apache.maven.plugins - maven-gpg-plugin - 1.6 - - - sign-artifacts - verify - - sign - - - - - - - org.apache.maven.plugins - maven-enforcer-plugin - 3.0.0-M2 - - - - enforce-banned-dependencies - - enforce - - - - - true - - com.fasterxml.jackson.core:jackson-annotations:(,${jackson.minimum.version}] - com.fasterxml.jackson.core:jackson-core:jar:(,${jackson.minimum.version}] - com.fasterxml.jackson.core:jackson-databind:jar:(,${jackson.minimum.version}] - - A banned dependency was found! Need to use jackson newer than ${jackson.minimum.version}. - - - true - - - - - - - - - - - - central - https://central.sonatype.com/repository/maven-snapshots/ - - - central - https://ossrh-staging-api.central.sonatype.com/service/local/staging/deploy/maven2/ - - - - - - - - \ No newline at end of file + + + + From 2b2f4ecc755f0200978c498a1b36f14a841e363c Mon Sep 17 00:00:00 2001 From: "Wakefield-Olson, Allan M." Date: Wed, 25 Mar 2026 11:35:20 -0500 Subject: [PATCH 2/4] Update pom.xml for Java 21 compatibility and dependency management --- pom.xml | 540 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 270 insertions(+), 270 deletions(-) diff --git a/pom.xml b/pom.xml index a7b5468..47b645a 100644 --- a/pom.xml +++ b/pom.xml @@ -1,283 +1,283 @@ - 4.0.0 - - - com.postmarkapp - postmark - ${postmark.version} - postmark - Postmark is a transactional email service provider. - https://github.com/activecampaign/postmark-java - - - - Igor Balos - ActiveCampaign - https://www.activecampaign.com - https://twitter.com/ibalosh/ - ibalosh@gmail.com - - - - - 1.13.0 - UTF-8 - 21 - 2.9.7 - 2.15.0 - 5.8.2 - 1.3.2 - - - - - MIT License - http://www.opensource.org/licenses/mit-license.php - repo - - - - + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + + + com.postmarkapp + postmark + ${postmark.version} + postmark + Postmark is a transactional email service provider. https://github.com/activecampaign/postmark-java - scm:git@github.com:ActiveCampaign/postmark-java.git - scm:git@github.com:ActiveCampaign/postmark-java.git - - - - - - org.apache.httpcomponents.client5 - httpclient5 - 5.5 - - - - - com.fasterxml.jackson.core - jackson-core - 2.15.0 - - - - com.fasterxml.jackson.core - jackson-annotations - 2.15.0 - - - - com.fasterxml.jackson.core - jackson-databind - 2.15.0 - - - - - org.apache.tika - tika-core - 3.2.3 - - - - - - org.junit.jupiter - junit-jupiter-api - 5.8.2 - test - - - - org.junit.jupiter - junit-jupiter-engine - 5.8.2 - test - - - - org.junit.platform - junit-platform-runner - 1.8.0 - test - - - - - org.mockito - mockito-core - 4.11.0 - test - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - ${java.version} - ${java.version} - - - - - org.apache.maven.plugins - maven-surefire-plugin - 3.2.5 - - false - 1 - false - - - - - org.apache.maven.plugins - maven-failsafe-plugin - 3.2.5 - - - - - - - src/main/resources - true - - - - - - - - release + + + Igor Balos + ActiveCampaign + https://www.activecampaign.com + https://twitter.com/ibalosh/ + ibalosh@gmail.com + + + + + 1.13.0 + UTF-8 + 21 + 2.9.7 + 2.15.0 + 5.8.2 + 1.3.2 + + + + + MIT License + http://www.opensource.org/licenses/mit-license.php + repo + + + + + https://github.com/activecampaign/postmark-java + scm:git@github.com:ActiveCampaign/postmark-java.git + scm:git@github.com:ActiveCampaign/postmark-java.git + + + + + + org.apache.httpcomponents.client5 + httpclient5 + 5.5 + + + + + com.fasterxml.jackson.core + jackson-core + 2.15.0 + + + + com.fasterxml.jackson.core + jackson-annotations + 2.15.0 + + + + com.fasterxml.jackson.core + jackson-databind + 2.15.0 + + + + + org.apache.tika + tika-core + 3.2.3 + + + + + + org.junit.jupiter + junit-jupiter-api + 5.8.2 + test + + + + org.junit.jupiter + junit-jupiter-engine + 5.8.2 + test + + + + org.junit.platform + junit-platform-runner + 1.8.0 + test + + + + + org.mockito + mockito-core + 4.110 + test + + + + + + - - - performRelease - - + + + org.apache.maven.plugins + maven-compiler-plugin + 3.13.0 + + ${java.version} + ${java.version} + + - - - - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.7 - true - - central - https://ossrh-staging-api.central.sonatype.com/ - true - - - - - org.apache.maven.plugins - maven-source-plugin - 2.2.1 - - - attach-sources - - jar-no-fork - - - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.6.3 - - - attach-javadocs - - jar - - - - - - - - org.apache.maven.plugins - maven-gpg-plugin - 1.6 - - - sign-artifacts - verify - - sign - - - - - - - org.apache.maven.plugins - maven-enforcer-plugin - 3.0.0-M2 - - - - enforce-banned-dependencies - - enforce - + + org.apache.maven.plugins + maven-surefire-plugin + 3.2.5 - - - true - - - com.fasterxml.jackson.core:jackson-annotations:(,${jackson.minimum.version}] - - com.fasterxml.jackson.core:jackson-core:jar:(,${jackson.minimum.version}] - - com.fasterxml.jackson.core:jackson-databind:jar:(,${jackson.minimum.version}] - - A banned dependency was found! Need to use jackson newer than - ${jackson.minimum.version}. - - - true + false + 1 + false - - - + + + org.apache.maven.plugins + maven-failsafe-plugin + 3.2.5 + - - - - - - central - https://central.sonatype.com/repository/maven-snapshots/ - - - central - https://ossrh-staging-api.central.sonatype.com/service/local/staging/deploy/maven2/ - - + + + + src/main/resources + true + + + - - + - + + + release + + + + performRelease + + + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.7 + true + + central + https://ossrh-staging-api.central.sonatype.com/ + true + + + + + org.apache.maven.plugins + maven-source-plugin + 2.2.1 + + + attach-sources + + jar-no-fork + + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.6.3 + + + attach-javadocs + + jar + + + + + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + sign-artifacts + verify + + sign + + + + + + + org.apache.maven.plugins + maven-enforcer-plugin + 3.0.0-M2 + + + + enforce-banned-dependencies + + enforce + + + + + true + + + com.fasterxml.jackson.core:jackson-annotations:(,${jackson.minimum.version}] + + com.fasterxml.jackson.core:jackson-core:jar:(,${jackson.minimum.version}] + + com.fasterxml.jackson.core:jackson-databind:jar:(,${jackson.minimum.version}] + + A banned dependency was found! Need to use jackson newer than + ${jackson.minimum.version}. + + + true + + + + + + + + + + + + central + https://central.sonatype.com/repository/maven-snapshots/ + + + central + https://ossrh-staging-api.central.sonatype.com/service/local/staging/deploy/maven2/ + + + + + + + + \ No newline at end of file From 43ff496c0ffcff5fd9b79dd36ee0985bcf9853d2 Mon Sep 17 00:00:00 2001 From: "Wakefield-Olson, Allan M." Date: Wed, 25 Mar 2026 11:37:13 -0500 Subject: [PATCH 3/4] Refactor banned dependencies section in pom.xml for improved readability --- pom.xml | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 47b645a..de901ce 100644 --- a/pom.xml +++ b/pom.xml @@ -244,15 +244,11 @@ true - - com.fasterxml.jackson.core:jackson-annotations:(,${jackson.minimum.version}] - - com.fasterxml.jackson.core:jackson-core:jar:(,${jackson.minimum.version}] - - com.fasterxml.jackson.core:jackson-databind:jar:(,${jackson.minimum.version}] + com.fasterxml.jackson.core:jackson-annotations:(,${jackson.minimum.version}] + com.fasterxml.jackson.core:jackson-core:jar:(,${jackson.minimum.version}] + com.fasterxml.jackson.core:jackson-databind:jar:(,${jackson.minimum.version}] - A banned dependency was found! Need to use jackson newer than - ${jackson.minimum.version}. + A banned dependency was found! Need to use jackson newer than ${jackson.minimum.version}. true From 860b3da5457472a4dacc8dc786998a036bf04939 Mon Sep 17 00:00:00 2001 From: "Wakefield-Olson, Allan M." Date: Wed, 25 Mar 2026 11:57:28 -0500 Subject: [PATCH 4/4] Update README.md to emphasize Java 21 requirement for version 2.0.0 --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 45f80da..8f306d6 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,8 @@ [![License](http://img.shields.io/badge/license-MIT-blue.svg?style=flat)](http://www.opensource.org/licenses/MIT) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.postmarkapp/postmark/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.postmarkapp/postmark) +:star: :star: **IMPORTANT UPDATE:** :star: :star: As of version 2.0.0, this library requires Java 21. Please ensure your runtime is Java 21 or newer. + :star: :star: **IMPORTANT UPDATE** :star: :star: **As of version 1.9.0, we migrated from groupid ```com.wildbit.java``` to ```com.postmarkapp```.** Please update your pom.xml file with new groupid and your imports to use the latest versions of the library.