[Zope3-dev] zopeproducts revisited (was Re: zope3-dev proposal on changing implicitly calling)

Jeffrey P Shell jeffrey@cuemedia.com
Sat, 2 Aug 2003 14:20:21 -0600


On Saturday, August 2, 2003, at 11:41  AM, Steve Alexander wrote:

> Chris Withers wrote:
>> Steve Alexander wrote:
>>>> How do you configure it?
>>>
>>>
>>> You provide an adapter for ITraversable.
>>> zope/app/interfaces/traversing.py
>> What would a simple example of doing that look like?
>
> Look in the "friendlyfolder" add-on product.
>
> http://cvs.zope.org/Products3/friendlyfolder/

I looked at that, at the bug tracker code, and at the NewContentObject 
recipe, and I'm still bothered by the use of 'zopeproducts'.  Why is 
this concept persisting?  Why spread it?  I'm worried now that I see no 
SOFTWARE/ZOPE_HOME and INSTANCE_HOME type setup for Zope 3.  I'm 
concerned about being able to have certain add-on products that are 
always going to be available on a particular machine across all Zope 3 
server instances, and having instance specific products.  Is there 
going to be trickery/hackery like exists for the Products system in 
Zope 2, where subpackages may be loaded out of many places on the file 
system yet still end in the same Products python package?

I'm also concerned about name collisions.  It seems like a lot is being 
done to have all of these separate namespaces for everything running 
inside Zope 3, yet no such namespacing is being advocated for add-on 
component packages.

I think that an 'orgname.product' approach should be advocated in 
examples and documentation, and that there should be a ZConfig or ZCML 
directive for adding elements to the Python/Zope path to look up 
products that doesn't lump them all into the 'zopeproducts' namespace.  
  Or, even if they do, that a more hierarchical package structure be 
promoted.

Because, otherwise, if I had been writing a bug tracker for the last 
few weeks and called it 'bugtracker', and placed in Zope Products - 
I've already been overwritten by somebody elses work.