1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-22 16:22:58 +02:00

[ticket/13616] Uses symfony/proxy-manager-bridge to lazy load twig lexer

PHPBB3-13616
This commit is contained in:
Tristan Darricau
2016-03-23 11:26:30 +01:00
parent e8762ce3cb
commit 5cdbef860d
8 changed files with 316 additions and 28 deletions

View File

@@ -14,6 +14,8 @@
namespace phpbb\di;
use phpbb\filesystem\filesystem;
use Symfony\Bridge\ProxyManager\LazyProxy\Instantiator\RuntimeInstantiator;
use Symfony\Bridge\ProxyManager\LazyProxy\PhpDumper\ProxyDumper;
use Symfony\Component\Config\ConfigCache;
use Symfony\Component\Config\FileLocator;
use Symfony\Component\DependencyInjection\ContainerBuilder;
@@ -460,7 +462,10 @@ class container_builder
{
try
{
$dumper = new PhpDumper($this->container);
$dumper = new PhpDumper($this->container);
$proxy_dumper = new ProxyDumper();
$dumper->setProxyDumper($proxy_dumper);
$cached_container_dump = $dumper->dump(array(
'class' => 'phpbb_cache_container',
'base_class' => 'Symfony\\Component\\DependencyInjection\\ContainerBuilder',
@@ -483,6 +488,7 @@ class container_builder
protected function create_container(array $extensions)
{
$container = new ContainerBuilder(new ParameterBag($this->get_core_parameters()));
$container->setProxyInstantiator(new RuntimeInstantiator());
$extensions_alias = array();

View File

@@ -71,7 +71,7 @@ class core extends Extension
// Set the Twig options if defined in the environment
$definition = $container->getDefinition('template.twig.environment');
$twig_environment_options = $definition->getArgument(7);
$twig_environment_options = $definition->getArgument(6);
if ($config['twig']['debug'])
{
$twig_environment_options['debug'] = true;
@@ -81,8 +81,8 @@ class core extends Extension
$twig_environment_options['auto_reload'] = true;
}
// Replace the 8th argument, the options passed to the environment
$definition->replaceArgument(7, $twig_environment_options);
// Replace the 7th argument, the options passed to the environment
$definition->replaceArgument(6, $twig_environment_options);
if ($config['twig']['enable_debug_extension'])
{