Comment 6 for bug 325299

Revision history for this message
Uli Fouquet (uli-gnufix) wrote :

Concerning configuration there are lots of things to discover :-)

Apart from the initial problem (where do we put 'deploy.ini') I dived into trying to understand the Zope configuration process better. Phew! Also had a peek into Pylons, TurboGears and repoze.bfg, and now there seem to be more questions left then answers (or too many answers) given.

One thing I stumbled upon and just for the logs:

Multiple setup files:

Our paster setup is certainly different from others as we have at least two configuration systems with different
config file parsers:

  1) paster parsed config files *.ini (paster seems to use an extended standard ConfigParser)

  2) ZConfig parsed zope.conf

  (3) site.zcml (I don't think we can do without it)

If we also take buildout.cfg into account, we have four different configuration files with different syntax and purpose.
That's much, maybe to much for an average user.

Non-Zope paster setups seem normally to be configured by 1 (in words: one) .ini file being in the project root or
nearby.

The repoze.bfg approach might be most attractive for us, as it also setups a complete Zope environment and
does not require a zope.conf. Instead you can for instance define your Data.fs location in a standard .ini file.

The general and already discussed shortcoming of .ini files is, that they do not support nested sections as XML-like zope.conf files (i.e.: ZConfig parsed files) usually require.

But if repoze.bfg can do without it, why shouldn't Grok be able to learn from it and provide this as well? An implementation might be possible with some extensions to zope.app.wsgi. This could also make everything more compatible (at least more similar-looking) with other Python frameworks.

Well, just some thoughts while going on. Maybe someone else has brilliant ideas to share concerning configuration ;-)