From ff76d2653d18353707ba327b21d547e9b142ab34 Mon Sep 17 00:00:00 2001 From: Antoine Lamirault Date: Sat, 29 Oct 2022 17:09:21 +0200 Subject: [PATCH] [SecurityBundle] Deprecate enabling bundle and not configuring it --- UPGRADE-6.3.md | 7 +++++++ src/Symfony/Bundle/SecurityBundle/CHANGELOG.md | 5 +++++ .../DependencyInjection/SecurityExtension.php | 4 ++++ .../SecurityExtensionTest.php | 16 ++++++++++++++++ .../Functional/app/AliasedEvents/config.yml | 8 ++++++++ 5 files changed, 40 insertions(+) create mode 100644 UPGRADE-6.3.md diff --git a/UPGRADE-6.3.md b/UPGRADE-6.3.md new file mode 100644 index 0000000000000..e1655bfa81b62 --- /dev/null +++ b/UPGRADE-6.3.md @@ -0,0 +1,7 @@ +UPGRADE FROM 6.2 to 6.3 +======================= + +SecurityBundle +-------------- + + * Deprecate enabling bundle and not configuring it diff --git a/src/Symfony/Bundle/SecurityBundle/CHANGELOG.md b/src/Symfony/Bundle/SecurityBundle/CHANGELOG.md index dcefe374dda4c..a1ffdb0349c3a 100644 --- a/src/Symfony/Bundle/SecurityBundle/CHANGELOG.md +++ b/src/Symfony/Bundle/SecurityBundle/CHANGELOG.md @@ -1,6 +1,11 @@ CHANGELOG ========= +6.3 +--- + + * Deprecate enabling bundle and not configuring it + 6.2 --- diff --git a/src/Symfony/Bundle/SecurityBundle/DependencyInjection/SecurityExtension.php b/src/Symfony/Bundle/SecurityBundle/DependencyInjection/SecurityExtension.php index cd514bb44367d..6b91a65d14ae7 100644 --- a/src/Symfony/Bundle/SecurityBundle/DependencyInjection/SecurityExtension.php +++ b/src/Symfony/Bundle/SecurityBundle/DependencyInjection/SecurityExtension.php @@ -15,6 +15,7 @@ use Symfony\Bundle\SecurityBundle\DependencyInjection\Security\Factory\AuthenticatorFactoryInterface; use Symfony\Bundle\SecurityBundle\DependencyInjection\Security\Factory\FirewallListenerFactoryInterface; use Symfony\Bundle\SecurityBundle\DependencyInjection\Security\UserProvider\UserProviderFactoryInterface; +use Symfony\Bundle\SecurityBundle\SecurityBundle; use Symfony\Component\Config\Definition\ConfigurationInterface; use Symfony\Component\Config\Definition\Exception\InvalidConfigurationException; use Symfony\Component\Config\FileLocator; @@ -88,6 +89,9 @@ public function prepend(ContainerBuilder $container) public function load(array $configs, ContainerBuilder $container) { if (!array_filter($configs)) { + trigger_deprecation('symfony/security-bundle', '6.3', 'Enabling bundle "%s" and not configuring it is deprecated.', SecurityBundle::class); + // uncomment the following line in 7.0 + // throw new InvalidArgumentException(sprintf('Enabling bundle "%s" and not configuring it is not allowed.', SecurityBundle::class)); return; } diff --git a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/SecurityExtensionTest.php b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/SecurityExtensionTest.php index bcfb169ea321d..227d126db33e2 100644 --- a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/SecurityExtensionTest.php +++ b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/SecurityExtensionTest.php @@ -848,6 +848,22 @@ public function testConfigureCustomFirewallListener() $this->assertContains('custom_firewall_listener_id', $firewallListeners); } + /** + * @group legacy + */ + public function testNothingDoneWithEmptyConfiguration() + { + $container = $this->getRawContainer(); + + $container->loadFromExtension('security'); + + $this->expectDeprecation('Since symfony/security-bundle 6.3: Enabling bundle "Symfony\Bundle\SecurityBundle\SecurityBundle" and not configuring it is deprecated.'); + + $container->compile(); + + $this->assertFalse($container->has('security.authorization_checker')); + } + protected function getRawContainer() { $container = new ContainerBuilder(); diff --git a/src/Symfony/Bundle/SecurityBundle/Tests/Functional/app/AliasedEvents/config.yml b/src/Symfony/Bundle/SecurityBundle/Tests/Functional/app/AliasedEvents/config.yml index bdd94fd0afaa7..290804e61cbe6 100644 --- a/src/Symfony/Bundle/SecurityBundle/Tests/Functional/app/AliasedEvents/config.yml +++ b/src/Symfony/Bundle/SecurityBundle/Tests/Functional/app/AliasedEvents/config.yml @@ -1,2 +1,10 @@ imports: - { resource: ./../config/framework.yml } + +security: + providers: + dummy: + memory: ~ + firewalls: + dummy: + security: false 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