mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-10-20 19:58:34 +00:00
python3-cmd2: Upgrade 4.2.4 -> 4.3.0
Upgrade to release 4.3.0:
Overview:
This release primarily fixes a number of subtle bugs related to piping
cmd2 command output to shell commands. It also removes the experimental
tag from the @with_annotated decorator feature.
Details:
- Stabilized features
- @with_annotated is no longer experimental. It was introduced
as an experimental feature in 4.0.0 and is now a fully
supported way to define a command's arguments, alongside
@with_argparser. This covers the decorator and its supporting
API in cmd2.annotated, including Argument, Option, Group, and
ArgumentBlock. Annotated Argument Processing.
- Bug Fixes
- On POSIX, piping a command's output to an interactive program
such as less (help -v | less) now runs that program as the
terminal's foreground job, as a shell pipeline does. It had
run in a separate session that never received the terminal,
so Ctrl-Z and fg did not suspend and resume it together with
cmd2. The program now owns the terminal as it starts, so a
pager can set its terminal modes, and Ctrl-C and Ctrl-Z reach
the whole pipeline. Pipes started from a worker thread, or
whose output does not go to the terminal, such as one nested
in a command whose own output is piped, still run in their
own session
- A shell command piped to an interactive program, such as
shell git log | less, now joins the pipeline's job, so both
processes receive Ctrl-C and Ctrl-Z
- On Windows, fixed piped output appearing garbled in console
programs such as more (help -v | more), a regression in
4.2.4. Pipes are written as UTF-8, but console programs
decode their input with the console's code page. While a pipe
or the pager runs, cmd2 now sets the console to UTF-8 (code
page 65001, as chcp 65001 does) and restores its code pages
afterward, so console programs and UTF-8 tools such as rg
both read the output correctly
- When copying a command's output to the clipboard (help >)
fails, later commands' output is no longer written to the
temporary file that held it
- When a pipe's process cannot be started, for instance because
no more processes can be created or $SHELL names a program
that cannot run, both ends of the pipe are now closed rather
than left open
- When a pipe's process exits before the command runs, what it
wrote, such as the shell's "command not found", is no longer
lost when cmd2 captures the output, as in a pyscript
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
1 parent
3d58d42f26
commit
40968651d3
1 file changed
+1
-1
+1
-1
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=f2a861642858e0858af9dd4e4716bae0"
|
||||
|
||||
DEPENDS += "python3-setuptools-scm-native"
|
||||
|
||||
SRC_URI[sha256sum] = "9aac11583994f6b22fab6464180490cc3a336d46eb682f1438acebe3c0bbe53d"
|
||||
SRC_URI[sha256sum] = "3f6c4b9619dbd0d1ba75789a099be82b65daf8ac1d97b8e4ecb112e76c72b100"
|
||||
|
||||
inherit pypi python_setuptools_build_meta python3native
|
||||
|
||||
Reference in new issue
Block a user