Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit a6a0df2

Browse files
committed
[FrameworkBundle] remove deprecater controller a:b:c notation
1 parent dc82bba commit a6a0df2

12 files changed

+16
-582
lines changed

UPGRADE-5.0.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,7 @@ FrameworkBundle
219219
* Removed support for legacy translations directories `src/Resources/translations/` and `src/Resources/<BundleName>/translations/`, use `translations/` instead.
220220
* Support for the legacy directory structure in `translation:update` and `debug:translation` commands has been removed.
221221
* Removed the "Psr\SimpleCache\CacheInterface" / "cache.app.simple" service, use "Symfony\Contracts\Cache\CacheInterface" / "cache.app" instead.
222+
* Removed `Symfony\Bundle\FrameworkBundle\EventListener\ResolveControllerNameSubscriber`.
222223

223224
HttpFoundation
224225
--------------

src/Symfony/Bundle/FrameworkBundle/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ CHANGELOG
55
-----
66

77
* Removed support to load translation resources from the legacy directories `src/Resources/translations/` and `src/Resources/<BundleName>/translations/`
8+
* Removed `Symfony\Bundle\FrameworkBundle\Controller\ControllerNameParser`.
9+
* Removed `ResolveControllerNameSubscriber`
810

911
4.3.0
1012
-----

src/Symfony/Bundle/FrameworkBundle/Controller/ControllerNameParser.php

Lines changed: 0 additions & 142 deletions
This file was deleted.

src/Symfony/Bundle/FrameworkBundle/Controller/ControllerResolver.php

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,8 @@
2121
*/
2222
class ControllerResolver extends ContainerControllerResolver
2323
{
24-
protected $parser;
25-
26-
public function __construct(ContainerInterface $container, ControllerNameParser $parser, LoggerInterface $logger = null)
24+
public function __construct(ContainerInterface $container, LoggerInterface $logger = null)
2725
{
28-
$this->parser = $parser;
29-
3026
parent::__construct($container, $logger);
3127
}
3228

@@ -35,14 +31,6 @@ public function __construct(ContainerInterface $container, ControllerNameParser
3531
*/
3632
protected function createController($controller)
3733
{
38-
if (false === strpos($controller, '::') && 2 === substr_count($controller, ':')) {
39-
// controller in the a:b:c notation then
40-
$deprecatedNotation = $controller;
41-
$controller = $this->parser->parse($deprecatedNotation, false);
42-
43-
@trigger_error(sprintf('Referencing controllers with %s is deprecated since Symfony 4.1. Use %s instead.', $deprecatedNotation, $controller), E_USER_DEPRECATED);
44-
}
45-
4634
return parent::createController($controller);
4735
}
4836

@@ -61,9 +49,7 @@ private function configureController($controller, string $class)
6149
}
6250
if ($controller instanceof AbstractController) {
6351
if (null === $previousContainer = $controller->setContainer($this->container)) {
64-
@trigger_error(sprintf('Auto-injection of the container for "%s" is deprecated since Symfony 4.2. Configure it as a service instead.', $class), E_USER_DEPRECATED);
65-
// To be uncommented on Symfony 5:
66-
//throw new \LogicException(sprintf('"%s" has no container set, did you forget to define it as a service subscriber?', $class));
52+
throw new \LogicException(sprintf('"%s" has no container set, did you forget to define it as a service subscriber?', $class));
6753
} else {
6854
$controller->setContainer($previousContainer);
6955
}

src/Symfony/Bundle/FrameworkBundle/EventListener/ResolveControllerNameSubscriber.php

Lines changed: 0 additions & 52 deletions
This file was deleted.

src/Symfony/Bundle/FrameworkBundle/Resources/config/routing.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@
4646
</service>
4747

4848
<service id="routing.loader" class="Symfony\Bundle\FrameworkBundle\Routing\DelegatingLoader" public="true">
49-
<argument type="service" id="controller_name_converter" />
5049
<argument type="service" id="routing.resolver" />
5150
<argument type="collection" />
5251
</service>

src/Symfony/Bundle/FrameworkBundle/Resources/config/web.xml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,9 @@
77
<services>
88
<defaults public="false" />
99

10-
<service id="controller_name_converter" class="Symfony\Bundle\FrameworkBundle\Controller\ControllerNameParser">
11-
<tag name="monolog.logger" channel="request" />
12-
<argument type="service" id="kernel" />
13-
</service>
14-
1510
<service id="controller_resolver" class="Symfony\Bundle\FrameworkBundle\Controller\ControllerResolver">
1611
<tag name="monolog.logger" channel="request" />
1712
<argument type="service" id="service_container" />
18-
<argument type="service" id="controller_name_converter" />
1913
<argument type="service" id="logger" on-invalid="ignore" />
2014
</service>
2115

@@ -81,10 +75,6 @@
8175
<tag name="kernel.event_subscriber" />
8276
</service>
8377

84-
<service id="resolve_controller_name_subscriber" class="Symfony\Bundle\FrameworkBundle\EventListener\ResolveControllerNameSubscriber">
85-
<argument type="service" id="controller_name_converter" />
86-
<tag name="kernel.event_subscriber" />
87-
</service>
8878
<service id="disallow_search_engine_index_response_listener" class="Symfony\Component\HttpKernel\EventListener\DisallowRobotsIndexingListener">
8979
<tag name="kernel.event_subscriber" />
9080
</service>

src/Symfony/Bundle/FrameworkBundle/Routing/DelegatingLoader.php

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
namespace Symfony\Bundle\FrameworkBundle\Routing;
1313

14-
use Symfony\Bundle\FrameworkBundle\Controller\ControllerNameParser;
1514
use Symfony\Component\Config\Exception\LoaderLoadException;
1615
use Symfony\Component\Config\Loader\DelegatingLoader as BaseDelegatingLoader;
1716
use Symfony\Component\Config\Loader\LoaderResolverInterface;
@@ -31,12 +30,10 @@ class DelegatingLoader extends BaseDelegatingLoader
3130
private $defaultOptions;
3231

3332
/**
34-
* @param ControllerNameParser $parser A ControllerNameParser instance
3533
* @param LoaderResolverInterface $resolver A LoaderResolverInterface instance
3634
*/
37-
public function __construct(ControllerNameParser $parser, LoaderResolverInterface $resolver, array $defaultOptions = [])
35+
public function __construct(LoaderResolverInterface $resolver, array $defaultOptions = [])
3836
{
39-
$this->parser = $parser;
4037
$this->defaultOptions = $defaultOptions;
4138

4239
parent::__construct($resolver);
@@ -86,18 +83,6 @@ public function load($resource, $type = null)
8683
continue;
8784
}
8885

89-
if (2 === substr_count($controller, ':')) {
90-
$deprecatedNotation = $controller;
91-
92-
try {
93-
$controller = $this->parser->parse($controller, false);
94-
95-
@trigger_error(sprintf('Referencing controllers with %s is deprecated since Symfony 4.1, use "%s" instead.', $deprecatedNotation, $controller), E_USER_DEPRECATED);
96-
} catch (\InvalidArgumentException $e) {
97-
// unable to optimize unknown notation
98-
}
99-
}
100-
10186
if (1 === substr_count($controller, ':')) {
10287
$nonDeprecatedNotation = str_replace(':', '::', $controller);
10388
// TODO deprecate this in 5.1

0 commit comments

Comments
 (0)