Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet merged PR #18127: URL: https://github.com/apache/camel/pull/18127 -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2940856151 > > [camel-tooling/camel-language-server#1288](https://github.com/camel-tooling/camel-language-server/issues/1288) > > I think we can merge this PR as is, then refine if needed. @davsclaus thoughts ? Yes that is a good idea -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2940536033 > [camel-tooling/camel-language-server#1288](https://github.com/camel-tooling/camel-language-server/issues/1288) I think we can merge this PR as is, then refine if needed. @davsclaus thoughts ? -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2938625755 https://github.com/camel-tooling/camel-language-server/issues/1288 -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2938624676 okay so the camel-lsp editor has a kafka topic completer https://github.com/camel-tooling/camel-language-server/blame/main/src/main/java/com/github/cameltooling/lsp/internal/completion/KafkaTopicCompletionProvider.java I dont think that this is useful to bake into this editor, as most often you cannot connect to a kafka cluster without security setup and whatnot and the code is not built for that. It seems like a feature that are never in use. Maybe lets keep this for Camel only and focus on making the editor better here. -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2931131497 > Kafka should not be there - there is a `camel get kafka` command but it does not need kafka in the CLI but only if the running integration uses kafka then it can show some data. > > Do you maybe by mistake add test scoped dependencies or something ? Kafka comes as a transitive dependency of `camel-lsp-server`, itself being a dependency of the `edit` plugin. ``` [INFO] --- dependency:3.8.1:tree (default-cli) @ camel-launcher --- [INFO] org.apache.camel:camel-launcher:jar:4.13.0-SNAPSHOT [INFO] +- org.apache.camel:camel-jbang-core:jar:4.13.0-SNAPSHOT:compile [INFO] | +- org.apache.camel:camel-main:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-api:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-base:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-core-engine:jar:4.13.0-SNAPSHOT:compile [INFO] | | | +- org.apache.camel:camel-base-engine:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-core-reifier:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-core-processor:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-management-api:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-support:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-xml-jaxp-util:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-util:jar:4.13.0-SNAPSHOT:compile [INFO] | | \- org.apache.camel:camel-core-languages:jar:4.13.0-SNAPSHOT:compile [INFO] | | \- org.apache.camel:camel-core-model:jar:4.13.0-SNAPSHOT:compile [INFO] | +- org.apache.camel:camel-jbang-console:jar:4.13.0-SNAPSHOT:compile [INFO] | | \- org.apache.camel:camel-console:jar:4.13.0-SNAPSHOT:compile [INFO] | +- org.apache.camel:camel-kamelet-main:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-management:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-log:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-health:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-dsl-modeline:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-kamelet:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-xml-jaxp:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-xml-io:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-bean:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-jackson:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-jfr:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-platform-http-main:jar:4.13.0-SNAPSHOT:compile [INFO] | | | +- org.apache.camel:camel-platform-http-vertx:jar:4.13.0-SNAPSHOT:compile [INFO] | | | | +- org.apache.camel:camel-platform-http:jar:4.13.0-SNAPSHOT:compile [INFO] | | | | +- org.apache.camel:camel-attachments:jar:4.13.0-SNAPSHOT:compile [INFO] | | | | | \- jakarta.activation:jakarta.activation-api:jar:2.1.3:compile [INFO] | | | | \- io.vertx:vertx-web:jar:4.5.14:compile [INFO] | | | | \- io.vertx:vertx-bridge-common:jar:4.5.14:compile [INFO] | | | +- io.vertx:vertx-auth-properties:jar:4.5.14:compile [INFO] | | | \- io.vertx:vertx-auth-jwt:jar:4.5.14:compile [INFO] | | +- org.apache.camel:camel-rest:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-tooling-model:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-stub:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-seda:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-timer:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-vertx-http:jar:4.13.0-SNAPSHOT:compile [INFO] | | | +- org.apache.camel:camel-http-base:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-vertx-common:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-yaml-dsl:jar:4.13.0-SNAPSHOT:compile [INFO] | | | +- org.apache.camel:camel-yaml-dsl-common:jar:4.13.0-SNAPSHOT:compile [INFO] | | | +- org.apache.camel:camel-yaml-dsl-deserializers:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-dsl-support:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-catalog:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-core-catalog:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-catalog-suggest:jar:4.13.0-SNAPSHOT:compile [INFO] | | | \- org.apache.camel:camel-allcomponents:pom:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-catalog-console:jar:4.13.0-SNAPSHOT:compile [INFO] | | +- org.apache.camel:camel-tooling-mav
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2931168442 We can also remove the karaf-catalog as that is not supported -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2931166218 Maybe @apupier knows more about why lsp has kafka client as dependency. -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2931016980 Kafka should not be there - there is a `camel get kafka` command but it does not need kafka in the CLI but only if the running integration uses kafka then it can show some data. Do you maybe by mistake add test scoped dependencies or something ? -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2930958068 I've rebased the PR and renamed to camel-launcher. Here's the analysis of the file size. ## Analysis Summary The camel-launcher jar is 109MB and contains 414MB of uncompressed content. Here's the breakdown of what's making it so large: ### Major Contributors: - Native Libraries (28MB uncompressed) - Multiple platform-specific native libraries for different architectures - zstd compression libraries for various platforms (Linux, Windows, macOS, FreeBSD) - Snappy compression libraries - JNA (Java Native Access) libraries - OpenAPI Generator Templates (22MB uncompressed) - 4,029 Mustache template files for code generation - Templates for dozens of programming languages and frameworks - This comes from the `generate` plugin dependency - Kubernetes/Fabric8 Libraries (55MB uncompressed) - Complete Kubernetes client libraries - OpenShift client libraries - Knative libraries - This comes from the `kubernetes` plugin dependency - Apache Camel Core (71MB uncompressed) - All Camel core components and engines - Camel catalogs and schemas - Multiple DSL support (YAML, XML, Java) - Other Large Dependencies: - Kafka Client (31MB) - Full Kafka client with native libraries - JBoss Forge/Roaster (33MB) - Java source code parsing (from edit plugin) - Spring Framework (17MB) - Spring context and beans - Jackson (9.9MB) - JSON processing - Netty (15MB) - Network libraries for Vert.x - Guava (large) - Google common libraries -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2916434205 There is also another commit today on main that removes 4mb of JARs so you can also try to rebase on main and with the k8s PR then hopefully its some 10s of MBs reduced. The big MBs are still because f8 models for openshift and knative are giant. -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2916427887 This PR removes some of the JARs not needed: https://github.com/apache/camel/pull/18201 -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2914978012 https://issues.apache.org/jira/browse/CAMEL-22115 -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2911686256 > > I wonder if the fat-jar can include the k8s, edit and generate plugins and have them pre-installed so all features is included > > So this bumps the fat-jar from 4x Mb to 133 Mb. A big jump. > Yeah sadly all this k8s/ocp is soo big and heavy - It would be worth talking to the f8-client team to see if they can make someting smaller or we can find a way to trim out not needed parts. I am not sure if the generate plugin is big - it has a bit of swagger/openapi but I am not aware if they are big or still just small. > On a side note, as jbang is kinda not used anymore with the jar, I wonder if we should call it camel-launcher rather than camel-jbang-launcher... Yeah naming in IT is hard; such as camel-kamelet-main and we also had it named camel-cli in the past and then started using camel-jbang more to give credit to jbang. I am okay with `camel-launcher` or `camel-launch` or `camel-run` -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2911548824 > I wonder if the fat-jar can include the k8s, edit and generate plugins and have them pre-installed so all features is included So this bumps the fat-jar from 4x Mb to 133 Mb. A big jump. On a side note, as jbang is kinda not used anymore with the jar, I wonder if we should call it camel-launcher rather than camel-jbang-launcher... -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2906665364 It would make sense. I'll have a look next week. -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
davsclaus commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2906504623 I wonder if the fat-jar can include the k8s, edit and generate plugins and have them pre-installed so all features is included -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2904167372 > I tested this locally and it's fine. Is there a particular reason for using httpClient 4.x instead of 5.x? None, we can upgrade the versions. -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
lordrip commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2904042752 Cool stuff @gnodet, I tried running YAML routes and it worked great :ok_hand: . Totally unrelated to this PR, when running: ``` java -jar ./camel-jbang-launcher-4.12.0-SNAPSHOT.jar run --dev route.camel.yaml ``` The auto reload works fine, but when running (mind the `./`: ``` java -jar ./camel-jbang-launcher-4.12.0-SNAPSHOT.jar run --dev ./route.camel.yaml ``` Then the auto reload doesn't work :sweat_smile:, I'll create a separate issue for it, as the behavior is present in the Camel CLI itself. -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
oscerd commented on PR #18127: URL: https://github.com/apache/camel/pull/18127#issuecomment-2903913461 I tested this locally and it's fine. Is there a particular reason for using httpClient 4.x instead of 5.x? -- 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
Re: [PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet closed pull request #18126: CAMEL-21658: Create a fat-jar launcher for Camel JBang URL: https://github.com/apache/camel/pull/18126 -- 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
[PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet opened a new pull request, #18127: URL: https://github.com/apache/camel/pull/18127 This PR implements a fat-jar launcher for Camel JBang that provides a pre-built distribution with all dependencies included. The launcher eliminates the two-step process where JBang first parses the .java file and then calls camel-jbang. ### Key changes: - Created a new Maven module `camel-jbang-launcher` - Implemented a simple launcher class that calls `CamelJBangMain.run()` - Configured Maven Shade plugin to create a fat-jar with all dependencies - Created shell and batch scripts for Unix/Linux and Windows - Configured Maven Assembly plugin to create distribution archives - Used properties for dependency versions instead of hardcoded values - Placed scripts in the root folder of the distribution - Added example files in the examples directory - Fixed Maven dependency resolution by including all necessary dependencies ### Testing: - Tested the fat-jar launcher with basic commands like `version` and `--help` - Tested running Camel routes from YAML and Java files - Verified that the distribution archive contains the correct files This PR is in draft mode as it may need further refinement before being ready for review. --- Pull Request opened by [Augment Code](https://www.augmentcode.com/) with guidance from the PR author -- 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
[PR] CAMEL-21658: Create a fat-jar launcher for Camel JBang [camel]
gnodet opened a new pull request, #18126: URL: https://github.com/apache/camel/pull/18126 This PR implements a fat-jar launcher for Camel JBang that provides a pre-built distribution with all dependencies included. The launcher eliminates the two-step process where JBang first parses the .java file and then calls camel-jbang. ### Key changes: - Created a new Maven module `camel-jbang-launcher` - Implemented a simple launcher class that calls `CamelJBangMain.run()` - Configured Maven Shade plugin to create a fat-jar with all dependencies - Created shell and batch scripts for Unix/Linux and Windows - Configured Maven Assembly plugin to create distribution archives - Used properties for dependency versions instead of hardcoded values - Placed scripts in the root folder of the distribution - Added example files in the examples directory - Fixed Maven dependency resolution by including all necessary dependencies ### Testing: - Tested the fat-jar launcher with basic commands like `version` and `--help` - Tested running Camel routes from YAML and Java files - Verified that the distribution archive contains the correct files This PR is in draft mode as it may need further refinement before being ready for review. --- Pull Request opened by [Augment Code](https://www.augmentcode.com/) with guidance from the PR author -- 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