[bitbake-devel] [RFC PATCH 0/1] Don't use set() for datastore variables

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Tue Sep 13 12:55:46 UTC 2011


On Mon, Sep 12, 2011 at 01:42:51PM -0700, Joshua Lock wrote:
>On Wed, 2011-09-07 at 14:27 -0700, Joshua Lock wrote:
>> This is an RFC patch.
>> 
>> I recently implemented a check within the hob gui to ensure that it's running with the
>> required pre and post configuration files. However this check uses a variable from the data
>> store which is a Python set container.
>> 
>> The Python xmlrpclib is unable to marshal sets and therefore the patch I added breaks hob
>> when using the xmlrpc server backend.
>
>"Why can't xmlrpclib marshal a set?" - I pretend to hear you ask.
>xmlrpclib will only marshal objects with a type which can be serialized
>to XML. A set has no direct XML equivalent, so the marshalling fails.
>
>As alluded to in my original mail, we could approach this in alternative
>ways. The most obvious being to add an extra step to serialise the set,
>or any other passed objects, to some more appropriate form. We already
>use the pickle module in various places and this is an obvious contender
>here, however I'm not clear on how we would introduce this *just* for
>the xmlrpc server.
>
>Would profiling data make this change more palatable? If so what sort of
>profiling would people like to see?

Are you talking about f7c69462b8ba726861898817cc5b13174c78e35a ?

If you want to revert it then you may of course do so.
Without knowing that rpc thing, may i suggest you teach it to deal with
sets or, short of that, just handle them as list on the transport layer?

regards,




More information about the bitbake-devel mailing list