Hello community, here is the log from the commit of package python-cmd2 for openSUSE:Factory checked in at 2018-09-14 00:01:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-cmd2 (Old) and /work/SRC/openSUSE:Factory/.python-cmd2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-cmd2" Fri Sep 14 00:01:20 2018 rev:17 rq:635404 version:0.8.9 Changes: -------- --- /work/SRC/openSUSE:Factory/python-cmd2/python-cmd2.changes 2018-02-14 10:52:20.832117783 +0100 +++ /work/SRC/openSUSE:Factory/.python-cmd2.new/python-cmd2.changes 2018-09-14 00:01:29.649949002 +0200 @@ -1,0 +2,131 @@ +Wed Sep 5 20:07:43 UTC 2018 - dmuel...@suse.com + +- update to 0.8.9: + * Bug Fixes + * Fixed extra slash that could print when tab completing users on Windows + * Prevent crashes that could occur attempting to open a file in non-existent directory or with very long filename + * Make sure pip installs version 0.8.x if you have python 2.7 + * Commands using the @with_argparser_and_unknown_args were not correctly recognized when tab completing + * Fixed issue where completion display function was overwritten when a submenu quits + * Fixed ``AttributeError`` on Windows when running a ``select`` command cause by **pyreadline** not implementing ``remove_history_item`` + * Bug Fixes + * Fixed a bug with all argument decorators where the wrapped function wasn't returning a value and thus couldn't cause the cmd2 app to quit + + * Enhancements + * Added warning about **libedit** variant of **readline** not being supported on macOS + * Added tab-completion of alias names in value filed of **alias** command + * Enhanced the ``py`` console in the following ways + * Added tab completion of Python identifiers instead of **cmd2** commands + * Separated the ``py`` console history from the **cmd2** history + * Added support for verbose help with -v where it lists a brief summary of what each command does + * Added support for categorizing commands into groups within the help menu + * See the [Grouping Commands](http://cmd2.readthedocs.io/en/latest/argument_processing.html?highlight=verbose#grouping-commands) section of the docs for more info + * See [help_categories.py](https://github.com/python-cmd2/cmd2/blob/master/examples/help_categories.py) for an example + * Tab completion of paths now supports ~user user path expansion + * Simplified implementation of various tab completion functions so they no longer require ``ctypes`` + * Expanded documentation of ``display_matches`` list to clarify its purpose. See cmd2.py for this documentation. + * Adding opening quote to tab completion if any of the completion suggestions have a space. + * Tab completion has been overhauled and now supports completion of strings with quotes and spaces. + * Tab completion will automatically add an opening quote if a string with a space is completed. + * Added ``delimiter_complete`` function for tab completing delimited strings + * Added more control over tab completion behavior including the following flags. The use of these flags is documented in cmd2.py + * ``allow_appended_space`` + * ``allow_closing_quote`` + * Due to the tab completion changes, non-Windows platforms now depend on [wcwidth](https://pypi.python.org/pypi/wcwidth). + * An alias name can now match a command name. + * An alias can now resolve to another alias. + + * **Python 2 EOL notice** + * This is the last release where new features will be added to ``cmd2`` for Python 2.7 + * The 0.9.0 release of ``cmd2`` will support Python 3.4+ only + * Additional 0.8.x releases may be created to supply bug fixes for Python 2.7 up until August 31, 2018 + * After August 31, 2018 not even bug fixes will be provided for Python 2.7 + + * Fixed conditional dependency issue in setup.py that was in 0.8.3. + * Fixed ``help`` command not calling functions for help topics + * Fixed not being able to use quoted paths when redirecting with ``<`` and ``>`` + + * Enhancements + * Attribute Changes (Breaks backward compatibility) + * ``exclude_from_help`` is now called ``hidden_commands`` since these commands are hidden from things other than help, including tab completion + * This list also no longer takes the function names of commands (``do_history``), but instead uses the command names themselves (``history``) + * ``excludeFromHistory`` is now called ``exclude_from_history`` + * ``cmd_with_subs_completer()`` no longer takes an argument called ``base``. Adding tab completion to subcommands has been simplified to declaring it in the + subcommand parser's default settings. This easily allows arbitrary completers like path_complete to be used. + See [subcommands.py](https://github.com/python-cmd2/cmd2/blob/master/examples/subcommands.py) for an example of how to use + tab completion in subcommands. In addition, the docstring for ``cmd_with_subs_completer()`` offers more details. +* Bug Fixes + * Fixed a bug in tab-completion of command names within sub-menus + * Fixed a bug when using persistent readline history in Python 2.7 + * Fixed a bug where the ``AddSubmenu`` decorator didn't work with a default value for ``shared_attributes`` + * Added a check to ``ppaged()`` to only use a pager when running in a real fully functional terminal +* Enhancements + * Added [quit_on_sigint](http://cmd2.readthedocs.io/en/latest/settingchanges.html#quit-on-sigint) attribute to enable canceling current line instead of quitting when Ctrl+C is typed + * Added possibility of having readline history preservation in a SubMenu + * Added [table_display.py](https://github.com/python-cmd2/cmd2/blob/master/examples/table_display.py) example to demonstrate how to display tabular data + * Added command aliasing with ``alias`` and ``unalias`` commands + * Added the ability to load an initialization script at startup + * See [alias_startup.py](https://github.com/python-cmd2/cmd2/blob/master/examples/alias_startup.py) for an example + * Added a default SIGINT handler which terminates any open pipe subprocesses and re-raises a KeyboardInterrupt + * For macOS, will load the ``gnureadline`` module if available and ``readline`` if not +* Bug Fixes + * Fixed a bug if a non-existent **do_*** method was added to the ``exclude_from_help`` list + * Fixed a bug in a unit test which would fail if your home directory was empty on a Linux system + * Fixed outdated help text for the **edit** command + * Fixed outdated [remove_unused.py](https://github.com/python-cmd2/cmd2/blob/master/examples/remove_unused.py) +* Enhancements + * Added support for sub-menus. + * See [submenus.py](https://github.com/python-cmd2/cmd2/blob/master/examples/submenus.py) for an example of how to use it + * Added option for persistent readline history + * See [persistent_history.py](https://github.com/python-cmd2/cmd2/blob/master/examples/persistent_history.py) for an example + * See the [Searchable command history](http://cmd2.readthedocs.io/en/latest/freefeatures.html#searchable-command-history) section of the documentation for more info + * Improved PyPI packaging by including unit tests and examples in the tarball + * Improved documentation to make it more obvious that **poutput()** should be used instead of **print()** + * ``exclude_from_help`` and ``excludeFromHistory`` are now instance instead of class attributes + * Added flag and index based tab completion helper functions + * See [tab_completion.py](https://github.com/python-cmd2/cmd2/blob/master/examples/tab_completion.py) + * Added support for displaying output which won't fit on the screen via a pager using ``ppaged()`` + * See [paged_output.py](https://github.com/python-cmd2/cmd2/blob/master/examples/paged_output.py) +* Attributes Removed (**can cause breaking changes**) + * ``abbrev`` - Removed support for abbreviated commands + * Good tab completion makes this unnecessary and its presence could cause harmful unintended actions + * ``case_insensitive`` - Removed support for case-insensitive command parsing + * Its presence wasn't very helpful and could cause harmful unintended actions +* Bug Fixes + * Fixed unit tests on Python 3.7 due to changes in how re.escape() behaves in Python 3.7 + * Fixed a bug where unknown commands were getting saved in the history +* Enhancements + * Three new decorators for **do_*** commands to make argument parsing easier + * **with_argument_list** decorator to change argument type from str to List[str] + * **do_*** commands get a single argument which is a list of strings, as pre-parsed by shlex.split() + * **with_arparser** decorator for strict argparse-based argument parsing of command arguments + * **do_*** commands get a single argument which is the output of argparse.parse_args() + * **with_argparser_and_unknown_args** decorator for argparse-based argument parsing, but allows unknown args + * **do_*** commands get two arguments, the output of argparse.parse_known_args() + * 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) + and [arg_print.py](https://github.com/python-cmd2/cmd2/blob/master/examples/arg_print.py) examples + * Added support for Argparse sub-commands when using the **with_argument_parser** or **with_argparser_and_unknown_args** decorators + * See [subcommands.py](https://github.com/python-cmd2/cmd2/blob/master/examples/subcommands.py) for an example of how to use subcommands + * Tab-completion of sub-command names is automatically supported + * The **__relative_load** command is now hidden from the help menu by default + * This command is not intended to be called from the command line, only from within scripts + * The **set** command now has an additional **-a/--all** option to also display read-only settings + * The **history** command can now run, edit, and save prior commands, in addition to displaying prior commands. + * The **history** command can now automatically generate a transcript file for regression testing + * This makes creating regression tests for your ``cmd2`` application trivial +* Commands Removed + * The **cmdenvironment** has been removed and its functionality incorporated into the **-a/--all** argument to **set** + * The **show** command has been removed. Its functionality has always existing within **set** and continues to do so + * The **save** command has been removed. The capability to save commands is now part of the **history** command. + * The **run** command has been removed. The capability to run prior commands is now part of the **history** command. +* Other changes + * The **edit** command no longer allows you to edit prior commands. The capability to edit prior commands is now part of the **history** command. The **edit** command still allows you to edit arbitrary files. + * the **autorun_on_edit** setting has been removed. + * For Python 3.4 and earlier, ``cmd2`` now has an additional dependency on the ``contextlib2`` module +* Deprecations + * The old **options** decorator for optparse-based argument parsing is now *deprecated* + * The old decorator is still present for now, but will be removed in a future release + * ``cmd2`` no longer includes **optparse.make_option**, so if your app needs it import directly from optparse + +------------------------------------------------------------------- Old: ---- cmd2-0.7.9.tar.gz New: ---- cmd2-0.8.9.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-cmd2.spec ++++++ --- /var/tmp/diff_new_pack.un4dBt/_old 2018-09-14 00:01:30.765948150 +0200 +++ /var/tmp/diff_new_pack.un4dBt/_new 2018-09-14 00:01:30.765948150 +0200 @@ -18,19 +18,31 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-cmd2 -Version: 0.7.9 +Version: 0.8.9 Release: 0 Summary: Extra features for standard library's cmd module License: MIT Group: Development/Languages/Python Url: http://packages.python.org/cmd2/ Source: https://files.pythonhosted.org/packages/source/c/cmd2/cmd2-%{version}.tar.gz -BuildRequires: %{python_module devel} +BuildRequires: %{python_module contextlib2} +BuildRequires: %{python_module mock} +BuildRequires: %{python_module pyperclip} +BuildRequires: %{python_module pytest-xdist} BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wcwidth} +BuildRequires: python-enum34 BuildRequires: python-rpm-macros +BuildRequires: python-subprocess32 Requires: python-pyparsing >= 2.0.1 Requires: python-pyperclip Requires: python-six +Requires: python-wcwidth +%ifpython2 +Requires: python-contextlib2 +Requires: python-enum34 +Requires: python-subprocess32 +%endif BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch @@ -64,9 +76,12 @@ %install %python_install +%check +%python_exec setup.py test + %files %{python_files} -%defattr(-,root,root,-) -%doc README.md LICENSE +%license LICENSE +%doc README.md %{python_sitelib}/* %changelog ++++++ cmd2-0.7.9.tar.gz -> cmd2-0.8.9.tar.gz ++++++ ++++ 9177 lines of diff (skipped)