Release 2.2.8
Update CLI processor:
- Add
:controlfield toCLI::Optionsfor HTML layout - Allow
CLI::Options#callto provide options along withargbased on arity of receiver (this allows options to add other options). - Extract most built-in options to structure.
CLI.optionsdoes not use callback any longer. It takes anargvparameter and figures out commands from there.- CLI.commands now accept a
formatnamed parameter; if used with:json, it returns a JSON structure - CLI::Options now implements
#to_hash. - Add
argsaccessor toOptionParserto retain arguments after options have been extracted. - Note potential addition of
:messagescomponent to options passed to command lambda. - Note that status updates should be logged (info) rather than output to $stdout.
- Add
requiredparameter/option to Option to indicate that the option must be specified. - Overload
RDF::CLI.optionsto also return a JSON representation of options in addition to normal processing. - Make
class_nameoption required for Vocabulary CLI options. - In
CLI.parseif using evaluated input, take sample to use if no format is specified. - Make sure CLI logger is set in options, using that from option_parser if not provided explicitly.
- In CLI runner, if messages are set, display them. This is in preference to text formatting in the command.
- Change
CLI::Option#requiredtoCLI::Option#usewith states:disabled,:removed,:required, and:optional. - Allow commands to override option use using
option_use.