You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by "davsclaus (via GitHub)" <gi...@apache.org> on 2023/12/14 12:27:34 UTC

[PR] Camel 4.3 whats new WIP [camel-website]

davsclaus opened a new pull request, #1107:
URL: https://github.com/apache/camel-website/pull/1107

   (no comment)


-- 
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-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Camel 4.3 whats new WIP [camel-website]

Posted by "apupier (via GitHub)" <gi...@apache.org>.
apupier commented on code in PR #1107:
URL: https://github.com/apache/camel-website/pull/1107#discussion_r1426916068


##########
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:
   I do not understand what it means. Can you clarify it a bit please?



-- 
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-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Camel 4.3 whats new WIP [camel-website]

Posted by "davsclaus (via GitHub)" <gi...@apache.org>.
davsclaus merged PR #1107:
URL: https://github.com/apache/camel-website/pull/1107


-- 
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-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Camel 4.3 whats new WIP [camel-website]

Posted by "davsclaus (via GitHub)" <gi...@apache.org>.
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-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org