8000 [DoctrineBridge] Remove deprecated classes and `ContainerAwareEventMa… · symfony/symfony@4f3337d · GitHub
[go: up one dir, main page]

Skip to content

Commit 4f3337d

Browse files
[DoctrineBridge] Remove deprecated classes and ContainerAwareEventManager::getListeners() deprecation
1 parent aca170b commit 4f3337d

14 files changed

+245
-974
lines changed

.github/expected-missing-return-types.diff

Lines changed: 206 additions & 217 deletions
Large diffs are not rendered by default.

UPGRADE-7.0.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,15 @@ Symfony 6.4 and Symfony 7.0 will be released simultaneously at the end of Novemb
55
release process, both versions will have the same features, but Symfony 7.0 won't include any deprecated features.
66
To upgrade, make sure to resolve all deprecation notices.
77

8+
DoctrineBridge
9+
--------------
10+
11+
* Remove `DoctrineDbalCacheAdapterSchemaSubscriber`, use `DoctrineDbalCacheAdapterSchemaListener` instead
12+
* Remove `MessengerTransportDoctrineSchemaSubscriber`, use `MessengerTransportDoctrineSchemaListener` instead
13+
* Remove `RememberMeTokenProviderDoctrineSchemaSubscriber`, use `RememberMeTokenProviderDoctrineSchemaListener` instead
14+
* `ContainerAwareEventManager::getListeners()` must be called with an event name
15+
* DoctrineBridge now requires `doctrine/event-manager:^2`
16+
817
ProxyManagerBridge
918
------------------
1019

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
"php": ">=8.2",
3737
"composer-runtime-api": ">=2.1",
3838
"ext-xml": "*",
39-
"doctrine/event-manager": "^1.2|^2",
39+
"doctrine/event-manager": "^2",
4040
"doctrine/persistence": "^2|^3",
4141
"twig/twig": "^2.13|^3.0.4",
4242
"psr/cache": "^2.0|^3.0",

src/Symfony/Bridge/Doctrine/CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11
CHANGELOG
22
=========
33

4+
7.0
5+
---
6+
7+
* Remove `DoctrineDbalCacheAdapterSchemaSubscriber`, `MessengerTransportDoctrineSchemaSubscriber` and `RememberMeTokenProviderDoctrineSchemaSubscriber`
8+
* `ContainerAwareEventManager::getListeners()` must be called with an event name
9+
* DoctrineBridge now requires `doctrine/event-manager:^2`
10+
* Remove `DbalLogger`
11+
* Remove `DoctrineDataCollector::addLogger()`, use a `DebugDataHolder` instead
12+
413
6.4
514
---
615

src/Symfony/Bridge/Doctrine/ContainerAwareEventManager.php

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ public function __construct(ContainerInterface $container, array $listeners = []
4343
$this->listeners = $listeners;
4444
}
4545

46-
public function dispatchEvent($eventName, EventArgs $eventArgs = null): void
46+
public function dispatchEvent(string $eventName, EventArgs $eventArgs = null): void
4747
{
4848
if (!$this->initializedSubscribers) {
4949
$this->initializeSubscribers();
@@ -63,13 +63,8 @@ public function dispatchEvent($eventName, EventArgs $eventArgs = null): void
6363
}
6464
}
6565

66-
public function getListeners($event = null): array
66+
public function getListeners(string $event): array
6767
{
68-
if (null === $event) {
69-
trigger_deprecation('symfony/doctrine-bridge', '6.2', 'Calling "%s()" without an event name is deprecated. Call "getAllListeners()" instead.', __METHOD__);
70-
71-
return $this->getAllListeners();
72-
}
7368
if (!$this->initializedSubscribers) {
7469
$this->initializeSubscribers();
7570
}
@@ -95,7 +90,7 @@ public function getAllListeners(): array
9590
return $this->listeners;
9691
}
9792

98-
public function hasListeners($event): bool
93+
public function hasListeners(string $event): bool
9994
{
10095
if (!$this->initializedSubscribers) {
10196
$this->initializeSubscribers();
@@ -104,7 +99,7 @@ public function hasListeners($event): bool
10499
return isset($this->listeners[$event]) && $this->listeners[$event];
105100
}
106101

107-
public function addEventListener($events, $listener): void
102+
public function addEventListener(string|array $events, object|string $listener): void
108103
{
109104
if (!$this->initializedSubscribers) {
110105
$this->initializeSubscribers();
@@ -125,7 +120,7 @@ public function addEventListener($events, $listener): void
125120
}
126121
}
127122

128-
public function removeEventListener($events, $listener): void
123+
public function removeEventListener(string|array $events, object|string $listener): void
129124
{
130125
if (!$this->initializedSubscribers) {
131126
$this->initializeSubscribers();
@@ -185,12 +180,8 @@ private function initializeSubscribers(): void
185180
$this->addEventListener(...$listener);
186181
continue;
187182
}
188-
if (\is_string($listener)) {
189-
$listener = $this->container->get($listener);
190-
}
191-
// throw new \InvalidArgumentException(sprintf('Using Doctrine subscriber "%s" is not allowed, declare it as a listener instead.', \is_object($listener) ? $listener::class : $listener));
192-
trigger_deprecation('symfony/doctrine-bridge', '6.3', 'Using Doctrine subscribers as services is deprecated, declare listeners instead');
193-
parent::addEventSubscriber($listener);
183+
184+
throw new \InvalidArgumentException(sprintf('Using Doctrine subscriber "%s" is not allowed, declare it as a listener instead.', \is_object($listener) ? $listener::class : $listener));
194185
}
195186
}
196187

src/Symfony/Bridge/Doctrine/DataCollector/DoctrineDataCollector.php

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -39,28 +39,10 @@ class DoctrineDataCollector extends DataCollector
3939

4040
public function __construct(
4141
private ManagerRegistry $registry,
42-
private ?DebugDataHolder $debugDataHolder = null,
42+
private DebugDataHolder $debugDataHolder,
4343
) {
4444
$this->connections = $registry->getConnectionNames();
4545
$this->managers = $registry->getManagerNames();
46-
47-
if (null === $debugDataHolder) {
48-
trigger_deprecation('symfony/doctrine-bridge', '6.4', 'Not passing an instance of "%s" as "$debugDataHolder" to "%s()" is deprecated.', DebugDataHolder::class, __METHOD__);
49-
}
50-
}
51-
52-
/**
53-
* Adds the stack logger for a connection.
54-
*
55-
* @return void
56-
*
57-
* @deprecated since Symfony 6.4, use a DebugDataHolder instead.
58-
*/
59-
public function addLogger(string $name, DebugStack $logger)
60-
{
61-
trigger_deprecation('symfony/doctrine-bridge', '6.4', '"%s()" is deprecated. Pass an instance of "%s" to the constructor instead.', __METHOD__, DebugDataHolder::class);
62-
63-
$this->loggers[$name] = $logger;
6446
}
6547

6648
/**

src/Symfony/Bridge/Doctrine/Logger/DbalLogger.php

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

src/Symfony/Bridge/Doctrine/SchemaListener/DoctrineDbalCacheAdapterSchemaSubscriber.php

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

src/Symfony/Bridge/Doctrine/SchemaListener/MessengerTransportDoctrineSchemaSubscriber.php

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

src/Symfony/Bridge/Doctrine/SchemaListener/RememberMeTokenProviderDoctrineSchemaSubscriber.php

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

0 commit comments

Comments
 (0)
0