Peter Xu <pet...@redhat.com> writes: > On Mon, Jul 02, 2018 at 06:21:53PM +0200, Markus Armbruster wrote: >> Commit cf869d53172 "qmp: support out-of-band (oob) execution" made >> "id" mandatory for all commands when the client accepted capability >> "oob". This is rather onerous when you play with QMP by hand, and >> unnecessarily so: only out-of-band commands need an ID for reliable >> matching of response to command. >> >> Revert that part of commit cf869d53172 for now. We may still make >> "id" mandatory for out-of-band commands. > > This change should be okay with current implementation when > out-of-band commands are still in order themselves, though I'm still > not that confident on whether we really want this change if only for > the sake of easier usage for human beings. > > If we see Libvirt, the real player for QMP - it has the "id" field > even for in-band commands always. I'd say the "id" field is really > helpful for machines, though not that friendly to us. > > Basically I'll read it as: machines like "id"s, humans hate "id"s. > And QMP is Qemu Machine Protocol after all... so not sure whether > it'll be good we change that for us humans.
"id" being optional doesn't hurt libvirt in any way. Thus, I see no need to inconvenience humans. Daniel has argued[*] for making "id" mandatory with OOB commands. I'm not rejecting that argument. But I needed to get this out in a hurry, and simply reverting something is quicker than debating and implementing an improvement. There's still time to tweak this before the release. [*] Message-ID: <20180628120044.gf3...@redhat.com> https://lists.gnu.org/archive/html/qemu-devel/2018-06/msg08322.html