mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-01 06:43:53 -06:00
docs/qapi-domain: warn when QAPI domain xrefs fail to resolve
This patch adds a warning (which is a build failure under our current build settings) whenever a QAPI cross-reference fails to resolve. This applies to any cross-references of the form :qapi:{role}:`foo`, which covers all of the automatically generated references by the qapi domain, and any such references that are manually written into the documentation rst files. Cross-references of the form `foo` do not use this system, but are already configured to issue a warning (Again, a build failure) if the cross-reference isn't found anywhere. Adds warnings that look like the following: docs/qapi/index.rst:48: WARNING: qapi:type reference target not found: 'footype' [ref.qapi] docs/qapi/index.rst:50: WARNING: qapi:mod reference target not found: 'foomod' [ref.qapi] Signed-off-by: John Snow <jsnow@redhat.com> Message-ID: <20250311034303.75779-31-jsnow@redhat.com> Acked-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com>
This commit is contained in:
parent
a1fe2cd443
commit
d48a8f8de3
1 changed files with 23 additions and 0 deletions
|
@ -830,6 +830,29 @@ class QAPIDomain(Domain):
|
||||||
matches = self.find_obj(modname, target, typ)
|
matches = self.find_obj(modname, target, typ)
|
||||||
|
|
||||||
if not matches:
|
if not matches:
|
||||||
|
# Normally, we could pass warn_dangling=True to QAPIXRefRole(),
|
||||||
|
# but that will trigger on references to these built-in types,
|
||||||
|
# which we'd like to ignore instead.
|
||||||
|
|
||||||
|
# Take care of that warning here instead, so long as the
|
||||||
|
# reference isn't to one of our built-in core types.
|
||||||
|
if target not in (
|
||||||
|
"string",
|
||||||
|
"number",
|
||||||
|
"int",
|
||||||
|
"boolean",
|
||||||
|
"null",
|
||||||
|
"value",
|
||||||
|
"q_empty",
|
||||||
|
):
|
||||||
|
logger.warning(
|
||||||
|
__("qapi:%s reference target not found: %r"),
|
||||||
|
typ,
|
||||||
|
target,
|
||||||
|
type="ref",
|
||||||
|
subtype="qapi",
|
||||||
|
location=node,
|
||||||
|
)
|
||||||
return None
|
return None
|
||||||
|
|
||||||
if len(matches) > 1:
|
if len(matches) > 1:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue