John Snow <js...@redhat.com> writes:

> Hi! This series is based on armbru/pull-qapi-2025-02-26.
>
> This series is a "minimum viable" version of the new QAPI documentation
> system. It does the bare minimum under the new framework, saving nice
> features for later.

Not saved for later: a massive improvement of the generated
documentation's looks and usability.  Moreover, I hope the new generator
will be easier to maintain than the old one, because its inner workings
are closer to how Sphinx expects such things to work.  Fair?

>
> Patches 3-29 implement the qapi_domain extension.
> Patches 30-57 implement the qapidoc "Transmogrifier".
>
> This series is still "RFC" quality, though it's quite nearly actually
> ready for inclusion. The "add transmogrifier test document" patch is not
> intended for actual merge, it's just there to demonstrate the new
> document generator by producing output in docs/manual/qapi/index.html.
>
> Known shortcomings in this series:
>
> - Still no new QAPI unit tests. I'll add those for next go-around.

Not a blocker as far as I'm concerned, because I feel you're unlikely to
run away from this :)

> - No new documentation. Also for next revision. I'll document the QAPI
>   domain syntax and give a brief overview of how the transmogrifier
>   functions, and a quick rundown of any new rST syntax that may be
>   pertinent to QAPI documentation writers.

Likewise.

> - IFCOND information is still rendered in two places, we'll need to
>   decide where and how we want to render it.

I'll have a look, and then we'll talk.

> - No QAPI namespace support ... yet. So we can't enable it for QMP, QGA
>   and QSD simultaneously just yet. I don't think it will be difficult.
>
> Unknown shortcomings in this series:
>
> - ???

I'll try to find some, but I'm not overly optimistic ;)

> New stuff overall from the last iteration of this series:
>
> - @foo is processed into ``foo`
> - "The members of ..." messages have been temporarily re-added until we
>   can smooth over the inliner.
> - This series runs under Sphinx 3.4.3 to Sphinx 8.2.0 inclusive. It
>   truly is a Christmas miracle. (please clap)

*clap* clap* clap*

This is waaaay harder than it has any right to be.

> - This series now fully type checks and lint checks under Sphinx 8.2.0,
>   but may not type check under earlier Sphinx versions. Achieving this
>   alone, nevermind in conjunction with the above, was a literal
>   herculean labor.

scripts/qapi/ remains clean for me.  docs/sphinx/ improves from no type
checking to type checking with a version newer than the one I have on my
development box right now, which I count as an improvement.

> I really must stress again how frustratingly difficult it was to achieve
> the prior two bullet points. I *do* in fact want a cookie and/or an
> award ribbon.

We owe you an entire layer cake, with a marzipan figurine of your
conquering self on top.  Seriously, I could not have done this.


Reply via email to