All Versions
Latest Version
Avg Release Cycle
Latest Release

Changelog History

  • v0.26.3-dev Changes

    Backward incompatible changes:

    • โฌ‡๏ธ Dropped support for Python 2.6.

    โœจ Enhancements:

    • โž• Added support for Python 3.5.
    • ๐Ÿ‘Œ Support introspection of function signature behind the @wraps decorator (issue #111).

    ๐Ÿ›  Fixed bugs:

    • When command function signature contained **kwargs and positionals without defaults and with underscores in their names, a weird behaviour could be observed (issue #104).

    Other changes:

    • Include the license files in manifest (PR #112).
  • v0.26.2 Changes

    May 11, 2016

    ๐Ÿš€ This is a maintenance release. Just a few changes:

    • โœ‚ Removed official support for Python 3.4, added for 3.5.
    • Various tox-related improvements for development.
    • ๐Ÿ‘Œ Improved documentation.
  • v0.26.1 Changes

    ๐Ÿ›  Fixed bugs:

    • โœ… The undocumented (and untested) argument dispatch(..., pre_call=x) was broken; fixing because at least one important app depends on it (issue #63).
  • v0.26 Changes

    ๐Ÿš€ This release is intended to be the last one before 1.0. Therefore a major cleanup was done. This breaks backward compatibility. If your code is really outdated, please read this list carefully and grep your code.

    • โœ‚ Removed decorator @alias (deprecated since v.0.19).

    • โœ‚ Removed decorator @plain_signature (deprecated since v.0.20).

    • ๐Ÿ’… Dropped support for old-style functions that implicitly expected namespace objects (deprecated since v.0.21). The @expects_obj decorator is now mandatory for such functions.

    • โœ‚ Removed decorator @command (deprecated since v.0.21).

    • The @wrap_errors decorator now strictly requires that the error classes are given as a list (old behaviour was deprecated since v.0.22).

    • ๐Ÿšš The allow_warnings argument is removed from argh.completion.autocomplete(). Debug-level logging is used instead. (The warnings were deprecated since v.0.25).

    Some more stuff has been scheduled to be purged before 1.0:

    • ๐Ÿ—„ Deprecated arguments title, help and description in add_commands() helper function. See documentation and issue #60.

    Other changes:

    • ๐Ÿ‘Œ Improved representation of default values in the help.

    • ๐Ÿ”ง Dispatcher can be configured to skip unknown arguments (issue #57).

    • โž• Added add_subcommands() helper function (a convenience wrapper for add_commands()).

    • ๐Ÿ“œ EntryPoint now stores kwargs for the parser.

    • Added support for default command with nested commands (issue #78).

    This only works with Python 3.4+ due to incorrect behaviour or earlier versions of Argparse (including the stand-alone one as of 1.2.1).

    Due to argparse peculiarities the function assignment technique relies on a special ArghNamespace object. It is used by default in ArghParser and the shortcuts, but if you call the vanilla ArgumentParser.parse_args() method, you now have to supply the proper namespace object.

    ๐Ÿ›  Fixed bugs:

    • 0๏ธโƒฃ Help formatter was broken for arguments with empty strings as default values (issue #76).
  • v0.25 Changes

    • โž• Added EntryPoint class as another way to assemble functions (issue #59).

    • โž• Added support for Python 3.4; dropped support for Python 3.3 (this doesn't mean that Argh is necessarily broken under 3.3, it's just that I'm not testing against it anymore).

    • ๐Ÿ—„ Shell completion warnings are now deprecated in favour of logging.

    • 0๏ธโƒฃ The command help now displays default values of all arguments (issue #64).

    • ๐Ÿ“„ Function docstrings are now displayed verbatim in the help (issue #64).

    • Argh's dispatching now should work properly in Cython.