+1 (non-binding) It has been a pain trying to figure out what's the exact sub-param name given that some of them are 20+ characters long.
On Wed, Feb 21, 2024 at 3:47 PM Julien Jakubowski <julien.jakubow...@streamnative.io.invalid> wrote: > Thanks for this proposal! That should significantly improve the user > experience with the CLI. > > > > Le 21 févr. 2024 à 06:08, Zixuan Liu <node...@gmail.com> a écrit : > > > > Hi Pulsar Community, > > > > The pulsar CLI(pulsar-admin, pulsar-client, pulsar-shell, and so on) uses > > the jcommander [1] as CLI parser, which is an awesome project, but the > > maintainer is not active and cannot keep up with modern CLI > > features(auto-completion, sub-command, native-images, suggest commands, > and > > so on). Then I found the picocli [2] project to meet these needs, which > is > > active and powerful. For comparison, please see [3]. > > > > Error prompt: > > ``` > > bin/pulsar-admin clusters update cluster-a -b > > > > # jcommander > > Need to provide just 1 parameter > > > > # picocli > > Unknown option: '-b' > > ``` > > > > Suggest commands: > > ``` > > bin/pulsar-admin cluste > > > > # jcommander > > Expected a command, got cluste > > > > # picocli > > Unmatched argument at index 0: 'cluste' > > Did you mean: pulsar-admin clusters? > > ``` > > > > What do you think about migrating CLI parse from jcommander to picocli? > > > > Thanks, > > Zixuan > > > > [1] - https://github.com/cbeust/jcommander > > [2] - https://picocli.info/ > > [3] - https://github.com/remkop/picocli/wiki/picocli-vs-JCommander > -- Girish Sharma