[
https://issues.apache.org/jira/browse/SOLR-17697?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18124811#comment-18124811
]
ASF subversion and git services commented on SOLR-17697:
--------------------------------------------------------
Commit 7ea60441c4f62a004af55eb920ef495c78c65660 in solr's branch
refs/heads/branch_10x from Jan Høydahl
[ https://gitbox.apache.org/repos/asf?p=solr.git;h=7ea60441c4f ]
SOLR-17697 Add opt-in picocli command-line parser (#3254)
Adds picocli alongside the existing commons-cli parser. Picocli is
opt-in and off by default: set SOLR_PICOCLI=true
Commands ported to picocli in this change:
start, stop, status, version, auth, create, delete
zk: cp, ls, mv, rm, mkroot, upconfig, downconfig, updateacls
Remaining commands still run on commons-cli and are tracked in
follow-up issues. Per-command ref guide pages are now generated from
the picocli annotations.
Co-authored-by: Eric Pugh <[email protected]>
(cherry picked from commit b6b2b8f10e9827e3b86e44649fb7966ce646c185)
> Add opt-in picocli command-line parser (including some tools)
> -------------------------------------------------------------
>
> Key: SOLR-17697
> URL: https://issues.apache.org/jira/browse/SOLR-17697
> Project: Solr
> Issue Type: Improvement
> Components: cli
> Reporter: Jan Høydahl
> Assignee: Jan Høydahl
> Priority: Major
> Labels: pull-request-available
> Fix For: main(11.0)
>
> Time Spent: 18h
> Remaining Estimate: 0h
>
> Apache commons-cli has served us well for years, but our CLI has out-grown
> its capabilities, with multiple sub commands and a plethora of options and
> arguments. We have much custom code to work around limitations.
> By embracing [Picocli|https://picocli.info/], an annotation based cli
> framework, it will be easier to maintain the cli and add further tools. We
> propose to target 10.1 and do work gradually in a feature branch.
> The feature branch is {{{}jira/SOLR-17697-picocli{}}}, you can view it in a
> [draft PR not intended for merge|https://github.com/apache/solr/pull/3254].
> That PR has a description on how to contribute, and a checklist of tools not
> yet converted. Once all tools are converted, all tests are green and all docs
> updated, we can merge this work.
> There is an env var {{SOLR_PICOCLI=true}} that we currently use to swtich
> from old commons-cli and new picocli. Once the feature branch is merged we
> can choose to make SOLR_PICOCLI default to true but retain the old
> commons-cli parser code for a few releases, so there will be a workaround for
> potential bugs.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]