Skip to content

Migrate JSON bindings to Jackson 3#678

Open
arturobernalg wants to merge 1 commit into
apache:masterfrom
arturobernalg:jackson3
Open

Migrate JSON bindings to Jackson 3#678
arturobernalg wants to merge 1 commit into
apache:masterfrom
arturobernalg:jackson3

Conversation

@arturobernalg

Copy link
Copy Markdown
Member

Rename module and package to jackson3, move to tools.jackson 3.2.0, translate unchecked JacksonException to IOException, target Java 17.

@arturobernalg
arturobernalg requested a review from ok2c July 10, 2026 13:15
Rename module and package to jackson3, move to tools.jackson 3.2.0,
translate unchecked JacksonException to IOException, target Java 17.
echo 'HC_BUILD_TOOLCHAIN_VERSION=${{ matrix.java }}' >> "$GITHUB_ENV"
;;
esac
# The httpcore5-jackson3 module is compiled for Java 17 (Jackson 3

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@arturobernalg Looks good to me.

Just for my understanding. Why do not we do something similar for the jakarta-rest-client module in client? It also requires Java 11. How does it work there?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the client, jakarta-rest-client targets Java 11, so it only breaks on the Java 8 row — it stays in the reactor and a skip-on-java8 profile no-ops its build there. jackson3 targets Java 17, so it has to be dropped on both the Java 8 and Java 11 rows, which a single-value skip profile can't express cleanly — hence the reactor exclusion via the jackson3 profile. Happy to switch core to the same keep-in-reactor + skip pattern if you'd prefer them consistent.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@arturobernalg Got it. I would prefer it to be consistent across all our projects especially given that jakarta-rest-client will require Java 17 as well once upgraded to httpcore5-jackson3. The exact approach is up to you to choose.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants