8000 [DependencyInjection] disable the possibility to have a reference in … · Dahipster/symfony@c0152e1 · GitHub
[go: up one dir, main page]

Skip to content

Commit c0152e1

Browse files
committed
[DependencyInjection] disable the possibility to have a reference in parameters (as it breaks as soon as you want to use the PHP dumper with no solution - performance wise)
1 parent 63e7dda commit c0152e1

File tree

8 files changed

+5
-14
lines changed

8 files changed

+5
-14
lines changed

src/Symfony/Components/DependencyInjection/Dumper/PhpDumper.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ protected function exportParameters($parameters, $indent = 6)
347347
}
348348
elseif ($value instanceof Reference)
349349
{
350-
$value = sprintf("new Reference('%s')", $value);
350+
throw new \InvalidArgumentException(sprintf('You cannot dump a container with parameters that contain references to other services (reference to service %s found).', $value));
351351
}
352352
else
353353
{

src/Symfony/Components/DependencyInjection/Loader/Extension/SymfonyTemplatingExtension.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ public function templatingLoad($config)
7070
);
7171
}
7272

73-
$configuration->setParameter('symfony.templating.loader.chain.loaders', $loaders);
73+
$configuration->getDefinition('symfony.templating.loader.chain')->addArgument($loaders);
7474
$configuration->setAlias('symfony.templating.loader', 'symfony.templating.loader.chain');
7575

7676
// helpers
@@ -91,7 +91,7 @@ public function templatingLoad($config)
9191
);
9292
}
9393

94-
$configuration->setParameter('symfony.templating.helpers', $helpers);
94+
$configuration->getDefinition('symfony.templating.helperset')->addArgument($helpers);
9595

9696
// cache?
9797
if (isset($config['cache']))

src/Symfony/Components/DependencyInjection/Loader/Extension/xml/symfony/templating-1.0.xml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,7 @@
2121
<argument type="service" id="symfony.templating.helperset" />
2222
</service>
2323

24-
<service id="symfony.templating.helperset" class="%symfony.templating.helperset.class%">
25-
<argument>%symfony.templating.helpers%</argument>
26-
</service>
24+
<service id="symfony.templating.helperset" class="%symfony.templating.helperset.class%" />
2725

2826
<service id="symfony.templating.loader.filesystem" class="%symfony.templating.loader.filesystem.class%">
2927
<argument>%symfony.templating.loader.filesystem.path%</argument>
@@ -34,9 +32,7 @@
3432
<argument>%symfony.templating.loader.cache.path%</argument>
3533
</service>
3634

37-
<service id="symfony.templating.loader.chain" class="%symfony.templating.loader.chain.class%">
38-
<argument>%symfony.templating.loader.chain.loaders%</argument>
39-
</service>
35+
<service id="symfony.templating.loader.chain" class="%symfony.templating.loader.chain.class%" />
4036

4137
<service id="symfony.templating.helper.javascripts" class="%symfony.templating.helper.javascripts.class%" />
4238
<service id="symfony.templating.helper.stylesheets" class="%symfony.templating.helper.stylesheets.class%" />

tests/fixtures/Symfony/Components/DependencyInjection/containers/container9.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
'baz_class' => 'BazClass',
3535
'foo_class' => 'FooClass',
3636
'foo' => 'bar',
37-
'foo_bar' => new Reference('foo_bar'),
3837
));
3938
$container->setAlias('alias_for_foo', 'foo');
4039
$container->

tests/fixtures/Symfony/Components/DependencyInjection/graphviz/services9.dot

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ digraph sc {
1313
node_foo -> node_foo_baz [label="" style="filled"];
1414
node_foo -> node_service_container [label="" style="filled"];
1515
node_bar -> node_foo_baz [label="" style="filled"];
16-
node_bar -> node_foo_bar [label="" style="filled"];
1716
node_method_call1 -> node_foo [label="setBar()" style="dashed"];
1817
node_method_call1 -> node_foo [label="setBar()" style="dashed"];
1918
node_method_call1 -> node_foo [label="setBar()" style="dashed"];

tests/fixtures/Symfony/Components/DependencyInjection/php/services9.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,6 @@ protected function getDefaultParameters()
148148
'baz_class' => 'BazClass',
149149
'foo_class' => 'FooClass',
150150
'foo' => 'bar',
151-
'foo_bar' => new Reference('foo_bar'),
152151
);
153152
}
154153
}

tests/fixtures/Symfony/Components/DependencyInjection/xml/services9.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
<parameter key="baz_class">BazClass</parameter>
88
<parameter key="foo_class">FooClass</parameter>
99
<parameter key="foo">bar</parameter>
10-
<parameter key="foo_bar" type="service" id="foo_bar" />
1110
</parameters>
1211
<services>
1312
<service id="foo" class="FooClass" constructor="getInstance" shared="false">

tests/fixtures/Symfony/Components/DependencyInjection/yaml/services9.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ parameters:
22
baz_class: BazClass
33
foo_class: FooClass
44
foo: bar
5-
foo_bar: '@foo_bar'
65

76
services:
87
foo:

0 commit comments

Comments
 (0)
0