Hey Simon,
I had this discussion back in the day with Gavin, and at the time,
there was little bandwidth to take on/ enforce this type of
cross-component requirement.
I would also be interested in aiding you in this endeavor in a minimal way.
* Review the existing 'defaults' proposal by Gavin that partially
addresses this issue (by allowing each component 'defaults')
The idea of any outside files (ini or otherwise) influencing components
indirectly is a BAD idea in my opinion, and I think that was a proposed
route. In order of precedence of goals, I place "use-at-will
architecture" higher than "configuration over convention" even though I
value both very highly. Having a zendframework.ini that components
globally know about introduces coupling (at the component level) that I
simply cannot agree with.
* Compile a list of components that use configs and review their usage
(E.g. Routes, Mail, Db, Cache... etc.)
This supports the idea of config'ing a component become more of a
"coding standard" than having a global config component that is read from.
I'd like to see methods (determined on a component by component basis)
implement
Zend_Component::[\w]Config[\w](Zend_Config $config)
type methods that can be used at will.
Each component would have to best decide where the method is
appropriate, whether its static or not, or applies to a specific
instance, etc etc.
* Some interest by the community for this to happen! :)
Go for it! I can keep a watchful eye on this proposal and comment when
necessary.
* Draw up a proposal (I'll put up my hand on this)
Do it!
* Review documentation and look at a consistent way of documenting
component config defaults/attributes
This should also be a documentation standard as well, perhaps the first
(or last) section of every major component that can take a Zend_Config
object will outline what keys its expecting.
-ralph