You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2021/12/17 07:21:45 UTC

[camel-website] branch main updated: Camel 3.14 - Whats New Blog. WIP (#725)

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-website.git


The following commit(s) were added to refs/heads/main by this push:
     new aca4dc2  Camel 3.14 - Whats New Blog. WIP (#725)
aca4dc2 is described below

commit aca4dc258f59469c5643ba7ea81f88cf1d6f798c
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Fri Dec 17 08:21:39 2021 +0100

    Camel 3.14 - Whats New Blog. WIP (#725)
    
    * Camel 3.14 - Whats New Blog. WIP
    
    * Camel 3.14 - Whats New Blog. WIP
    
    * Apply suggestions from code review
    
    Co-authored-by: Gregor Zurowski <gr...@zurowski.net>
    
    * Otavio feedback on karaf
    
    * Add link
    
    Co-authored-by: Gregor Zurowski <gr...@zurowski.net>
---
 .../blog/2021/12/camel314-whatsnew/featured.png    | Bin 0 -> 3975989 bytes
 content/blog/2021/12/camel314-whatsnew/index.md    | 146 +++++++++++++++++++++
 2 files changed, 146 insertions(+)

diff --git a/content/blog/2021/12/camel314-whatsnew/featured.png b/content/blog/2021/12/camel314-whatsnew/featured.png
new file mode 100644
index 0000000..e5077f5
Binary files /dev/null and b/content/blog/2021/12/camel314-whatsnew/featured.png differ
diff --git a/content/blog/2021/12/camel314-whatsnew/index.md b/content/blog/2021/12/camel314-whatsnew/index.md
new file mode 100644
index 0000000..e346c86
--- /dev/null
+++ b/content/blog/2021/12/camel314-whatsnew/index.md
@@ -0,0 +1,146 @@
+---
+title: "Apache Camel 3.14 What's New"
+date: 2021-12-17
+authors: [davsclaus]
+categories: ["Releases"]
+preview: Details of what we have done in the Camel 3.14 LTS release.
+---
+
+Apache Camel 3.14 has just been [released](/blog/2021/12/RELEASE-3.14.0/).
+
+This is the **last** LTS release supporting Java 8, and therefore we have
+extended the support period from 1 to 2 years.
+
+This blog post first details the noteworthy changes since the last 3.11 LTS release from 6 months ago.
+
+## So what's in this release (6 months of work) 
+
+This release introduces a set of new features and noticeable improvements that we will cover in this blog post.
+
+### Documentation
+
+We have polished, cleaned up, and updated most of the documentation in the 2nd half this year.
+We will continue this work in the 1st half next year to complete this work.
+
+### Core
+
+Configuring data formats and thread pools are now reflection free (native compilation friendly).
+
+We identified a few places to improve performance by reducing object allocations
+in the Camel event notification system.
+
+Logging with `logMask=true` to hide sensitive information now masks all known
+secured keywords gathered from all the Camel components.
+
+Added a new `LambdaEndpointRouteBuilder` that uses the type-safe Endpoint DSL.
+
+The tracer can now be set to standby, which allows enabling tracing later during runtime.
+
+### Route Configuration
+
+Route configuration is used for separating configurations from the routes. This can be used in situations such as configuring different error handling across a set of routes. In previous versions of Camel this was more cumbersome to do, as you would either have to copy the same configuration to a set of routes or rely on global error handling configuration.
+Now you can configure a number of route configurations, and then specify on each route which configuration to use (you can use match by ids, wildcards, and regular expression).
+
+### Reload Routes
+
+The route reload functionality in Camel is capable of watching a directory folder for file changes, and then automatically trigger a reload of the running routes in the Camel application.
+This functionality is intended for development purposes, and not for production use.
+
+You can see the reloading in action from one of the examples such as: https://github.com/apache/camel-examples/tree/master/examples/main-xml
+
+### Kamelets
+
+Kamelets is a higher level building blocks that we keep innovating and improve over the coming releases.
+For Camel 3.14 we worked on making Kamelets more configurable, and more self-contained.
+
+A Kamelet is now capable of configuring its own component instances which avoids clashing
+with other kamelets or regular components (local beans). This ensures a Kamelet is a _black box_.
+
+We made using `AggregationStrategy` easier with scripting languages, which allows
+for example Kamelets to embed code as the strategy directly in the Kamelet spec file.
+
+### Health Checks
+
+Camel components can now provide custom health checks which can be automatically discovered by Camel.
+
+We added new health checks for route consumers so a consumer can more preciesly
+report health status, and in case of errors, then the consumer reports more detailed
+information about the cause such as exception, and http status codes etc.
+
+Camel now also ensures scheduled based consumers, is run at least once during startup
+before the health check can be regarded as UP. Previously what could happen is that Camel
+would report UP during startup, and then on first run by the consumer, it is causing an
+error and then the health check status would soon after be flipped to DOWN.
+
+There are now also more configurations to fine-tune the health checks such as number of
+successive calls before a reporting as either UP or DOWN (flaky checks).
+
+We will continue to improve health checks in the upcoming releases.
+
+### JBang
+
+CamelJBang is used to quickly try and run Camel applications.
+
+[JBang](https://www.jbang.dev/) makes it very easy to run Java without all the ceremony.
+With CamelJBang we made it possible for anyone to quickly try Camel.
+
+The Camel Karavan Designer uses CamelJBang in its editor that allows you to visually
+build Camel integrations and run them with ease while designing directly from the editor or web-browser.
+
+### Kafka
+
+The `camel-kafka` component has been overhauled and optimized to be more robust, have better
+[performance](/blog/2021/09/camel-kafka-consumer-changes) and improve resource utilization.
+Users of the Kafka idempotent repository will also benefit from more robustness fixes implemented during the last releases.
+
+Additionally, we added support for asynchronous commits, increased the test coverage, and included
+forward testing support for Kafka 3.0.
+
+We also worked on making _resume from offset_ a general concept in Camel and provide
+more out-of-the-box strategies for `camel-kafka`.
+
+### Salesforce
+
+The `camel-salesforce` component has had many bug fixes and improvements implemented,
+making it more reliable and robust.
+
+### Cloud component
+
+The Camel AWS, Azure, Google, and HuaweiCloud components have had various bug fixes and smaller improvements.
+
+### Quarkus
+
+The upcoming Camel Quarkus 2.6 release will be upgraded to Camel 3.14. 
+
+### Spring Boot
+
+We have upgraded to the latest Spring Boot 2.6 release.
+
+### Better Java 17 support
+
+Although Java 17 is not officially supported, we did improve a few Camel components to make them work with Java 17.
+The official support is Java 11 (primary) and Java 8 (secondary).
+
+### New components
+
+This release has a number of new components:
+
+- `camel-azure-servicebus` - Stream events from or to Azure Event Hubs using AMQP protocol.
+- `camel-huaweicloud-imagerecognition` - To identify objects, scenes, and concepts in images on Huawei Cloud 
+- `camel-huaweicloud-dms` - To integrate with a fully managed, high-performance message queuing service on Huawei Cloud 
+- `camel-huaweicloud-obs` - To provide stable, secure, efficient, and easy-to-use cloud storage service on Huawei Cloud 
+- `camel-json-patch` - Transforms JSON using JSON patch (RFC 6902). 
+- `camel-springdoc-starter` - Springdoc Swagger UI for openapi-java in Spring Boot
+
+## Upgrading
+
+Make sure to read the [upgrade guide](/manual/camel-3x-upgrade-guide-3_14.html) if you are upgrading from a previous Camel version.
+
+## Release Notes
+
+You can find more information about this release in the with a list of JIRA tickets resolved in the release: 
+
+- [release notes 3.12](/releases/release-3.12.0/)
+- [release notes 3.13](/releases/release-3.13.0/)
+- [release notes 3.14](/releases/release-3.14.0/)
+