gzurowski commented on code in PR #1330: URL: https://github.com/apache/camel-website/pull/1330#discussion_r2028252520
########## content/blog/2025/04/camel411-whatsnew/index.md: ########## @@ -0,0 +1,130 @@ +--- +title: "Apache Camel 4.11 What's New" +date: 2025-04-12 +authors: [davsclaus, squakez, croway] +categories: ["Releases"] +preview: Details of what we have done in the Camel 4.11 release. +--- + +Apache Camel 4.11 has just been [released](/blog/2025/04/RELEASE-4.11.0/). + +This release introduces a set of new features and noticeable improvements that we will cover in this blog post. + +## Camel Core + +The component _verifier extension_ has been deprecated. This functionality has not been in use for many years, +and we will start to deprecate more of these un-used features in camel-core going forward. + +### Recipient List, Split and Multicast EIP + +In parallel processing mode, you can also enable `synchronous=true` to force these EIPs to process +the sub-tasks using the upper bounds of the thread-pool. If using `synchronous=false` then Camel +will allow its reactive routing engine to use as many threads as possible, which may be available +due to sub-tasks using other thread-pools such as `CompletableFuture.runAsync` or others. + +Setting `synchronous=true` is the same behaviour is in Camel 2 which did not have the reactive routing engine. + +## Camel JBang + +Camel JBang now supports running on Eclipse OpenJ9 Java platforms. + +Added `camel edit` command to be able to edit source file using a terminal editor (nano). + +Fixed Camel JBang to be able to run on Windows with Quarkus and Spring Boot runtimes. + +The export command has been further hardened to better export using beans that may trigger initialization code +that would not work during export phase. + +## Camel SQL + +The `camel-sql` component now supports for non-named SQL queries to use Map message body, where the values +of the Map is used as SQL parameters (in the order they are in the Map, so use LinkedHashMap). + +We have also significantly improved the performance when using SQL batch insert or updates. + +## Camel Telemetry + +In this version we're introducing a new abstract component for distributed telemetry. The `camel-telemetry` component and its concrete implementations (`camel-telemetrydev`, `camel-opentelemetry2`) will eventually replace `camel-tracing` components. The rationale is a new design to move all generic features of the telemetry components into its abstract definition and make it easier to maintain the implementation in the long term. + +As the new component provide a slight different telemetry traces and spans, we've decided to develop it while keeping the older implementation as well. However, you're invited already to try this out. + +### Camel Observability Services + +The observability services component is now using the `camel-opentelemetry2` instead of `camel-opentelemetry`. This is just a FYI, nothing is expected to be done on the user side. + +## Camel Test + +Added `@StubEndpoints` annotation to make it easy to stub a given component, such as kafka, so you +can easily write unit tests without having to use Kafka but let it be _stubbed_ by Camel and act +as an internal message queue (ala camel-seda). + +We have also made it easier to turn off auto-starting specific routes, using the new `AutoStartupExcludePattern` option (or `@@AutoStartupExclude` annotation). +This allows to exclude routes (by pattern) so you can write unit tests and fully control which routes are included and started in the tests. + +## Camel Spring Boot + +The `camel-spring-boot` is upgraded to latest Spring Boot 3.4.4 release. + +### Platform HTTP Spring Security integration + +The Async Camel Spring Boot Platform HTTP now supports `DelegatingSecurityContextAsyncTaskExecutor` and follows Spring Boot best practices for security context propagation. This enhancement allows security-related information, such as the Principal, to be properly maintained across asynchronous operations. +Similar to Spring Boot @Async methods, to propagate security related information, users can just configure a `DelegatingSecurityContextAsyncTaskExecutor` Bean. + +## Miscellaneous + +Upgraded many third-party dependencies to the latest releases at the time of release. + +The `camel-bean` component has been improved to better support invoking methods with varargs parameter. + +The file based components (`camel-file`, `camel-ftp`, `camel-azure-files`, and `camel-smb`) now better support dynamic polling using `poll` or `pollEnrich` EIPs with dynamic +computed endpoint, such as `fileName` by using `PollDynamicAware` that is specially optimized for these use-cases. + +The `camel-smb` component now also has the `autoCreate` option to let Camel automatic create non-existing starting directory. Review Comment: ```suggestion The `camel-smb` component now also has the `autoCreate` option to let Camel automatically create a non-existing starting directory. ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@camel.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org