picocli 1.0.0
Summary: command line autocompletion, -Dkey=value
-like Map options, parser tracing, stricter parsing, bugfixes
This is the tenth public release. Picocli follows semantic versioning.
- #121 New feature: command line autocompletion. Picocli can generate bash and zsh completion scripts that allow the shell to generate potential completion matches based on the
@Option
and@Command
annotations in your application. After this script is installed, the shell will show the options and subcommands available in your java command line application, and in some cases show possible option values. - #67 New feature: Map options like
-Dkey1=val1 -Dkey2=val2
. Both key and value can be strongly typed (not just Strings). - #158 New feature: parser TRACING for easy troubleshooting. The trace level can be controlled with a system property.
- #170 New feature: added
call
convenience method similar torun
. Applications whose main business logic may throw an exception or returns a result can now implementCallable
and reduce some boilerplate code. - #149 Parser now throws UnmatchedArgumentException for args that resemble options but are not, instead of treating like them positional parameters. Thanks to giaco777.
- #172 Parser now throws MaxValuesforFieldExceededException when multi-valued option or parameters max arity exceeded
- #173 Parser now throws UnmatchedArgumentException when not all positional parameters are assigned to a field
- #171 WARN when option overwritten with different value (when isOverwrittenOptionsAllowed=true); WARN for unmatched args (when isUnmatchedArgumentsAllowed=true). Thanks to ddimtirov.
- #164 API change: Support format patterns in version string and printVersionHelp
- #167 API change: Change
type
attribute fromClass
toClass[]
. This was needed for Map options support. - #168 API change:
CommandLine::setSeparator
method now returns this CommandLine (was void), allowing for chained method calls. - #156 Added example to user manual to clarify main command common usage. Thanks to nagkumar.
- #166 Fixed bug where adjacent markup sections resulted in incorrect ANSI escape sequences
- #174 Fixed bug where under some circumstances, unmatched parameters were added to UnmatchedParameters list twice