Releases: python-cmd2/cmd2
Releases · python-cmd2/cmd2
2.5.8 (December 17, 2024)
- Bug Fixes
- Rolled back undocumented changes to printing functions introduced in 2.5.0.
2.5.7 (November 22, 2024)
- Bug Fixes
- Fixed issue where argument parsers for overridden commands were not being created.
- Fixed issue where
Cmd.ppaged()
was not writing to the passed in destination.
2.5.6 (November 14, 2024)
- Bug Fixes
- Fixed type hint for
with_default_category
decorator which caused type checkers to mistype a subclass ofCommandSet
as a plainCommandSet
.
- Fixed type hint for
2.5.5 (November 13, 2024)
- Bug Fixes
- Fixed type hints for passing a class method to
with_argparser
andas_subcommand_to
. - Fixed issue where
set
command was not always printing a settable's current value.
- Fixed type hints for passing a class method to
2.5.4 (November 6, 2024)
- Bug Fixes
- Fixed
ZeroDivisionError
inasync_alert()
whenshutil.get_terminal_size().columns
is 0.
- Fixed
2.5.3 (November 5, 2024)
- Enhancements
- Changed
CommandSet._cmd
to a read-only property which never returnsNone
because it is meant to be called after theCommandSet
is registered. This addresses type checker errors that occurred ifCommandSet._cmd
wasn't cast or checked ifNone
before use.
- Changed
2.5.2 (November 3, 2024)
- Bug Fixes
- Fixed default
pytest
execution when not using cmd2's custominvoke
command viainv pytest
- Fixed default
2.5.1 (November 2, 2024)
- Bug Fixes
- Fixed readline bug when using ipy command with gnureadline and Python 3.13
2.5.0 (October 23, 2024)
- Breaking Change
cmd2
2.5 supports Python 3.8+ (removed support for Python 3.6 and 3.7)
- Bug Fixes
- Fixed issue where persistent history file was not saved upon SIGHUP and SIGTERM signals.
- Multiline commands are no longer fragmented in up-arrow history.
- Fixed bug where
async_alert()
overwrites readline's incremental and non-incremental search prompts.- This fix introduces behavior where an updated prompt won't display after an aborted search
until a user presses Enter. See async_printing.py
example for how to handle this case usingCmd.need_prompt_refresh()
andCmd.async_refresh_prompt()
.
- This fix introduces behavior where an updated prompt won't display after an aborted search
- Enhancements
- Removed dependency on
attrs
and replaced with dataclasses - add
allow_clipboard
initialization parameter and attribute to disable ability to
add output to the operating system clipboard - Updated unit tests to be Python 3.13 compliant.
- Fall back to bz2 compression of history file when lzma is not installed.
- Added settable called
scripts_add_to_history
which determines whether scripts and pyscripts
add commands to history.
- Removed dependency on
- Deletions (potentially breaking changes)
- Removed
apply_style
fromCmd.pwarning()
.
- Removed
2.4.3 (January 27, 2023)
- Bug Fixes
- Fixed ValueError caused when passing
Cmd.columnize()
strings wider thandisplay_width
.
- Fixed ValueError caused when passing
- Enhancements
- Renamed
utils.str_to_bool()
->utils.to_bool()
. - Enhanced
utils.to_bool()
so that it accepts and convertsbool
,int
, andfloat
in addition tostr
.
- Renamed