From: John Snow <jsnow@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Mads Ynddal" <mads@ynddal.dk>, "Jiri Pirko" <jiri@resnulli.us>,
"Stefan Hajnoczi" <stefanha@redhat.com>,
"Eric Blake" <eblake@redhat.com>,
"Peter Maydell" <peter.maydell@linaro.org>,
"Michael Roth" <michael.roth@amd.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Alex Williamson" <alex.williamson@redhat.com>,
"Pavel Dovgalyuk" <pavel.dovgaluk@ispras.ru>,
"Victor Toso de Carvalho" <victortoso@redhat.com>,
"Cédric Le Goater" <clg@redhat.com>,
"Daniel P. Berrangé" <berrange@redhat.com>,
qemu-block@nongnu.org, "Ani Sinha" <anisinha@redhat.com>,
"Fabiano Rosas" <farosas@suse.de>,
"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
"Marc-André Lureau" <marcandre.lureau@redhat.com>,
"Gerd Hoffmann" <kraxel@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Kevin Wolf" <kwolf@redhat.com>, "Peter Xu" <peterx@redhat.com>,
"Eduardo Habkost" <eduardo@habkost.net>,
"Markus Armbruster" <armbru@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Lukas Straub" <lukasstraub2@web.de>,
"Igor Mammedov" <imammedo@redhat.com>,
"Jason Wang" <jasowang@redhat.com>,
"Yanan Wang" <wangyanan55@huawei.com>,
"Hanna Reitz" <hreitz@redhat.com>,
"Konstantin Kostiuk" <kkostiuk@redhat.com>,
"Stefan Berger" <stefanb@linux.vnet.ibm.com>,
"John Snow" <jsnow@redhat.com>
Subject: [PATCH v2 00/21] qapi: convert "Note" and "Example" sections to rST
Date: Wed, 26 Jun 2024 18:21:06 -0400 [thread overview]
Message-ID: <20240626222128.406106-1-jsnow@redhat.com> (raw)
This series focuses primarily on converting our existing QAPI/QMP
documentation to remove special "Note" and "Example" sections in favor
of rST markup for the same.
This is being done primarily to reduce the number of specially parsed
QAPI sections we have in favor of allowing fully arbitrary rST markup
for greater flexibility and freedom in styling the rendered HTML
documentation.
(A tangible side benefit is that the new qapidoc generator has fewer
sections to reason about when it splices inherited documentation
together for the QMP reference manual; docs largely preserve the order
of documentation "as written" instead of needing to splice multiple
separate sections together. A goal of the new generator is to eventually
remove all tagged sections except for "members" and "features".)
V2:
- Lotsa stuff :{
- Added new example box styling and sphinx directive macro
- Addressed... most? list feedback. (But not the indent split.)
Known issues:
- The Example boxes are styled a little wonkily if prose follows the
code-block instead of precedes it, fixup will be tomorrow.
--js
Harmonie Snow (1):
docs/sphinx: add CSS styling for qmp-example directive
John Snow (20):
[DO-NOT-MERGE]: Add some ad-hoc linting helpers.
qapi: linter fixups
docs/qapidoc: remove unused intersperse function
docs/qapidoc: delint a tiny portion of the module
qapi/parser: preserve indentation in QAPIDoc sections
qapi/parser: fix comment parsing immediately following a doc block
docs/qapidoc: fix nested parsing under untagged sections
qapi: fix non-compliant JSON examples
qapi: nail down convention that Errors sections are lists
qapi: convert "Note" sections to plain rST
qapi: update prose in note blocks
qapi: add markup to note blocks
qapi/parser: don't parse rST markup as section headers
docs/qapidoc: factor out do_parse()
docs/qapidoc: create qmp-example directive
docs/qapidoc: add QMP highlighting to annotated qmp-example blocks
qapi: convert "Example" sections without titles
qapi: convert "Example" sections with titles
qapi: convert "Example" sections with longer prose
qapi: remove "Example" doc section
docs/devel/qapi-code-gen.rst | 25 +-
docs/sphinx-static/theme_overrides.css | 46 ++++
docs/sphinx/qapidoc.py | 258 +++++++++++++-----
qapi/acpi.json | 4 +-
qapi/block-core.json | 116 ++++----
qapi/block.json | 59 ++--
qapi/char.json | 36 ++-
qapi/control.json | 28 +-
qapi/dump.json | 10 +-
qapi/introspect.json | 6 +-
qapi/machine-target.json | 28 +-
qapi/machine.json | 117 ++++----
qapi/migration.json | 104 +++----
qapi/misc-target.json | 22 +-
qapi/misc.json | 123 +++++----
qapi/net.json | 32 ++-
qapi/pci.json | 10 +-
qapi/qdev.json | 40 +--
qapi/qom.json | 33 ++-
qapi/replay.json | 8 +-
qapi/rocker.json | 26 +-
qapi/run-state.json | 48 ++--
qapi/sockets.json | 10 +-
qapi/stats.json | 22 +-
qapi/tpm.json | 6 +-
qapi/trace.json | 4 +-
qapi/transaction.json | 12 +-
qapi/ui.json | 76 +++---
qapi/vfio.json | 2 +-
qapi/virtio.json | 57 ++--
qapi/yank.json | 4 +-
qga/qapi-schema.json | 48 ++--
scripts/qapi-lint.sh | 61 +++++
scripts/qapi/Makefile | 5 +
scripts/qapi/introspect.py | 8 +-
scripts/qapi/parser.py | 38 ++-
scripts/qapi/schema.py | 6 +-
scripts/qapi/visit.py | 5 +-
tests/qapi-schema/doc-empty-section.err | 2 +-
tests/qapi-schema/doc-empty-section.json | 2 +-
tests/qapi-schema/doc-good.json | 28 +-
tests/qapi-schema/doc-good.out | 61 +++--
tests/qapi-schema/doc-good.txt | 36 ++-
.../qapi-schema/doc-interleaved-section.json | 2 +-
44 files changed, 1010 insertions(+), 664 deletions(-)
create mode 100755 scripts/qapi-lint.sh
create mode 100644 scripts/qapi/Makefile
--
2.45.0
next reply other threads:[~2024-06-26 22:25 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-26 22:21 John Snow [this message]
2024-06-26 22:21 ` [PATCH v2 01/21] [DO-NOT-MERGE]: Add some ad-hoc linting helpers John Snow
2024-06-26 22:21 ` [PATCH v2 02/21] qapi: linter fixups John Snow
2024-06-26 22:21 ` [PATCH v2 03/21] docs/qapidoc: remove unused intersperse function John Snow
2024-06-27 6:02 ` Markus Armbruster
2024-06-27 6:12 ` John Snow
2024-06-27 10:46 ` Markus Armbruster
2024-06-27 10:43 ` Markus Armbruster
2024-06-26 22:21 ` [PATCH v2 04/21] docs/qapidoc: delint a tiny portion of the module John Snow
2024-06-28 7:29 ` Markus Armbruster
2024-06-28 14:36 ` John Snow
2024-06-26 22:21 ` [PATCH v2 05/21] qapi/parser: preserve indentation in QAPIDoc sections John Snow
2024-06-27 6:25 ` Markus Armbruster
2024-06-27 6:35 ` John Snow
2024-06-27 10:46 ` Markus Armbruster
2024-06-27 10:43 ` Markus Armbruster
2024-06-26 22:21 ` [PATCH v2 06/21] qapi/parser: fix comment parsing immediately following a doc block John Snow
2024-06-26 22:21 ` [PATCH v2 07/21] docs/qapidoc: fix nested parsing under untagged sections John Snow
2024-06-28 7:54 ` Markus Armbruster
2024-06-28 15:10 ` John Snow
2024-06-28 15:28 ` John Snow
2024-07-01 9:11 ` Markus Armbruster
2024-06-26 22:21 ` [PATCH v2 08/21] qapi: fix non-compliant JSON examples John Snow
2024-06-26 22:21 ` [PATCH v2 09/21] qapi: nail down convention that Errors sections are lists John Snow
2024-06-26 22:21 ` [PATCH v2 10/21] qapi: convert "Note" sections to plain rST John Snow
2024-06-28 9:51 ` Markus Armbruster
2024-06-28 15:44 ` John Snow
2024-07-01 15:08 ` Markus Armbruster
2024-06-26 22:21 ` [PATCH v2 11/21] qapi: update prose in note blocks John Snow
2024-06-26 22:21 ` [PATCH v2 12/21] qapi: add markup to " John Snow
2024-06-26 22:21 ` [PATCH v2 13/21] qapi/parser: don't parse rST markup as section headers John Snow
2024-06-27 7:47 ` Markus Armbruster
2024-06-26 22:21 ` [PATCH v2 14/21] docs/qapidoc: factor out do_parse() John Snow
2024-06-28 13:08 ` Markus Armbruster
2024-06-28 15:16 ` John Snow
2024-06-26 22:21 ` [PATCH v2 15/21] docs/qapidoc: create qmp-example directive John Snow
2024-06-28 13:24 ` Markus Armbruster
2024-06-28 15:24 ` John Snow
2024-06-26 22:21 ` [PATCH v2 16/21] docs/qapidoc: add QMP highlighting to annotated qmp-example blocks John Snow
2024-06-26 22:21 ` [PATCH v2 17/21] docs/sphinx: add CSS styling for qmp-example directive John Snow
2024-06-26 22:21 ` [PATCH v2 18/21] qapi: convert "Example" sections without titles John Snow
2024-06-26 22:21 ` [PATCH v2 19/21] qapi: convert "Example" sections with titles John Snow
2024-06-26 22:21 ` [PATCH v2 20/21] qapi: convert "Example" sections with longer prose John Snow
2024-06-26 22:21 ` [PATCH v2 21/21] qapi: remove "Example" doc section 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=20240626222128.406106-1-jsnow@redhat.com \
--to=jsnow@redhat.com \
--cc=alex.williamson@redhat.com \
--cc=anisinha@redhat.com \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=clg@redhat.com \
--cc=eblake@redhat.com \
--cc=eduardo@habkost.net \
--cc=farosas@suse.de \
--cc=hreitz@redhat.com \
--cc=imammedo@redhat.com \
--cc=jasowang@redhat.com \
--cc=jiri@resnulli.us \
--cc=kkostiuk@redhat.com \
--cc=kraxel@redhat.com \
--cc=kwolf@redhat.com \
--cc=lukasstraub2@web.de \
--cc=mads@ynddal.dk \
--cc=marcandre.lureau@redhat.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=michael.roth@amd.com \
--cc=mst@redhat.com \
--cc=pavel.dovgaluk@ispras.ru \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=peterx@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanb@linux.vnet.ibm.com \
--cc=stefanha@redhat.com \
--cc=victortoso@redhat.com \
--cc=wangyanan55@huawei.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).