Jamie Lokier wrote: > Paolo Bonzini wrote: > > On 10/15/2009 09:08 PM, Luiz Capitulino wrote: > > >{ "error": { "code": 12 > > > "desc": "device already open", > > > "data": { "bus": 0, "address": 12 } } } > > > > > > Note that this also can be reused by any bus, as the "data" information > > >is built at error time and can contain anything. > > > > The "desc" is not even necessary on the wire. > > When you send an error code that that client doesn't know yet (because > you can't update every client immediately), it'll be very helpful to > users to see "device already open" instead of "unknown error 12".
About that technique in general. It works much better when the client and server are managed together, for example as a single project, or by the same people working on both. Then you can keep the client's set of error codes in sync with the server in every version. But that's not possible when there are umpteen clients maintained by other people on their own schedule, each used by users who may combine them with newer servers. Which I gather is something that the new monitor protocol is intended to support. -- Jamie