On Tue, Feb 19, 2013 at 03:53:46PM -0500, Saggi Mizrahi wrote:
I'm not sure what's the purpose of having different versions of the client/server on the same machine. The software repository is one and it should provide both (as they're built from the same source). This is the standard way of delivering client/server applications in all the distributions. We can change that but we must have a good reason.
There isn't really a reason. But, as I said, you don't want them to depend on each other or have the schema in it's own rpm. This means that you have to distribute them separately.
I also want to allow to update the client on a host without updating the server. This is because you may want to have a script that works across the cluster but not update all the hosts.
Now, even though you will use only old methods, the schema itself might become unparsable by old implementations.
This should never happen. Right now each "symbol" in the schema is represented by a single OrderedDict and the parsing code just loads the schema file into the a list of these dicts. Once loaded, the vdsmapi module categorizes symbols according to the top-level keys. Unrecognized symbol types are simply skipped.