[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 00/31] Python: delete synchronous qemu.qmp package
From: |
John Snow |
Subject: |
Re: [PATCH v3 00/31] Python: delete synchronous qemu.qmp package |
Date: |
Thu, 20 Jan 2022 19:17:46 -0500 |
On Mon, Jan 10, 2022 at 6:29 PM John Snow <jsnow@redhat.com> wrote:
>
> 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.
>
Patches 1-4 were already merged.
I'm staging patches 5-16, and 18-20.
I'm leaving behind patches 17 and 21-23 for further review;
patches 24-31 can be staged separately after 17, 21-23 go ahead.
--js
> 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
>
- [PATCH v3 27/31] python/aqmp: copy qmp docstrings to qemu.aqmp.legacy, (continued)
- [PATCH v3 27/31] python/aqmp: copy qmp docstrings to qemu.aqmp.legacy, John Snow, 2022/01/10
- [PATCH v3 30/31] python: rename qemu.aqmp to qemu.qmp, John Snow, 2022/01/10
- [PATCH v3 29/31] python: re-enable pylint duplicate-code warnings, John Snow, 2022/01/10
- [PATCH v3 26/31] python/aqmp: fully separate from qmp.QEMUMonitorProtocol, John Snow, 2022/01/10
- [PATCH v3 31/31] python: rename 'aqmp-tui' to 'qmp-tui', John Snow, 2022/01/10
- [PATCH v3 28/31] python: remove the old QMP package, John Snow, 2022/01/10
- Re: [PATCH v3 00/31] Python: delete synchronous qemu.qmp package, John Snow, 2022/01/10
- Re: [PATCH v3 00/31] Python: delete synchronous qemu.qmp package,
John Snow <=