All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/14] qapi: enforce section ordering
@ 2026-09-28 22:36 John Snow
  2026-09-28 22:36 ` [PATCH 01/14] qapi: rename "plain" sections to "details" John Snow
                   ` (13 more replies)
  0 siblings, 14 replies; 35+ messages in thread
From: John Snow @ 2026-09-28 22:36 UTC (permalink / raw)
  To: qemu-devel
  Cc: Peter Xu, Daniel P. Berrangé, Stefan Berger, Fabiano Rosas,
	Hanna Reitz, Paolo Bonzini, Zhao Liu, Kevin Wolf, Ani Sinha,
	Pierrick Bouvier, Jiri Pirko, Alex Williamson, Markus Armbruster,
	Kashyap Chamarthy, Peter Maydell, Kostiantyn Kostiuk,
	Stefan Hajnoczi, John Snow, Philippe Mathieu-Daudé,
	Michael Roth, Mauro Carvalho Chehab, Vladimir Sementsov-Ogievskiy,
	Marc-André Lureau, qemu-block, Cédric Le Goater,
	Stefano Garzarella, Richard Henderson, Michael S. Tsirkin,
	Igor Mammedov, Jason Wang, Alex Bennée, Eric Blake

howdy,

this series begins enforcing a strict section ordering in the QAPI
parser. This allows us to change how we store sections internally in
QAPIDoc so that we always have well-defined points in any
documentation block where we may insert auto-generated documentation
sections when applicable.

This series is effectively RFC quality; I am aware that we will need
more unit tests for the new negative cases at a minimum.

This is the last series messing around with the QAPIDoc format before
I move on to directly working on the inliner again.

John Snow (14):
  qapi: rename "plain" sections to "details"
  docs/qapi-code-gen: expand each section's syntax into a mini-section
  qapi: re-order QAPI doc block sections
  qapi/parser: enforce doc block section ordering
  qapi: move 'details' sections to the bottom of doc blocks
  qapi/parser: enforce 'details' sections' relative position
  qapi: re-order 'since' sections to always be last
  qapi/parser: enforce strict positioning for "Since:" section
  qapi/parser: remove _insert_after_intro() helper
  qapi/parser: add _append() method
  qapi/parser: privatize "all_sections" field as "_sections"
  qapi/parser: add _active_section private member
  qapi/parser: add new _sections mapping
  qapi/parser: convert single-section properties to getter properties

 docs/devel/qapi-code-gen.rst    | 117 ++++++--
 docs/interop/firmware.json      |  54 ++--
 docs/interop/vhost-user.json    |  29 +-
 docs/sphinx/qapidoc.py          |  15 +-
 qapi/accelerator.json           |  16 +-
 qapi/acpi.json                  |  36 +--
 qapi/block-core.json            | 476 ++++++++++++++++----------------
 qapi/block-export.json          |  38 +--
 qapi/block.json                 | 114 ++++----
 qapi/char.json                  |  36 +--
 qapi/compat.json                |  14 +-
 qapi/control.json               |  12 +-
 qapi/crypto.json                |   4 +-
 qapi/dump.json                  |  16 +-
 qapi/introspect.json            |  14 +-
 qapi/job.json                   |  26 +-
 qapi/machine-s390x.json         |  28 +-
 qapi/machine.json               | 324 +++++++++++-----------
 qapi/migration.json             | 144 +++++-----
 qapi/misc-arm.json              |   4 +-
 qapi/misc-i386.json             |  58 ++--
 qapi/misc.json                  |  84 +++---
 qapi/net.json                   |  64 ++---
 qapi/pci.json                   |   4 +-
 qapi/qdev.json                  |  24 +-
 qapi/qom.json                   |  56 ++--
 qapi/replay.json                |  16 +-
 qapi/rocker.json                |  16 +-
 qapi/run-state.json             |  64 ++---
 qapi/stats.json                 |   6 +-
 qapi/tpm.json                   |  12 +-
 qapi/trace.json                 |   8 +-
 qapi/transaction.json           |  34 +--
 qapi/ui.json                    |  90 +++---
 qapi/vfio.json                  |   4 +-
 qapi/virtio.json                |  46 +--
 qga/qapi-schema.json            |  80 +++---
 scripts/qapi/parser.py          | 232 ++++++++--------
 tests/qapi-schema/doc-good.json |  16 +-
 tests/qapi-schema/doc-good.out  |  34 +--
 tests/qapi-schema/doc-good.txt  |  22 +-
 tests/qapi-schema/test-qapi.py  |   2 +-
 42 files changed, 1274 insertions(+), 1215 deletions(-)

-- 
2.55.0




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

end of thread, other threads:[~2026-10-02  9:44 UTC | newest]

Thread overview: 35+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-28 22:36 [PATCH 00/14] qapi: enforce section ordering John Snow
2026-09-28 22:36 ` [PATCH 01/14] qapi: rename "plain" sections to "details" John Snow
2026-09-29 11:49   ` Markus Armbruster
2026-09-29 14:36     ` John Snow
2026-09-28 22:36 ` [PATCH 02/14] docs/qapi-code-gen: expand each section's syntax into a mini-section John Snow
2026-09-28 22:36 ` [PATCH 03/14] qapi: re-order QAPI doc block sections John Snow
2026-09-29 12:10   ` Markus Armbruster
2026-09-29 14:32     ` John Snow
2026-09-28 22:36 ` [PATCH 04/14] qapi/parser: enforce doc block section ordering John Snow
2026-09-29 12:36   ` Markus Armbruster
2026-09-29 14:31     ` John Snow
2026-09-29 15:00       ` Markus Armbruster
2026-09-28 22:36 ` [PATCH 05/14] qapi: move 'details' sections to the bottom of doc blocks John Snow
2026-10-01 11:14   ` Markus Armbruster
2026-09-28 22:36 ` [PATCH 06/14] qapi/parser: enforce 'details' sections' relative position John Snow
2026-09-28 22:36 ` [PATCH 07/14] qapi: re-order 'since' sections to always be last John Snow
2026-09-28 22:36 ` [PATCH 08/14] qapi/parser: enforce strict positioning for "Since:" section John Snow
2026-09-29 12:53   ` Markus Armbruster
2026-09-29 14:25     ` John Snow
2026-09-29 15:04       ` Markus Armbruster
2026-09-28 22:36 ` [PATCH 09/14] qapi/parser: remove _insert_after_intro() helper John Snow
2026-09-29 13:09   ` Markus Armbruster
2026-09-29 14:19     ` John Snow
2026-09-29 15:08       ` Markus Armbruster
2026-09-28 22:36 ` [PATCH 10/14] qapi/parser: add _append() method John Snow
2026-09-29 13:28   ` Markus Armbruster
2026-09-29 14:14     ` John Snow
2026-09-29 15:09       ` Markus Armbruster
2026-09-28 22:36 ` [PATCH 11/14] qapi/parser: privatize "all_sections" field as "_sections" John Snow
2026-10-02  8:51   ` Markus Armbruster
2026-09-28 22:36 ` [PATCH 12/14] qapi/parser: add _active_section private member John Snow
2026-09-28 22:36 ` [PATCH 13/14] qapi/parser: add new _sections mapping John Snow
2026-10-02  7:24   ` Markus Armbruster
2026-09-28 22:36 ` [PATCH 14/14] qapi/parser: convert single-section properties to getter properties John Snow
2026-10-02  9:44   ` Markus Armbruster

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.