Skip to content

Commit a6a0df2

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

File tree

12 files changed

+16
-582
lines changed

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)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy