RE[2]: Zope Good/Bad News Article
Hello Brian and Paul, I would like to remind you a relately nasty bug that considerably reduce the potential of Code Reuse for the product. The bug is the following. Because of Export/Import (that you have to use for instance if you upgrade the Zope version), "you can not define in a product a class that inherits another class that is defined in another product." !!!! (if you try, you just kind of create some Zombi class). Which means that you can not use inheritance between components that are defined in a products !!! Thierry Nabeth INSEAD CALT http://www.insead.edu/CALT/ PS: You can see the reason if you examin the exported package in xml -------- exported package extract---- <record ...> (Class TB definition that inherits from class TA of another product) .... <tuple id="24671.6"> <global id="24671.3" name="PersistentClass" module="ZClasses.ZClass"/> <persistent> <string id="24671.4" encoding="base64">AAAAAAAAYFE=</string> ###### ==> class in other package. ##### </persistent> <global id="24671.5" name="SimpleItem" module="OFS.SimpleItem"/> </tuple> -------- As you see, the module of class TA is not define. Actually, a TA zombi is defined in the Product in which TB is defined. You should have instead something for TA such as <global id="24671.3" name="TA" module="TA_Product"/> The problem comes from the (bad) use of the Python Marchalling/unMarchaling functions.
participants (1)
-
Thierry Nabeth