Peter Xu <[email protected]> writes: > On Sat, Sep 12, 2026 at 06:53:50AM +0200, Markus Armbruster wrote: >> @local is unstable in MigrationParameters, but not in >> MigrationParameter. Fix the latter. >> >> Fixes: c9affb8e9b (qapi: add local migration parameter) >> Signed-off-by: Markus Armbruster <[email protected]> > > Reviewed-by: Peter Xu <[email protected]> > > To avoid this in the future, can we further simplify MigrationParameter in > qapi/? E.g. either dropping the @unstable completely (by mentioning in its > doc to reference MigrationParameters),
Or mark the entire MigrationParameter unstable. > doc to reference MigrationParameters), or I also wonder if there is way we > can completely avoid some struct to be visible in doc, so we can drop it; > currently MigrationParameter still shows all fields "Not Documented". The entire QAPI schema goes into the "QEMU QMP Reference Manual". Even types that aren't used in QMP, which is undesirable. We have code to find the types used in QMP. query-qmp-schema uses it. We never got around to use it in the doc generator, too. However, Marc-André's work to improve QOM introspection complicates matters. It exposes QAPI types in QOM introspection. Types so exposed are then part of the external interface, but that's not captured in the QAPI schema, only in QOM property definitions. We're probably going to dumb down query-qmp-schema to cover all types, like the reference manual. We could create means to mark types "internal use only", and relax documentation requirements for them. Of course we better enforce these are not exposed externally, neither in QMP nor in QOM. This would let us neglect marking types "internal use only". If we don't want that, we could instead require "used by QOM" marks for QOM use, and treat any type not so marked and also not used by QMP as internal.
