Leon Anavi
40968651d3
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 >
2026-10-19 15:08:23 -07:00
..
2026-10-19 15:08:22 -07:00
2026-09-12 16:52:15 -07:00
2026-09-03 13:23:12 -07:00
2026-10-15 22:27:00 -07:00
2026-09-22 11:36:16 -07:00
2026-10-15 22:22:02 -07:00
2026-09-22 11:36:16 -07:00
2026-09-12 16:52:16 -07:00
2026-09-21 08:13:56 -07:00
2026-09-22 11:36:16 -07:00
2026-10-15 22:22:02 -07:00
2026-09-22 11:36:20 -07:00
2026-10-16 09:50:39 -07:00
2026-09-24 21:56:18 -07:00
2026-08-29 21:43:04 -07:00
2026-09-12 16:52:16 -07:00
2026-08-29 21:43:06 -07:00
2026-09-22 11:36:17 -07:00
2026-08-29 21:43:05 -07:00
2026-09-22 11:36:18 -07:00
2026-09-22 11:36:18 -07:00
2026-09-22 11:36:18 -07:00
2026-09-22 11:36:18 -07:00
2026-09-22 11:36:18 -07:00
2026-08-29 21:43:05 -07:00
2026-08-29 21:43:05 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-15 22:32:06 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-10-18 12:39:52 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-27 17:09:49 -07:00
2026-10-08 22:27:01 -07:00
2026-10-18 12:39:52 -07:00
2026-09-27 17:09:49 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-15 22:27:00 -07:00
2026-10-15 22:32:07 -07:00
2026-09-21 08:13:54 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-13 18:57:12 -07:00
2026-10-19 15:08:22 -07:00
2026-09-04 17:10:37 -07:00
2026-09-22 11:36:19 -07:00
2026-10-15 22:32:07 -07:00
2026-10-19 15:08:22 -07:00
2026-09-04 17:10:37 -07:00
2026-10-19 15:08:23 -07:00
2026-10-08 22:27:01 -07:00
2026-10-19 15:08:23 -07:00
2026-10-08 22:27:01 -07:00
2026-10-19 15:08:23 -07:00
2026-10-08 22:27:01 -07:00
2026-10-15 22:32:07 -07:00
2026-10-19 15:08:23 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-15 22:32:07 -07:00
2026-10-08 22:27:01 -07:00
2026-09-29 09:57:21 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-09 10:01:40 -07:00
2026-10-19 15:08:23 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-10-15 22:32:07 -07:00
2026-09-21 08:13:54 -07:00
2026-10-08 22:27:01 -07:00
2026-10-15 22:32:07 -07:00
2026-09-29 07:59:04 -07:00
2026-10-15 22:27:00 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-21 08:13:54 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-27 17:09:50 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-10-09 10:01:39 -07:00
2026-10-09 10:01:39 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-09-27 17:09:50 -07:00
2026-09-12 16:52:16 -07:00
2026-10-08 22:27:01 -07:00
2026-09-22 11:36:16 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-12 21:57:13 -07:00
2026-10-08 22:27:01 -07:00
2026-09-12 16:52:16 -07:00
2026-10-08 22:27:01 -07:00
2026-09-27 12:55:51 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:38 -07:00
2026-09-21 08:13:54 -07:00
2026-10-08 22:27:01 -07:00
2026-09-12 16:52:16 -07:00
2026-10-08 22:27:01 -07:00
2026-10-12 11:35:57 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-12 11:35:57 -07:00
2026-10-08 22:27:01 -07:00
2026-09-27 17:09:51 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-11 21:45:41 -07:00
2026-09-21 08:13:54 -07:00
2026-10-08 22:27:01 -07:00
2026-09-21 08:13:56 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:38 -07:00
2026-09-27 17:09:51 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-03 07:30:34 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:38 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-03 07:30:34 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-09-21 08:13:54 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-05 09:06:42 -07:00
2026-10-08 22:27:01 -07:00
2026-09-03 07:30:34 -07:00
2026-09-03 07:30:35 -07:00
2026-10-01 09:27:50 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-22 11:36:20 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-22 11:36:16 -07:00
2026-09-27 17:09:51 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-09-02 11:48:54 -07:00
2026-09-02 11:48:54 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-27 17:09:52 -07:00
2026-09-04 17:10:37 -07:00
2026-09-27 17:09:52 -07:00
2026-10-15 22:22:02 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-09-29 07:59:03 -07:00
2026-09-22 11:36:20 -07:00
2026-10-01 09:27:50 -07:00
2026-10-08 22:27:01 -07:00
2026-09-21 08:13:54 -07:00
2026-10-16 09:50:39 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-27 17:09:52 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-18 12:39:52 -07:00
2026-09-22 11:36:20 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-09-29 07:59:03 -07:00
2026-10-08 22:27:01 -07:00
2026-09-24 21:56:18 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-15 22:32:08 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-09-12 16:52:16 -07:00
2026-10-08 22:27:01 -07:00
2026-09-22 11:36:17 -07:00
2026-09-21 08:13:54 -07:00
2026-09-21 08:13:54 -07:00
2026-09-04 17:10:37 -07:00
2026-09-21 08:13:54 -07:00
2026-09-22 11:36:17 -07:00
2026-10-08 22:27:01 -07:00
2026-09-21 08:13:54 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-15 22:22:02 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-09 10:01:43 -07:00
2026-09-22 11:36:17 -07:00
2026-09-21 08:13:54 -07:00
2026-09-27 12:55:51 -07:00
2026-09-22 11:36:18 -07:00
2026-09-02 11:48:54 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-09-03 07:30:35 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-03 07:30:35 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-22 11:36:20 -07:00
2026-09-22 11:36:20 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-08-29 23:00:19 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-15 22:32:08 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-15 22:32:08 -07:00
2026-08-29 23:00:19 -07:00
2026-09-20 23:23:59 -07:00
2026-09-22 11:36:18 -07:00
2026-09-04 17:10:37 -07:00
2026-09-22 11:36:18 -07:00
2026-09-21 08:13:54 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-09-27 17:09:52 -07:00
2026-09-04 17:10:37 -07:00
2026-09-04 17:10:37 -07:00
2026-10-13 12:30:06 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-09-27 17:09:52 -07:00
2026-09-03 07:30:36 -07:00
2026-10-08 22:27:01 -07:00
2026-09-22 11:36:18 -07:00
2026-09-21 08:13:54 -07:00
2026-09-21 08:13:54 -07:00
2026-09-22 11:36:18 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-09 10:01:39 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-18 12:39:51 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-09-29 06:49:21 -07:00
2026-09-03 13:23:12 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-09 10:01:39 -07:00
2026-10-08 22:27:01 -07:00
2026-09-04 17:10:37 -07:00
2026-10-08 22:27:01 -07:00
2026-10-18 12:39:51 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-10-13 12:30:07 -07:00
2026-10-09 10:01:39 -07:00
2026-10-08 22:27:01 -07:00
2026-10-08 22:27:01 -07:00
2026-09-20 23:23:59 -07:00
2026-09-11 22:47:20 -07:00