You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by "Jan Høydahl (Jira)" <ji...@apache.org> on 2026/08/03 08:59:00 UTC
[jira] [Commented] (SOLR-17697) Use picocli instead of commons-cli
[ https://issues.apache.org/jira/browse/SOLR-17697?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18101310#comment-18101310 ]
Jan Høydahl commented on SOLR-17697:
------------------------------------
I'm not hoping lots of people will run a main build to opt in to picocli. My hope was that landing picocli foundation to main, and perhaps 10x, could help accelerate the rest of the work, since it's not grow stale and be a simpler process than targeting a long-running feature branch.
Ref guide could be solved by including both the old and new docs, and flag the new generated guide with WIP and how to enable for testing.
With the current pace and all-or-nothing approach, this feature will not make the 10.1 release.
> Use picocli instead of commons-cli
> ----------------------------------
>
> 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
> Time Spent: 10h 40m
> 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: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org