Skip to content

Commit 92e992b

Browse files
Merge branch '4.4' into 5.0
* 4.4: Fix merge [DoctrineBridge] try to fix deprecations from doctrine/persistence [DI] Add support for immutable setters in CallTrait [Cache] Propagate expiry when syncing items in ChainAdapter Removed request header "Content-Type" from the preferred format guessing mechanism [Routing] fix memoryleak when loading compiled routes [Translation] fix memoryleak in PhpFileLoader fix triggering deprecation in file locator bug #34877 [TwigBundle] fix findTemplate() to return `null`
2 parents e70c6dc + 4633eda commit 92e992b

File tree

2 files changed

+10
-5
lines changed

2 files changed

+10
-5
lines changed

Controller/AbstractController.php

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111

1212
namespace Symfony\Bundle\FrameworkBundle\Controller;
1313

14-
use Doctrine\Common\Persistence\ManagerRegistry;
14+
use Doctrine\Common\Persistence\ManagerRegistry as LegacyManagerRegistry;
15+
use Doctrine\Persistence\ManagerRegistry;
1516
use Psr\Container\ContainerInterface;
1617
use Psr\Link\LinkInterface;
1718
use Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException;
@@ -94,7 +95,7 @@ public static function getSubscribedServices()
9495
'session' => '?'.SessionInterface::class,
9596
'security.authorization_checker' => '?'.AuthorizationCheckerInterface::class,
9697
'twig' => '?'.Environment::class,
97-
'doctrine' => '?'.ManagerRegistry::class,
98+
'doctrine' => '?'.(interface_exists(ManagerRegistry::class) ? ManagerRegistry::class : LegacyManagerRegistry::class),
9899
'form.factory' => '?'.FormFactoryInterface::class,
99100
'security.token_storage' => '?'.TokenStorageInterface::class,
100101
'security.csrf.token_manager' => '?'.CsrfTokenManagerInterface::class,
@@ -337,9 +338,11 @@ protected function createFormBuilder($data = null, array $options = []): FormBui
337338
/**
338339
* Shortcut to return the Doctrine Registry service.
339340
*
341+
* @return ManagerRegistry|LegacyManagerRegistry
342+
*
340343
* @throws \LogicException If DoctrineBundle is not available
341344
*/
342-
protected function getDoctrine(): ManagerRegistry
345+
protected function getDoctrine()
343346
{
344347
if (!$this->container->has('doctrine')) {
345348
throw new \LogicException('The DoctrineBundle is not registered in your application. Try running "composer require symfony/orm-pack".');

Tests/Controller/AbstractControllerTest.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111

1212
namespace Symfony\Bundle\FrameworkBundle\Tests\Controller;
1313

14+
use Doctrine\Common\Persistence\ManagerRegistry as LegacyManagerRegistry;
15+
use Doctrine\Persistence\ManagerRegistry;
1416
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
1517
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
1618
use Symfony\Component\DependencyInjection\Container;
@@ -53,7 +55,7 @@ public function testSubscribedServices()
5355
'session' => '?Symfony\\Component\\HttpFoundation\\Session\\SessionInterface',
5456
'security.authorization_checker' => '?Symfony\\Component\\Security\\Core\\Authorization\\AuthorizationCheckerInterface',
5557
'twig' => '?Twig\\Environment',
56-
'doctrine' => '?Doctrine\\Common\\Persistence\\ManagerRegistry',
58+
'doctrine' => '?'.(interface_exists(ManagerRegistry::class) ? ManagerRegistry::class : LegacyManagerRegistry::class),
5759
'form.factory' => '?Symfony\\Component\\Form\\FormFactoryInterface',
5860
'parameter_bag' => '?Symfony\\Component\\DependencyInjection\\ParameterBag\\ContainerBagInterface',
5961
'message_bus' => '?Symfony\\Component\\Messenger\\MessageBusInterface',
@@ -532,7 +534,7 @@ public function testCreateFormBuilder()
532534

533535
public function testGetDoctrine()
534536
{
535-
$doctrine = $this->getMockBuilder('Doctrine\Common\Persistence\ManagerRegistry')->getMock();
537+
$doctrine = $this->getMockBuilder(interface_exists(ManagerRegistry::class) ? ManagerRegistry::class : LegacyManagerRegistry::class)->getMock();
536538

537539
$container = new Container();
538540
$container->set('doctrine', $doctrine);

0 commit comments

Comments
 (0)