Todd R 71b18193f8 Accepting request 637090 from home:TheBlackCat:branches:devel:languages:python
- Update to version 0.9.4
  +  Bug Fixes
    * Fixed bug where ``preparse`` was not getting called
    * Fixed bug in parsing of multiline commands where matching quote is on another line 
  +  Enhancements
    * Improved implementation of lifecycle hooks to support a plugin
      framework, see ``docs/hooks.rst`` for details.
    * New dependency on ``attrs`` third party module
    * Added ``matches_sorted`` member to support custom sorting of tab-completion matches
    * Added [tab_autocomp_dynamic.py](https://github.com/python-cmd2/cmd2/blob/master/examples/tab_autocomp_dynamic.py) example
        * Demonstrates updating the argparse object during init instead of during class construction
  +  Deprecations
    * Deprecated the following hook methods, see ``hooks.rst`` for full details:
       * ``cmd2.Cmd.preparse()`` - equivalent functionality available
         via ``cmd2.Cmd.register_postparsing_hook()``
       * ``cmd2.Cmd.postparsing_precmd()`` - equivalent functionality available
         via ``cmd2.Cmd.register_postparsing_hook()``
       * ``cmd2.Cmd.postparsing_postcmd()`` - equivalent functionality available
         via ``cmd2.Cmd.register_postcmd_hook()``
- Update to version 0.9.3
  +  Bug Fixes
    * Fixed bug when StatementParser ``__init__()`` was called with ``terminators`` equal to ``None``
    * Fixed bug when ``Cmd.onecmd()`` was called with a raw ``str``
  +  Enhancements
    * Added ``--clear`` flag to ``history`` command that clears both the command and readline history.
  +  Deletions
    * The ``CmdResult`` helper class which was *deprecated* in the previous release has now been deleted
        * It has been replaced by the improved ``CommandResult`` class
- Update to version 0.9.2
  +  Bug Fixes
    * Fixed issue where piping and redirecting did not work correctly with paths that had spaces
  +  Enhancements
    * Added ability to print a header above tab-completion suggestions using `completion_header` member
    * Added ``pager`` and ``pager_chop`` attributes to the ``cmd2.Cmd`` class
        * ``pager`` defaults to **less -RXF** on POSIX and **more** on Windows
        * ``pager_chop`` defaults to **less -SRXF** on POSIX and **more** on Windows
    * Added ``chop`` argument to ``cmd2.Cmd.ppaged()`` method for displaying output using a pager
        * If ``chop`` is ``False``, then ``self.pager`` is used as the pager
        * Otherwise ``self.pager_chop`` is used as the pager
    * Greatly improved the [table_display.py](https://github.com/python-cmd2/cmd2/blob/master/examples/table_display.py) example
        * Now uses the new [tableformatter](https://github.com/python-tableformatter/tableformatter) module which looks better than ``tabulate``
  +  Deprecations
    * The ``CmdResult`` helper class is *deprecated* and replaced by the improved ``CommandResult`` class
        * ``CommandResult`` has the following attributes: **stdout**, **stderr**, and **data**
            * ``CmdResult`` had attributes of: **out**, **err**, **war**
        * ``CmdResult`` will be deleted in the next release
- Update to version 0.8.8
  +  Bug Fixes
    * Prevent crashes that could occur attempting to open a file in non-existent directory or with very long filename
  +  Enhancements
    * `display_matches` is no longer restricted to delimited strings
- Update to version 0.9.1
  +  Bug Fixes
    * fix packaging error for 0.8.x versions (yes we had to deploy a new version
      of the 0.9.x series to fix a packaging error with the 0.8.x version)
- Update to version 0.9.0
  +  Bug Fixes
    * If self.default_to_shell is true, then redirection and piping are now properly passed to the shell. Previously it was truncated.
    * Submenus now call all hooks, it used to just call precmd and postcmd.
  +  Enhancements
    * Automatic completion of ``argparse`` arguments via ``cmd2.argparse_completer.AutoCompleter``
        * See the [tab_autocompletion.py](https://github.com/python-cmd2/cmd2/blob/master/examples/tab_autocompletion.py) example for a demonstration of how to use this feature
    * ``cmd2`` no longer depends on the ``six`` module
    * ``cmd2`` is now a multi-file Python package instead of a single-file module
    * New pyscript approach that provides a pythonic interface to commands in the cmd2 application.
    * Switch command parsing from pyparsing to custom code which utilizes shlex.
        * The object passed to do_* methods has changed. It no longer is the pyparsing object, it's a new Statement object, which is a subclass of ``str``. The statement object has many attributes which give you access to various components of the parsed input. If you were using anything but the string in your do_* methods, this change will require you to update your code.
        * ``commentGrammers`` is no longer supported or available. Comments are C-style or python style.
        * Input redirection no longer supported. Use the load command instead.
        * ``multilineCommand`` attribute is ``now multiline_command``
        * ``identchars`` is now ignored. The standardlibrary cmd uses those characters to split the first "word" of the input, but cmd2 hasn't used those for a while, and the new parsing logic parses on whitespace, which has the added benefit of full unicode support, unlike cmd or prior versions of cmd2.
        * ``set_posix_shlex`` function and ``POSIX_SHLEX`` variable have been removed. Parsing behavior is now always the more forgiving ``posix=false``.
        * ``set_strip_quotes`` function and ``STRIP_QUOTES_FOR_NON_POSIX`` have been removed. Quotes are stripped from arguments when presented as a list (a la ``sys.argv``), and present when arguments are presented as a string (like the string passed to do_*).
  +  Changes
    * ``strip_ansi()`` and ``strip_quotes()`` functions have moved to new utils module
    * Several constants moved to new constants module
    * Submenu support has been moved to a new [cmd2-submenu](https://github.com/python-cmd2/cmd2-submenu) plugin. If you use submenus, you will need to update your dependencies and modify your imports.
  +  Deletions (potentially breaking changes)
    * Deleted all ``optparse`` code which had previously been deprecated in release 0.8.0
        * The ``options`` decorator no longer exists
        * All ``cmd2`` code should be ported to use the new ``argparse``-based decorators
        * See the [Argument Processing](http://cmd2.readthedocs.io/en/latest/argument_processing.html) section of the documentation for more information on these decorators
        * Alternatively, see the [argparse_example.py](https://github.com/python-cmd2/cmd2/blob/master/examples/argparse_example.py)
    * Deleted ``cmd_with_subs_completer``, ``get_subcommands``, and ``get_subcommand_completer``
        * Replaced by default AutoCompleter implementation for all commands using argparse
    * Deleted support for old method of calling application commands with ``cmd()`` and ``self``
    * ``cmd2.redirector`` is no longer supported. Output redirection can only be done with '>' or '>>'
    * Deleted ``postparse()`` hook since it was redundant with ``postparsing_precmd``
  +  Python 2 no longer supported
    * ``cmd2`` now supports Python 3.4+
  +  Known Issues
    * Some developers have noted very slow performance when importing the ``cmd2`` module. The issue
    it intermittant, and investigation of the root cause is ongoing.
- Python2 is no longer supported upstream,
  so don't build it.

OBS-URL: https://build.opensuse.org/request/show/637090
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-cmd2?expand=0&rev=31
2018-09-21 17:49:41 +00:00
2012-07-27 10:46:02 +00:00
2012-07-27 10:46:02 +00:00
Description
No description provided
232 KiB
Languages
Diff 100%