From 86eb15dede53f64b83de55fb86bb33789a630035 Mon Sep 17 00:00:00 2001 From: Fabien Potencier Date: Tue, 23 Apr 2019 16:51:23 +0200 Subject: [PATCH] removed the "base_template_class" option on Twig\Environment --- doc/internals.rst | 2 +- src/Environment.php | 36 ----------------------------- src/Node/ModuleNode.php | 2 +- test/Twig/Tests/Node/ModuleTest.php | 6 ++--- 4 files changed, 5 insertions(+), 41 deletions(-) diff --git a/doc/internals.rst b/doc/internals.rst index 060c98311..bbebf0101 100644 --- a/doc/internals.rst +++ b/doc/internals.rst @@ -118,7 +118,7 @@ The generated template for a ``Hello {{ name }}`` template reads as follows using):: /* Hello {{ name }} */ - class __TwigTemplate_1121b6f109fe93ebe8c6e22e3712bceb extends \Twig\Template + class __TwigTemplate_1121b6f109fe93ebe8c6e22e3712bceb extends Template { protected function doDisplay(array $context, array $blocks = []) { diff --git a/src/Environment.php b/src/Environment.php index 99a9e3a4a..912baf5d7 100644 --- a/src/Environment.php +++ b/src/Environment.php @@ -53,7 +53,6 @@ class Environment private $lexer; private $parser; private $compiler; - private $baseTemplateClass; private $globals = []; private $resolvedGlobals; private $loadedTemplates; @@ -75,9 +74,6 @@ class Environment * * * charset: The charset used by the templates (default to UTF-8). * - * * base_template_class: The base template class to use for generated - * templates (default to \Twig\Template). - * * * cache: An absolute path where to store the compiled templates, * a \Twig\Cache\CacheInterface implementation, * or false to disable compilation cache (default). @@ -116,10 +112,6 @@ class Environment $this->debug = (bool) $options['debug']; $this->setCharset($options['charset']); - $this->baseTemplateClass = '\\'.ltrim($options['base_template_class'], '\\'); - if ('\\'.Template::class !== $this->baseTemplateClass && '\Twig_Template' !== $this->baseTemplateClass) { - @trigger_error('The "base_template_class" option on '.__CLASS__.' is deprecated since Twig 2.7.0.', E_USER_DEPRECATED); - } $this->autoReload = null === $options['auto_reload'] ? $this->debug : (bool) $options['auto_reload']; $this->strictVariables = (bool) $options['strict_variables']; $this->setCache($options['cache']); @@ -130,33 +122,6 @@ class Environment $this->addExtension(new OptimizerExtension($options['optimizations'])); } - /** - * Gets the base template class for compiled templates. - * - * @return string The base template class name - */ - public function getBaseTemplateClass() - { - if (1 > \func_num_args() || \func_get_arg(0)) { - @trigger_error('The '.__METHOD__.' is deprecated since Twig 2.7.0.', E_USER_DEPRECATED); - } - - return $this->baseTemplateClass; - } - - /** - * Sets the base template class for compiled templates. - * - * @param string $class The base template class name - */ - public function setBaseTemplateClass($class) - { - @trigger_error('The '.__METHOD__.' is deprecated since Twig 2.7.0.', E_USER_DEPRECATED); - - $this->baseTemplateClass = $class; - $this->updateOptionsHash(); - } - /** * Enables debugging mode. */ @@ -986,7 +951,6 @@ class Environment PHP_MINOR_VERSION, self::VERSION, (int) $this->debug, - $this->baseTemplateClass, (int) $this->strictVariables, ]); } diff --git a/src/Node/ModuleNode.php b/src/Node/ModuleNode.php index 2b8999f47..d1dc7de1e 100644 --- a/src/Node/ModuleNode.php +++ b/src/Node/ModuleNode.php @@ -163,7 +163,7 @@ class ModuleNode extends Node // if the template name contains */, add a blank to avoid a PHP parse error ->write('/* '.str_replace('*/', '* /', $this->getSourceContext()->getName())." */\n") ->write('class '.$compiler->getEnvironment()->getTemplateClass($this->getSourceContext()->getName(), $this->getAttribute('index'))) - ->raw(sprintf(" extends %s\n", $compiler->getEnvironment()->getBaseTemplateClass(false))) + ->raw(" extends Template\n") ->write("{\n") ->indent() ->write("private \$source;\n\n") diff --git a/test/Twig/Tests/Node/ModuleTest.php b/test/Twig/Tests/Node/ModuleTest.php index 1e2d2b640..d9d1ecf62 100644 --- a/test/Twig/Tests/Node/ModuleTest.php +++ b/test/Twig/Tests/Node/ModuleTest.php @@ -71,7 +71,7 @@ use Twig\Source; use Twig\Template; /* foo.twig */ -class __TwigTemplate_%x extends \Twig\Template +class __TwigTemplate_%x extends Template { private \$source; @@ -133,7 +133,7 @@ use Twig\Source; use Twig\Template; /* foo.twig */ -class __TwigTemplate_%x extends \Twig\Template +class __TwigTemplate_%x extends Template { private \$source; @@ -212,7 +212,7 @@ use Twig\Source; use Twig\Template; /* foo.twig */ -class __TwigTemplate_%x extends \Twig\Template +class __TwigTemplate_%x extends Template { private \$source;