Our app structure is based on how Symfony 2.x Full Stack organizes it's directories, however:
- A new one has been specified for Symfony 4.x: Symfony Flex
- Symfony Flex solves most of the upgrading issues for the end user (user has to manually merge changes in several files)
- Symfony Flex most likely greatly simplifies use cases where people want to install several integrated applications together, *including being able to install eZ Platform on existing symfony (flex) install*
- Quite radical change in app layout, which implies we will need to think a bit new on how to deal with parameters for configuring our bundles and the whole open source vs ee install process. This can all be simplified as part of this.
- Multi kernel is not supported anymore, aka used for having several separate applications together on same install. However with even meta repos now being packages it is most likely easier then before to reuse logic across several separate installs.
Read Symfony 4: directory structure by Fabien Potencier for the full version.
- app/Resources/views/* and templates in general go to /templates
- app/config goes to /config
- app is renamed to etc/
- app/AppKernel.php is moved to src/
- The new config entry point is config/container.yaml