[Zope3-dev] How does Zope.Configuration work?

Lennart Regebro lennart@torped.se
Wed, 27 Mar 2002 18:15:40 +0100


From: "Steve Alexander" <steve@cat-box.net>

> I thought it already was. To install the Job Board example, I put the
> JobBoardEx package into my ZopeProducts directory, and I add this
>
>    <include package=".JobBoardEx" file="jobboard.zcml"/>
>
> to my Zope3/products.zcml file.

This is dangerously close to programming. :-)
It should be enough to put the JobBoardEx package in the ZopeProducts
directory, and *at the most* enabling it by checking a checkbox in the
control panel (although IMO that checking should default to being on for new
products).

From: "Guido van Rossum" <guido@python.org>
> I just hope you won't have any desire to tweak the jobboard.zcml file,
> because it encodes some of the job board's application logic.

Any configurable application logic should be configurable through the web.
Otherwise it is IMO opinion not to be defined as "configurable" but as
"reprogrammable", which anything with source code is. :-)

> If the site builder had touched the Python code, the answer would have
> been easy: don't touch what you don't understand.  But the site
> builder can reasonably expect that tweaking the configuration is his
> prerogative, and he might be surprised at how brittle the app is in
> the light of config changes.

I'm viewing the products configuration file as a part of the product, and I
don't expect site builders to ever touch anything inside it, and I don't
understand why they would. I don't have any problem with applying the "don't
touch what you don't understand" on the configuration files too.