mbox series

[RFC,v2,00/35] Add qapi-domain Sphinx extension

Message ID 20241213011307.2942030-1-jsnow@redhat.com (mailing list archive)
Headers show
Series Add qapi-domain Sphinx extension | expand

Message

John Snow Dec. 13, 2024, 1:12 a.m. UTC
This series is still a work in progress, but I am sending it to the list
to serve as a pre-requisite for another series that we need to review
next instead. Please just ignore this one for now!

Thanks!

Harmonie Snow (1):
  docs/qapi-domain: add CSS styling

John Snow (34):
  do-not-merge
  pylint touchups
  docs/sphinx: create QAPI domain extension stub
  docs/sphinx: add compat.py module and nested_parse helper
  docs/qapi-domain: add qapi:module directive
  docs/qapi-domain: add QAPI domain object registry
  docs/qapi-domain: add QAPI index
  docs/qapi-domain: add resolve_any_xref()
  docs/qapi-domain: add QAPI xref roles
  docs/qapi-domain: add compatibility node classes
  docs/qapi-domain: add qapi:command directive
  docs/qapi-domain: add :since: directive option
  docs/qapi-domain: add "Arguments:" field lists
  docs/qapi-domain: add "Features:" field lists
  docs/qapi-domain: add "Errors:" field lists
  docs/qapi-domain: add "Returns:" field lists
  docs/qapi-domain: add returns-nodesc
  docs/qapi-domain: add qapi:enum directive
  docs/qapi-domain: add qapi:alternate directive
  docs/qapi-domain: add qapi:event directive
  docs/qapi-domain: add qapi:struct directive
  docs/qapi-domain: add qapi:union and qapi:branch directives
  docs/qapi-domain: add :deprecated: directive option
  docs/qapi-domain: add :unstable: directive option
  docs/qapi-domain: add :ifcond: directive option
  docs/qapi-domain: add warnings for malformed field lists
  docs/qapi-domain: add type cross-refs to field lists
  docs/qapi-domain: warn when QAPI domain xrefs fail to resolve
  docs/qapi-domain: implement error context reporting fix
  docs/qapi-domain: collapsible branches
  WIP: 3.x - XREF
  WIP: 3.x ParserFix
  WIP: 3.x ObjectDesc compat
  WIP: 3.x css theming for missing xref

 docs/conf.py                           |   19 +-
 docs/sphinx-static/theme_overrides.css |  108 ++-
 docs/sphinx/collapse.py                |  200 ++++
 docs/sphinx/compat.py                  |  198 ++++
 docs/sphinx/qapi-domain.py             | 1156 ++++++++++++++++++++++++
 scripts/qapi-lint.sh                   |   55 ++
 scripts/qapi/pylintrc                  |    1 +
 7 files changed, 1734 insertions(+), 3 deletions(-)
 create mode 100644 docs/sphinx/collapse.py
 create mode 100644 docs/sphinx/compat.py
 create mode 100644 docs/sphinx/qapi-domain.py
 create mode 100755 scripts/qapi-lint.sh