i think i have finally figured out why the code i published earlier was failing. apparently it's a serious incompatibility between my library code and zope. for now, i have to abandon zope and stick with zpublisher, which i'm only now beginning to get installed. basically, part of my library code unpickles a class instance from a stream over a socket. this works fine usually, but apparently it just doesn't work inside zope. zope's unpickler is "different" enough that it can't unpickle this class, and the code crashes with the error i reported eariler. i've tried changing my code to use a different unpickler, so as not to collide with zope, but it didn't help. i don't know enough about the persistant object system to fix the problem, and i'm running smack into a major deadline. if anybody has any ideas, i'd love to hear 'em.