qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: John Snow <jsnow@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Michael Roth" <michael.roth@amd.com>,
	"Thomas Huth" <thuth@redhat.com>,
	"Peter Maydell" <peter.maydell@linaro.org>,
	"Markus Armbruster" <armbru@redhat.com>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Cleber Rosa" <crosa@redhat.com>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"John Snow" <jsnow@redhat.com>,
	"Daniel P. Berrangé" <berrange@redhat.com>
Subject: [PATCH 05/10] qapi/parser: adjust info location for doc body section
Date: Sun, 23 Feb 2025 22:37:36 -0500	[thread overview]
Message-ID: <20250224033741.222749-6-jsnow@redhat.com> (raw)
In-Reply-To: <20250224033741.222749-1-jsnow@redhat.com>

Instead of using the info object for the doc block as a whole (which
always points to the very first line of the block), update the info
pointer for each call to ensure_untagged_section when the existing
section is otherwise empty. This way, Sphinx error information will
match precisely to where the text actually starts.

For example, this patch will move the info pointer for the "Hello!"
untagged section ...

> ##       <-- from here ...
> # Hello! <-- ... to here.
> ##

Signed-off-by: John Snow <jsnow@redhat.com>
---
 scripts/qapi/parser.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/scripts/qapi/parser.py b/scripts/qapi/parser.py
index adc85b5b394..36cb64a677a 100644
--- a/scripts/qapi/parser.py
+++ b/scripts/qapi/parser.py
@@ -687,7 +687,11 @@ def end(self) -> None:
     def ensure_untagged_section(self, info: QAPISourceInfo) -> None:
         if self.all_sections and not self.all_sections[-1].tag:
             # extend current section
-            self.all_sections[-1].text += '\n'
+            section = self.all_sections[-1]
+            if not section.text:
+                # Section is empty so far; update info to start *here*.
+                section.info = info
+            section.text += '\n'
             return
         # start new section
         section = self.Section(info)
-- 
2.48.1



  parent reply	other threads:[~2025-02-24  3:38 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-24  3:37 [PATCH 00/10] qapi: misc testing and doc patches John Snow
2025-02-24  3:37 ` [PATCH 01/10] qapi: update pylintrc config John Snow
2025-02-26  9:19   ` Markus Armbruster
2025-02-24  3:37 ` [PATCH 02/10] python: add qapi static analysis tests John Snow
2025-02-24 12:36   ` Markus Armbruster
2025-02-24 15:07     ` John Snow
2025-02-26  9:29       ` Markus Armbruster
2025-02-26 15:12         ` John Snow
2025-02-24  3:37 ` [PATCH 03/10] qapi: delete un-needed python static analysis configs John Snow
2025-02-24 12:43   ` Markus Armbruster
2025-02-26  7:23     ` Markus Armbruster
2025-02-26  7:27   ` Markus Armbruster
2025-02-26 15:05     ` John Snow
2025-02-27  7:05       ` Markus Armbruster
2025-02-24  3:37 ` [PATCH 04/10] docs/qapidoc: support header-less freeform sections John Snow
2025-02-24 12:45   ` Markus Armbruster
2025-02-26  9:36     ` Markus Armbruster
2025-02-26 15:28       ` John Snow
2025-02-24  3:37 ` John Snow [this message]
2025-02-25  8:15   ` [PATCH 05/10] qapi/parser: adjust info location for doc body section Markus Armbruster
2025-02-24  3:37 ` [PATCH 06/10] docs/qapidoc: remove example section support John Snow
2025-02-26  9:38   ` Markus Armbruster
2025-02-24  3:37 ` [PATCH 07/10] qapi: expand tags to all doc sections John Snow
2025-02-28 12:37   ` Markus Armbruster
2025-02-24  3:37 ` [PATCH 08/10] qapi/schema: add __repr__ to QAPIDoc.Section John Snow
2025-02-24  3:37 ` [PATCH 09/10] qapi/source: allow multi-line QAPISourceInfo advancing John Snow
2025-02-24  3:37 ` [PATCH 10/10] docs: disambiguate cross-references John Snow
2025-02-26 10:09 ` [PATCH 00/10] qapi: misc testing and doc patches 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=20250224033741.222749-6-jsnow@redhat.com \
    --to=jsnow@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=crosa@redhat.com \
    --cc=michael.roth@amd.com \
    --cc=peter.maydell@linaro.org \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=thuth@redhat.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).