On Tue, Sep 16, 2025 at 12:24 PM John Snow <[email protected]> wrote:
>
> The following changes since commit 190d5d7fd725ff754f94e8e0cbfb69f279c82b5d:
>
>   Merge tag 'pull-request-2025-09-09' of https://gitlab.com/thuth/qemu into 
> staging (2025-09-11 12:41:01 +0100)
>
> are available in the Git repository at:
>
>   https://gitlab.com/jsnow/qemu.git tags/python-pull-request
>
> for you to fetch changes up to 9a494d83538680651197651031375c2b6fa2490b:
>
>   iotests/check: always enable all python warnings (2025-09-15 14:36:02 -0400)
>
> ----------------------------------------------------------------
> Python Pull Request
>
> Python 3.14 support & synchronize with python-qemu-qmp repo
>
> ----------------------------------------------------------------
>
> Adam Dorsey (1):
>   python: backport 'feat: allow setting read buffer limit'
>
> Daniel P. Berrangé (5):
>   iotests: drop compat for old version context manager
>   python: ensure QEMUQtestProtocol closes its socket
>   iotests/147: ensure temporary sockets are closed before exiting
>   iotests/151: ensure subprocesses are cleaned up
>   iotests/check: always enable all python warnings
>
> John Snow (13):
>   python: backport 'Change error classes to have better repr methods'
>   python: backport 'EventListener: add __repr__ method'
>   python: backport 'kick event queue on legacy event_pull()'
>   python: backport 'protocol: adjust logging name when changing client
>     name'
>   python: backport 'drop Python3.6 workarounds'
>   python: backport 'Use @asynciocontextmanager'
>   python: backport 'qmp-shell: add common_parser()'
>   python: backport 'make require() preserve async-ness'
>   python: backport 'qmp-shell-wrap: handle missing binary gracefully'
>   python: backport 'qmp-tui: Do not crash if optional dependencies are
>     not met'
>   python: backport 'Remove deprecated get_event_loop calls'
>   python: backport 'avoid creating additional event loops per thread'
>   python: synchronize qemu.qmp documentation
>
>  python/qemu/machine/qtest.py     |   2 +
>  python/qemu/qmp/__init__.py      |   3 +-
>  python/qemu/qmp/error.py         |   7 +-
>  python/qemu/qmp/events.py        |  50 ++++++--
>  python/qemu/qmp/legacy.py        |  46 +++++---
>  python/qemu/qmp/message.py       |  22 ++--
>  python/qemu/qmp/models.py        |   8 +-
>  python/qemu/qmp/protocol.py      | 194 +++++++++++++++++++------------
>  python/qemu/qmp/qmp_client.py    | 155 +++++++++++++++++-------
>  python/qemu/qmp/qmp_shell.py     | 165 ++++++++++++++++++--------
>  python/qemu/qmp/qmp_tui.py       |  30 +++--
>  python/qemu/qmp/util.py          | 143 ++++++-----------------
>  python/tests/protocol.py         |  10 +-
>  tests/qemu-iotests/147           |   1 +
>  tests/qemu-iotests/151           |   5 +
>  tests/qemu-iotests/check         |   4 +
>  tests/qemu-iotests/testenv.py    |   7 +-
>  tests/qemu-iotests/testrunner.py |   9 +-
>  18 files changed, 532 insertions(+), 329 deletions(-)
>
> --
> 2.51.0
>
>

CC qemu-stable. For the stable pull, this subset of patches should be
sufficient:

jsnow@jsnow-thinkpadp16vgen1 ~/s/q/build (python)> stg series --description
+ python-backport-kick-event     # python: backport 'kick event queue
on legacy event_pull()'
+ python-backport-drop-python3.6 # python: backport 'drop Python3.6 workarounds'
+ python-backport-use            # python: backport 'Use @asynciocontextmanager'
+ python-backport-remove         # python: backport 'Remove deprecated
get_event_loop calls'
+ python-backport-avoid-creating # python: backport 'avoid creating
additional event loops per thread'
+ iotests-drop-compat-for-old    # iotests: drop compat for old
version context manager
+ python-ensure                  # python: ensure QEMUQtestProtocol
closes its socket
+ iotests-147-ensure-temporary   # iotests/147: ensure temporary
sockets are closed before exiting
+ iotests-151-ensure             # iotests/151: ensure subprocesses
are cleaned up
> iotests-check-always-enable    # iotests/check: always enable all python 
> warnings

i.e. patches 3, 5-6, 12-13, and 15-19. Tested locally in the python
tests dir (make check-dev && make check-tox && make check-minreqs) and
via normal build and test (../configure --enable-docs && make -j13 &&
make check)

Thanks,
--js.


Reply via email to