[Zope-CMF] Re: [dev] five.localsitemanager: proposal
Martin Aspeli
optilude at gmx.net
Sat Jun 23 20:07:40 EDT 2007
Hi Yuppie,
> This proposal is now implemented on CMF and five.localsitemanager trunk.
> Everything *seems* to work, but maybe I'm missing something. This might
> be a good time to review and test the changes - any feedback is welcome.
Well done - great work! :)
> Done:
> -----
>
> There are 10 tools in CMF that are not ready for being used as
> utilities, they have to be used the old way until they are fixed:
>
> content_type_registry
> cookie_authentication
> portal_actions
> portal_calendar
> portal_catalog
> portal_skins
> portal_types
> portal_uidhandler
> portal_url
> portal_workflow
Are these registered as utilities as all? Or only available using
getToolByName?
> These 15 CMF tools are registered as utilities, AFAICS only the security
> machinery uses their acquisition context (except for portal_membership,
> which uses 'self.acl_users'):
>
> Products.CMFActionIcons.interfaces.IActionIconsTool
> Products.CMFCore.interfaces.ICachingPolicyManager
> Products.CMFCore.interfaces.IDiscussionTool
> Products.CMFCore.interfaces.IMemberDataTool
> Products.CMFCore.interfaces.IMembershipTool
> Products.CMFCore.interfaces.IMetadataTool
> Products.CMFCore.interfaces.IPropertiesTool
> Products.CMFCore.interfaces.IRegistrationTool
> Products.CMFCore.interfaces.ISiteRoot
> Products.CMFCore.interfaces.ISyndicationTool
> Products.CMFCore.interfaces.IUndoTool
> Products.CMFUid.interfaces.IUniqueIdAnnotationManagement
> Products.CMFUid.interfaces.IUniqueIdGenerator
> Products.GenericSetup.interfaces.ISetupTool
> Products.MailHost.interfaces.IMailHost
>
>
> five.localsitemanager now returns wrapped utilities without
> RequestContainers. This requires a new LookupClass.
Interesting.
Do we still get deprecation warnings if these are looked up using
getToolByName?
My feeling is that we should *not* get deprecating warnings for these.
It's rather late in the day for this release to officially deprecate
such fundamental parts of CMF, and I fear that people won't be able to
remember which tools are now utilities and which ones are tools, since
the distinction really comes down to implementation detail.
Hopefully, the path forward is that *all* the tools become utilities
(your last to-do below). In that case, I think full deprecation of
lookup via getToolByName makes sense, since we have a uniform API
(getUtility()) for looking up CMF's fundamental components. Until then,
I think we should give people the choice on the utilities we still have,
but not prod them too hard.
> ToDo:
> -----
>
> - real world testing
>
> - backport to the CMF 2.1 branch
Is this in the pipeline? i.e. will this code land in Plone 3.0? :-)
> - write migration code for CMF 2.1 beta sites that replaces the
> LookupClass and removes some utility registrations
Plone will likely need the same migrations.
> - fix the GenericSetup handler
How so?
> - figure out if we can make acl_users an utility
Spooky...
> - in the long run, modify all tools to make them work as utilities
Yes - as per above, I think this needs to be the ultimate goal.
> AFAICS, KSS will no longer need the monkey patch if it sets the
> LookupClass to FiveVerifyingAdapterLookup.
Great - this is really wonderful news.
Martin
--
Acquisition is a jealous mistress
More information about the Zope-CMF
mailing list