On Feb 23, 8:10 am, yuppie <[EMAIL PROTECTED]> wrote: > I propose to hardcode PortalObjectBase as IObjectManagerSite. AFAICS > getSiteManager() could create a component registry on the fly if > necessary. So for that part we would neither need the new code in > importVarious nor migration code.
While I'm typically against what is obviously an accessor method doing any sort of writing to the zodb I would let it slide here for the sake of avoiding a migration step. But while this will ensure the cmf site is an ISite, there is still a step missing. There is no zpublisher hook registered to fire traversal events when the site is traversed (which lets zope.component.getUtility be aware of the closest site even when not specifying a context). See Products.Five.component.enableSite for an example of what needs to be done here. The five.localsitemanager.make_objectmanager_site call invokes enableSite under the hood to setup this zpublisher hook. Maybe someone has a neat idea for setting this up too? (I don't, other then by a migration step) Or maybe there is something GenericSetup could do to setup a bit of migration? - Rocky _______________________________________________ Zope-CMF maillist - [email protected] http://mail.zope.org/mailman/listinfo/zope-cmf See http://collector.zope.org/CMF for bug reports and feature requests
