Skip to content

Releases: python-cmd2/cmd2

1.3.7 (August 27, 2020)

27 Aug 22:25
Compare
Choose a tag to compare
  • Bug Fixes
    • Fixes an issue introduced in 1.3.0 with processing command strings containing terminator/separator character(s) that are manually passed to a command that uses argparse.

1.3.6 (August 27, 2020)

27 Aug 17:41
Compare
Choose a tag to compare
  • Breaking changes
    • The functions cmd2 adds to Namespaces (get_statement() and get_handler()) are now Cmd2AttributeWrapper objects named cmd2_statement and cmd2_handler. This makes it easy to filter out which attributes in an argparse.Namespace were added by cmd2.
  • Deprecations
    • Namespace.__statement__ will be removed in cmd2 2.0.0. Use Namespace.cmd2_statement.get() going forward.

1.3.5 (August 25, 2020)

25 Aug 16:01
Compare
Choose a tag to compare
  • Bug Fixes
    • Fixed RecursionError when printing an argparse.Namespace caused by custom attribute cmd2 was adding
  • Enhancements
    • Added get_statement() function to argparse.Namespace which returns __statement__ attribute

1.3.4 (August 20, 2020)

21 Aug 00:00
Compare
Choose a tag to compare
  • Bug Fixes
    • Fixed AttributeError when CommandSet that uses as_subcommand_to decorator is loaded during cmd2.Cmd.__init__().
  • Enhancements
    • Improved exception messages when using mock without spec=True. See testing documentation for more details on testing cmd2-based applications with mock.

1.3.3 (August 13, 2020)

13 Aug 17:18
Compare
Choose a tag to compare

1.3.3 (August 13, 2020)

  • Breaking changes
    • CommandSet command functions (do_, complete_, help_) will no longer have the cmd2 app passed in as the first parameter after self since this is already a class member.
    • Renamed install_command_set() and uninstall_command_set() to register_command_set() and unregister_command_set() for better name consistency.
  • Bug Fixes
    • Fixed help formatting bug in Cmd2ArgumentParser when metavar is a tuple
    • Fixed tab completion bug when using CompletionItem on an argument whose metavar is a tuple
    • Added explicit testing against python 3.5.2 for Ubuntu 16.04, and 3.5.3 for Debian 9
    • Added fallback definition of typing.Deque (taken from 3.5.4)
    • Removed explicit type hints that fail due to a bug in 3.5.2 favoring comment-based hints instead
    • When passing a ns_provider to an argparse command, will now attempt to resolve the correct CommandSet instance for self. If not, it'll fall back and pass in the cmd2 app
  • Other
    • Added missing doc-string for new cmd2.Cmd init parameters introduced by CommandSet enhancement

1.3.2 (August 10, 2020)

10 Aug 15:35
Compare
Choose a tag to compare
  • Bug Fixes
    • Fixed prog value of subcommands added with as_subcommand_to() decorator.
    • Fixed missing settings in subcommand parsers created with as_subcommand_to() decorator. These settings
      include things like description and epilog text.
    • Fixed issue with CommandSet auto-discovery only searching direct sub-classes
  • Enhancements
    • Added functions to fetch registered CommandSets by type and command name

1.3.1 (August 6, 2020)

06 Aug 20:11
Compare
Choose a tag to compare
  • Bug Fixes
    • Fixed issue determining whether an argparse completer function required a reference to a containing
      CommandSet. Also resolves issues determining the correct CommandSet instance when calling the argparse
      argument completer function. Manifested as a TypeError when using cmd2.Cmd.path_complete as a completer
      for an argparse-based command defined in a CommandSet

1.3.0 (August 4, 2020)

04 Aug 19:47
Compare
Choose a tag to compare
  • Enhancements
    • Added CommandSet - Enables defining a separate loadable module of commands to register/unregister with your cmd2 application.
  • Other
    • Marked with_argparser_and_unknown_args pending deprecation and consolidated implementation into with_argparser

1.2.1 (July 14, 2020)

14 Jul 23:45
Compare
Choose a tag to compare
  • Bug Fixes
    • Relax minimum version of importlib-metadata to >= 1.6.0 when using Python < 3.8

1.2.0 (July 13, 2020)

14 Jul 01:11
104f9af
Compare
Choose a tag to compare
  • Bug Fixes
    • Fixed typing module compatibility issue with Python 3.5 prior to 3.5.4
  • Enhancements
    • Switched to getting version using importlib.metadata instead of using pkg_resources
      • Improves cmd2 application launch time on systems that have a lot of Python packages on sys.path
      • Added dependency on importlib_metadata when running on versions of Python prior to 3.8