davsclaus commented on code in PR #1107:
URL: https://github.com/apache/camel-website/pull/1107#discussion_r1427679997


##########
content/blog/2023/12/camel43-whatsnew/index.md:
##########
@@ -0,0 +1,169 @@
+---
+title: "Apache Camel 4.3 What's New"
+date: 2023-12-18
+authors: [davsclaus,gzurowski,orpiske,apupier]
+categories: ["Releases"]
+preview: Details of what we have done in the Camel 4.3 release.
+---
+
+Apache Camel 4.3 (non LTS) has just been 
[released](/blog/2023/12/RELEASE-4.3.0/).
+
+This release introduces a set of new features and noticeable improvements that 
we will cover in this blog post.
+
+## Camel Core
+
+Added basic support for Java 21 virtual threads. Note this is experimental and 
there is more work to complete
+to have full support for virtual threads. More details at [threading 
model](/manual/threading-model.html). 
+
+The simple language can now work better with JSon and XML with inlined 
jq/jsonpath/xpath functions. This
+can be used for basic message transformation. You can find an examples at:
+
+- [json 
transformation](https://github.com/apache/camel-kamelets-examples/tree/main/jbang/json-transform)
+- [xml 
transformation](/components/next/languages/xpath-language.html#_transforming_a_xml_message)
+
+We plan to record a video on doing basic message transformation with json and 
xml with live updates using Camel JBang.
+
+We added `debugStandby` option to allow route debugging a running Camel 
application on demand. Being in standby mode
+has no overhead and only when debugging is activated then Camel runs in 
debugging mode, which can then be deactivated
+to go back to run in normal mode.
+
+## Camel Main
+
+Added support for Prometheus in the new `camel-micrometer-prometheus` 
component, that makes it possible to expose
+metrics in Prometheus format.
+
+This can be configured in `application.properties`:
+
+- Micrometer and Prometheus options using `camel.metrics.`
+
+## DSL
+
+We added the following EIPs:
+
+- `setHeaders` EIP to make it easier and less verbose to set multiple headers 
from the same EIP.
+- `convertHeaderTo` EIP to make it easy to convert header value to a specific 
type.
+
+The `throttler` EIP has been refactored to throttle based on concurrent 
requests instead of sliding window.
+
+We improved configuring beans, that can now support builder beans, that are 
used to build the actual bean.
+For example in the following YAML notice how the `builderClass` refers to 
class responsible for building the target bean:
+
+```yaml
+- beans:
+    - name: myCustomer
+      type: com.mycompany.Customer
+      builderClass: com.mycompany.CustomerBuilder
+      properties:
+         name: "Acme"
+         street: "Somestreet 42"
+         zip: 90210
+         gold: true
+- from:
+    uri: "timer:yaml"
+    parameters:
+      period: "5000"
+    steps:
+      - bean:
+          ref: myCustomer
+          method: summary
+      - log: "${body}"
+```
+
+The builder class is required to have a build method that Camel invokes. The 
name of the method is `build` by default.
+
+To see more see the following examples:
+
+- 
https://github.com/apache/camel-kamelets-examples/tree/main/jbang/bean-builder
+- 
https://github.com/apache/camel-kamelets-examples/tree/main/jbang/bean-inlined-code
+
+## Camel JBang (Camel CLI)
+
+We have continued investing in Camel JBang, and this time we have some great 
new stuff in the release.
+
+We have added support for using JBang style for declaring dependencies by 
using `//DEPS ` code comments, as shown
+in the following Java file:
+
+```java
+//DEPS org.apache.camel:camel-bom:4.3.0@pom
+//DEPS org.apache.camel:camel-endpointdsl
+//DEPS org.apache.camel:camel-kubernetes
+//DEPS org.apache.camel:camel-aws2-s3
+
+import org.apache.camel.builder.endpoint.EndpointRouteBuilder;
+
+public class foo extends EndpointRouteBuilder {
+
+    @Override
+    public void configure() {
+        from(timer("trigger").delay(1000).repeatCount(1))
+            // something that may use Java APIs from Kubernetes
+    }
+}
+```
+
+You can now also easily use JBang way of editing source code in your favorite 
editor, such as `jbang edit -b foo.java`.
+You can see more in the [jbang-edit 
example](https://github.com/apache/camel-kamelets-examples/tree/main/jbang/jbang-edit).
+
+TODO: JBang Transform message
+
+We have improved the `camel export` to avoid starting some services that was 
not needed, which could potentially
+cause the export to tail or take longer time.
+
+Camel JBang now accurately reports resolved vs download for dependency 
resolution. Previously it may report downloading
+but the dependency was resolved from local disk.  You can also run in 
`--verbose` mode that shows verbose details
+for dependency resolution that can be useful for troubleshooting.
+
+Camel JBang export to `camel-main` can now configure authentication for 
container image registries.
+
+Camel JBang is also improved in hot reload mode `--dev` to let Java compiler 
compile all changed files in same compilation unit. 

Review Comment:
   Yeah its maybe a bit unclear we can just remove it



-- 
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

Reply via email to