This is an automated email from the ASF dual-hosted git repository.
jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new feb916f20079 CAMEL-22857: camel-parent - manage Jackson 3 with the
tools.jackson BOM next to the Jackson 2 BOM
feb916f20079 is described below
commit feb916f20079fcedaf5f284ad1079ec9e4c3d5eb
Author: James Netherton <[email protected]>
AuthorDate: Tue Oct 27 07:17:55 2026 +0000
CAMEL-22857: camel-parent - manage Jackson 3 with the tools.jackson BOM
next to the Jackson 2 BOM
* CAMEL-22857: camel-parent - manage Jackson 3 with the tools.jackson BOM
next to the Jackson 2 BOM
Import tools.jackson:jackson-bom in camel-parent next to
com.fasterxml.jackson:jackson-bom, so every
module gets Jackson 3 versions from the parent. Both BOMs pin the shared 2.x
com.fasterxml.jackson.core:jackson-annotations artifact, so manage it
explicitly with a new
jackson-annotations-version property, which takes precedence over both
imports.
Remove the local Jackson 3 BOM imports from camel-jackson3,
camel-jackson3-avro, camel-jackson3-protobuf,
camel-jackson3xml, camel-jolt, camel-toon and
camel-jbang-plugin-kubernetes, and the hard-coded version
on the camel-kafka test dependency.
Group the Jackson 2 and Jackson 3 artifacts in dependabot, and ignore major
jackson-annotations updates.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
* CAMEL-22857: remove redundant Jackson 2 versions from module poms
The Jackson 2 BOM in camel-parent already manages these artifacts at the
same version.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
---------
Co-authored-by: Claude Opus 5.5 <[email protected]>
---
.github/dependabot.yml | 5 +++++
components/camel-ai/camel-docling/pom.xml | 1 -
components/camel-ai/camel-langchain4j-chat/pom.xml | 1 -
components/camel-cxf/camel-cxf-spring-rest/pom.xml | 1 -
components/camel-jackson3-avro/pom.xml | 12 ------------
components/camel-jackson3-protobuf/pom.xml | 12 ------------
components/camel-jackson3/pom.xml | 12 ------------
components/camel-jackson3xml/pom.xml | 12 ------------
components/camel-jolt/pom.xml | 12 ------------
components/camel-kafka/pom.xml | 1 -
components/camel-pqc/pom.xml | 1 -
components/camel-rest-openapi/pom.xml | 3 ---
components/camel-telemetry-dev/pom.xml | 1 -
components/camel-toon/pom.xml | 12 ------------
dsl/camel-jbang/camel-jbang-plugin-kubernetes/pom.xml | 12 ------------
parent/pom.xml | 17 +++++++++++++++++
test-infra/camel-test-infra-openai-mock/pom.xml | 1 -
17 files changed, 22 insertions(+), 94 deletions(-)
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index 15cb4085d98b..9adb2ca29315 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -42,6 +42,9 @@ updates:
# classgraph 6 is compiled for Java 25 and drops an API camel-datasonnet
uses: revisit when Camel's minimum Java is 25
- dependency-name: "io.github.classgraph:classgraph"
update-types: ["version-update:semver-major"]
+ # Jackson 3 uses the 2.x jackson-annotations
+ - dependency-name: "com.fasterxml.jackson.core:jackson-annotations"
+ update-types: ["version-update:semver-major"]
groups:
Aliyun:
patterns:
["com.aliyun:*","com.aliyun.openservices:*","com.aliyun.mns:*"]
@@ -63,6 +66,8 @@ updates:
patterns: ["org.apache.avro:*"]
Kamelet:
patterns: ["org.apache.camel.kamelets:*"]
+ Jackson:
+ patterns: ["com.fasterxml.jackson:*", "com.fasterxml.jackson.*:*",
"tools.jackson:*", "tools.jackson.*:*"]
open-pull-requests-limit: 20
- package-ecosystem: "npm"
directory: "docs"
diff --git a/components/camel-ai/camel-docling/pom.xml
b/components/camel-ai/camel-docling/pom.xml
index 7c89374659b7..b2bfcf42b8f5 100644
--- a/components/camel-ai/camel-docling/pom.xml
+++ b/components/camel-ai/camel-docling/pom.xml
@@ -49,7 +49,6 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${jackson2-version}</version>
</dependency>
<!-- docling-java client for docling-serve API integration -->
diff --git a/components/camel-ai/camel-langchain4j-chat/pom.xml
b/components/camel-ai/camel-langchain4j-chat/pom.xml
index e641a447112f..381cd2928b0c 100644
--- a/components/camel-ai/camel-langchain4j-chat/pom.xml
+++ b/components/camel-ai/camel-langchain4j-chat/pom.xml
@@ -65,7 +65,6 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${jackson2-version}</version>
</dependency>
<dependency>
diff --git a/components/camel-cxf/camel-cxf-spring-rest/pom.xml
b/components/camel-cxf/camel-cxf-spring-rest/pom.xml
index 0cd795db9819..ba0ae1c55e56 100644
--- a/components/camel-cxf/camel-cxf-spring-rest/pom.xml
+++ b/components/camel-cxf/camel-cxf-spring-rest/pom.xml
@@ -147,7 +147,6 @@
<dependency>
<groupId>com.fasterxml.jackson.jakarta.rs</groupId>
<artifactId>jackson-jakarta-rs-json-provider</artifactId>
- <version>${jackson2-version}</version>
<scope>test</scope>
</dependency>
diff --git a/components/camel-jackson3-avro/pom.xml
b/components/camel-jackson3-avro/pom.xml
index 27dde1c129a6..7a7b4090089b 100644
--- a/components/camel-jackson3-avro/pom.xml
+++ b/components/camel-jackson3-avro/pom.xml
@@ -35,18 +35,6 @@
<firstVersion>4.19.0</firstVersion>
</properties>
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>tools.jackson</groupId>
- <artifactId>jackson-bom</artifactId>
- <version>${jackson3-version}</version>
- <scope>import</scope>
- <type>pom</type>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
<dependencies>
<dependency>
diff --git a/components/camel-jackson3-protobuf/pom.xml
b/components/camel-jackson3-protobuf/pom.xml
index 8606d3d9309b..91b9c94e8811 100644
--- a/components/camel-jackson3-protobuf/pom.xml
+++ b/components/camel-jackson3-protobuf/pom.xml
@@ -35,18 +35,6 @@
<firstVersion>4.19.0</firstVersion>
</properties>
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>tools.jackson</groupId>
- <artifactId>jackson-bom</artifactId>
- <version>${jackson3-version}</version>
- <scope>import</scope>
- <type>pom</type>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
<dependencies>
<dependency>
diff --git a/components/camel-jackson3/pom.xml
b/components/camel-jackson3/pom.xml
index b042b2036707..e1d2879959ba 100644
--- a/components/camel-jackson3/pom.xml
+++ b/components/camel-jackson3/pom.xml
@@ -36,18 +36,6 @@
<firstVersion>4.19.0</firstVersion>
</properties>
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>tools.jackson</groupId>
- <artifactId>jackson-bom</artifactId>
- <version>${jackson3-version}</version>
- <scope>import</scope>
- <type>pom</type>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
<dependencies>
<!-- requires camel-core -->
diff --git a/components/camel-jackson3xml/pom.xml
b/components/camel-jackson3xml/pom.xml
index e9195970ce5f..b9cad9c0291b 100644
--- a/components/camel-jackson3xml/pom.xml
+++ b/components/camel-jackson3xml/pom.xml
@@ -35,18 +35,6 @@
<firstVersion>4.19.0</firstVersion>
</properties>
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>tools.jackson</groupId>
- <artifactId>jackson-bom</artifactId>
- <version>${jackson3-version}</version>
- <scope>import</scope>
- <type>pom</type>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
<dependencies>
<dependency>
diff --git a/components/camel-jolt/pom.xml b/components/camel-jolt/pom.xml
index 6ef8ab0841c6..c0477581726f 100644
--- a/components/camel-jolt/pom.xml
+++ b/components/camel-jolt/pom.xml
@@ -35,18 +35,6 @@
<properties>
</properties>
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>tools.jackson</groupId>
- <artifactId>jackson-bom</artifactId>
- <version>${jackson3-version}</version>
- <scope>import</scope>
- <type>pom</type>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
<dependencies>
<dependency>
<groupId>org.apache.camel</groupId>
diff --git a/components/camel-kafka/pom.xml b/components/camel-kafka/pom.xml
index 1698b9b5c52f..829c5500153e 100644
--- a/components/camel-kafka/pom.xml
+++ b/components/camel-kafka/pom.xml
@@ -62,7 +62,6 @@
<dependency>
<groupId>tools.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${jackson3-version}</version>
<scope>test</scope>
</dependency>
<dependency>
diff --git a/components/camel-pqc/pom.xml b/components/camel-pqc/pom.xml
index 43dfdc541cc0..563f92843db8 100644
--- a/components/camel-pqc/pom.xml
+++ b/components/camel-pqc/pom.xml
@@ -67,7 +67,6 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${jackson2-version}</version>
</dependency>
<!-- Micrometer for optional PQC metrics/observability -->
diff --git a/components/camel-rest-openapi/pom.xml
b/components/camel-rest-openapi/pom.xml
index efa295a63d3c..3c5f05b8667e 100644
--- a/components/camel-rest-openapi/pom.xml
+++ b/components/camel-rest-openapi/pom.xml
@@ -86,12 +86,10 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
- <version>${jackson2-version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${jackson2-version}</version>
<exclusions>
<exclusion>
<groupId>io.swagger.core.v3</groupId>
@@ -102,7 +100,6 @@
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId>
- <version>${jackson2-version}</version>
</dependency>
<!-- test -->
diff --git a/components/camel-telemetry-dev/pom.xml
b/components/camel-telemetry-dev/pom.xml
index 7212ce767f4d..deb35e7dd57f 100644
--- a/components/camel-telemetry-dev/pom.xml
+++ b/components/camel-telemetry-dev/pom.xml
@@ -46,7 +46,6 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${jackson2-version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
diff --git a/components/camel-toon/pom.xml b/components/camel-toon/pom.xml
index 474c39180a63..491b1c20c32e 100644
--- a/components/camel-toon/pom.xml
+++ b/components/camel-toon/pom.xml
@@ -31,18 +31,6 @@
<name>Camel :: TOON</name>
<description>Camel TOON (Token-Oriented Object Notation) data
format</description>
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>tools.jackson</groupId>
- <artifactId>jackson-bom</artifactId>
- <version>${jackson3-version}</version>
- <scope>import</scope>
- <type>pom</type>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
<dependencies>
<dependency>
diff --git a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/pom.xml
b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/pom.xml
index 27e1c163adfa..48c71b965f14 100644
--- a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/pom.xml
+++ b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/pom.xml
@@ -41,18 +41,6 @@
<camel.surefire.parallel>false</camel.surefire.parallel>
</properties>
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>tools.jackson</groupId>
- <artifactId>jackson-bom</artifactId>
- <version>${jackson3-version}</version>
- <scope>import</scope>
- <type>pom</type>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
<dependencies>
<dependency>
<groupId>org.apache.camel</groupId>
diff --git a/parent/pom.xml b/parent/pom.xml
index 2e25b597926c..fda77010b648 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -263,6 +263,7 @@
<infinispan-protostream-version>6.0.7</infinispan-protostream-version>
<influx-java-driver-version>2.25</influx-java-driver-version>
<influx-client-java-driver-version>8.0.0</influx-client-java-driver-version>
+ <jackson-annotations-version>2.22</jackson-annotations-version>
<jackson-databind-nullable-version>0.2.9</jackson-databind-nullable-version>
<jackson-jq-version>1.6.5</jackson-jq-version>
<jackson2-version>2.22.4</jackson2-version>
@@ -3483,6 +3484,15 @@
<scope>import</scope>
</dependency>
+ <!--
+ Jackson 2 and Jackson 3 share the 2.x jackson-annotations
artifact. It is managed explicitly so it takes
+ precedence over both BOMs: keep jackson-annotations-version no
lower than the version either BOM pins.
+ -->
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ <version>${jackson-annotations-version}</version>
+ </dependency>
<dependency>
<groupId>com.fasterxml.jackson</groupId>
<artifactId>jackson-bom</artifactId>
@@ -3490,6 +3500,13 @@
<scope>import</scope>
<type>pom</type>
</dependency>
+ <dependency>
+ <groupId>tools.jackson</groupId>
+ <artifactId>jackson-bom</artifactId>
+ <version>${jackson3-version}</version>
+ <scope>import</scope>
+ <type>pom</type>
+ </dependency>
<!--
diff --git a/test-infra/camel-test-infra-openai-mock/pom.xml
b/test-infra/camel-test-infra-openai-mock/pom.xml
index cd23114b71e1..48adc5362f2b 100644
--- a/test-infra/camel-test-infra-openai-mock/pom.xml
+++ b/test-infra/camel-test-infra-openai-mock/pom.xml
@@ -45,7 +45,6 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${jackson2-version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>