Skip to content

Commit 4612964

Browse files
davsclaussquakez
andauthored
Camel 4.16 whats new (#1430)
* Camel 4.16 whats new * Camel 4.16 whats new * chore: telemetry header tracing * Camel 4.16 whats new --------- Co-authored-by: Pasquale Congiusti <[email protected]>
1 parent aa1914c commit 4612964

File tree

2 files changed

+114
-0
lines changed

2 files changed

+114
-0
lines changed
238 KB
Loading
Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
---
2+
title: "Apache Camel 4.16 What's New"
3+
date: 2025-11-05
4+
draft: false
5+
authors: [ davsclaus,squakez ]
6+
categories: [ "Releases" ]
7+
preview: "Details of what we have done in the Camel 4.16 release."
8+
---
9+
10+
Apache Camel 4.16 has just been [released](/blog/2025/11/RELEASE-4.16.0/).
11+
12+
This release introduces a set of new features and noticeable improvements that we will cover in this blog post.
13+
14+
## Camel Core
15+
16+
You can now add note(s) to EIPs in the DSL. The notes have no impact on running Camel, but makes it
17+
consistent to include code comments or other notes that are valuable for developers for maintaining.
18+
You can of course still use code comments, but `note` make them available for Camel tooling.
19+
20+
The Rest DSL now supports using `camel-jacksonxml` for XML binding (JAXB is default).
21+
22+
## Camel Telemetry tracing info in headers
23+
24+
From this version onward you will be able to include the trace (and span) generated by any of the `camel-telemetry` concrete component used. It does not matter which is the implementation chosen, you can now get this information into the Exchange Headers. For example, if you're using `camel-opentelemetry2`:
25+
26+
```
27+
camel.opentelemetry2.enabled=true
28+
camel.opentelemetry2.traceHeadersInclusion=true
29+
```
30+
31+
Each exchange will now provide the a `CAMEL_TRACE_ID` amd `CAMEL_SPAN_ID` that you can use for any scope. Typically you want to use that information for troubleshooting. Together with the new MDC service released in version 4.15, you can now show the different traces flowing in your log:
32+
33+
```
34+
camel.mdc.enabled=true
35+
camel.mdc.customHeaders=CAMEL_TRACE_ID,CAMEL_SPAN_ID
36+
```
37+
38+
In your logging configuration:
39+
40+
```
41+
appender.stdout.layout.pattern = ... %m [%X{CAMEL_TRACE_ID}, %X{CAMEL_SPAN_ID}]%n
42+
```
43+
44+
and the output will be like:
45+
46+
```
47+
2025-10-21 12:33:01.685 INFO 272555 --- [ - timer://java] route-main: timer: 796EDDB6DA9896F-0000000000000000 [b75bce5a51264a80b9bd0055ffa61754, cb3a21e2224e483d8e3354890c6ef30a]
48+
2025-10-21 12:33:01.688 INFO 272555 --- [ - timer://java] route-a: directa: 796EDDB6DA9896F-0000000000000000 [b75bce5a51264a80b9bd0055ffa61754, e6661d02e92e46219018e23c64c68552]
49+
...
50+
2025-10-21 12:33:02.664 INFO 272555 --- [ - timer://java] route-main: timer: 796EDDB6DA9896F-0000000000000001 [107cf86699bc483b95a22092db647ef9, 4315098cc33d415c92eb6f5590226bda]
51+
2025-10-21 12:33:02.668 INFO 272555 --- [ - timer://java] route-a: directa: 796EDDB6DA9896F-0000000000000001 [107cf86699bc483b95a22092db647ef9, 29638a34b3904e359480151d762107fc]
52+
```
53+
54+
## Camel JBang
55+
56+
Camel JBang is improved to detect kamelets in use by dynamic EIPs such as `toD` to include these kamelets
57+
during exporting.
58+
59+
The `camel get route-dump` is now printing precise source code line numbers. And the route dumper is now
60+
dumping in YAML format by default.
61+
62+
Camel JBang now detects Spring Boot/Quarkus Java imports when running Java routes, and include
63+
the JAR dependencies containing those classes.
64+
65+
## Camel Spring Boot
66+
67+
`camel-spring-boot` is upgraded to the latest Spring Boot 3.5.7 release.
68+
69+
Camel now works again with JDK17 on Spring Boot (was not working in previous 4.15 release).
70+
71+
## Java 25
72+
73+
We continue to prepare the code-base for the upcoming Java 25 release. However, this release does
74+
not officially support Java 25, but we are not aware of any issues (feedback is welcome).
75+
We will work on official Java 25 support in the following releases.
76+
77+
There are some 3rd-party libraries that are not yet Java 25 compatible, and we are waiting for those
78+
to release compatible versions.
79+
80+
## Miscellaneous
81+
82+
Upgraded many third-party dependencies to the latest releases at the time of release.
83+
84+
The `camel-aws-s3` component now includes more bucket operations in the producer.
85+
86+
## New Components
87+
88+
- `camel-ibm-cos` - Store and retrieve objects from IBM Cloud Object Storage.
89+
- `camel-ibm-watson-discovery` - Perform document understanding and search using IBM Watson Discovery
90+
- `camel-ibm-watson-language` - Perform natural language processing using IBM Watson Natural Language Understanding
91+
- `camel-pqc` - Encrypt and decrypt messages using Post-Quantum Cryptography Key Encapsulation Mechanisms (KEM).
92+
93+
## Upgrading
94+
95+
Make sure to read the [upgrade guide](/manual/camel-4x-upgrade-guide-4_16.html) if you are upgrading from a previous
96+
Camel version.
97+
98+
If you are upgrading from, for example, 4.4 to 4.8, then make sure to follow the upgrade guides for each release
99+
in-between, i.e.
100+
4.4 -> 4.5, 4.5 -> 4.6, and so forth.
101+
102+
The Camel Upgrade Recipes tool can also be used to automate upgrading.
103+
See more at: https://github.com/apache/camel-upgrade-recipes
104+
105+
## Release Notes
106+
107+
You can find additional information about this release in the list of resolved JIRA tickets:
108+
109+
- [Release notes 4.16](/releases/release-4.16.0/)
110+
111+
## Roadmap
112+
113+
The following 4.17 release is planned for January 2026.
114+

0 commit comments

Comments
 (0)