You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+27-1Lines changed: 27 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,11 +2,37 @@
2
2
* Bug Fixes
3
3
* Fixed bug where ``get_all_commands`` could return non-callable attributes
4
4
* Fixed bug where **alias** command was dropping quotes around arguments
5
+
* Fixed bug where running help on argparse commands didn't work if they didn't support -h
5
6
* Enhancements
6
7
* Added ``exit_code`` attribute of ``cmd2.Cmd`` class
7
8
* Enables applications to return a non-zero exit code when exiting from ``cmdloop``
8
9
*``ACHelpFormatter`` now inherits from ``argparse.RawTextHelpFormatter`` to make it easier
9
10
for formatting help/description text
11
+
* Aliases are now sorted alphabetically
12
+
* The **set** command now tab-completes settable parameter names
13
+
* Added ``async_alert``, ``async_update_prompt``, and ``set_window_title`` functions
14
+
* These allow you to provide feedback to the user in an asychronous fashion, meaning alerts can
15
+
display when the user is still entering text at the prompt. See [async_printing.py](https://github.com/python-cmd2/cmd2/blob/master/examples/async_printing.py)
16
+
for an example.
17
+
* Cross-platform colored output support
18
+
*``colorama`` gets initialized properly in ``Cmd.__init()``
19
+
* The ``Cmd.colors`` setting is no longer platform dependent and now has three values:
20
+
* Terminal (default) - output methods do not strip any ANSI escape sequences when output is a terminal, but
21
+
if the output is a pipe or a file the escape sequences are stripped
22
+
* Always - output methods **never** strip ANSI escape sequences, regardless of the output destination
23
+
* Never - output methods strip all ANSI escape sequences
24
+
* Added ``macro`` command to create macros, which are similar to aliases, but can take arguments when called
25
+
* All cmd2 command functions have been converted to use argparse.
26
+
* Deprecations
27
+
* Deprecated the built-in ``cmd2`` support for colors including ``Cmd.colorize()`` and ``Cmd._colorcodes``
28
+
* Deletions (potentially breaking changes)
29
+
* The ``preparse``, ``postparsing_precmd``, and ``postparsing_postcmd`` methods *deprecated* in the previous release
30
+
have been deleted
31
+
* The new application lifecycle hook system allows for registration of callbacks to be called at various points
32
+
in the lifecycle and is more powerful and flexible than the previous system
33
+
*``alias`` is now a command with subcommands to create, list, and delete aliases. Therefore its syntax
34
+
has changed. All current alias commands in startup scripts or transcripts will break with this release.
35
+
*`unalias` was deleted since ``alias delete`` replaced it
10
36
11
37
## 0.9.4 (August 21, 2018)
12
38
* Bug Fixes
@@ -118,7 +144,7 @@
118
144
* Fixed ``AttributeError`` on Windows when running a ``select`` command cause by **pyreadline** not implementing ``remove_history_item``
119
145
* Enhancements
120
146
* Added warning about **libedit** variant of **readline** not being supported on macOS
121
-
* Added tab-completion of alias names in value filed of **alias** command
147
+
* Added tab-completion of alias names in value field of **alias** command
122
148
* Enhanced the ``py`` console in the following ways
123
149
* Added tab completion of Python identifiers instead of **cmd2** commands
124
150
* Separated the ``py`` console history from the **cmd2** history
- Special-character command shortcuts (beyond cmd's `?` and `!`)
33
33
- Command aliasing similar to bash `alias` command
34
+
- Macros, which are similar to aliases, but can take arguments when called
34
35
- Ability to load commands at startup from an initialization script
35
36
- Settable environment parameters
36
37
- Parsing commands with arguments using `argparse`, including support for sub-commands
@@ -40,6 +41,7 @@ Main Features
40
41
- Trivial to provide built-in help for all commands
41
42
- Built-in regression testing framework for your applications (transcript-based testing)
42
43
- Transcripts for use with built-in regression can be automatically generated from `history -t`
44
+
- Alerts that seamlessly print while user enters text at prompt
43
45
44
46
Python 2.7 support is EOL
45
47
-------------------------
@@ -259,3 +261,15 @@ timing: False
259
261
Note how a regular expression `/(True|False)/`is used for output of the **show color** command since
260
262
colored text is currently not available for cmd2 on Windows. Regular expressions can be used anywhere within a
261
263
transcript file simply by enclosing them within forward slashes, `/`.
264
+
265
+
266
+
Found a bug?
267
+
------------
268
+
269
+
If you think you've found a bug, please first read through the open [Issues](https://github.com/python-cmd2/cmd2/issues). If you're confident it's a new bug, go ahead and create a new GitHub issue. Be sure to include as much information as possible so we can reproduce the bug. At a minimum, please state the following:
270
+
271
+
*``cmd2`` version
272
+
* Python version
273
+
*OS name and version
274
+
* What you did to cause the bug to occur
275
+
* Include any traceback or error message associated with the bug
0 commit comments