[Zope-dev] Re: Heads up: about to merge new-style ExtensionClass and ZODB 3.3 into Zope 2 head

Yuppie schubbe at web.de
Sun Nov 30 10:57:44 EST 2003


Jim Fulton wrote:
> Done!

Hi Jim!


Here some feedback regarding your checkin. I tested CMF with Zope HEAD. 
These are the issues I ran into:


1.) "from ZODB import Persistent, PersistentMapping" doesn't work anymore

Maybe Zope 2.7 should have a deprecation warning?


2.) assignment to class dictionaries doesn't work anymore

I copied your fix for ZopePageTemplate to FSPageTemplate. Now Zope 
started again.


3.) 'rebinding by assignment' doesn't work anymore

With oldstyle ExtensionClasses you were able to rebind methods by 
assignment, without subclassing from the class that defines the method.

CMFCore/FSPageTemplate.py seems to be a good use case for that feature:

class FSPageTemplate(FSObject, Script, PageTemplate):
     pt_getContext = ZopePageTemplate.pt_getContext

This works fine with Zope 2.7, but raises an error with Zope HEAD:

TypeError: unbound method pt_getContext() must be called with 
ZopePageTemplate instance as first argument (got nothing instead)

I fixed this one and now a CMF Site seems to work, but I'm afraid this 
pattern is used in other places. The unittests show this:

TypeError: unbound method manage_addPortalFolder() must be called with 
PortalFolder instance as first argument (got str instance instead)


4.) some objects publishable in Zope 2.7 aren't publishable anymore

No big deal to add docstrings, but what's the policy change?


5.) other issues

I was not able to track this error down, but maybe you've got an idea 
what's going wrong here?

http://localhost:8080/myCMFSite/portal_types/Document/manage_propertiesForm
Traceback (innermost last):
   Module ZPublisher.Publish, line 100, in publish
   Module ZPublisher.mapply, line 88, in mapply
   Module ZPublisher.Publish, line 40, in call_object
   Module Products.CMFCore.utils, line 350, in manage_propertiesForm
   Module Shared.DC.Scripts.Bindings, line 252, in __call__
   Module Shared.DC.Scripts.Bindings, line 281, in _bindAndExec
   Module Shared.DC.Scripts.Bindings, line 1, in ?
   Module Shared.DC.Scripts.Bindings, line 218, in _getContext
AttributeError: aq_parent


Cheers,
	Yuppie





More information about the Zope-Dev mailing list