Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitf107568

Browse files
bug#62138 [DependencyInjection] Fix FC with Config v8 (nicolas-grekas)
This PR was merged into the 7.4 branch.Discussion----------[DependencyInjection] Fix FC with Config v8| Q | A| ------------- | ---| Branch? | 7.4| Bug fix? | yes| New feature? | no| Deprecations? | no| Issues | -| License | MITRequired for#62113Commits-------6b4edab [DependencyInjection] Fix FC with Config v8
2 parents8b09cd9 +6b4edab commitf107568

File tree

3 files changed

+18
-10
lines changed

3 files changed

+18
-10
lines changed

‎src/Symfony/Component/DependencyInjection/Loader/PhpFileLoader.php‎

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,21 @@ class PhpFileLoader extends FileLoader
4040
{
4141
protectedbool$autoRegisterAliasesForSinglyImplementedInterfaces =false;
4242

43+
private ?ConfigBuilderGeneratorInterface$generator;
44+
4345
publicfunction__construct(
4446
ContainerBuilder$container,
4547
FileLocatorInterface$locator,
4648
?string$env =null,
47-
private ?ConfigBuilderGeneratorInterface$generator =null,
49+
ConfigBuilderGeneratorInterface|bool|null$generator =null,
4850
bool$prepend =false,
4951
) {
52+
if (\is_bool($generator)) {
53+
$prepend =$generator;
54+
$generator =null;
55+
}
56+
$this->generator =$generator;
57+
5058
parent::__construct($container,$locator,$env,$prepend);
5159
}
5260

‎src/Symfony/Component/DependencyInjection/Tests/Loader/PhpFileLoaderTest.php‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public function testPrependExtensionConfigWithLoadMethod()
6161
$container =newContainerBuilder();
6262
$container->registerExtension(new \AcmeExtension());
6363
$container->prependExtensionConfig('acme', ['foo' =>'bar']);
64-
$loader =newPhpFileLoader($container,newFileLocator(\dirname(__DIR__).'/Fixtures/config'),'prod',newConfigBuilderGenerator(sys_get_temp_dir()),true);
64+
$loader =newPhpFileLoader($container,newFileLocator(\dirname(__DIR__).'/Fixtures/config'),'prod',prepend:true);
6565
$loader->load('config_builder.php');
6666

6767
$expected = [
@@ -77,7 +77,7 @@ public function testPrependExtensionConfigWithImportMethod()
7777
$container =newContainerBuilder();
7878
$container->registerExtension(new \AcmeExtension());
7979
$container->prependExtensionConfig('acme', ['foo' =>'bar']);
80-
$loader =newPhpFileLoader($container,newFileLocator(\dirname(__DIR__).'/Fixtures/config'),'prod',newConfigBuilderGenerator(sys_get_temp_dir()),true);
80+
$loader =newPhpFileLoader($container,newFileLocator(\dirname(__DIR__).'/Fixtures/config'),'prod',prepend:true);
8181
$loader->import('config_builder.php');
8282

8383
$expected = [
@@ -117,7 +117,7 @@ public function testConfig($file)
117117
$fixtures =realpath(__DIR__.'/../Fixtures');
118118
$container =newContainerBuilder();
119119
$container->registerExtension(new \AcmeExtension());
120-
$loader =newPhpFileLoader($container,newFileLocator(),'prod',newConfigBuilderGenerator(sys_get_temp_dir()));
120+
$loader =newPhpFileLoader($container,newFileLocator(),'prod');
121121
$loader->load($fixtures.'/config/'.$file.'.php');
122122

123123
$container->compile();
@@ -264,7 +264,7 @@ public function testWhenEnv()
264264

265265
$fixtures =realpath(__DIR__.'/../Fixtures');
266266
$container =newContainerBuilder();
267-
$loader =newPhpFileLoader($container,newFileLocator(),'dev',newConfigBuilderGenerator(sys_get_temp_dir()));
267+
$loader =newPhpFileLoader($container,newFileLocator(),'dev');
268268

269269
$loader->load($fixtures.'/config/when_env.php');
270270
}
@@ -275,7 +275,7 @@ public function testNotWhenEnv()
275275

276276
$fixtures =realpath(__DIR__.'/../Fixtures');
277277
$container =newContainerBuilder();
278-
$loader =newPhpFileLoader($container,newFileLocator(),'prod',newConfigBuilderGenerator(sys_get_temp_dir()));
278+
$loader =newPhpFileLoader($container,newFileLocator(),'prod');
279279

280280
$loader->load($fixtures.'/config/not_when_env.php');
281281
}
@@ -284,7 +284,7 @@ public function testUsingBothWhenAndNotWhenEnv()
284284
{
285285
$fixtures =realpath(__DIR__.'/../Fixtures');
286286
$container =newContainerBuilder();
287-
$loader =newPhpFileLoader($container,newFileLocator(),'prod',newConfigBuilderGenerator(sys_get_temp_dir()));
287+
$loader =newPhpFileLoader($container,newFileLocator(),'prod');
288288

289289
$this->expectException(LogicException::class);
290290
$this->expectExceptionMessage('Using both #[When] and #[WhenNot] attributes on the same target is not allowed.');
@@ -311,12 +311,12 @@ public function testServiceWithServiceLocatorArgument()
311311
$this->assertEquals([newServiceLocatorArgument($values)],$container->getDefinition('locator_dependent_inline_service')->getArguments());
312312
}
313313

314-
publicfunctiontestConfigBuilderEnvConfigurator()
314+
publicfunctiontestArrayEnvConfigurator()
315315
{
316316
$container =newContainerBuilder();
317317
$container->registerExtension(new \AcmeExtension());
318-
$loader =newPhpFileLoader($container,newFileLocator(\dirname(__DIR__).'/Fixtures/config'),'prod',newConfigBuilderGenerator(sys_get_temp_dir()),true);
319-
$loader->load('config_builder_env_configurator.php');
318+
$loader =newPhpFileLoader($container,newFileLocator(\dirname(__DIR__).'/Fixtures/config'),'prod');
319+
$loader->load('array_env_configurator.php');
320320

321321
$this->assertIsString($container->getExtensionConfig('acme')[0]['color']);
322322
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp