feature #21035 [FrameworkBundle] Deprecate the Templating component integration (dunglas, fabpot)
This PR was merged into the 4.3-dev branch. Discussion ---------- [FrameworkBundle] Deprecate the Templating component integration | Q | A | ------------- | --- | Branch? | master | Bug fix? | no | New feature? | no | BC breaks? | no | Deprecations? | yes | Tests pass? | yes | Fixed tickets | n/a | License | MIT | Doc PR | n/a This PR deprecates the Templating component integration in FrameworkBundle. Only a few people use it because almost everybody use Twig or the serializer to output data. Removing this component will facilitate the maintenance. Commits -------7169f4d3e2
[Templating] added more deprecation224c891e10
[FrameworkBundle] Deprecate the Templating component integration
This commit is contained in:
commit
72fa2b3b2a
@ -17,6 +17,9 @@ use Symfony\Component\Templating\TemplateReference;
|
|||||||
use Twig\Environment;
|
use Twig\Environment;
|
||||||
use Twig\Loader\ArrayLoader;
|
use Twig\Loader\ArrayLoader;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class TwigEngineTest extends TestCase
|
class TwigEngineTest extends TestCase
|
||||||
{
|
{
|
||||||
public function testExistsWithTemplateInstances()
|
public function testExistsWithTemplateInstances()
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bridge\Twig;
|
namespace Symfony\Bridge\Twig;
|
||||||
|
|
||||||
|
@trigger_error('The '.TwigEngine::class.' class is deprecated since version 4.3 and will be removed in 5.0; use \Twig\Environment instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Templating\EngineInterface;
|
use Symfony\Component\Templating\EngineInterface;
|
||||||
use Symfony\Component\Templating\StreamingEngineInterface;
|
use Symfony\Component\Templating\StreamingEngineInterface;
|
||||||
use Symfony\Component\Templating\TemplateNameParserInterface;
|
use Symfony\Component\Templating\TemplateNameParserInterface;
|
||||||
@ -25,6 +27,8 @@ use Twig\Template;
|
|||||||
* This engine knows how to render Twig templates.
|
* This engine knows how to render Twig templates.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TwigEngine implements EngineInterface, StreamingEngineInterface
|
class TwigEngine implements EngineInterface, StreamingEngineInterface
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\CacheWarmer;
|
namespace Symfony\Bundle\FrameworkBundle\CacheWarmer;
|
||||||
|
|
||||||
|
@trigger_error('The '.TemplateFinder::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Finder\Finder;
|
use Symfony\Component\Finder\Finder;
|
||||||
use Symfony\Component\HttpKernel\Bundle\BundleInterface;
|
use Symfony\Component\HttpKernel\Bundle\BundleInterface;
|
||||||
use Symfony\Component\HttpKernel\KernelInterface;
|
use Symfony\Component\HttpKernel\KernelInterface;
|
||||||
@ -21,6 +23,8 @@ use Symfony\Component\Templating\TemplateReferenceInterface;
|
|||||||
* Finds all the templates.
|
* Finds all the templates.
|
||||||
*
|
*
|
||||||
* @author Victor Berchet <victor@suumit.com>
|
* @author Victor Berchet <victor@suumit.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TemplateFinder implements TemplateFinderInterface
|
class TemplateFinder implements TemplateFinderInterface
|
||||||
{
|
{
|
||||||
|
@ -11,10 +11,14 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\CacheWarmer;
|
namespace Symfony\Bundle\FrameworkBundle\CacheWarmer;
|
||||||
|
|
||||||
|
@trigger_error('The '.TemplateFinderInterface::class.' interface is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Interface for finding all the templates.
|
* Interface for finding all the templates.
|
||||||
*
|
*
|
||||||
* @author Victor Berchet <victor@suumit.com>
|
* @author Victor Berchet <victor@suumit.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
interface TemplateFinderInterface
|
interface TemplateFinderInterface
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\CacheWarmer;
|
namespace Symfony\Bundle\FrameworkBundle\CacheWarmer;
|
||||||
|
|
||||||
|
@trigger_error('The '.TemplatePathsCacheWarmer::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Bundle\FrameworkBundle\Templating\Loader\TemplateLocator;
|
use Symfony\Bundle\FrameworkBundle\Templating\Loader\TemplateLocator;
|
||||||
use Symfony\Component\Filesystem\Filesystem;
|
use Symfony\Component\Filesystem\Filesystem;
|
||||||
use Symfony\Component\HttpKernel\CacheWarmer\CacheWarmer;
|
use Symfony\Component\HttpKernel\CacheWarmer\CacheWarmer;
|
||||||
@ -19,6 +21,8 @@ use Symfony\Component\HttpKernel\CacheWarmer\CacheWarmer;
|
|||||||
* Computes the association between template names and their paths on the disk.
|
* Computes the association between template names and their paths on the disk.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TemplatePathsCacheWarmer extends CacheWarmer
|
class TemplatePathsCacheWarmer extends CacheWarmer
|
||||||
{
|
{
|
||||||
|
@ -206,6 +206,8 @@ trait ControllerTrait
|
|||||||
protected function renderView(string $view, array $parameters = []): string
|
protected function renderView(string $view, array $parameters = []): string
|
||||||
{
|
{
|
||||||
if ($this->container->has('templating')) {
|
if ($this->container->has('templating')) {
|
||||||
|
@trigger_error('Using the "templating" service is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
return $this->container->get('templating')->render($view, $parameters);
|
return $this->container->get('templating')->render($view, $parameters);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -224,6 +226,8 @@ trait ControllerTrait
|
|||||||
protected function render(string $view, array $parameters = [], Response $response = null): Response
|
protected function render(string $view, array $parameters = [], Response $response = null): Response
|
||||||
{
|
{
|
||||||
if ($this->container->has('templating')) {
|
if ($this->container->has('templating')) {
|
||||||
|
@trigger_error('Using the "templating" service is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
$content = $this->container->get('templating')->render($view, $parameters);
|
$content = $this->container->get('templating')->render($view, $parameters);
|
||||||
} elseif ($this->container->has('twig')) {
|
} elseif ($this->container->has('twig')) {
|
||||||
$content = $this->container->get('twig')->render($view, $parameters);
|
$content = $this->container->get('twig')->render($view, $parameters);
|
||||||
@ -248,6 +252,8 @@ trait ControllerTrait
|
|||||||
protected function stream(string $view, array $parameters = [], StreamedResponse $response = null): StreamedResponse
|
protected function stream(string $view, array $parameters = [], StreamedResponse $response = null): StreamedResponse
|
||||||
{
|
{
|
||||||
if ($this->container->has('templating')) {
|
if ($this->container->has('templating')) {
|
||||||
|
@trigger_error('Using the "templating" service is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
$templating = $this->container->get('templating');
|
$templating = $this->container->get('templating');
|
||||||
|
|
||||||
$callback = function () use ($templating, $view, $parameters) {
|
$callback = function () use ($templating, $view, $parameters) {
|
||||||
|
@ -18,6 +18,9 @@ use Symfony\Component\DependencyInjection\ContainerBuilder;
|
|||||||
use Symfony\Component\DependencyInjection\Reference;
|
use Symfony\Component\DependencyInjection\Reference;
|
||||||
use Symfony\Component\Templating\EngineInterface as ComponentEngineInterface;
|
use Symfony\Component\Templating\EngineInterface as ComponentEngineInterface;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
|
*/
|
||||||
class TemplatingPass implements CompilerPassInterface
|
class TemplatingPass implements CompilerPassInterface
|
||||||
{
|
{
|
||||||
public function process(ContainerBuilder $container)
|
public function process(ContainerBuilder $container)
|
||||||
@ -34,7 +37,12 @@ class TemplatingPass implements CompilerPassInterface
|
|||||||
if ($container->hasDefinition('templating.engine.php')) {
|
if ($container->hasDefinition('templating.engine.php')) {
|
||||||
$refs = [];
|
$refs = [];
|
||||||
$helpers = [];
|
$helpers = [];
|
||||||
|
|
||||||
foreach ($container->findTaggedServiceIds('templating.helper', true) as $id => $attributes) {
|
foreach ($container->findTaggedServiceIds('templating.helper', true) as $id => $attributes) {
|
||||||
|
if (!$container->getDefinition($id)->isDeprecated()) {
|
||||||
|
@trigger_error('The "templating.helper" tag is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
}
|
||||||
|
|
||||||
if (isset($attributes[0]['alias'])) {
|
if (isset($attributes[0]['alias'])) {
|
||||||
$helpers[$attributes[0]['alias']] = $id;
|
$helpers[$attributes[0]['alias']] = $id;
|
||||||
$refs[$id] = new Reference($id);
|
$refs[$id] = new Reference($id);
|
||||||
|
@ -264,6 +264,8 @@ class FrameworkExtension extends Extension
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($this->isConfigEnabled($container, $config['templating'])) {
|
if ($this->isConfigEnabled($container, $config['templating'])) {
|
||||||
|
@trigger_error('Enabling the Templating component is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
if (!class_exists('Symfony\Component\Templating\PhpEngine')) {
|
if (!class_exists('Symfony\Component\Templating\PhpEngine')) {
|
||||||
throw new LogicException('Templating support cannot be enabled as the Templating component is not installed. Try running "composer require symfony/templating".');
|
throw new LogicException('Templating support cannot be enabled as the Templating component is not installed. Try running "composer require symfony/templating".');
|
||||||
}
|
}
|
||||||
|
@ -10,10 +10,14 @@
|
|||||||
<service id="templating.engine.delegating" class="Symfony\Bundle\FrameworkBundle\Templating\DelegatingEngine">
|
<service id="templating.engine.delegating" class="Symfony\Bundle\FrameworkBundle\Templating\DelegatingEngine">
|
||||||
<argument type="service" id="service_container" />
|
<argument type="service" id="service_container" />
|
||||||
<argument type="collection" /> <!-- engines -->
|
<argument type="collection" /> <!-- engines -->
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.name_parser" class="Symfony\Bundle\FrameworkBundle\Templating\TemplateNameParser">
|
<service id="templating.name_parser" class="Symfony\Bundle\FrameworkBundle\Templating\TemplateNameParser">
|
||||||
<argument type="service" id="kernel" />
|
<argument type="service" id="kernel" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.filename_parser" class="Symfony\Bundle\FrameworkBundle\Templating\TemplateFilenameParser" />
|
<service id="templating.filename_parser" class="Symfony\Bundle\FrameworkBundle\Templating\TemplateFilenameParser" />
|
||||||
@ -21,30 +25,41 @@
|
|||||||
<service id="templating.locator" class="Symfony\Bundle\FrameworkBundle\Templating\Loader\TemplateLocator">
|
<service id="templating.locator" class="Symfony\Bundle\FrameworkBundle\Templating\Loader\TemplateLocator">
|
||||||
<argument type="service" id="file_locator" />
|
<argument type="service" id="file_locator" />
|
||||||
<argument>%kernel.cache_dir%</argument>
|
<argument>%kernel.cache_dir%</argument>
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.finder" class="Symfony\Bundle\FrameworkBundle\CacheWarmer\TemplateFinder">
|
<service id="templating.finder" class="Symfony\Bundle\FrameworkBundle\CacheWarmer\TemplateFinder">
|
||||||
<argument type="service" id="kernel" />
|
<argument type="service" id="kernel" />
|
||||||
<argument type="service" id="templating.filename_parser" />
|
<argument type="service" id="templating.filename_parser" />
|
||||||
<argument>%kernel.root_dir%/Resources</argument>
|
<argument>%kernel.root_dir%/Resources</argument>
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.cache_warmer.template_paths" class="Symfony\Bundle\FrameworkBundle\CacheWarmer\TemplatePathsCacheWarmer">
|
<service id="templating.cache_warmer.template_paths" class="Symfony\Bundle\FrameworkBundle\CacheWarmer\TemplatePathsCacheWarmer">
|
||||||
<tag name="kernel.cache_warmer" priority="20" />
|
<tag name="kernel.cache_warmer" priority="20" />
|
||||||
<argument type="service" id="templating.finder" />
|
<argument type="service" id="templating.finder" />
|
||||||
<argument type="service" id="templating.locator" />
|
<argument type="service" id="templating.locator" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.loader.filesystem" class="Symfony\Bundle\FrameworkBundle\Templating\Loader\FilesystemLoader">
|
<service id="templating.loader.filesystem" class="Symfony\Bundle\FrameworkBundle\Templating\Loader\FilesystemLoader">
|
||||||
<argument type="service" id="templating.locator" />
|
<argument type="service" id="templating.locator" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.loader.cache" class="Symfony\Component\Templating\Loader\CacheLoader">
|
<service id="templating.loader.cache" class="Symfony\Component\Templating\Loader\CacheLoader">
|
||||||
<argument type="service" id="templating.loader.wrapped" />
|
<argument type="service" id="templating.loader.wrapped" />
|
||||||
<argument>%templating.loader.cache.path%</argument>
|
<argument>%templating.loader.cache.path%</argument>
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.loader.chain" class="Symfony\Component\Templating\Loader\ChainLoader">
|
<service id="templating.loader.chain" class="Symfony\Component\Templating\Loader\ChainLoader">
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.loader" alias="templating.loader.filesystem" public="true" />
|
<service id="templating.loader" alias="templating.loader.filesystem" public="true" />
|
||||||
|
@ -14,6 +14,8 @@
|
|||||||
<argument type="service" id="debug.stopwatch" />
|
<argument type="service" id="debug.stopwatch" />
|
||||||
<argument type="service" id="templating.globals" />
|
<argument type="service" id="templating.globals" />
|
||||||
<call method="setCharset"><argument>%kernel.charset%</argument></call>
|
<call method="setCharset"><argument>%kernel.charset%</argument></call>
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
</services>
|
</services>
|
||||||
</container>
|
</container>
|
||||||
|
@ -13,6 +13,8 @@
|
|||||||
<argument type="service" id="templating.loader" />
|
<argument type="service" id="templating.loader" />
|
||||||
<argument type="service" id="templating.globals" />
|
<argument type="service" id="templating.globals" />
|
||||||
<call method="setCharset"><argument>%kernel.charset%</argument></call>
|
<call method="setCharset"><argument>%kernel.charset%</argument></call>
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.engine.php.helpers_locator">
|
<service id="templating.engine.php.helpers_locator">
|
||||||
@ -22,31 +24,43 @@
|
|||||||
|
|
||||||
<service id="templating.helper.slots" class="Symfony\Component\Templating\Helper\SlotsHelper">
|
<service id="templating.helper.slots" class="Symfony\Component\Templating\Helper\SlotsHelper">
|
||||||
<tag name="templating.helper" alias="slots" />
|
<tag name="templating.helper" alias="slots" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.request" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\RequestHelper">
|
<service id="templating.helper.request" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\RequestHelper">
|
||||||
<tag name="templating.helper" alias="request" />
|
<tag name="templating.helper" alias="request" />
|
||||||
<argument type="service" id="request_stack" />
|
<argument type="service" id="request_stack" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.session" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\SessionHelper">
|
<service id="templating.helper.session" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\SessionHelper">
|
||||||
<tag name="templating.helper" alias="session" />
|
<tag name="templating.helper" alias="session" />
|
||||||
<argument type="service" id="request_stack" />
|
<argument type="service" id="request_stack" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.router" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\RouterHelper">
|
<service id="templating.helper.router" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\RouterHelper">
|
||||||
<tag name="templating.helper" alias="router" />
|
<tag name="templating.helper" alias="router" />
|
||||||
<argument type="service" id="router" />
|
<argument type="service" id="router" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.assets" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\AssetsHelper">
|
<service id="templating.helper.assets" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\AssetsHelper">
|
||||||
<tag name="templating.helper" alias="assets" />
|
<tag name="templating.helper" alias="assets" />
|
||||||
<argument /> <!-- packages -->
|
<argument /> <!-- packages -->
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.actions" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\ActionsHelper">
|
<service id="templating.helper.actions" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\ActionsHelper">
|
||||||
<tag name="templating.helper" alias="actions" />
|
<tag name="templating.helper" alias="actions" />
|
||||||
<argument type="service" id="fragment.handler" />
|
<argument type="service" id="fragment.handler" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.code" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\CodeHelper">
|
<service id="templating.helper.code" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\CodeHelper">
|
||||||
@ -54,35 +68,49 @@
|
|||||||
<argument type="service" id="debug.file_link_formatter"></argument>
|
<argument type="service" id="debug.file_link_formatter"></argument>
|
||||||
<argument>%kernel.project_dir%</argument>
|
<argument>%kernel.project_dir%</argument>
|
||||||
<argument>%kernel.charset%</argument>
|
<argument>%kernel.charset%</argument>
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.translator" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\TranslatorHelper">
|
<service id="templating.helper.translator" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\TranslatorHelper">
|
||||||
<tag name="templating.helper" alias="translator" />
|
<tag name="templating.helper" alias="translator" />
|
||||||
<argument type="service" id="translator" on-invalid="null" />
|
<argument type="service" id="translator" on-invalid="null" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.form" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\FormHelper">
|
<service id="templating.helper.form" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\FormHelper">
|
||||||
<tag name="templating.helper" alias="form" />
|
<tag name="templating.helper" alias="form" />
|
||||||
<argument type="service" id="templating.form.renderer" />
|
<argument type="service" id="templating.form.renderer" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.stopwatch" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\StopwatchHelper">
|
<service id="templating.helper.stopwatch" class="Symfony\Bundle\FrameworkBundle\Templating\Helper\StopwatchHelper">
|
||||||
<tag name="templating.helper" alias="stopwatch" />
|
<tag name="templating.helper" alias="stopwatch" />
|
||||||
<argument type="service" id="debug.stopwatch" on-invalid="ignore" />
|
<argument type="service" id="debug.stopwatch" on-invalid="ignore" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.form.engine" class="Symfony\Component\Form\Extension\Templating\TemplatingRendererEngine">
|
<service id="templating.form.engine" class="Symfony\Component\Form\Extension\Templating\TemplatingRendererEngine">
|
||||||
<argument type="service" id="templating.engine.php" />
|
<argument type="service" id="templating.engine.php" />
|
||||||
<argument>%templating.helper.form.resources%</argument>
|
<argument>%templating.helper.form.resources%</argument>
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.form.renderer" class="Symfony\Component\Form\FormRenderer">
|
<service id="templating.form.renderer" class="Symfony\Component\Form\FormRenderer">
|
||||||
<argument type="service" id="templating.form.engine" />
|
<argument type="service" id="templating.form.engine" />
|
||||||
<argument type="service" id="security.csrf.token_manager" on-invalid="null" />
|
<argument type="service" id="security.csrf.token_manager" on-invalid="null" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.globals" class="Symfony\Bundle\FrameworkBundle\Templating\GlobalVariables">
|
<service id="templating.globals" class="Symfony\Bundle\FrameworkBundle\Templating\GlobalVariables">
|
||||||
<argument type="service" id="service_container" />
|
<argument type="service" id="service_container" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
</services>
|
</services>
|
||||||
</container>
|
</container>
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.DelegatingEngine::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Psr\Container\ContainerInterface;
|
use Psr\Container\ContainerInterface;
|
||||||
use Symfony\Component\HttpFoundation\Response;
|
use Symfony\Component\HttpFoundation\Response;
|
||||||
use Symfony\Component\Templating\DelegatingEngine as BaseDelegatingEngine;
|
use Symfony\Component\Templating\DelegatingEngine as BaseDelegatingEngine;
|
||||||
@ -19,6 +21,8 @@ use Symfony\Component\Templating\DelegatingEngine as BaseDelegatingEngine;
|
|||||||
* DelegatingEngine selects an engine for a given template.
|
* DelegatingEngine selects an engine for a given template.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class DelegatingEngine extends BaseDelegatingEngine implements EngineInterface
|
class DelegatingEngine extends BaseDelegatingEngine implements EngineInterface
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.EngineInterface::class.' interface is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\HttpFoundation\Response;
|
use Symfony\Component\HttpFoundation\Response;
|
||||||
use Symfony\Component\Templating\EngineInterface as BaseEngineInterface;
|
use Symfony\Component\Templating\EngineInterface as BaseEngineInterface;
|
||||||
|
|
||||||
@ -18,6 +20,8 @@ use Symfony\Component\Templating\EngineInterface as BaseEngineInterface;
|
|||||||
* EngineInterface is the interface each engine must implement.
|
* EngineInterface is the interface each engine must implement.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
interface EngineInterface extends BaseEngineInterface
|
interface EngineInterface extends BaseEngineInterface
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.GlobalVariables::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||||
use Symfony\Component\HttpFoundation\Request;
|
use Symfony\Component\HttpFoundation\Request;
|
||||||
use Symfony\Component\HttpFoundation\Session\Session;
|
use Symfony\Component\HttpFoundation\Session\Session;
|
||||||
@ -20,6 +22,8 @@ use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
|
|||||||
* GlobalVariables is the entry point for Symfony global variables in PHP templates.
|
* GlobalVariables is the entry point for Symfony global variables in PHP templates.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class GlobalVariables
|
class GlobalVariables
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.ActionsHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\HttpKernel\Controller\ControllerReference;
|
use Symfony\Component\HttpKernel\Controller\ControllerReference;
|
||||||
use Symfony\Component\HttpKernel\Fragment\FragmentHandler;
|
use Symfony\Component\HttpKernel\Fragment\FragmentHandler;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
@ -19,6 +21,8 @@ use Symfony\Component\Templating\Helper\Helper;
|
|||||||
* ActionsHelper manages action inclusions.
|
* ActionsHelper manages action inclusions.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class ActionsHelper extends Helper
|
class ActionsHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.AssetsHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Asset\Packages;
|
use Symfony\Component\Asset\Packages;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
|
|
||||||
@ -18,6 +20,8 @@ use Symfony\Component\Templating\Helper\Helper;
|
|||||||
* AssetsHelper helps manage asset URLs.
|
* AssetsHelper helps manage asset URLs.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class AssetsHelper extends Helper
|
class AssetsHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,13 +11,17 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.CodeHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\HttpKernel\Debug\FileLinkFormatter;
|
use Symfony\Component\HttpKernel\Debug\FileLinkFormatter;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
*
|
*
|
||||||
* @internal since Symfony 4.2, all properties will be private in 5.0
|
* @internal since Symfony 4.2
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class CodeHelper extends Helper
|
class CodeHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.FormHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Form\FormRendererInterface;
|
use Symfony\Component\Form\FormRendererInterface;
|
||||||
use Symfony\Component\Form\FormView;
|
use Symfony\Component\Form\FormView;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
@ -20,6 +22,8 @@ use Symfony\Component\Templating\Helper\Helper;
|
|||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
* @author Bernhard Schussek <bschussek@gmail.com>
|
* @author Bernhard Schussek <bschussek@gmail.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class FormHelper extends Helper
|
class FormHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.RequestHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\HttpFoundation\RequestStack;
|
use Symfony\Component\HttpFoundation\RequestStack;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
|
|
||||||
@ -18,6 +20,8 @@ use Symfony\Component\Templating\Helper\Helper;
|
|||||||
* RequestHelper provides access to the current request parameters.
|
* RequestHelper provides access to the current request parameters.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class RequestHelper extends Helper
|
class RequestHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.RouterHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
|
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
|
|
||||||
@ -18,6 +20,8 @@ use Symfony\Component\Templating\Helper\Helper;
|
|||||||
* RouterHelper manages links between pages in a template context.
|
* RouterHelper manages links between pages in a template context.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class RouterHelper extends Helper
|
class RouterHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.SessionHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\HttpFoundation\RequestStack;
|
use Symfony\Component\HttpFoundation\RequestStack;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
|
|
||||||
@ -18,6 +20,8 @@ use Symfony\Component\Templating\Helper\Helper;
|
|||||||
* SessionHelper provides read-only access to the session attributes.
|
* SessionHelper provides read-only access to the session attributes.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class SessionHelper extends Helper
|
class SessionHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.StopwatchHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Stopwatch\Stopwatch;
|
use Symfony\Component\Stopwatch\Stopwatch;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
|
|
||||||
@ -18,6 +20,8 @@ use Symfony\Component\Templating\Helper\Helper;
|
|||||||
* StopwatchHelper provides methods time your PHP templates.
|
* StopwatchHelper provides methods time your PHP templates.
|
||||||
*
|
*
|
||||||
* @author Wouter J <wouter@wouterj.nl>
|
* @author Wouter J <wouter@wouterj.nl>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class StopwatchHelper extends Helper
|
class StopwatchHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.TranslatorHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
use Symfony\Component\Translation\TranslatorInterface as LegacyTranslatorInterface;
|
use Symfony\Component\Translation\TranslatorInterface as LegacyTranslatorInterface;
|
||||||
use Symfony\Contracts\Translation\TranslatorInterface;
|
use Symfony\Contracts\Translation\TranslatorInterface;
|
||||||
@ -18,6 +20,8 @@ use Symfony\Contracts\Translation\TranslatorTrait;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TranslatorHelper extends Helper
|
class TranslatorHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Loader;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Loader;
|
||||||
|
|
||||||
|
@trigger_error('The '.FilesystemLoader::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Config\FileLocatorInterface;
|
use Symfony\Component\Config\FileLocatorInterface;
|
||||||
use Symfony\Component\Templating\Loader\LoaderInterface;
|
use Symfony\Component\Templating\Loader\LoaderInterface;
|
||||||
use Symfony\Component\Templating\Storage\FileStorage;
|
use Symfony\Component\Templating\Storage\FileStorage;
|
||||||
@ -20,6 +22,8 @@ use Symfony\Component\Templating\TemplateReferenceInterface;
|
|||||||
* FilesystemLoader is a loader that read templates from the filesystem.
|
* FilesystemLoader is a loader that read templates from the filesystem.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class FilesystemLoader implements LoaderInterface
|
class FilesystemLoader implements LoaderInterface
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating\Loader;
|
namespace Symfony\Bundle\FrameworkBundle\Templating\Loader;
|
||||||
|
|
||||||
|
@trigger_error('The '.TemplateLocator::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Config\FileLocatorInterface;
|
use Symfony\Component\Config\FileLocatorInterface;
|
||||||
use Symfony\Component\Templating\TemplateReferenceInterface;
|
use Symfony\Component\Templating\TemplateReferenceInterface;
|
||||||
|
|
||||||
@ -18,6 +20,8 @@ use Symfony\Component\Templating\TemplateReferenceInterface;
|
|||||||
* TemplateLocator locates templates in bundles.
|
* TemplateLocator locates templates in bundles.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TemplateLocator implements FileLocatorInterface
|
class TemplateLocator implements FileLocatorInterface
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.PhpEngine::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Psr\Container\ContainerInterface;
|
use Psr\Container\ContainerInterface;
|
||||||
use Symfony\Component\HttpFoundation\Response;
|
use Symfony\Component\HttpFoundation\Response;
|
||||||
use Symfony\Component\Templating\Loader\LoaderInterface;
|
use Symfony\Component\Templating\Loader\LoaderInterface;
|
||||||
@ -21,6 +23,8 @@ use Symfony\Component\Templating\TemplateNameParserInterface;
|
|||||||
* This engine knows how to render Symfony templates.
|
* This engine knows how to render Symfony templates.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class PhpEngine extends BasePhpEngine implements EngineInterface
|
class PhpEngine extends BasePhpEngine implements EngineInterface
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.TemplateFilenameParser::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Templating\TemplateNameParserInterface;
|
use Symfony\Component\Templating\TemplateNameParserInterface;
|
||||||
use Symfony\Component\Templating\TemplateReferenceInterface;
|
use Symfony\Component\Templating\TemplateReferenceInterface;
|
||||||
|
|
||||||
@ -19,6 +21,8 @@ use Symfony\Component\Templating\TemplateReferenceInterface;
|
|||||||
* TemplateReferenceInterface instances.
|
* TemplateReferenceInterface instances.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TemplateFilenameParser implements TemplateNameParserInterface
|
class TemplateFilenameParser implements TemplateNameParserInterface
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.TemplateNameParser::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\HttpKernel\KernelInterface;
|
use Symfony\Component\HttpKernel\KernelInterface;
|
||||||
use Symfony\Component\Templating\TemplateNameParser as BaseTemplateNameParser;
|
use Symfony\Component\Templating\TemplateNameParser as BaseTemplateNameParser;
|
||||||
use Symfony\Component\Templating\TemplateReferenceInterface;
|
use Symfony\Component\Templating\TemplateReferenceInterface;
|
||||||
@ -21,6 +23,8 @@ use Symfony\Component\Templating\TemplateReferenceInterface;
|
|||||||
* instances.
|
* instances.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TemplateNameParser extends BaseTemplateNameParser
|
class TemplateNameParser extends BaseTemplateNameParser
|
||||||
{
|
{
|
||||||
|
@ -11,12 +11,16 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.TemplateReference::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Templating\TemplateReference as BaseTemplateReference;
|
use Symfony\Component\Templating\TemplateReference as BaseTemplateReference;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Internal representation of a template.
|
* Internal representation of a template.
|
||||||
*
|
*
|
||||||
* @author Victor Berchet <victor@suumit.com>
|
* @author Victor Berchet <victor@suumit.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TemplateReference extends BaseTemplateReference
|
class TemplateReference extends BaseTemplateReference
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
namespace Symfony\Bundle\FrameworkBundle\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.TimedPhpEngine::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Psr\Container\ContainerInterface;
|
use Psr\Container\ContainerInterface;
|
||||||
use Symfony\Component\Stopwatch\Stopwatch;
|
use Symfony\Component\Stopwatch\Stopwatch;
|
||||||
use Symfony\Component\Templating\Loader\LoaderInterface;
|
use Symfony\Component\Templating\Loader\LoaderInterface;
|
||||||
@ -20,6 +22,8 @@ use Symfony\Component\Templating\TemplateNameParserInterface;
|
|||||||
* Times the time spent to render a template.
|
* Times the time spent to render a template.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TimedPhpEngine extends PhpEngine
|
class TimedPhpEngine extends PhpEngine
|
||||||
{
|
{
|
||||||
|
@ -16,6 +16,9 @@ use Symfony\Bundle\FrameworkBundle\Templating\TemplateFilenameParser;
|
|||||||
use Symfony\Bundle\FrameworkBundle\Tests\Fixtures\BaseBundle\BaseBundle;
|
use Symfony\Bundle\FrameworkBundle\Tests\Fixtures\BaseBundle\BaseBundle;
|
||||||
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class TemplateFinderTest extends TestCase
|
class TemplateFinderTest extends TestCase
|
||||||
{
|
{
|
||||||
public function testFindAllTemplates()
|
public function testFindAllTemplates()
|
||||||
|
@ -19,6 +19,9 @@ use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
|||||||
use Symfony\Component\Config\FileLocator;
|
use Symfony\Component\Config\FileLocator;
|
||||||
use Symfony\Component\Filesystem\Filesystem;
|
use Symfony\Component\Filesystem\Filesystem;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class TemplatePathsCacheWarmerTest extends TestCase
|
class TemplatePathsCacheWarmerTest extends TestCase
|
||||||
{
|
{
|
||||||
/** @var Filesystem */
|
/** @var Filesystem */
|
||||||
|
@ -439,6 +439,9 @@ abstract class ControllerTraitTest extends TestCase
|
|||||||
$this->assertSame(301, $response->getStatusCode());
|
$this->assertSame(301, $response->getStatusCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
public function testRenderViewTemplating()
|
public function testRenderViewTemplating()
|
||||||
{
|
{
|
||||||
$templating = $this->getMockBuilder('Symfony\Bundle\FrameworkBundle\Templating\EngineInterface')->getMock();
|
$templating = $this->getMockBuilder('Symfony\Bundle\FrameworkBundle\Templating\EngineInterface')->getMock();
|
||||||
@ -453,6 +456,9 @@ abstract class ControllerTraitTest extends TestCase
|
|||||||
$this->assertEquals('bar', $controller->renderView('foo'));
|
$this->assertEquals('bar', $controller->renderView('foo'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
public function testRenderTemplating()
|
public function testRenderTemplating()
|
||||||
{
|
{
|
||||||
$templating = $this->getMockBuilder('Symfony\Bundle\FrameworkBundle\Templating\EngineInterface')->getMock();
|
$templating = $this->getMockBuilder('Symfony\Bundle\FrameworkBundle\Templating\EngineInterface')->getMock();
|
||||||
@ -467,6 +473,9 @@ abstract class ControllerTraitTest extends TestCase
|
|||||||
$this->assertEquals('bar', $controller->render('foo')->getContent());
|
$this->assertEquals('bar', $controller->render('foo')->getContent());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
public function testStreamTemplating()
|
public function testStreamTemplating()
|
||||||
{
|
{
|
||||||
$templating = $this->getMockBuilder('Symfony\Bundle\FrameworkBundle\Templating\EngineInterface')->getMock();
|
$templating = $this->getMockBuilder('Symfony\Bundle\FrameworkBundle\Templating\EngineInterface')->getMock();
|
||||||
|
@ -39,15 +39,6 @@ $container->loadFromExtension('framework', [
|
|||||||
'gc_probability' => 1,
|
'gc_probability' => 1,
|
||||||
'save_path' => '/path/to/sessions',
|
'save_path' => '/path/to/sessions',
|
||||||
],
|
],
|
||||||
'templating' => [
|
|
||||||
'cache' => '/path/to/cache',
|
|
||||||
'engines' => ['php', 'twig'],
|
|
||||||
'loader' => ['loader.foo', 'loader.bar'],
|
|
||||||
'form' => [
|
|
||||||
'resources' => ['theme1', 'theme2'],
|
|
||||||
],
|
|
||||||
'hinclude_default_template' => 'global_hinclude_template',
|
|
||||||
],
|
|
||||||
'assets' => [
|
'assets' => [
|
||||||
'version' => 'v1',
|
'version' => 'v1',
|
||||||
],
|
],
|
||||||
|
@ -0,0 +1,14 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
$container->loadFromExtension('framework', array(
|
||||||
|
'templating' => array(
|
||||||
|
'cache' => '/path/to/cache',
|
||||||
|
'engines' => array('php', 'twig'),
|
||||||
|
'loader' => array('loader.foo', 'loader.bar'),
|
||||||
|
'form' => array(
|
||||||
|
'resources' => array('theme1', 'theme2'),
|
||||||
|
),
|
||||||
|
'hinclude_default_template' => 'global_hinclude_template',
|
||||||
|
),
|
||||||
|
'assets' => null,
|
||||||
|
));
|
@ -25,16 +25,6 @@
|
|||||||
<framework:mime-type>application/pdf</framework:mime-type>
|
<framework:mime-type>application/pdf</framework:mime-type>
|
||||||
</framework:format>
|
</framework:format>
|
||||||
</framework:request>
|
</framework:request>
|
||||||
<framework:templating cache="/path/to/cache" hinclude-default-template="global_hinclude_template">
|
|
||||||
<framework:loader>loader.foo</framework:loader>
|
|
||||||
<framework:loader>loader.bar</framework:loader>
|
|
||||||
<framework:engine>php</framework:engine>
|
|
||||||
<framework:engine>twig</framework:engine>
|
|
||||||
<framework:form>
|
|
||||||
<framework:resource>theme1</framework:resource>
|
|
||||||
<framework:resource>theme2</framework:resource>
|
|
||||||
</framework:form>
|
|
||||||
</framework:templating>
|
|
||||||
<framework:assets version="v1" />
|
<framework:assets version="v1" />
|
||||||
<framework:translator enabled="true" fallback="fr" logging="true">
|
<framework:translator enabled="true" fallback="fr" logging="true">
|
||||||
<framework:path>%kernel.project_dir%/Fixtures/translations</framework:path>
|
<framework:path>%kernel.project_dir%/Fixtures/translations</framework:path>
|
||||||
|
@ -0,0 +1,22 @@
|
|||||||
|
<?xml version="1.0" ?>
|
||||||
|
|
||||||
|
<container xmlns="http://symfony.com/schema/dic/services"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xmlns:framework="http://symfony.com/schema/dic/symfony"
|
||||||
|
xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
|
||||||
|
http://symfony.com/schema/dic/symfony http://symfony.com/schema/dic/symfony/symfony-1.0.xsd">
|
||||||
|
|
||||||
|
<framework:config secret="s3cr3t">
|
||||||
|
<framework:assets />
|
||||||
|
<framework:templating cache="/path/to/cache" hinclude-default-template="global_hinclude_template">
|
||||||
|
<framework:loader>loader.foo</framework:loader>
|
||||||
|
<framework:loader>loader.bar</framework:loader>
|
||||||
|
<framework:engine>php</framework:engine>
|
||||||
|
<framework:engine>twig</framework:engine>
|
||||||
|
<framework:form>
|
||||||
|
<framework:resource>theme1</framework:resource>
|
||||||
|
<framework:resource>theme2</framework:resource>
|
||||||
|
</framework:form>
|
||||||
|
</framework:templating>
|
||||||
|
</framework:config>
|
||||||
|
</container>
|
@ -30,13 +30,6 @@ framework:
|
|||||||
gc_divisor: 108
|
gc_divisor: 108
|
||||||
gc_maxlifetime: 90000
|
gc_maxlifetime: 90000
|
||||||
save_path: /path/to/sessions
|
save_path: /path/to/sessions
|
||||||
templating:
|
|
||||||
engines: [php, twig]
|
|
||||||
loader: [loader.foo, loader.bar]
|
|
||||||
cache: /path/to/cache
|
|
||||||
form:
|
|
||||||
resources: [theme1, theme2]
|
|
||||||
hinclude_default_template: global_hinclude_template
|
|
||||||
assets:
|
assets:
|
||||||
version: v1
|
version: v1
|
||||||
translator:
|
translator:
|
||||||
|
@ -0,0 +1,9 @@
|
|||||||
|
framework:
|
||||||
|
templating:
|
||||||
|
engines: [php, twig]
|
||||||
|
loader: [loader.foo, loader.bar]
|
||||||
|
cache: /path/to/cache
|
||||||
|
form:
|
||||||
|
resources: [theme1, theme2]
|
||||||
|
hinclude_default_template: global_hinclude_template
|
||||||
|
assets: ~
|
@ -533,9 +533,12 @@ abstract class FrameworkExtensionTest extends TestCase
|
|||||||
$this->assertFalse($container->hasDefinition('request.add_request_formats_listener'), '->registerRequestConfiguration() does not load request.xml when no request formats are defined');
|
$this->assertFalse($container->hasDefinition('request.add_request_formats_listener'), '->registerRequestConfiguration() does not load request.xml when no request formats are defined');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
public function testTemplating()
|
public function testTemplating()
|
||||||
{
|
{
|
||||||
$container = $this->createContainerFromFile('full');
|
$container = $this->createContainerFromFile('templating');
|
||||||
|
|
||||||
$this->assertTrue($container->hasDefinition('templating.name_parser'), '->registerTemplatingConfiguration() loads templating.xml');
|
$this->assertTrue($container->hasDefinition('templating.name_parser'), '->registerTemplatingConfiguration() loads templating.xml');
|
||||||
|
|
||||||
@ -1197,14 +1200,20 @@ abstract class FrameworkExtensionTest extends TestCase
|
|||||||
$this->assertEquals($expectedLoaders, $loaders);
|
$this->assertEquals($expectedLoaders, $loaders);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
public function testAssetHelperWhenAssetsAreEnabled()
|
public function testAssetHelperWhenAssetsAreEnabled()
|
||||||
{
|
{
|
||||||
$container = $this->createContainerFromFile('full');
|
$container = $this->createContainerFromFile('templating');
|
||||||
$packages = $container->getDefinition('templating.helper.assets')->getArgument(0);
|
$packages = $container->getDefinition('templating.helper.assets')->getArgument(0);
|
||||||
|
|
||||||
$this->assertSame('assets.packages', (string) $packages);
|
$this->assertSame('assets.packages', (string) $packages);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
public function testAssetHelperWhenTemplatesAreEnabledAndNoAssetsConfiguration()
|
public function testAssetHelperWhenTemplatesAreEnabledAndNoAssetsConfiguration()
|
||||||
{
|
{
|
||||||
$container = $this->createContainerFromFile('templating_no_assets');
|
$container = $this->createContainerFromFile('templating_no_assets');
|
||||||
@ -1213,6 +1222,9 @@ abstract class FrameworkExtensionTest extends TestCase
|
|||||||
$this->assertSame('assets.packages', (string) $packages);
|
$this->assertSame('assets.packages', (string) $packages);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
public function testAssetsHelperIsRemovedWhenPhpTemplatingEngineIsEnabledAndAssetsAreDisabled()
|
public function testAssetsHelperIsRemovedWhenPhpTemplatingEngineIsEnabledAndAssetsAreDisabled()
|
||||||
{
|
{
|
||||||
$container = $this->createContainerFromFile('templating_php_assets_disabled');
|
$container = $this->createContainerFromFile('templating_php_assets_disabled');
|
||||||
|
@ -37,9 +37,12 @@ class AutowiringTypesTest extends WebTestCase
|
|||||||
$this->assertInstanceOf(CachedReader::class, $annotationReader);
|
$this->assertInstanceOf(CachedReader::class, $annotationReader);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
public function testTemplatingAutowiring()
|
public function testTemplatingAutowiring()
|
||||||
{
|
{
|
||||||
static::bootKernel();
|
static::bootKernel(array('root_config' => 'templating.yml', 'environment' => 'templating'));
|
||||||
|
|
||||||
$autowiredServices = static::$container->get('test.autowiring_types.autowired_services');
|
$autowiredServices = static::$container->get('test.autowiring_types.autowired_services');
|
||||||
$this->assertInstanceOf(FrameworkBundleEngineInterface::class, $autowiredServices->getFrameworkBundleEngine());
|
$this->assertInstanceOf(FrameworkBundleEngineInterface::class, $autowiredServices->getFrameworkBundleEngine());
|
||||||
|
@ -13,23 +13,17 @@ namespace Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\Auto
|
|||||||
|
|
||||||
use Doctrine\Common\Annotations\Reader;
|
use Doctrine\Common\Annotations\Reader;
|
||||||
use Psr\Cache\CacheItemPoolInterface;
|
use Psr\Cache\CacheItemPoolInterface;
|
||||||
use Symfony\Bundle\FrameworkBundle\Templating\EngineInterface as FrameworkBundleEngineInterface;
|
|
||||||
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
|
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
|
||||||
use Symfony\Component\Templating\EngineInterface;
|
|
||||||
|
|
||||||
class AutowiredServices
|
class AutowiredServices
|
||||||
{
|
{
|
||||||
private $annotationReader;
|
private $annotationReader;
|
||||||
private $frameworkBundleEngine;
|
|
||||||
private $engine;
|
|
||||||
private $dispatcher;
|
private $dispatcher;
|
||||||
private $cachePool;
|
private $cachePool;
|
||||||
|
|
||||||
public function __construct(Reader $annotationReader = null, FrameworkBundleEngineInterface $frameworkBundleEngine, EngineInterface $engine, EventDispatcherInterface $dispatcher, CacheItemPoolInterface $cachePool)
|
public function __construct(Reader $annotationReader = null, EventDispatcherInterface $dispatcher, CacheItemPoolInterface $cachePool)
|
||||||
{
|
{
|
||||||
$this->annotationReader = $annotationReader;
|
$this->annotationReader = $annotationReader;
|
||||||
$this->frameworkBundleEngine = $frameworkBundleEngine;
|
|
||||||
$this->engine = $engine;
|
|
||||||
$this->dispatcher = $dispatcher;
|
$this->dispatcher = $dispatcher;
|
||||||
$this->cachePool = $cachePool;
|
$this->cachePool = $cachePool;
|
||||||
}
|
}
|
||||||
@ -39,16 +33,6 @@ class AutowiredServices
|
|||||||
return $this->annotationReader;
|
return $this->annotationReader;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getFrameworkBundleEngine()
|
|
||||||
{
|
|
||||||
return $this->frameworkBundleEngine;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getEngine()
|
|
||||||
{
|
|
||||||
return $this->engine;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getDispatcher()
|
public function getDispatcher()
|
||||||
{
|
{
|
||||||
return $this->dispatcher;
|
return $this->dispatcher;
|
||||||
|
@ -0,0 +1,31 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\AutowiringTypes;
|
||||||
|
|
||||||
|
use Symfony\Bundle\FrameworkBundle\Templating\EngineInterface as FrameworkBundleEngineInterface;
|
||||||
|
use Symfony\Component\Templating\EngineInterface;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Kévin Dunglas <dunglas@gmail.com>
|
||||||
|
*/
|
||||||
|
class TemplatingServices
|
||||||
|
{
|
||||||
|
private $frameworkBundleEngine;
|
||||||
|
private $engine;
|
||||||
|
|
||||||
|
public function __construct(FrameworkBundleEngineInterface $frameworkBundleEngine, EngineInterface $engine)
|
||||||
|
{
|
||||||
|
$this->frameworkBundleEngine = $frameworkBundleEngine;
|
||||||
|
$this->engine = $engine;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getFrameworkBundleEngine()
|
||||||
|
{
|
||||||
|
return $this->frameworkBundleEngine;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getEngine()
|
||||||
|
{
|
||||||
|
return $this->engine;
|
||||||
|
}
|
||||||
|
}
|
@ -15,14 +15,15 @@ use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
|||||||
use Symfony\Component\DependencyInjection\ContainerAwareTrait;
|
use Symfony\Component\DependencyInjection\ContainerAwareTrait;
|
||||||
use Symfony\Component\HttpFoundation\Request;
|
use Symfony\Component\HttpFoundation\Request;
|
||||||
use Symfony\Component\HttpFoundation\Response;
|
use Symfony\Component\HttpFoundation\Response;
|
||||||
|
use Twig\Environment;
|
||||||
|
|
||||||
class FragmentController implements ContainerAwareInterface
|
class FragmentController implements ContainerAwareInterface
|
||||||
{
|
{
|
||||||
use ContainerAwareTrait;
|
use ContainerAwareTrait;
|
||||||
|
|
||||||
public function indexAction(Request $request)
|
public function indexAction(Environment $twig)
|
||||||
{
|
{
|
||||||
return $this->container->get('templating')->renderResponse('fragment.html.php', ['bar' => new Bar()]);
|
return new Response($twig->render('fragment.html.twig', ['bar' => new Bar()]));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function inlinedAction($options, $_format)
|
public function inlinedAction($options, $_format)
|
||||||
|
@ -18,14 +18,23 @@ class FragmentTest extends WebTestCase
|
|||||||
*/
|
*/
|
||||||
public function testFragment($insulate)
|
public function testFragment($insulate)
|
||||||
{
|
{
|
||||||
$client = $this->createClient(['test_case' => 'Fragment', 'root_config' => 'config.yml']);
|
$client = $this->createClient(['test_case' => 'Fragment', 'root_config' => 'config.yml', 'debug' => true]);
|
||||||
if ($insulate) {
|
if ($insulate) {
|
||||||
$client->insulate();
|
$client->insulate();
|
||||||
}
|
}
|
||||||
|
|
||||||
$client->request('GET', '/fragment_home');
|
$client->request('GET', '/fragment_home');
|
||||||
|
|
||||||
$this->assertEquals('bar txt--html--es--fr', $client->getResponse()->getContent());
|
$this->assertEquals(<<<TXT
|
||||||
|
bar txt
|
||||||
|
--
|
||||||
|
html
|
||||||
|
--
|
||||||
|
es
|
||||||
|
--
|
||||||
|
fr
|
||||||
|
TXT
|
||||||
|
, $client->getResponse()->getContent());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getConfigs()
|
public function getConfigs()
|
||||||
|
@ -6,6 +6,3 @@ services:
|
|||||||
test.autowiring_types.autowired_services:
|
test.autowiring_types.autowired_services:
|
||||||
class: Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\AutowiringTypes\AutowiredServices
|
class: Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\AutowiringTypes\AutowiredServices
|
||||||
autowire: true
|
autowire: true
|
||||||
framework:
|
|
||||||
templating:
|
|
||||||
engines: ['php']
|
|
||||||
|
@ -0,0 +1,12 @@
|
|||||||
|
imports:
|
||||||
|
- { resource: ../config/default.yml }
|
||||||
|
|
||||||
|
services:
|
||||||
|
_defaults: { public: true }
|
||||||
|
test.autowiring_types.autowired_services:
|
||||||
|
class: Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\AutowiringTypes\TemplatingServices
|
||||||
|
autowire: true
|
||||||
|
|
||||||
|
framework:
|
||||||
|
templating:
|
||||||
|
engines: ['php']
|
@ -9,9 +9,6 @@ framework:
|
|||||||
router: true
|
router: true
|
||||||
session: true
|
session: true
|
||||||
request: true
|
request: true
|
||||||
templating:
|
|
||||||
enabled: true
|
|
||||||
engines: ['php']
|
|
||||||
assets: true
|
assets: true
|
||||||
translator: true
|
translator: true
|
||||||
validation: true
|
validation: true
|
||||||
|
@ -11,8 +11,10 @@
|
|||||||
|
|
||||||
use Symfony\Bundle\FrameworkBundle\FrameworkBundle;
|
use Symfony\Bundle\FrameworkBundle\FrameworkBundle;
|
||||||
use Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\TestBundle;
|
use Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\TestBundle;
|
||||||
|
use Symfony\Bundle\TwigBundle\TwigBundle;
|
||||||
|
|
||||||
return [
|
return [
|
||||||
new FrameworkBundle(),
|
new FrameworkBundle(),
|
||||||
|
new TwigBundle(),
|
||||||
new TestBundle(),
|
new TestBundle(),
|
||||||
];
|
];
|
||||||
|
@ -1,7 +1,9 @@
|
|||||||
imports:
|
imports:
|
||||||
- { resource: ../config/default.yml }
|
- { resource: ../config/default.yml }
|
||||||
|
- { resource: services.yml }
|
||||||
|
|
||||||
framework:
|
framework:
|
||||||
fragments: ~
|
fragments: ~
|
||||||
templating:
|
|
||||||
engines: ['php']
|
twig:
|
||||||
|
strict_variables: '%kernel.debug%'
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
services:
|
||||||
|
_defaults:
|
||||||
|
public: true
|
||||||
|
|
||||||
|
Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\Controller\FragmentController:
|
||||||
|
tags: ['controller.service_arguments']
|
@ -1,14 +0,0 @@
|
|||||||
<?php echo $this->get('actions')->render($this->get('actions')->controller('Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\Controller\FragmentController::inlinedAction', [
|
|
||||||
'options' => [
|
|
||||||
'bar' => $bar,
|
|
||||||
'eleven' => 11,
|
|
||||||
],
|
|
||||||
]));
|
|
||||||
?>--<?php
|
|
||||||
echo $this->get('actions')->render($this->get('actions')->controller('Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\Controller\FragmentController::customformatAction', ['_format' => 'html']));
|
|
||||||
?>--<?php
|
|
||||||
echo $this->get('actions')->render($this->get('actions')->controller('Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\Controller\FragmentController::customlocaleAction', ['_locale' => 'es']));
|
|
||||||
?>--<?php
|
|
||||||
$app->getRequest()->setLocale('fr');
|
|
||||||
echo $this->get('actions')->render($this->get('actions')->controller('Symfony\Bundle\FrameworkBundle\Tests\Functional\Bundle\TestBundle\Controller\FragmentController::forwardlocaleAction'));
|
|
||||||
?>
|
|
@ -0,0 +1,7 @@
|
|||||||
|
{{ render(controller('TestBundle:Fragment:inlined', {'options': {'bar': bar, 'eleven': 11}})) }}
|
||||||
|
--
|
||||||
|
{{ render(controller('TestBundle:Fragment:customformat', {'_format': 'html'})) }}
|
||||||
|
--
|
||||||
|
{{ render(controller('TestBundle:Fragment:customlocale', {'_locale': 'es'})) }}
|
||||||
|
--
|
||||||
|
{{ app.request.setLocale('fr') }}{{ render(controller('TestBundle:Fragment:forwardlocale')) -}}
|
@ -15,6 +15,9 @@ use PHPUnit\Framework\TestCase;
|
|||||||
use Symfony\Bundle\FrameworkBundle\Templating\DelegatingEngine;
|
use Symfony\Bundle\FrameworkBundle\Templating\DelegatingEngine;
|
||||||
use Symfony\Component\HttpFoundation\Response;
|
use Symfony\Component\HttpFoundation\Response;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class DelegatingEngineTest extends TestCase
|
class DelegatingEngineTest extends TestCase
|
||||||
{
|
{
|
||||||
public function testSupportsRetrievesEngineFromTheContainer()
|
public function testSupportsRetrievesEngineFromTheContainer()
|
||||||
|
@ -15,6 +15,9 @@ use Symfony\Bundle\FrameworkBundle\Templating\GlobalVariables;
|
|||||||
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
||||||
use Symfony\Component\DependencyInjection\Container;
|
use Symfony\Component\DependencyInjection\Container;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class GlobalVariablesTest extends TestCase
|
class GlobalVariablesTest extends TestCase
|
||||||
{
|
{
|
||||||
private $container;
|
private $container;
|
||||||
|
@ -17,6 +17,9 @@ use Symfony\Component\Asset\Package;
|
|||||||
use Symfony\Component\Asset\Packages;
|
use Symfony\Component\Asset\Packages;
|
||||||
use Symfony\Component\Asset\VersionStrategy\StaticVersionStrategy;
|
use Symfony\Component\Asset\VersionStrategy\StaticVersionStrategy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class AssetsHelperTest extends TestCase
|
class AssetsHelperTest extends TestCase
|
||||||
{
|
{
|
||||||
private $helper;
|
private $helper;
|
||||||
|
@ -20,6 +20,9 @@ use Symfony\Component\Form\Tests\AbstractDivLayoutTest;
|
|||||||
use Symfony\Component\Templating\Loader\FilesystemLoader;
|
use Symfony\Component\Templating\Loader\FilesystemLoader;
|
||||||
use Symfony\Component\Templating\PhpEngine;
|
use Symfony\Component\Templating\PhpEngine;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class FormHelperDivLayoutTest extends AbstractDivLayoutTest
|
class FormHelperDivLayoutTest extends AbstractDivLayoutTest
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
@ -20,6 +20,9 @@ use Symfony\Component\Form\Tests\AbstractTableLayoutTest;
|
|||||||
use Symfony\Component\Templating\Loader\FilesystemLoader;
|
use Symfony\Component\Templating\Loader\FilesystemLoader;
|
||||||
use Symfony\Component\Templating\PhpEngine;
|
use Symfony\Component\Templating\PhpEngine;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class FormHelperTableLayoutTest extends AbstractTableLayoutTest
|
class FormHelperTableLayoutTest extends AbstractTableLayoutTest
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
@ -16,6 +16,9 @@ use Symfony\Bundle\FrameworkBundle\Templating\Helper\RequestHelper;
|
|||||||
use Symfony\Component\HttpFoundation\Request;
|
use Symfony\Component\HttpFoundation\Request;
|
||||||
use Symfony\Component\HttpFoundation\RequestStack;
|
use Symfony\Component\HttpFoundation\RequestStack;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class RequestHelperTest extends TestCase
|
class RequestHelperTest extends TestCase
|
||||||
{
|
{
|
||||||
protected $requestStack;
|
protected $requestStack;
|
||||||
|
@ -18,6 +18,9 @@ use Symfony\Component\HttpFoundation\RequestStack;
|
|||||||
use Symfony\Component\HttpFoundation\Session\Session;
|
use Symfony\Component\HttpFoundation\Session\Session;
|
||||||
use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
|
use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class SessionHelperTest extends TestCase
|
class SessionHelperTest extends TestCase
|
||||||
{
|
{
|
||||||
protected $requestStack;
|
protected $requestStack;
|
||||||
|
@ -14,6 +14,9 @@ namespace Symfony\Bundle\FrameworkBundle\Tests\Templating\Helper;
|
|||||||
use PHPUnit\Framework\TestCase;
|
use PHPUnit\Framework\TestCase;
|
||||||
use Symfony\Bundle\FrameworkBundle\Templating\Helper\StopwatchHelper;
|
use Symfony\Bundle\FrameworkBundle\Templating\Helper\StopwatchHelper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class StopwatchHelperTest extends TestCase
|
class StopwatchHelperTest extends TestCase
|
||||||
{
|
{
|
||||||
public function testDevEnvironment()
|
public function testDevEnvironment()
|
||||||
|
@ -15,6 +15,9 @@ use Symfony\Bundle\FrameworkBundle\Templating\Loader\TemplateLocator;
|
|||||||
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
||||||
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class TemplateLocatorTest extends TestCase
|
class TemplateLocatorTest extends TestCase
|
||||||
{
|
{
|
||||||
public function testLocateATemplate()
|
public function testLocateATemplate()
|
||||||
|
@ -21,6 +21,9 @@ use Symfony\Component\HttpFoundation\Session\Session;
|
|||||||
use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
|
use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
|
||||||
use Symfony\Component\Templating\TemplateNameParser;
|
use Symfony\Component\Templating\TemplateNameParser;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class PhpEngineTest extends TestCase
|
class PhpEngineTest extends TestCase
|
||||||
{
|
{
|
||||||
public function testEvaluateAddsAppGlobal()
|
public function testEvaluateAddsAppGlobal()
|
||||||
|
@ -15,6 +15,9 @@ use Symfony\Bundle\FrameworkBundle\Templating\TemplateFilenameParser;
|
|||||||
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
||||||
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class TemplateFilenameParserTest extends TestCase
|
class TemplateFilenameParserTest extends TestCase
|
||||||
{
|
{
|
||||||
protected $parser;
|
protected $parser;
|
||||||
|
@ -16,6 +16,9 @@ use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
|||||||
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
||||||
use Symfony\Component\Templating\TemplateReference as BaseTemplateReference;
|
use Symfony\Component\Templating\TemplateReference as BaseTemplateReference;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class TemplateNameParserTest extends TestCase
|
class TemplateNameParserTest extends TestCase
|
||||||
{
|
{
|
||||||
protected $parser;
|
protected $parser;
|
||||||
|
@ -14,6 +14,9 @@ namespace Symfony\Bundle\FrameworkBundle\Tests\Templating;
|
|||||||
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
||||||
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class TemplateReferenceTest extends TestCase
|
class TemplateReferenceTest extends TestCase
|
||||||
{
|
{
|
||||||
public function testGetPathWorksWithNamespacedControllers()
|
public function testGetPathWorksWithNamespacedControllers()
|
||||||
|
@ -14,6 +14,9 @@ namespace Symfony\Bundle\FrameworkBundle\Tests\Templating;
|
|||||||
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
||||||
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class TemplateTest extends TestCase
|
class TemplateTest extends TestCase
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
@ -16,6 +16,9 @@ use Symfony\Bundle\FrameworkBundle\Templating\TimedPhpEngine;
|
|||||||
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
||||||
use Symfony\Component\DependencyInjection\Container;
|
use Symfony\Component\DependencyInjection\Container;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class TimedPhpEngineTest extends TestCase
|
class TimedPhpEngineTest extends TestCase
|
||||||
{
|
{
|
||||||
public function testThatRenderLogsTime()
|
public function testThatRenderLogsTime()
|
||||||
|
@ -52,6 +52,7 @@
|
|||||||
"symfony/stopwatch": "~3.4|~4.0",
|
"symfony/stopwatch": "~3.4|~4.0",
|
||||||
"symfony/translation": "~4.2",
|
"symfony/translation": "~4.2",
|
||||||
"symfony/templating": "~3.4|~4.0",
|
"symfony/templating": "~3.4|~4.0",
|
||||||
|
"symfony/twig-bundle": "~2.8|~3.2|~4.0",
|
||||||
"symfony/validator": "^4.1",
|
"symfony/validator": "^4.1",
|
||||||
"symfony/var-dumper": "~3.4|~4.0",
|
"symfony/var-dumper": "~3.4|~4.0",
|
||||||
"symfony/workflow": "^4.1",
|
"symfony/workflow": "^4.1",
|
||||||
|
@ -32,6 +32,7 @@ use Symfony\Component\Security\Core\Authorization\Voter\VoterInterface;
|
|||||||
use Symfony\Component\Security\Core\Encoder\Argon2iPasswordEncoder;
|
use Symfony\Component\Security\Core\Encoder\Argon2iPasswordEncoder;
|
||||||
use Symfony\Component\Security\Core\User\UserProviderInterface;
|
use Symfony\Component\Security\Core\User\UserProviderInterface;
|
||||||
use Symfony\Component\Security\Http\Controller\UserValueResolver;
|
use Symfony\Component\Security\Http\Controller\UserValueResolver;
|
||||||
|
use Symfony\Component\Templating\PhpEngine;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* SecurityExtension.
|
* SecurityExtension.
|
||||||
@ -97,7 +98,9 @@ class SecurityExtension extends Extension implements PrependExtensionInterface
|
|||||||
$loader->load('security.xml');
|
$loader->load('security.xml');
|
||||||
$loader->load('security_listeners.xml');
|
$loader->load('security_listeners.xml');
|
||||||
$loader->load('security_rememberme.xml');
|
$loader->load('security_rememberme.xml');
|
||||||
|
if (class_exists(PhpEngine::class)) {
|
||||||
$loader->load('templating_php.xml');
|
$loader->load('templating_php.xml');
|
||||||
|
}
|
||||||
$loader->load('templating_twig.xml');
|
$loader->load('templating_twig.xml');
|
||||||
$loader->load('collectors.xml');
|
$loader->load('collectors.xml');
|
||||||
$loader->load('guard.xml');
|
$loader->load('guard.xml');
|
||||||
|
@ -10,11 +10,15 @@
|
|||||||
<service id="templating.helper.logout_url" class="Symfony\Bundle\SecurityBundle\Templating\Helper\LogoutUrlHelper">
|
<service id="templating.helper.logout_url" class="Symfony\Bundle\SecurityBundle\Templating\Helper\LogoutUrlHelper">
|
||||||
<tag name="templating.helper" alias="logout_url" />
|
<tag name="templating.helper" alias="logout_url" />
|
||||||
<argument type="service" id="security.logout_url_generator" />
|
<argument type="service" id="security.logout_url_generator" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<service id="templating.helper.security" class="Symfony\Bundle\SecurityBundle\Templating\Helper\SecurityHelper">
|
<service id="templating.helper.security" class="Symfony\Bundle\SecurityBundle\Templating\Helper\SecurityHelper">
|
||||||
<tag name="templating.helper" alias="security" />
|
<tag name="templating.helper" alias="security" />
|
||||||
<argument type="service" id="security.authorization_checker" on-invalid="ignore" />
|
<argument type="service" id="security.authorization_checker" on-invalid="ignore" />
|
||||||
|
|
||||||
|
<deprecated>The "%service_id%" service is deprecated since Symfony 4.3 and will be removed in 5.0.</deprecated>
|
||||||
</service>
|
</service>
|
||||||
</services>
|
</services>
|
||||||
</container>
|
</container>
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\SecurityBundle\Templating\Helper;
|
namespace Symfony\Bundle\SecurityBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.LogoutUrlHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Security\Http\Logout\LogoutUrlGenerator;
|
use Symfony\Component\Security\Http\Logout\LogoutUrlGenerator;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
|
|
||||||
@ -18,6 +20,8 @@ use Symfony\Component\Templating\Helper\Helper;
|
|||||||
* LogoutUrlHelper provides generator functions for the logout URL.
|
* LogoutUrlHelper provides generator functions for the logout URL.
|
||||||
*
|
*
|
||||||
* @author Jeremy Mikola <jmikola@gmail.com>
|
* @author Jeremy Mikola <jmikola@gmail.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class LogoutUrlHelper extends Helper
|
class LogoutUrlHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\SecurityBundle\Templating\Helper;
|
namespace Symfony\Bundle\SecurityBundle\Templating\Helper;
|
||||||
|
|
||||||
|
@trigger_error('The '.SecurityHelper::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Security\Acl\Voter\FieldVote;
|
use Symfony\Component\Security\Acl\Voter\FieldVote;
|
||||||
use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface;
|
use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface;
|
||||||
use Symfony\Component\Templating\Helper\Helper;
|
use Symfony\Component\Templating\Helper\Helper;
|
||||||
@ -19,6 +21,8 @@ use Symfony\Component\Templating\Helper\Helper;
|
|||||||
* SecurityHelper provides read-only access to the security checker.
|
* SecurityHelper provides read-only access to the security checker.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class SecurityHelper extends Helper
|
class SecurityHelper extends Helper
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\TwigBundle\Loader;
|
namespace Symfony\Bundle\TwigBundle\Loader;
|
||||||
|
|
||||||
|
@trigger_error('The '.FilesystemLoader::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig notation for templates instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Config\FileLocatorInterface;
|
use Symfony\Component\Config\FileLocatorInterface;
|
||||||
use Symfony\Component\Templating\TemplateNameParserInterface;
|
use Symfony\Component\Templating\TemplateNameParserInterface;
|
||||||
use Symfony\Component\Templating\TemplateReferenceInterface;
|
use Symfony\Component\Templating\TemplateReferenceInterface;
|
||||||
@ -22,6 +24,8 @@ use Twig\Loader\FilesystemLoader as BaseFilesystemLoader;
|
|||||||
* to work with the Symfony paths and template references.
|
* to work with the Symfony paths and template references.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig notation for templates instead.
|
||||||
*/
|
*/
|
||||||
class FilesystemLoader extends BaseFilesystemLoader
|
class FilesystemLoader extends BaseFilesystemLoader
|
||||||
{
|
{
|
||||||
|
@ -280,6 +280,9 @@ class TwigExtensionTest extends TestCase
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
public function testRuntimeLoader()
|
public function testRuntimeLoader()
|
||||||
{
|
{
|
||||||
$container = $this->createContainer();
|
$container = $this->createContainer();
|
||||||
|
@ -18,6 +18,9 @@ use Symfony\Component\Config\Loader\LoaderInterface;
|
|||||||
use Symfony\Component\Filesystem\Filesystem;
|
use Symfony\Component\Filesystem\Filesystem;
|
||||||
use Symfony\Component\HttpKernel\Kernel;
|
use Symfony\Component\HttpKernel\Kernel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
class CacheWarmingTest extends TestCase
|
class CacheWarmingTest extends TestCase
|
||||||
{
|
{
|
||||||
public function testCacheIsProperlyWarmedWhenTemplatingIsAvailable()
|
public function testCacheIsProperlyWarmedWhenTemplatingIsAvailable()
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\TwigBundle;
|
namespace Symfony\Bundle\TwigBundle;
|
||||||
|
|
||||||
|
@trigger_error('The '.TwigEngine::class.' class is deprecated since version 4.3 and will be removed in 5.0; use \Twig\Environment instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Bridge\Twig\TwigEngine as BaseEngine;
|
use Symfony\Bridge\Twig\TwigEngine as BaseEngine;
|
||||||
use Symfony\Bundle\FrameworkBundle\Templating\EngineInterface;
|
use Symfony\Bundle\FrameworkBundle\Templating\EngineInterface;
|
||||||
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
use Symfony\Bundle\FrameworkBundle\Templating\TemplateReference;
|
||||||
@ -24,6 +26,8 @@ use Twig\Error\Error;
|
|||||||
* This engine renders Twig templates.
|
* This engine renders Twig templates.
|
||||||
*
|
*
|
||||||
* @author Fabien Potencier <fabien@symfony.com>
|
* @author Fabien Potencier <fabien@symfony.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TwigEngine extends BaseEngine implements EngineInterface
|
class TwigEngine extends BaseEngine implements EngineInterface
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Component\Form\Extension\Templating;
|
namespace Symfony\Component\Form\Extension\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.TemplatingExtension::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Bundle\FrameworkBundle\Templating\Helper\FormHelper;
|
use Symfony\Bundle\FrameworkBundle\Templating\Helper\FormHelper;
|
||||||
use Symfony\Component\Form\AbstractExtension;
|
use Symfony\Component\Form\AbstractExtension;
|
||||||
use Symfony\Component\Form\FormRenderer;
|
use Symfony\Component\Form\FormRenderer;
|
||||||
@ -21,6 +23,8 @@ use Symfony\Component\Templating\PhpEngine;
|
|||||||
* Integrates the Templating component with the Form library.
|
* Integrates the Templating component with the Form library.
|
||||||
*
|
*
|
||||||
* @author Bernhard Schussek <bschussek@gmail.com>
|
* @author Bernhard Schussek <bschussek@gmail.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TemplatingExtension extends AbstractExtension
|
class TemplatingExtension extends AbstractExtension
|
||||||
{
|
{
|
||||||
|
@ -11,12 +11,16 @@
|
|||||||
|
|
||||||
namespace Symfony\Component\Form\Extension\Templating;
|
namespace Symfony\Component\Form\Extension\Templating;
|
||||||
|
|
||||||
|
@trigger_error('The '.TemplatingRendererEngine::class.' class is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', E_USER_DEPRECATED);
|
||||||
|
|
||||||
use Symfony\Component\Form\AbstractRendererEngine;
|
use Symfony\Component\Form\AbstractRendererEngine;
|
||||||
use Symfony\Component\Form\FormView;
|
use Symfony\Component\Form\FormView;
|
||||||
use Symfony\Component\Templating\EngineInterface;
|
use Symfony\Component\Templating\EngineInterface;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Bernhard Schussek <bschussek@gmail.com>
|
* @author Bernhard Schussek <bschussek@gmail.com>
|
||||||
|
*
|
||||||
|
* @deprecated since version 4.3, to be removed in 5.0; use Twig instead.
|
||||||
*/
|
*/
|
||||||
class TemplatingRendererEngine extends AbstractRendererEngine
|
class TemplatingRendererEngine extends AbstractRendererEngine
|
||||||
{
|
{
|
||||||
|
@ -60,30 +60,6 @@ use Symfony\Component\Form\Extension\Core\CoreExtension;
|
|||||||
* ->addExtension(new ValidatorExtension($validator))
|
* ->addExtension(new ValidatorExtension($validator))
|
||||||
* ->getFormFactory();
|
* ->getFormFactory();
|
||||||
*
|
*
|
||||||
* Support for the Templating component is provided by TemplatingExtension.
|
|
||||||
* This extension needs a PhpEngine object for rendering forms. As second
|
|
||||||
* argument you should pass the names of the default themes. Here is an
|
|
||||||
* example for using the default layout with "<div>" tags:
|
|
||||||
*
|
|
||||||
* use Symfony\Component\Form\Extension\Templating\TemplatingExtension;
|
|
||||||
*
|
|
||||||
* $formFactory = Forms::createFormFactoryBuilder()
|
|
||||||
* ->addExtension(new TemplatingExtension($engine, null, [
|
|
||||||
* 'FrameworkBundle:Form',
|
|
||||||
* ]))
|
|
||||||
* ->getFormFactory();
|
|
||||||
*
|
|
||||||
* The next example shows how to include the "<table>" layout:
|
|
||||||
*
|
|
||||||
* use Symfony\Component\Form\Extension\Templating\TemplatingExtension;
|
|
||||||
*
|
|
||||||
* $formFactory = Forms::createFormFactoryBuilder()
|
|
||||||
* ->addExtension(new TemplatingExtension($engine, null, [
|
|
||||||
* 'FrameworkBundle:Form',
|
|
||||||
* 'FrameworkBundle:FormTable',
|
|
||||||
* ]))
|
|
||||||
* ->getFormFactory();
|
|
||||||
*
|
|
||||||
* @author Bernhard Schussek <bschussek@gmail.com>
|
* @author Bernhard Schussek <bschussek@gmail.com>
|
||||||
*/
|
*/
|
||||||
final class Forms
|
final class Forms
|
||||||
|
@ -48,8 +48,7 @@
|
|||||||
"suggest": {
|
"suggest": {
|
||||||
"symfony/validator": "For form validation.",
|
"symfony/validator": "For form validation.",
|
||||||
"symfony/security-csrf": "For protecting forms against CSRF attacks.",
|
"symfony/security-csrf": "For protecting forms against CSRF attacks.",
|
||||||
"symfony/twig-bridge": "For templating with Twig.",
|
"symfony/twig-bridge": "For templating with Twig."
|
||||||
"symfony/framework-bundle": "For templating with PHP."
|
|
||||||
},
|
},
|
||||||
"autoload": {
|
"autoload": {
|
||||||
"psr-4": { "Symfony\\Component\\Form\\": "" },
|
"psr-4": { "Symfony\\Component\\Form\\": "" },
|
||||||
|
@ -59,6 +59,10 @@ class HIncludeFragmentRenderer extends RoutableFragmentRenderer
|
|||||||
throw new \InvalidArgumentException('The hinclude rendering strategy needs an instance of Twig\Environment or Symfony\Component\Templating\EngineInterface');
|
throw new \InvalidArgumentException('The hinclude rendering strategy needs an instance of Twig\Environment or Symfony\Component\Templating\EngineInterface');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($templating instanceof EngineInterface) {
|
||||||
|
@trigger_error(sprintf('Using a "%s" instance for "%s" is deprecated since version 4.3; use a \Twig\Environment instance instead.', EngineInterface::class, __CLASS__), E_USER_DEPRECATED);
|
||||||
|
}
|
||||||
|
|
||||||
$this->templating = $templating;
|
$this->templating = $templating;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -16,6 +16,8 @@ use Symfony\Component\HttpFoundation\Request;
|
|||||||
use Symfony\Component\HttpKernel\Controller\ControllerReference;
|
use Symfony\Component\HttpKernel\Controller\ControllerReference;
|
||||||
use Symfony\Component\HttpKernel\Fragment\HIncludeFragmentRenderer;
|
use Symfony\Component\HttpKernel\Fragment\HIncludeFragmentRenderer;
|
||||||
use Symfony\Component\HttpKernel\UriSigner;
|
use Symfony\Component\HttpKernel\UriSigner;
|
||||||
|
use Twig\Environment;
|
||||||
|
use Twig\Loader\ArrayLoader;
|
||||||
|
|
||||||
class HIncludeFragmentRendererTest extends TestCase
|
class HIncludeFragmentRendererTest extends TestCase
|
||||||
{
|
{
|
||||||
@ -74,7 +76,17 @@ class HIncludeFragmentRendererTest extends TestCase
|
|||||||
$this->assertEquals('<hx:include src="/foo" p1="v1" p2="v2" id="bar">default</hx:include>', $strategy->render('/foo', Request::create('/'), ['default' => 'default', 'id' => 'bar', 'attributes' => ['p1' => 'v1', 'p2' => 'v2']])->getContent());
|
$this->assertEquals('<hx:include src="/foo" p1="v1" p2="v2" id="bar">default</hx:include>', $strategy->render('/foo', Request::create('/'), ['default' => 'default', 'id' => 'bar', 'attributes' => ['p1' => 'v1', 'p2' => 'v2']])->getContent());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testRenderWithDefaultText()
|
public function testRenderWithTwigAndDefaultText()
|
||||||
|
{
|
||||||
|
$twig = new Environment($loader = new ArrayLoader());
|
||||||
|
$strategy = new HIncludeFragmentRenderer($twig);
|
||||||
|
$this->assertEquals('<hx:include src="/foo">loading...</hx:include>', $strategy->render('/foo', Request::create('/'), ['default' => 'loading...'])->getContent());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group legacy
|
||||||
|
*/
|
||||||
|
public function testRenderWithDefaultTextLegacy()
|
||||||
{
|
{
|
||||||
$engine = $this->getMockBuilder('Symfony\\Component\\Templating\\EngineInterface')->getMock();
|
$engine = $this->getMockBuilder('Symfony\\Component\\Templating\\EngineInterface')->getMock();
|
||||||
$engine->expects($this->once())
|
$engine->expects($this->once())
|
||||||
@ -86,17 +98,4 @@ class HIncludeFragmentRendererTest extends TestCase
|
|||||||
$strategy = new HIncludeFragmentRenderer($engine);
|
$strategy = new HIncludeFragmentRenderer($engine);
|
||||||
$this->assertEquals('<hx:include src="/foo">default</hx:include>', $strategy->render('/foo', Request::create('/'), ['default' => 'default'])->getContent());
|
$this->assertEquals('<hx:include src="/foo">default</hx:include>', $strategy->render('/foo', Request::create('/'), ['default' => 'default'])->getContent());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testRenderWithEngineAndDefaultText()
|
|
||||||
{
|
|
||||||
$engine = $this->getMockBuilder('Symfony\\Component\\Templating\\EngineInterface')->getMock();
|
|
||||||
$engine->expects($this->once())
|
|
||||||
->method('exists')
|
|
||||||
->with('loading...')
|
|
||||||
->willThrowException(new \RuntimeException());
|
|
||||||
|
|
||||||
// only default
|
|
||||||
$strategy = new HIncludeFragmentRenderer($engine);
|
|
||||||
$this->assertEquals('<hx:include src="/foo">loading...</hx:include>', $strategy->render('/foo', Request::create('/'), ['default' => 'loading...'])->getContent());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -39,7 +39,8 @@
|
|||||||
"symfony/templating": "~3.4|~4.0",
|
"symfony/templating": "~3.4|~4.0",
|
||||||
"symfony/translation": "~4.2",
|
"symfony/translation": "~4.2",
|
||||||
"symfony/var-dumper": "^4.1.1",
|
"symfony/var-dumper": "^4.1.1",
|
||||||
"psr/cache": "~1.0"
|
"psr/cache": "~1.0",
|
||||||
|
"twig/twig": "^1.34|^2.4"
|
||||||
},
|
},
|
||||||
"provide": {
|
"provide": {
|
||||||
"psr/log-implementation": "1.0"
|
"psr/log-implementation": "1.0"
|
||||||
|
Reference in New Issue
Block a user