All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 00/31] Python: delete synchronous qemu.qmp package
@ 2022-01-10 23:28 John Snow
  2022-01-10 23:28 ` [PATCH v3 01/31] python/aqmp: use absolute import statement John Snow
                   ` (32 more replies)
  0 siblings, 33 replies; 46+ messages in thread
From: John Snow @ 2022-01-10 23:28 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Eduardo Habkost, Vladimir Sementsov-Ogievskiy,
	Daniel Berrange, Beraldo Leal, qemu-block, Markus Armbruster,
	Wainer Moschetta, Hanna Reitz, Gerd Hoffmann, Cleber Rosa,
	John Snow

Based-on: <20220110232521.1922962-1-jsnow@redhat.com>
          (jsnow/python staging branch)
GitLab: https://gitlab.com/jsnow/qemu/-/commits/python-qmp-legacy-switch
CI: https://gitlab.com/jsnow/qemu/-/pipelines/445163212

Hi, this series is part of an effort to publish the qemu.qmp package on
PyPI. It is the first of three series to complete this work:

--> (1) Switch the new Async QMP library in to python/qemu/qmp
    (2) Fork python/qemu/qmp out into its own repository,
        with updated GitLab CI/CD targets to build packages.
    (3) Update qemu.git to install qemu.qmp from PyPI,
        and then delete python/qemu/qmp.

This series swaps out qemu.qmp for qemu.aqmp permanently, instead of
hiding it behind an environment variable toggle. This leaves us with
just one QMP library to worry about. It also implements the rename of
"qemu.aqmp" to "qemu.qmp".

I suspect the most potential disruption to iotest and avocado
maintainers, as those two subsystems rely on the QMP features the
most. Would appreciate at least an ACK from each of those camps if
you're willing to give benefit-of-the-doubt on the actual Python code.

V3:
 - Rebased on top of jsnow/python (For GitLab CI fixes)
 - Added a new patch 001 to fix a typo Vladimir found.
 - Tiny change in 006 due to the new patch 001
 - Reworded subject of patch 007
 - Changed import statement in patch 013 (Vladimir)
 - Rebase-related changes in patch 021
 - Removed 'aqmp' from internal variable names in 026
 - Added new patch to rename aqmp-tui to qmp-tui in 027

V2:
 - Integrate the renaming of qemu.aqmp to qemu.qmp in this series
 - Minor bits and pieces.

John Snow (30):
  python/aqmp: use absolute import statement
  Python/aqmp: fix type definitions for mypy 0.920
  python: update type hints for mypy 0.930
  python/aqmp: fix docstring typo
  python/aqmp: add __del__ method to legacy interface
  python/aqmp: handle asyncio.TimeoutError on execute()
  python/aqmp: copy type definitions from qmp
  python/aqmp: add SocketAddrT to package root
  python/aqmp: rename AQMPError to QMPError
  python/qemu-ga-client: don't use deprecated CLI syntax in usage
    comment
  python/qmp: switch qemu-ga-client to AQMP
  python/qmp: switch qom tools to AQMP
  python/qmp: switch qmp-shell to AQMP
  python: move qmp utilities to python/qemu/utils
  python: move qmp-shell under the AQMP package
  python/machine: permanently switch to AQMP
  scripts/cpu-x86-uarch-abi: fix CLI parsing
  scripts/cpu-x86-uarch-abi: switch to AQMP
  scripts/render-block-graph: switch to AQMP
  scripts/bench-block-job: switch to AQMP
  iotests/mirror-top-perms: switch to AQMP
  iotests: switch to AQMP
  python: temporarily silence pylint duplicate-code warnings
  python/aqmp: take QMPBadPortError and parse_address from qemu.qmp
  python/aqmp: fully separate from qmp.QEMUMonitorProtocol
  python/aqmp: copy qmp docstrings to qemu.aqmp.legacy
  python: remove the old QMP package
  python: re-enable pylint duplicate-code warnings
  python: rename qemu.aqmp to qemu.qmp
  python: rename 'aqmp-tui' to 'qmp-tui'

Stefan Weil (1):
  simplebench: Fix Python syntax error (reported by LGTM)

 python/qemu/qmp/README.rst                    |   9 -
 python/qemu/aqmp/__init__.py                  |  51 --
 python/qemu/aqmp/legacy.py                    | 138 ------
 python/qemu/aqmp/py.typed                     |   0
 python/qemu/machine/machine.py                |  18 +-
 python/qemu/machine/qtest.py                  |   2 +-
 python/qemu/qmp/__init__.py                   | 441 ++----------------
 python/qemu/{aqmp => qmp}/error.py            |  12 +-
 python/qemu/{aqmp => qmp}/events.py           |   6 +-
 python/qemu/qmp/legacy.py                     | 319 +++++++++++++
 python/qemu/{aqmp => qmp}/message.py          |   0
 python/qemu/{aqmp => qmp}/models.py           |   0
 python/qemu/{aqmp => qmp}/protocol.py         |  33 +-
 python/qemu/{aqmp => qmp}/qmp_client.py       |  32 +-
 python/qemu/qmp/qmp_shell.py                  |  31 +-
 .../qemu/{aqmp/aqmp_tui.py => qmp/qmp_tui.py} |  14 +-
 python/qemu/{aqmp => qmp}/util.py             |   0
 python/qemu/{qmp => utils}/qemu_ga_client.py  |  24 +-
 python/qemu/{qmp => utils}/qom.py             |   5 +-
 python/qemu/{qmp => utils}/qom_common.py      |   9 +-
 python/qemu/{qmp => utils}/qom_fuse.py        |  11 +-
 python/setup.cfg                              |  23 +-
 python/tests/protocol.py                      |  14 +-
 scripts/cpu-x86-uarch-abi.py                  |   7 +-
 scripts/device-crash-test                     |   4 +-
 scripts/qmp/qemu-ga-client                    |   2 +-
 scripts/qmp/qom-fuse                          |   2 +-
 scripts/qmp/qom-get                           |   2 +-
 scripts/qmp/qom-list                          |   2 +-
 scripts/qmp/qom-set                           |   2 +-
 scripts/qmp/qom-tree                          |   2 +-
 scripts/render_block_graph.py                 |   8 +-
 scripts/simplebench/bench-example.py          |   2 +-
 scripts/simplebench/bench_block_job.py        |   5 +-
 tests/qemu-iotests/iotests.py                 |   2 +-
 tests/qemu-iotests/tests/mirror-top-perms     |  13 +-
 36 files changed, 502 insertions(+), 743 deletions(-)
 delete mode 100644 python/qemu/qmp/README.rst
 delete mode 100644 python/qemu/aqmp/__init__.py
 delete mode 100644 python/qemu/aqmp/legacy.py
 delete mode 100644 python/qemu/aqmp/py.typed
 rename python/qemu/{aqmp => qmp}/error.py (87%)
 rename python/qemu/{aqmp => qmp}/events.py (99%)
 create mode 100644 python/qemu/qmp/legacy.py
 rename python/qemu/{aqmp => qmp}/message.py (100%)
 rename python/qemu/{aqmp => qmp}/models.py (100%)
 rename python/qemu/{aqmp => qmp}/protocol.py (97%)
 rename python/qemu/{aqmp => qmp}/qmp_client.py (96%)
 rename python/qemu/{aqmp/aqmp_tui.py => qmp/qmp_tui.py} (98%)
 rename python/qemu/{aqmp => qmp}/util.py (100%)
 rename python/qemu/{qmp => utils}/qemu_ga_client.py (94%)
 rename python/qemu/{qmp => utils}/qom.py (99%)
 rename python/qemu/{qmp => utils}/qom_common.py (95%)
 rename python/qemu/{qmp => utils}/qom_fuse.py (97%)

-- 
2.31.1




^ permalink raw reply	[flat|nested] 46+ messages in thread

end of thread, other threads:[~2022-01-21  0:26 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-10 23:28 [PATCH v3 00/31] Python: delete synchronous qemu.qmp package John Snow
2022-01-10 23:28 ` [PATCH v3 01/31] python/aqmp: use absolute import statement John Snow
2022-01-10 23:28 ` [PATCH v3 02/31] Python/aqmp: fix type definitions for mypy 0.920 John Snow
2022-01-10 23:28 ` [PATCH v3 03/31] python: update type hints for mypy 0.930 John Snow
2022-01-10 23:28 ` [PATCH v3 04/31] simplebench: Fix Python syntax error (reported by LGTM) John Snow
2022-01-10 23:28 ` [PATCH v3 05/31] python/aqmp: fix docstring typo John Snow
2022-01-12 13:26   ` Beraldo Leal
2022-01-10 23:28 ` [PATCH v3 06/31] python/aqmp: add __del__ method to legacy interface John Snow
2022-01-10 23:28 ` [PATCH v3 07/31] python/aqmp: handle asyncio.TimeoutError on execute() John Snow
2022-01-10 23:28 ` [PATCH v3 08/31] python/aqmp: copy type definitions from qmp John Snow
2022-01-12 13:32   ` Beraldo Leal
2022-01-10 23:28 ` [PATCH v3 09/31] python/aqmp: add SocketAddrT to package root John Snow
2022-01-10 23:28 ` [PATCH v3 10/31] python/aqmp: rename AQMPError to QMPError John Snow
2022-01-12 13:35   ` Beraldo Leal
2022-01-10 23:28 ` [PATCH v3 11/31] python/qemu-ga-client: don't use deprecated CLI syntax in usage comment John Snow
2022-01-10 23:28 ` [PATCH v3 12/31] python/qmp: switch qemu-ga-client to AQMP John Snow
2022-01-10 23:28 ` [PATCH v3 13/31] python/qmp: switch qom tools " John Snow
2022-01-10 23:28 ` [PATCH v3 14/31] python/qmp: switch qmp-shell " John Snow
2022-01-12 13:52   ` Beraldo Leal
2022-01-12 17:35     ` John Snow
2022-01-10 23:28 ` [PATCH v3 15/31] python: move qmp utilities to python/qemu/utils John Snow
2022-01-12 13:55   ` Beraldo Leal
2022-01-10 23:28 ` [PATCH v3 16/31] python: move qmp-shell under the AQMP package John Snow
2022-01-12 13:46   ` Beraldo Leal
2022-01-10 23:28 ` [PATCH v3 17/31] python/machine: permanently switch to AQMP John Snow
2022-01-10 23:28 ` [PATCH v3 18/31] scripts/cpu-x86-uarch-abi: fix CLI parsing John Snow
2022-01-10 23:28 ` [PATCH v3 19/31] scripts/cpu-x86-uarch-abi: switch to AQMP John Snow
2022-01-10 23:28 ` [PATCH v3 20/31] scripts/render-block-graph: " John Snow
2022-01-10 23:29 ` [PATCH v3 21/31] scripts/bench-block-job: " John Snow
2022-01-10 23:29 ` [PATCH v3 22/31] iotests/mirror-top-perms: " John Snow
2022-01-10 23:29 ` [PATCH v3 23/31] iotests: " John Snow
2022-01-14 19:12   ` Eric Blake
2022-01-17 19:32     ` John Snow
2022-01-10 23:29 ` [PATCH v3 24/31] python: temporarily silence pylint duplicate-code warnings John Snow
2022-01-10 23:29 ` [PATCH v3 25/31] python/aqmp: take QMPBadPortError and parse_address from qemu.qmp John Snow
2022-01-10 23:29 ` [PATCH v3 26/31] python/aqmp: fully separate from qmp.QEMUMonitorProtocol John Snow
2022-01-10 23:29 ` [PATCH v3 27/31] python/aqmp: copy qmp docstrings to qemu.aqmp.legacy John Snow
2022-01-10 23:29 ` [PATCH v3 28/31] python: remove the old QMP package John Snow
2022-01-10 23:29 ` [PATCH v3 29/31] python: re-enable pylint duplicate-code warnings John Snow
2022-01-10 23:29 ` [PATCH v3 30/31] python: rename qemu.aqmp to qemu.qmp John Snow
2022-01-12 14:21   ` Beraldo Leal
2022-01-10 23:29 ` [PATCH v3 31/31] python: rename 'aqmp-tui' to 'qmp-tui' John Snow
2022-01-12 14:00   ` Beraldo Leal
2022-01-10 23:33 ` [PATCH v3 00/31] Python: delete synchronous qemu.qmp package John Snow
2022-01-12 19:51   ` John Snow
2022-01-21  0:17 ` John Snow

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.