From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NLhjF-0008OS-3b for qemu-devel@nongnu.org; Fri, 18 Dec 2009 13:39:05 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NLhjA-0008IV-GG for qemu-devel@nongnu.org; Fri, 18 Dec 2009 13:39:04 -0500 Received: from [199.232.76.173] (port=43050 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NLhjA-0008II-CI for qemu-devel@nongnu.org; Fri, 18 Dec 2009 13:39:00 -0500 Received: from mx1.redhat.com ([209.132.183.28]:45380) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NLhj9-0000II-V2 for qemu-devel@nongnu.org; Fri, 18 Dec 2009 13:39:00 -0500 From: Markus Armbruster Subject: Re: [Qemu-devel] [PATCH 5/7] QMP: Update spec file References: <1261149905-7622-1-git-send-email-lcapitulino@redhat.com> <1261149905-7622-6-git-send-email-lcapitulino@redhat.com> <20091218155544.2e2c671b@doriath> Date: Fri, 18 Dec 2009 19:38:56 +0100 In-Reply-To: <20091218155544.2e2c671b@doriath> (Luiz Capitulino's message of "Fri, 18 Dec 2009 15:55:44 -0200") Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Luiz Capitulino Cc: aliguori@us.ibm.com, qemu-devel@nongnu.org Luiz Capitulino writes: > On Fri, 18 Dec 2009 18:20:52 +0100 > Markus Armbruster wrote: > >> Luiz Capitulino writes: >> >> [...] >> > -4. Notes to Client implementors >> > -------------------------------- >> > +4. Compatibility Considerations >> > +-------------------------------- >> > >> > -4.1 It is recommended to always start the Server in pause mode, thus the >> > - Client is able to perform any setup procedure without the risk of >> > - race conditions and related problems >> > +In order to achieve maximum compatibility between versions, the following >> > +changes are forbidden in newer versions of the Server: >> > >> > -4.2 It is recommended to always check the capabilities json-array, issued >> > - with the greeting message, at connection time >> > +- Removal of commands >> > +- Removal of command arguments >> > +- Addition of extra mandatory arguments for commands >> > +- Modification of arguments types >> > +- Modification of arguments, commands, events or error names >> > +- Modification of arguments in replies, events or errors >> >> While I think these promises are appropriate for a mature version of the >> protocol, I do not think we should make them for 0.12. >> >> We've just dreamed up version 0.1 of the protocol. It hasn't been used >> in anger. Yes, we put some serious thought in it, and we even have >> prototype code using it in libvirt, but let's face it, we're not >> infallible: we *will* have to evolve stuff. > > While I agree with your arguments, I think this will happen to any > QMP version or any stable protocol/API. > > You have the point that QMP is immature at this point, but: > > 1. Given the current Monitor design, if you want QMP to be perfect to be > useful then we're going to have it around QEMU version 10.0 No human creation will ever be perfect. > 2. I don't think we're going to get any serious user until we > declare it stable You're quite right about that. But right now QMP doesn't cover enough ground for serious use anyway. Once it does, we'll soon be compelled to declare it stable, and live with the consequences.