On Tue, Jul 03, 2018 at 08:14:35AM +0200, Markus Armbruster wrote: > 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.
I'm fine with this - I agree that it is more important to avoid creating a regression, than to enforce "id" for OOB. We've still documented that OOB will require "id", so it would not be a surprise once we enforce it later. Reviewed-by: Daniel P. Berrangé <berra...@redhat.com> Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|