- backward incompatible change: if you are calling function to parse command line, earlier you could write main() to accomplish that task. This syntax is unavailable now (this will try to actually call a function), and you should use main(argv=sys.argv[1:]).
- if default value of an option is a fuction, always call it (None is passed in case when option is not supplied)
- Now it’s possible to call commands as regular function, where every non-supplied option will receive proper default (defined in option spec)
- Globaloptions were simply dropped after parsing, fold them in regular options
- Replace _ with - in command names, same as in options names
- Respect empty strings as usage
Fixed bug with option names clashing with name of arguments for call_cmd.
Library renamed to opster.
- Checks for option definition: long name should be specified always, short name should be 1 character in length if available.
- More specific argument name in guessed usage (this happens if you have not specified usage for command).
- Ability to add global decorator for all commands. See test.py in repository for example: ui object, to handle verbose/quiet options.
Fixed bug, which prevented programs to work without arguments (displayed help instead) if they are not using subcommands.
- Ability to hide subcommands from help listing.
- Append program name to subcommand usage.
Minor fix for setup.py, to avoid troubles with installing when there is no docs in package.
Ability to call commands as regular functions, using arguments and keyword arguments.
Fixed problem with multiple help options in subcommands
Initial version