diff mbox series

[meta-python,09/10] python3-cmd2: Upgrade 4.2.4 -> 4.3.0

Message ID 20261019125616.3888504-9-leon.anavi@konsulko.com
State New
Headers show
Series [meta-python,01/10] python3-autobahn: Upgrade 26.7.1 -> 26.10.1 | expand

Commit Message

Leon Anavi Oct. 19, 2026, 12:56 p.m. UTC
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>
---
 .../python/{python3-cmd2_4.2.4.bb => python3-cmd2_4.3.0.bb}     | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
 rename meta-python/recipes-devtools/python/{python3-cmd2_4.2.4.bb => python3-cmd2_4.3.0.bb} (87%)
diff mbox series

Patch

diff --git a/meta-python/recipes-devtools/python/python3-cmd2_4.2.4.bb b/meta-python/recipes-devtools/python/python3-cmd2_4.3.0.bb
similarity index 87%
rename from meta-python/recipes-devtools/python/python3-cmd2_4.2.4.bb
rename to meta-python/recipes-devtools/python/python3-cmd2_4.3.0.bb
index beb5dd02b3..3605ab9003 100644
--- a/meta-python/recipes-devtools/python/python3-cmd2_4.2.4.bb
+++ b/meta-python/recipes-devtools/python/python3-cmd2_4.3.0.bb
@@ -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