qemu-block
[Top][All Lists]
Advanced

[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: Wed, 12 Jan 2022 14:51:21 -0500

Hi Hanna, Kevin:

I think this series is pretty close, it's mostly reviewed by Vladimir
and Beraldo. Only patches 22 and 23 touch iotests, and quite
minimally. Everything appears to test fine on my end, but I don't
wanna sneak any changes past you without an ACK.

(OK, admittedly, patch 22 is a touch hacky, and I think I will spend
some time today improving it, but I think it will be a follow-up, if
that's okay.)

Thanks,
--js

On Mon, Jan 10, 2022 at 6:33 PM John Snow <jsnow@redhat.com> wrote:
>
>
>
> 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)
>
>
> Sorry, I goofed. This series accidentally re-includes these patches. You can 
> ignore the first four patches, or apply directly on top of origin/master. 
> Sorry for the inconvenience.
>
> --js
>
>>
>> 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
>>
>>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]