[Zope3-dev] Moving more stuff to zope.products

Jeffrey P Shell jeff at bottlerocket.net
Wed Feb 4 13:31:20 EST 2004


On Feb 4, 2004, at 10:12 AM, Philipp von Weitershausen wrote:

> Hi there,
>
> in the currently ongoing process of reorganizing Zope3's package 
> structure and gutting out zope.app, I think the main packages that 
> have yet to be moved are:
>
> - zope.app.workflow
> - zope.app.content
> - browser skins
>
> While the first is probably easy to agree on, I realize that the 
> latter could be a point of discussion.
>
> Anthony Baxter argued that just moving zope.app.content to 
> zope.products.content will not flatten the product hierarchy at all. 
> That is certainly true since the depth of the package remains the 
> same, however the package hierarchy will be straightened out a lot. 
> Remember how all interfaces are in zope.app.interfaces.content, all 
> browsers views are in zope.app.browser.content...? (see discussion 
> several months ago...)
> From a philosophical point of view, content objects are custom to any 
> application. I have application where I never need Folder, File or 
> weird (forbidden?) stuff like Templated Page. Thus, one could argue 
> that all optional stuff belongs in zope.products, not in the core.

Zope 2 separated out core OFS items (analogous to zope.app.content, I 
assume) from 'Products.OFSP' (OFS Product).  OFSP seems to be a bit of 
a graveyard, consisting of 'Version' and 'Draft' objects (the latter 
never being officially completed and exposed to the outside world).  It 
would probably be wise to avoid a situation like that.

I need to find out more about the dependencies on usage of 
zope.products.  I'm a bit stymied at the zope.products.securitypolicy 
implementation as it stands now, because it seems like it's something a 
lot of other elements (at least, products) could depend on (using the 
ZCML 'role' and 'grant' tags, which are added to the main 'zope:' tag 
namespace).  If there are very very very common products that are 
likely to be used by everybody (at least, everybody starting out), 
'products.zcml.in' needs to stay up to date with a good basic setup and 
comments, such as 'lots of products may depend on these, so they should 
be loaded first' and then the 'here's some optional products'.  When I 
was playing with Zope 3 a couple of days ago (for the first time in 
quite a while), my instincts on where to place product loads didn't 
quite work out.

Is there any document about how zope.products is meant to be used?  The 
Wiki didn't yield anything helpful - is it all in the archives of the 
zope3-dev list?

--
Jeffrey P Shell
jeff at bottlerocket.net




More information about the Zope3-dev mailing list