On Mar 9, 2005, at 9:15 PM, Jasper wrote:
Jasper wrote:
I'm trying to set a python property on a PB client descended from pb.Referenceable, but it seems that properties don't work on old style classes and that Referenceable is descended from Jellyable, an old style class. Moreover, I see this is still true for 2.0.0a2...
Is there any intention of switching to new classes, or should I just hack around this?
Turns out that the simple hack of Client( object, pb.Referenceable ) seems to work. Sorry for the trouble!
You really don't want to do that. Then, if pb.Referenceable ever does become a new-style class (for example because a new version of python gets rid of oldstyle classes, or because twisted is changed), then you'll get an MRO construction error. Always put object last in the inheritance line. E.g.: class Foo: pass class Bar(object, Foo): pass # Fine class Foo(object): pass class Bar(object, Foo): pass # BOOM James