Skip to content

Commit d64cc2f

Browse files
committed
Remove deprecated ContainerBuilder::getAutoconfiguredAttributes()
1 parent efc4014 commit d64cc2f

File tree

4 files changed

+10
-40
lines changed

4 files changed

+10
-40
lines changed

UPGRADE-8.0.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,11 @@ Console
8484
$application->addCommand(new CreateUserCommand());
8585
```
8686

87+
DependencyInjection
88+
-------------------
89+
90+
* Remove the `ContainerBuilder::getAutoconfiguredAttributes()` method, use `getAttributeAutoconfigurators()` instead to retrieve all the autoconfigurator callbacks for a specific attribute class.
91+
8792
DoctrineBridge
8893
--------------
8994

src/Symfony/Component/DependencyInjection/CHANGELOG.md

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

4+
8.0
5+
---
6+
7+
* Remove `ContainerBuilder::getAutoconfiguredAttributes()`, replaced by `ContainerBuilder::getAttributeAutoconfigurators()`
8+
49
7.4
510
---
611

src/Symfony/Component/DependencyInjection/ContainerBuilder.php

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1488,27 +1488,6 @@ public function getAutoconfiguredInstanceof(): array
14881488
return $this->autoconfiguredInstanceof;
14891489
}
14901490

1491-
/**
1492-
* @return array<class-string, callable>
1493-
*
1494-
* @deprecated Use {@see getAttributeAutoconfigurators()} instead
1495-
*/
1496-
public function getAutoconfiguredAttributes(): array
1497-
{
1498-
trigger_deprecation('symfony/dependency-injection', '7.3', 'The "%s()" method is deprecated, use "getAttributeAutoconfigurators()" instead.', __METHOD__);
1499-
1500-
$autoconfiguredAttributes = [];
1501-
foreach ($this->autoconfiguredAttributes as $attribute => $configurators) {
1502-
if (count($configurators) > 1) {
1503-
throw new LogicException(\sprintf('The "%s" attribute has %d configurators. Use "getAttributeAutoconfigurators()" to get all of them.', $attribute, count($configurators)));
1504-
}
1505-
1506-
$autoconfiguredAttributes[$attribute] = $configurators[0];
1507-
}
1508-
1509-
return $autoconfiguredAttributes;
1510-
}
1511-
15121491
/**
15131492
* @return array<class-string, callable[]>
15141493
*/

src/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -842,25 +842,6 @@ public function testMergeAttributeAutoconfiguration()
842842
$this->assertSame([AsTaggedItem::class => [$c1, $c2]], $container->getAttributeAutoconfigurators());
843843
}
844844

845-
/**
846-
* @group legacy
847-
*/
848-
public function testGetAutoconfiguredAttributes()
849-
{
850-
$container = new ContainerBuilder();
851-
$container->registerAttributeForAutoconfiguration(AsTaggedItem::class, $c = static function () {});
852-
853-
$this->expectUserDeprecationMessage('Since symfony/dependency-injection 7.3: The "Symfony\Component\DependencyInjection\ContainerBuilder::getAutoconfiguredAttributes()" method is deprecated, use "getAttributeAutoconfigurators()" instead.');
854-
$configurators = $container->getAutoconfiguredAttributes();
855-
$this->assertSame($c, $configurators[AsTaggedItem::class]);
856-
857-
// Method call fails with more than one configurator for a given attribute
858-
$container->registerAttributeForAutoconfiguration(AsTaggedItem::class, $c = static function () {});
859-
860-
$this->expectException(LogicException::class);
861-
$container->getAutoconfiguredAttributes();
862-
}
863-
864845
public function testResolveEnvValues()
865846
{
866847
$_ENV['DUMMY_ENV_VAR'] = 'du%%y';

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