Hi there.

One of most annoying dependencies is the "zope.app.appsetup" package.
Some packages, like zope.session depend on it just to provide
"boostrap setup" for using these packages in context of "zope3, the
application server", however, they can be greatly used without it, so
this is really awful dependency.

I saw that, on last sprint, the subscriber for error reporting utility
was moved from zope.error to zope.app.appsetup, so zope.error could
lose the dependency on zope.app.appsetup. So, the first question is:
do we want to move all subscribers like that? It doesn't seem like a
best solution though, because then zope.app.appsetup should depend on
all those packages, like zope.session. :-/

The problem is that the bootstrap code in zope.app.appsetup is really
"zope3, the application"-specific, so it uses "root folders",
persistent site managers, site management containers,
ZopePublication.root_name, and so on. The code itself is okay, because
it provides an easy way to setup misc. components for the "zope3
application server", but still it's a problem, because it's probably
impossible to refactor it in a application-independent way (until we
provide some cool pluggable application bootstrapping mechanism, which
is probably will become too complex and not needed/used by most
application developers).

So, the general question is where should we move the bootstrap setup
code? Or, alternatively, we could just leave it in place, but greatly
separate it from another package components and provide
zope.app.appsetup as an "extra" dependency (sigh...).


WBR, Dan Korostelev
Zope-Dev maillist  -  Zope-Dev@zope.org
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope )

Reply via email to