[ 
https://issues.apache.org/jira/browse/CAMEL-26466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Work on CAMEL-26466 started by Claus Ibsen.
-------------------------------------------
> camel-jbang - The metadata and pages of the commands are generated from the 
> command model, not from the source
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-26466
>                 URL: https://issues.apache.org/jira/browse/CAMEL-26466
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-jbang
>            Reporter: Claus Ibsen
>            Assignee: Claus Ibsen
>            Priority: Major
>             Fix For: 4.24.0
>
>
> The metadata of the CLI commands ({{camel-jbang-commands-metadata.json}}, 
> which {{camel ask}} uses) and the command pages under {{jbang-commands/}} are 
> generated by {{PrepareCamelJBangCommandsMojo}}. It reads the commands from 
> the Java source: regular expressions over the {{addSubcommand}} chains of 
> {{CamelJBangMain}} and of the plugins, Roaster for the picocli annotations, 
> and reflection for the classes of a library.
> Reading the source gets several things wrong in the docs today:
> * a default value that is a constant is documented as its name, such as 
> {{RuntimeType.SPRING_BOOT_VERSION}} instead of {{4.1.2}};
> * quotes and {{+}} are removed from descriptions ("0=Created+Completed" 
> becomes "0=Created Completed");
> * an array option is documented as {{String}};
> * a nested enum type can resolve to the wrong class;
> * {{$\{COMPLETION-CANDIDATES\}}} is filled in from the wrong list ({{cmd 
> receive --output}}), or not at all for a plugin option whose candidates are 
> in camel-jbang-core.
> It also ties the build to picocli. For the port to aesh (CAMEL-23810), the 
> generator should read the command model the CLI runs: a class in 
> camel-jbang-core turns the model into plain data, and the mojo writes the 
> metadata from it. At the switch only that class changes, and the committed 
> metadata and pages show any difference.
> _Claude Code on behalf of davsclaus (Claus Ibsen)_



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to