[Zope3-dev] Package is the wrong name for the things I called "Zope Packages".

Shane Hathaway shane@ZOPE.COM
Tue, 21 Jan 2003 12:22:47 -0500


seb bacon wrote:
> Why do we need to 'close' a workspace at all?  Is it just a state which 
> indicates that the source is pristine or of a release standard?

Yes.  Nothing more.  It's quite valuable, too. :-)

> Here are some combinations of ideas so far:
> 
> =========================================
> Distribution-type  | Development-type
> =========================================
> Closed Zope package| Open Zope package
> Bundle             | Workspace
> Locked workspace   | (Unlocked) Workspace
> Closed workspace   | (Open) workspace
> Closed bundle      | (Open) bundle
> Bundle             | Customized bundle
> Workspace          | Customized workspace
> Released workspace | Development workspace
> -------------------------------------------

Since the only difference in the implementation between 
distribution-type and development-type is a flag indicating whether the 
software can be changed, and the user can toggle that flag at any time, 
I would want the flag to be reflected in the names as an adjective that 
infers minor change.  Hence open/closed bundle.

But interpretation by end users matters more than implementation, of 
course.  Still, it would seem strange to me for an object to morph into 
something else just because I toggle a boolean attribute.

>> Because it means different things to every Zope user.  
> 
> Really?  I would be suprised if much of the installed user base thinks 
> of a "product" as anything other than "an optional piece of software you 
> download and install which makes Zope do useful stuff"

A product also:

- is a Python package
- registers meta_types
- runs unrestricted
- gets initialized at each Zope startup
- can monkey-patch
- contains Python code
- usually gets compressed as a tarfile
- is located under a directory called Products
- can hold ZClasses
- shows up in the control panel

Any of these assumptions (and others) may be broken in the future.  The 
first assumption is what led to the whole confusion about "persistent 
packages" vs. "Zope packages", in fact.

Shane