From: Eric Blake <eblake@redhat.com>
To: marcandre.lureau@redhat.com, qemu-devel@nongnu.org
Cc: armbru@redhat.com, mdroth@linux.vnet.ibm.com
Subject: Re: [Qemu-devel] [PATCH 06/36] qapi: move documentation bits in schema files
Date: Fri, 25 Sep 2015 09:23:45 -0600 [thread overview]
Message-ID: <56056701.10306@redhat.com> (raw)
In-Reply-To: <1443189844-20341-7-git-send-email-marcandre.lureau@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 3769 bytes --]
On 09/25/2015 08:03 AM, marcandre.lureau@redhat.com wrote:
> From: Marc-André Lureau <marcandre.lureau@redhat.com>
>
> Moving the remaining bits of documentation to the schema files.
>
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
> qapi-schema.json | 48 ++++++++++++++++++++++++++++++++++++++++++-
> qmp-commands.hx | 62 --------------------------------------------------------
> 2 files changed, 47 insertions(+), 63 deletions(-)
>
> diff --git a/qapi-schema.json b/qapi-schema.json
> index 1383011..c8ee75d 100644
> --- a/qapi-schema.json
> +++ b/qapi-schema.json
> @@ -1,6 +1,52 @@
> # -*- Mode: Python -*-
> +##
> +# = Introduction
> +#
> +# This document describes all commands currently supported by QMP.
> +#
> +# Most of the time their usage is exactly the same as in the user Monitor, this
> +# means that any other document which also describe commands (the manpage,
> +# QEMU's manual, etc) can and should be consulted.
> +#
> +# QMP has two types of commands: regular and query commands. Regular commands
> +# usually change the Virtual Machine's state someway, while query commands just
> +# return information. The sections below are divided accordingly.
Do we really still have that clean division?
> +#
> +# It's important to observe that all communication examples are formatted in
> +# a reader-friendly way, so that they're easier to understand. However, in real
> +# protocol usage, they're emitted as a single line.
The server replies in a single line, but the client is free to send in
multiple lines.
> +#
> +# Also, the following notation is used to denote data flow:
> +#
> +# Example:
> +#
> +# | -> data issued by the Client
> +# | <- Server data response
> +#
> +# Please, refer to the QMP specification (QMP/qmp-spec.txt) for detailed
> +# information on the Server command and response formats.
Stale comment, pointing to the wrong file name (commit 7537fe04 moved it
from QMP/ to docs/qmp/) (and Markus has a patch pending that moves it
from docs/qmp/qmp-spec.txt to docs/qmp-spec.txt).
> +#
> +# = Stability Considerations
> +#
> +# The current QMP command set (described in this file) may be useful for a
> +# number of use cases, however it's limited and several commands have bad
> +# defined semantics, specially with regard to command completion.
> +#
> +# These problems are going to be solved incrementally in the next QEMU releases
> +# and we're going to establish a deprecation policy for badly defined commands.
Wow - some of this stuff has bit-rotted over time. I don't know how much
command completion we support for QMP (I guess it depends whether you
are using qmp-shell or a straight monitor connection), and while we do
still have badly defined commands, they are now the exception and we
have made a lot of progress in fixing things.
> +#
> +# If you're planning to adopt QMP, please observe the following:
> +#
> +# 1. The deprecation policy will take effect and be documented soon, please
> +# check the documentation of each used command as soon as a new release of
> +# QEMU is available
Umm, we still don't have a documented deprecation policy.
> +#
> +# 2. DO NOT rely on anything which is not explicit documented
s/explicit/explicitly/
> +#
> +# 3. Errors, in special, are not documented. Applications should NOT check
> +# for specific errors classes or data (it's strongly recommended to only
> +# check for the "error" key)
> #
> -# QAPI Schema
>
> # QAPI common definitions
> { 'include': 'qapi/common.json' }
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 604 bytes --]
next prev parent reply other threads:[~2015-09-25 15:23 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-25 14:03 [Qemu-devel] [PATCH 00/36] post-Eric's fixes, QAPI improvements marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 01/36] qapi: add comment block before ChardevDummy marcandre.lureau
2015-09-25 15:03 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 02/36] qapi: add missing @ marcandre.lureau
2015-09-25 15:03 ` Eric Blake
2015-10-03 16:57 ` Michael Tokarev
2015-09-25 14:03 ` [Qemu-devel] [PATCH 03/36] qapi: add some line spacing to help doc parser marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 04/36] monitor: use qapi for qmp_capabilities command marcandre.lureau
2015-09-25 15:09 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 05/36] qapi: move examples to json schema marcandre.lureau
2015-09-25 15:16 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 06/36] qapi: move documentation bits in schema files marcandre.lureau
2015-09-25 15:23 ` Eric Blake [this message]
2015-09-25 15:29 ` Marc-André Lureau
2015-09-25 15:35 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 07/36] qapi: add some headings in docs marcandre.lureau
2015-09-25 15:26 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 08/36] qapi: add qapi2texi script marcandre.lureau
2015-09-25 15:34 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 09/36] qapi: remove qmp-events.txt marcandre.lureau
2015-09-25 15:40 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 10/36] texi2pod: learn quotation, deftp and deftypefn marcandre.lureau
2015-09-25 15:44 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 11/36] build-sys: generate QAPI doc based on json marcandre.lureau
2015-09-25 15:49 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 12/36] build-sys: generate qmp-commands.txt marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 13/36] build-sys: do not generate qmp-commands-old.h marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 14/36] monitor: remove usage of generated marshal functions marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 15/36] monitor: register gen:false commands manually marcandre.lureau
2015-09-25 15:56 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 16/36] qmp: register qapi commands (no middle mode) marcandre.lureau
2015-09-25 16:01 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 17/36] qmp: use qmp_dispatch() marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 18/36] qapi: remove "middle" mode marcandre.lureau
2015-09-25 16:03 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 19/36] qmp: implement qmp_query_commands without qmp_cmds marcandre.lureau
2015-09-25 16:06 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 20/36] qmp: remove old qmp-commands table marcandre.lureau
2015-09-25 16:08 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 21/36] misc: spelling marcandre.lureau
2015-09-25 16:08 ` Eric Blake
2015-10-03 16:55 ` Michael Tokarev
2015-10-05 5:09 ` Markus Armbruster
2015-10-05 7:32 ` Michael Tokarev
2015-10-05 17:05 ` Markus Armbruster
2015-09-25 14:03 ` [Qemu-devel] [PATCH 22/36] qmp: teach qmp_dispatch() to take a pre-filled QDict marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 23/36] qmp: use a return callback for the command reply marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 24/36] qmp: add QmpClient marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 25/36] qmp: introduce async command type marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 26/36] qmp: check that async command have an 'id' marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 27/36] scripts: learn 'async' qapi commands marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 28/36] scripts: ensure -async commands are declared async marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 29/36] qapi: take 'id' from request marcandre.lureau
2015-09-25 14:03 ` [Qemu-devel] [PATCH 30/36] tests: change /0.15/* tests to /qmp/* marcandre.lureau
2015-09-25 16:10 ` Eric Blake
2015-09-25 14:03 ` [Qemu-devel] [PATCH 31/36] tests: add /qmp/dispatch_cmd_async test marcandre.lureau
2015-09-25 14:04 ` [Qemu-devel] [PATCH 32/36] qmp: update qmp-spec about async capability marcandre.lureau
2015-09-25 14:04 ` [Qemu-devel] [PATCH 33/36] monitor: add 'async' capability marcandre.lureau
2015-09-25 14:04 ` [Qemu-devel] [PATCH 34/36] console: graphic_hw_update return true if async marcandre.lureau
2015-09-25 14:04 ` [Qemu-devel] [PATCH 35/36] console: add graphic_hw_update_done() marcandre.lureau
2015-09-25 14:04 ` [Qemu-devel] [PATCH 36/36] console: add screendump-async marcandre.lureau
2015-09-25 15:58 ` [Qemu-devel] [PATCH 00/36] post-Eric's fixes, QAPI improvements Eric Blake
2015-09-25 16:01 ` Marc-André Lureau
2015-09-25 16:21 ` Markus Armbruster
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=56056701.10306@redhat.com \
--to=eblake@redhat.com \
--cc=armbru@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=mdroth@linux.vnet.ibm.com \
--cc=qemu-devel@nongnu.org \
/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).