Hi everybody! Since the very beginning of my working with early symfony 2.0 prereleases I was asking myself - why should I add 3 records into 3 different places when I add a bundle to make it work (autoloading rule, config.yml, AppKernel::registerBundles()). This makes it a little bit harder to add bundles into the system.
The possible improvement could be to only add 1 record to config.yml with 2 extra fields - the bundle class name and the path(s) for the autoloader (which should have special config key names). Another solution could be searching for bundles in some custom directory (configurable) on cache warmup phase and load all found bundles with it's default configuration and allow for tweaking that configuration in application main config.yml (almost the same way as it is now). Editing the config.yml's bundle config options one could also completely disable the bundle so that it is ignored. But imagine how it could be easy to install bundles that don't require any customization. Or installing 3party bundles for intital testing - just copy (git clone) the bundle, clear the cache and you're done. Since all configuration is compiled I think this could be achived by adding some custom methods to a compiled application container class or creating another generated class which is loaded by kernel and which fills the registered bundles array in kernel and somehow adjusts the used autoloader class. For the last approach it would be required to let the Kernel know about the autoloader class being used (which must implement commom interface). For this the app/autoload.php file must be renamed and have the "AppLoader" class (for example). This class would simply inherit the Symfony\Component\ClassLoader\UniversalClassLoader or maybe a customized one with all the logic from autoload.php being moved into register() method of this AppLoader with parent::register() call in the end. One thing I cannot answer yet is how to behave when bundle has some other vendor dependecies (think of AvalancheImagineBundle<https://github.com/avalanche123/AvalancheImagineBundle>). Any ideas are appreciated. Currently I would like to know what people think of this approach. Maybe someone can point some key things that I missed which make all this impossible/hard to implement. And I would also like to know if this is a welcomed functionality inside Symfony itself. Thanks! -- If you want to report a vulnerability issue on symfony, please send it to security at symfony-project.com You received this message because you are subscribed to the Google Groups "symfony developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/symfony-devs?hl=en
