Picocli 3.9.6
The picocli community is pleased to announce picocli 3.9.6.
This release improves support for interactive (password) options:
- interactive options can now use type
char[]
instead of String, to allow applications to null out the array after use so that sensitive information is no longer resident in memory - interactive options can be optionally interactive if configured with
arity = "0..1"
This is the fifty-second public release.
Picocli follows semantic versioning.
Table of Contents
- New and noteworthy
- Fixed issues
- Deprecations
- Potential breaking changes
New and Noteworthy
This release improves support for interactive (password) options:
- interactive options can now use type
char[]
instead of String, to allow applications to null out the array after use so that sensitive information is no longer resident in memory - interactive options can be optionally interactive if configured with
arity = "0..1"
For example, if an application has these options:
@Option(names = "--user")
String user;
@Option(names = "--password", arity = "0..1", interactive = true)
char[] password;
With the following input, the password
field will be initialized to "123"
without prompting the user for input:
--password 123 --user Joe
However, if the password is not specified, the user will be prompted to enter a value. In the following example, the password option has no parameter, so the user will be prompted to type in a value on the console:
--password --user Joe
Fixed issues
- [#657] Support type
char[]
for interactive options. Thanks to Lukáš Petrovický for raising this issue. - [#536] Support optionally interactive options. Thanks to Lukas Heumos for raising this issue.
Deprecations
No features were deprecated in this release.
Potential breaking changes
This release has no breaking changes.