From: John Snow Date: Tue, 11 Mar 2025 03:42:12 +0000 (-0400) Subject: docs/qapi-domain: add :since: directive option X-Git-Tag: v10.0.0-rc0~11^2~49 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=700d51a45c614068393f9754d3ef366e2c05a884;p=thirdparty%2Fqemu.git docs/qapi-domain: add :since: directive option Add a little special markup for registering "Since:" information. Adding it as an option instead of generic content lets us hoist the information into the Signature bar, optionally put it in the index, etc. Signed-off-by: John Snow Message-ID: <20250311034303.75779-15-jsnow@redhat.com> Acked-by: Markus Armbruster Signed-off-by: Markus Armbruster --- diff --git a/docs/sphinx/qapi_domain.py b/docs/sphinx/qapi_domain.py index 547040f75a..222b420d2a 100644 --- a/docs/sphinx/qapi_domain.py +++ b/docs/sphinx/qapi_domain.py @@ -214,6 +214,8 @@ class QAPIObject(QAPIDescription): { # Borrowed from the Python domain: "module": directives.unchanged, # Override contextual module name + # These are QAPI originals: + "since": directives.unchanged, } ) @@ -227,7 +229,17 @@ class QAPIObject(QAPIDescription): def get_signature_suffix(self) -> List[nodes.Node]: """Return a suffix to put after the object name in the signature.""" - return [] + ret: List[nodes.Node] = [] + + if "since" in self.options: + ret += [ + SpaceNode(" "), + addnodes.desc_sig_element( + "", f"(Since: {self.options['since']})" + ), + ] + + return ret def handle_signature(self, sig: str, signode: desc_signature) -> Signature: """