From: John Snow <jsnow@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Marc-André Lureau" <marcandre.lureau@redhat.com>,
qemu-block@nongnu.org, "Cleber Rosa" <crosa@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Daniel P. Berrangé" <berrange@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Thomas Huth" <thuth@redhat.com>,
"Michael Roth" <michael.roth@amd.com>,
"Hanna Reitz" <hreitz@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Kevin Wolf" <kwolf@redhat.com>,
"Markus Armbruster" <armbru@redhat.com>,
"John Snow" <jsnow@redhat.com>
Subject: [PATCH 00/22] python: drop qemu.qmp from qemu.git tree
Date: Mon, 17 Nov 2025 13:51:08 -0500 [thread overview]
Message-ID: <20251117185131.953681-1-jsnow@redhat.com> (raw)
Hi, this series does a few things, but it's ultimately in service of
dropping the python qemu.qmp package from the qemu.git tree in favor of
using the standalone package instead, to prevent any further issues from
the two codebases diverging.
Patches 1-3: Fix linting issues that have cropped up with python
Patches 4-8,12,16: Set up new python dependency targets in Meson
Patches 9-10,17: Adjust test execution in GitLab to cope with new test
dependency structure
Patch 11: Add vendored qemu.qmp package for isolated/offline test
execution
Patches 13-15: Fix meson build system (Paolo Bonzini)
Patches 18-20: Teach mkvenv how to install local packages
Patch 21: Replace "make check-venv" in Makefile with meson execution
Patch 22: Drop qemu.qmp.
There are some quality problems with Patches 18-20, but all GitLab tests
are green and this is a great starting point to discuss this series.
--js
John Snow (19):
python/mkvenv: ensure HAVE_LIB variables are actually constants
python/qapi: add an ignore for Pylint 4.x
python/qapi: delint import statements
python/mkvenv: create timestamp file for each group "ensured"
python/mkvenv: bump 'qemu.qmp' dependency for testdeps
python/mkvenv: rename 'testdeps' to 'functests'
python/mkvenv: add "checktests" dependency group
meson, mkvenv: add checktests and functests custom targets
tests/iotests: Use configured python to run GitLab iotests
tests/iotests: use "make check-venv" to prepare for running iotests
python: add vendored qemu.qmp package
meson, mkvenv: make iotests depend on checktests group
meson, mkvenv: make functional tests depend on functests group
tests: forcibly run 'make check-venv' for crash tests
python/mkvenv: add mechanism to install local package(s)
mkvenv: add --no-build-isolation flag
meson, mkvenv: add qemu.git/python/qemu package to pythondeps.toml
tests/Makefile: replace old "check-venv" target with meson target
python: delete qemu.qmp
Paolo Bonzini (3):
mtest2make: cleanup mtest-suites variables
mtest2make: add dependencies to the "speed-qualified" suite
mtest2make: do not repeat the same speed over and over
Makefile | 4 +-
meson.build | 1 +
.gitlab-ci.d/buildtest.yml | 9 +-
python/qemu/qmp/__init__.py | 60 -
python/qemu/qmp/error.py | 53 -
python/qemu/qmp/events.py | 751 -----------
python/qemu/qmp/legacy.py | 339 -----
python/qemu/qmp/message.py | 217 ----
python/qemu/qmp/models.py | 146 ---
python/qemu/qmp/protocol.py | 1101 -----------------
python/qemu/qmp/py.typed | 0
python/qemu/qmp/qmp_client.py | 732 -----------
python/qemu/qmp/qmp_shell.py | 689 -----------
python/qemu/qmp/qmp_tui.py | 665 ----------
python/qemu/qmp/util.py | 150 ---
python/qemu/utils/qom_fuse.py | 1 -
python/scripts/mkvenv.py | 35 +-
python/scripts/vendor.py | 2 +
python/setup.cfg | 32 +-
python/tests/minreqs.txt | 8 +-
python/tests/protocol.py | 596 ---------
python/wheels/qemu_qmp-0.0.5-py3-none-any.whl | Bin 0 -> 72263 bytes
pythondeps.toml | 7 +-
pyvenv/meson.build | 34 +
scripts/mtest2make.py | 41 +-
scripts/qapi/commands.py | 5 +-
scripts/qapi/introspect.py | 2 +-
tests/Makefile.include | 25 +-
tests/functional/meson.build | 7 +-
tests/qemu-iotests/meson.build | 2 +-
30 files changed, 116 insertions(+), 5598 deletions(-)
delete mode 100644 python/qemu/qmp/__init__.py
delete mode 100644 python/qemu/qmp/error.py
delete mode 100644 python/qemu/qmp/events.py
delete mode 100644 python/qemu/qmp/legacy.py
delete mode 100644 python/qemu/qmp/message.py
delete mode 100644 python/qemu/qmp/models.py
delete mode 100644 python/qemu/qmp/protocol.py
delete mode 100644 python/qemu/qmp/py.typed
delete mode 100644 python/qemu/qmp/qmp_client.py
delete mode 100644 python/qemu/qmp/qmp_shell.py
delete mode 100644 python/qemu/qmp/qmp_tui.py
delete mode 100644 python/qemu/qmp/util.py
delete mode 100644 python/tests/protocol.py
create mode 100644 python/wheels/qemu_qmp-0.0.5-py3-none-any.whl
create mode 100644 pyvenv/meson.build
--
2.51.1
next reply other threads:[~2025-11-17 18:52 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-17 18:51 John Snow [this message]
2025-11-17 18:51 ` [PATCH 01/22] python/mkvenv: ensure HAVE_LIB variables are actually constants John Snow
2025-11-18 7:19 ` Thomas Huth
2025-11-17 18:51 ` [PATCH 02/22] python/qapi: add an ignore for Pylint 4.x John Snow
2025-11-18 7:28 ` Thomas Huth
2025-11-17 18:51 ` [PATCH 03/22] python/qapi: delint import statements John Snow
2025-11-18 7:28 ` Thomas Huth
2025-11-17 18:51 ` [PATCH 04/22] python/mkvenv: create timestamp file for each group "ensured" John Snow
2025-11-17 18:51 ` [PATCH 05/22] python/mkvenv: bump 'qemu.qmp' dependency for testdeps John Snow
2025-11-19 9:19 ` Thomas Huth
2025-11-19 21:10 ` John Snow
2025-11-17 18:51 ` [PATCH 06/22] python/mkvenv: rename 'testdeps' to 'functests' John Snow
2025-11-18 10:01 ` Thomas Huth
2025-11-18 18:22 ` John Snow
2025-11-17 18:51 ` [PATCH 07/22] python/mkvenv: add "checktests" dependency group John Snow
2025-11-18 10:01 ` Thomas Huth
2025-11-17 18:51 ` [PATCH 08/22] meson, mkvenv: add checktests and functests custom targets John Snow
2025-11-17 18:51 ` [PATCH 09/22] tests/iotests: Use configured python to run GitLab iotests John Snow
2025-11-18 7:17 ` Thomas Huth
2025-11-18 18:10 ` John Snow
2025-11-17 18:51 ` [PATCH 10/22] tests/iotests: use "make check-venv" to prepare for running iotests John Snow
2025-11-18 9:58 ` Thomas Huth
2025-11-17 18:51 ` [PATCH 11/22] python: add vendored qemu.qmp package John Snow
2025-11-19 9:29 ` Thomas Huth
2025-11-19 21:16 ` John Snow
2025-11-17 18:51 ` [PATCH 12/22] meson, mkvenv: make iotests depend on checktests group John Snow
2025-11-17 18:51 ` [PATCH 13/22] mtest2make: cleanup mtest-suites variables John Snow
2025-11-21 10:24 ` Paolo Bonzini
2025-11-17 18:51 ` [PATCH 14/22] mtest2make: add dependencies to the "speed-qualified" suite John Snow
2025-11-17 18:51 ` [PATCH 15/22] mtest2make: do not repeat the same speed over and over John Snow
2025-11-17 18:51 ` [PATCH 16/22] meson, mkvenv: make functional tests depend on functests group John Snow
2025-11-17 18:51 ` [PATCH 17/22] tests: forcibly run 'make check-venv' for crash tests John Snow
2025-11-17 19:06 ` Daniel P. Berrangé
2025-11-17 20:47 ` Paolo Bonzini
2025-11-18 21:50 ` John Snow
2025-11-19 8:05 ` Paolo Bonzini
2025-11-19 14:15 ` Thomas Huth
2025-11-19 23:03 ` John Snow
2025-11-17 18:51 ` [PATCH 18/22] python/mkvenv: add mechanism to install local package(s) John Snow
2025-11-17 18:51 ` [PATCH 19/22] mkvenv: add --no-build-isolation flag John Snow
2025-11-17 18:51 ` [PATCH 20/22] meson, mkvenv: add qemu.git/python/qemu package to pythondeps.toml John Snow
2025-11-17 18:51 ` [PATCH 21/22] tests/Makefile: replace old "check-venv" target with meson target John Snow
2025-11-17 18:51 ` [PATCH 22/22] python: delete qemu.qmp John Snow
2025-11-19 9:27 ` Thomas Huth
2025-11-19 21:14 ` John Snow
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251117185131.953681-1-jsnow@redhat.com \
--to=jsnow@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=crosa@redhat.com \
--cc=hreitz@redhat.com \
--cc=kwolf@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=michael.roth@amd.com \
--cc=pbonzini@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).