diff --git a/UPGRADE-7.3.md b/UPGRADE-7.3.md
index 3824b8b24e139..7e5720e3d03e3 100644
--- a/UPGRADE-7.3.md
+++ b/UPGRADE-7.3.md
@@ -13,6 +13,7 @@ FrameworkBundle
* Not setting the `framework.property_info.with_constructor_extractor` option explicitly is deprecated
because its default value will change in version 8.0
+ * Deprecate the `--show-arguments` option of the `container:debug` command, as arguments are now always shown
Serializer
----------
diff --git a/src/Symfony/Bundle/FrameworkBundle/CHANGELOG.md b/src/Symfony/Bundle/FrameworkBundle/CHANGELOG.md
index 02bfe6af4ce24..97fa33a3c5eb3 100644
--- a/src/Symfony/Bundle/FrameworkBundle/CHANGELOG.md
+++ b/src/Symfony/Bundle/FrameworkBundle/CHANGELOG.md
@@ -8,6 +8,7 @@ CHANGELOG
* Rename `TranslationUpdateCommand` to `TranslationExtractCommand`
* Add JsonEncoder services and configuration
* Add new `framework.property_info.with_constructor_extractor` option to allow enabling or disabling the constructor extractor integration
+ * Deprecate the `--show-arguments` option of the `container:debug` command, as arguments are now always shown
7.2
---
diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
index 46cdca9abf1de..ca3aacf73ca2b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
@@ -151,6 +151,10 @@ protected function execute(InputInterface $input, OutputInterface $output): int
$tag = $this->findProperTagName($input, $errorIo, $object, $tag);
$options = ['tag' => $tag];
} elseif ($name = $input->getArgument('name')) {
+ if ($input->getOption('show-arguments')) {
+ $errorIo->warning('The "--show-arguments" option is deprecated.');
+ }
+
$name = $this->findProperServiceName($input, $errorIo, $object, $name, $input->getOption('show-hidden'));
$options = ['id' => $name];
} elseif ($input->getOption('deprecations')) {
@@ -161,7 +165,6 @@ protected function execute(InputInterface $input, OutputInterface $output): int
$helper = new DescriptorHelper();
$options['format'] = $input->getOption('format');
- $options['show_arguments'] = $input->getOption('show-arguments');
$options['show_hidden'] = $input->getOption('show-hidden');
$options['raw_text'] = $input->getOption('raw');
$options['output'] = $io;
diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/JsonDescriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/JsonDescriptor.php
index 5b83f0746c4f4..c7705a1a05975 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/JsonDescriptor.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/JsonDescriptor.php
@@ -63,7 +63,7 @@ protected function describeContainerTags(ContainerBuilder $container, array $opt
foreach ($this->findDefinitionsByTag($container, $showHidden) as $tag => $definitions) {
$data[$tag] = [];
foreach ($definitions as $definition) {
- $data[$tag][] = $this->getContainerDefinitionData($definition, true, false, $container, $options['id'] ?? null);
+ $data[$tag][] = $this->getContainerDefinitionData($definition, true, $container, $options['id'] ?? null);
}
}
@@ -79,7 +79,7 @@ protected function describeContainerService(object $service, array $options = []
if ($service instanceof Alias) {
$this->describeContainerAlias($service, $options, $container);
} elseif ($service instanceof Definition) {
- $this->writeData($this->getContainerDefinitionData($service, isset($options['omit_tags']) && $options['omit_tags'], isset($options['show_arguments']) && $options['show_arguments'], $container, $options['id']), $options);
+ $this->writeData($this->getContainerDefinitionData($service, isset($options['omit_tags']) && $options['omit_tags'], $container, $options['id']), $options);
} else {
$this->writeData($service::class, $options);
}
@@ -92,7 +92,6 @@ protected function describeContainerServices(ContainerBuilder $container, array
: $this->sortServiceIds($container->getServiceIds());
$showHidden = isset($options['show_hidden']) && $options['show_hidden'];
$omitTags = isset($options['omit_tags']) && $options['omit_tags'];
- $showArguments = isset($options['show_arguments']) && $options['show_arguments'];
$data = ['definitions' => [], 'aliases' => [], 'services' => []];
if (isset($options['filter'])) {
@@ -112,7 +111,7 @@ protected function describeContainerServices(ContainerBuilder $container, array
if ($service->hasTag('container.excluded')) {
continue;
}
- $data['definitions'][$serviceId] = $this->getContainerDefinitionData($service, $omitTags, $showArguments, $container, $serviceId);
+ $data['definitions'][$serviceId] = $this->getContainerDefinitionData($service, $omitTags, $container, $serviceId);
} else {
$data['services'][$serviceId] = $service::class;
}
@@ -123,7 +122,7 @@ protected function describeContainerServices(ContainerBuilder $container, array
protected function describeContainerDefinition(Definition $definition, array $options = [], ?ContainerBuilder $container = null): void
{
- $this->writeData($this->getContainerDefinitionData($definition, isset($options['omit_tags']) && $options['omit_tags'], isset($options['show_arguments']) && $options['show_arguments'], $container, $options['id'] ?? null), $options);
+ $this->writeData($this->getContainerDefinitionData($definition, isset($options['omit_tags']) && $options['omit_tags'], $container, $options['id'] ?? null), $options);
}
protected function describeContainerAlias(Alias $alias, array $options = [], ?ContainerBuilder $container = null): void
@@ -135,7 +134,7 @@ protected function describeContainerAlias(Alias $alias, array $options = [], ?Co
}
$this->writeData(
- [$this->getContainerAliasData($alias), $this->getContainerDefinitionData($container->getDefinition((string) $alias), isset($options['omit_tags']) && $options['omit_tags'], isset($options['show_arguments']) && $options['show_arguments'], $container, (string) $alias)],
+ [$this->getContainerAliasData($alias), $this->getContainerDefinitionData($container->getDefinition((string) $alias), isset($options['omit_tags']) && $options['omit_tags'], $container, (string) $alias)],
array_merge($options, ['id' => (string) $alias])
);
}
@@ -245,7 +244,7 @@ protected function sortParameters(ParameterBag $parameters): array
return $sortedParameters;
}
- private function getContainerDefinitionData(Definition $definition, bool $omitTags = false, bool $showArguments = false, ?ContainerBuilder $container = null, ?string $id = null): array
+ private function getContainerDefinitionData(Definition $definition, bool $omitTags = false, ?ContainerBuilder $container = null, ?string $id = null): array
{
$data = [
'class' => (string) $definition->getClass(),
@@ -269,9 +268,7 @@ private function getContainerDefinitionData(Definition $definition, bool $omitTa
$data['description'] = $classDescription;
}
- if ($showArguments) {
- $data['arguments'] = $this->describeValue($definition->getArguments(), $omitTags, $showArguments, $container, $id);
- }
+ $data['arguments'] = $this->describeValue($definition->getArguments(), $omitTags, $container, $id);
$data['file'] = $definition->getFile();
@@ -418,12 +415,12 @@ private function getCallableData(mixed $callable): array
throw new \InvalidArgumentException('Callable is not describable.');
}
- private function describeValue($value, bool $omitTags, bool $showArguments, ?ContainerBuilder $container = null, ?string $id = null): mixed
+ private function describeValue($value, bool $omitTags, ?ContainerBuilder $container = null, ?string $id = null): mixed
{
if (\is_array($value)) {
$data = [];
foreach ($value as $k => $v) {
- $data[$k] = $this->describeValue($v, $omitTags, $showArguments, $container, $id);
+ $data[$k] = $this->describeValue($v, $omitTags, $container, $id);
}
return $data;
@@ -445,11 +442,11 @@ private function describeValue($value, bool $omitTags, bool $showArguments, ?Con
}
if ($value instanceof ArgumentInterface) {
- return $this->describeValue($value->getValues(), $omitTags, $showArguments, $container, $id);
+ return $this->describeValue($value->getValues(), $omitTags, $container, $id);
}
if ($value instanceof Definition) {
- return $this->getContainerDefinitionData($value, $omitTags, $showArguments, $container, $id);
+ return $this->getContainerDefinitionData($value, $omitTags, $container, $id);
}
return $value;
diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/MarkdownDescriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/MarkdownDescriptor.php
index 5203d14c329e9..d057c598deff6 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/MarkdownDescriptor.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/MarkdownDescriptor.php
@@ -155,7 +155,6 @@ protected function describeContainerServices(ContainerBuilder $container, array
$serviceIds = isset($options['tag']) && $options['tag']
? $this->sortTaggedServicesByPriority($container->findTaggedServiceIds($options['tag']))
: $this->sortServiceIds($container->getServiceIds());
- $showArguments = isset($options['show_arguments']) && $options['show_arguments'];
$services = ['definitions' => [], 'aliases' => [], 'services' => []];
if (isset($options['filter'])) {
@@ -185,7 +184,7 @@ protected function describeContainerServices(ContainerBuilder $container, array
$this->write("\n\nDefinitions\n-----------\n");
foreach ($services['definitions'] as $id => $service) {
$this->write("\n");
- $this->describeContainerDefinition($service, ['id' => $id, 'show_arguments' => $showArguments], $container);
+ $this->describeContainerDefinition($service, ['id' => $id], $container);
}
}
@@ -231,9 +230,7 @@ protected function describeContainerDefinition(Definition $definition, array $op
$output .= "\n".'- Deprecated: no';
}
- if (isset($options['show_arguments']) && $options['show_arguments']) {
- $output .= "\n".'- Arguments: '.($definition->getArguments() ? 'yes' : 'no');
- }
+ $output .= "\n".'- Arguments: '.($definition->getArguments() ? 'yes' : 'no');
if ($definition->getFile()) {
$output .= "\n".'- File: `'.$definition->getFile().'`';
diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php
index 5efaab496bb94..12b3454115e2c 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php
@@ -351,9 +351,8 @@ protected function describeContainerDefinition(Definition $definition, array $op
}
}
- $showArguments = isset($options['show_arguments']) && $options['show_arguments'];
$argumentsInformation = [];
- if ($showArguments && ($arguments = $definition->getArguments())) {
+ if ($arguments = $definition->getArguments()) {
foreach ($arguments as $argument) {
if ($argument instanceof ServiceClosureArgument) {
$argument = $argument->getValues()[0];
diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php
index c41ac296f14d8..8daa61d2a2855 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php
@@ -59,17 +59,17 @@ protected function describeContainerService(object $service, array $options = []
throw new \InvalidArgumentException('An "id" option must be provided.');
}
- $this->writeDocument($this->getContainerServiceDocument($service, $options['id'], $container, isset($options['show_arguments']) && $options['show_arguments']));
+ $this->writeDocument($this->getContainerServiceDocument($service, $options['id'], $container));
}
protected function describeContainerServices(ContainerBuilder $container, array $options = []): void
{
- $this->writeDocument($this->getContainerServicesDocument($container, $options['tag'] ?? null, isset($options['show_hidden']) && $options['show_hidden'], isset($options['show_arguments']) && $options['show_arguments'], $options['filter'] ?? null));
+ $this->writeDocument($this->getContainerServicesDocument($container, $options['tag'] ?? null, isset($options['show_hidden']) && $options['show_hidden'], $options['filter'] ?? null));
}
protected function describeContainerDefinition(Definition $definition, array $options = [], ?ContainerBuilder $container = null): void
{
- $this->writeDocument($this->getContainerDefinitionDocument($definition, $options['id'] ?? null, isset($options['omit_tags']) && $options['omit_tags'], isset($options['show_arguments']) && $options['show_arguments'], $container));
+ $this->writeDocument($this->getContainerDefinitionDocument($definition, $options['id'] ?? null, isset($options['omit_tags']) && $options['omit_tags'], $container));
}
protected function describeContainerAlias(Alias $alias, array $options = [], ?ContainerBuilder $container = null): void
@@ -83,7 +83,7 @@ protected function describeContainerAlias(Alias $alias, array $options = [], ?Co
return;
}
- $dom->appendChild($dom->importNode($this->getContainerDefinitionDocument($container->getDefinition((string) $alias), (string) $alias, false, false, $container)->childNodes->item(0), true));
+ $dom->appendChild($dom->importNode($this->getContainerDefinitionDocument($container->getDefinition((string) $alias), (string) $alias, false, $container)->childNodes->item(0), true));
$this->writeDocument($dom);
}
@@ -260,7 +260,7 @@ private function getContainerTagsDocument(ContainerBuilder $container, bool $sho
$tagXML->setAttribute('name', $tag);
foreach ($definitions as $serviceId => $definition) {
- $definitionXML = $this->getContainerDefinitionDocument($definition, $serviceId, true, false, $container);
+ $definitionXML = $this->getContainerDefinitionDocument($definition, $serviceId, true, $container);
$tagXML->appendChild($dom->importNode($definitionXML->childNodes->item(0), true));
}
}
@@ -268,17 +268,17 @@ private function getContainerTagsDocument(ContainerBuilder $container, bool $sho
return $dom;
}
- private function getContainerServiceDocument(object $service, string $id, ?ContainerBuilder $container = null, bool $showArguments = false): \DOMDocument
+ private function getContainerServiceDocument(object $service, string $id, ?ContainerBuilder $container = null): \DOMDocument
{
$dom = new \DOMDocument('1.0', 'UTF-8');
if ($service instanceof Alias) {
$dom->appendChild($dom->importNode($this->getContainerAliasDocument($service, $id)->childNodes->item(0), true));
if ($container) {
- $dom->appendChild($dom->importNode($this->getContainerDefinitionDocument($container->getDefinition((string) $service), (string) $service, false, $showArguments, $container)->childNodes->item(0), true));
+ $dom->appendChild($dom->importNode($this->getContainerDefinitionDocument($container->getDefinition((string) $service), (string) $service, false, $container)->childNodes->item(0), true));
}
} elseif ($service instanceof Definition) {
- $dom->appendChild($dom->importNode($this->getContainerDefinitionDocument($service, $id, false, $showArguments, $container)->childNodes->item(0), true));
+ $dom->appendChild($dom->importNode($this->getContainerDefinitionDocument($service, $id, false, $container)->childNodes->item(0), true));
} else {
$dom->appendChild($serviceXML = $dom->createElement('service'));
$serviceXML->setAttribute('id', $id);
@@ -288,7 +288,7 @@ private function getContainerServiceDocument(object $service, string $id, ?Conta
return $dom;
}
- private function getContainerServicesDocument(ContainerBuilder $container, ?string $tag = null, bool $showHidden = false, bool $showArguments = false, ?callable $filter = null): \DOMDocument
+ private function getContainerServicesDocument(ContainerBuilder $container, ?string $tag = null, bool $showHidden = false, ?callable $filter = null): \DOMDocument
{
$dom = new \DOMDocument('1.0', 'UTF-8');
$dom->appendChild($containerXML = $dom->createElement('container'));
@@ -311,14 +311,14 @@ private function getContainerServicesDocument(ContainerBuilder $container, ?stri
continue;
}
- $serviceXML = $this->getContainerServiceDocument($service, $serviceId, null, $showArguments);
+ $serviceXML = $this->getContainerServiceDocument($service, $serviceId, null);
$containerXML->appendChild($containerXML->ownerDocument->importNode($serviceXML->childNodes->item(0), true));
}
return $dom;
}
- private function getContainerDefinitionDocument(Definition $definition, ?string $id = null, bool $omitTags = false, bool $showArguments = false, ?ContainerBuilder $container = null): \DOMDocument
+ private function getContainerDefinitionDocument(Definition $definition, ?string $id = null, bool $omitTags = false, ?ContainerBuilder $container = null): \DOMDocument
{
$dom = new \DOMDocument('1.0', 'UTF-8');
$dom->appendChild($serviceXML = $dom->createElement('definition'));
@@ -378,10 +378,8 @@ private function getContainerDefinitionDocument(Definition $definition, ?string
}
}
- if ($showArguments) {
- foreach ($this->getArgumentNodes($definition->getArguments(), $dom, $container) as $node) {
- $serviceXML->appendChild($node);
- }
+ foreach ($this->getArgumentNodes($definition->getArguments(), $dom, $container) as $node) {
+ $serviceXML->appendChild($node);
}
if (!$omitTags) {
@@ -443,7 +441,7 @@ private function getArgumentNodes(array $arguments, \DOMDocument $dom, ?Containe
$argumentXML->appendChild($childArgumentXML);
}
} elseif ($argument instanceof Definition) {
- $argumentXML->appendChild($dom->importNode($this->getContainerDefinitionDocument($argument, null, false, true, $container)->childNodes->item(0), true));
+ $argumentXML->appendChild($dom->importNode($this->getContainerDefinitionDocument($argument, null, false, $container)->childNodes->item(0), true));
} elseif ($argument instanceof AbstractArgument) {
$argumentXML->setAttribute('type', 'abstract');
$argumentXML->appendChild(new \DOMText($argument->getText()));
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/AbstractDescriptorTestCase.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/AbstractDescriptorTestCase.php
index dde1f000b3787..477bd1014f2e5 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/AbstractDescriptorTestCase.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/AbstractDescriptorTestCase.php
@@ -110,7 +110,7 @@ public static function getDescribeContainerDefinitionTestData(): array
/** @dataProvider getDescribeContainerDefinitionWithArgumentsShownTestData */
public function testDescribeContainerDefinitionWithArgumentsShown(Definition $definition, $expectedDescription)
{
- $this->assertDescription($expectedDescription, $definition, ['show_arguments' => true]);
+ $this->assertDescription($expectedDescription, $definition, []);
}
public static function getDescribeContainerDefinitionWithArgumentsShownTestData(): array
@@ -307,7 +307,7 @@ private static function getContainerBuilderDescriptionTestData(array $objects):
'public' => ['show_hidden' => false],
'tag1' => ['show_hidden' => true, 'tag' => 'tag1'],
'tags' => ['group_by' => 'tags', 'show_hidden' => true],
- 'arguments' => ['show_hidden' => false, 'show_arguments' => true],
+ 'arguments' => ['show_hidden' => false],
];
$data = [];
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.json
index a2c015faa0bb6..e4acc2a832697 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.json
@@ -13,6 +13,71 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [
+ {
+ "type": "service",
+ "id": ".definition_2"
+ },
+ "%parameter%",
+ {
+ "class": "inline_service",
+ "public": false,
+ "synthetic": false,
+ "lazy": false,
+ "shared": true,
+ "abstract": false,
+ "autowire": false,
+ "autoconfigure": false,
+ "deprecated": false,
+ "arguments": [
+ "arg1",
+ "arg2"
+ ],
+ "file": null,
+ "tags": [],
+ "usages": [
+ "alias_1"
+ ]
+ },
+ [
+ "foo",
+ {
+ "type": "service",
+ "id": ".definition_2"
+ },
+ {
+ "class": "inline_service",
+ "public": false,
+ "synthetic": false,
+ "lazy": false,
+ "shared": true,
+ "abstract": false,
+ "autowire": false,
+ "autoconfigure": false,
+ "deprecated": false,
+ "arguments": [],
+ "file": null,
+ "tags": [],
+ "usages": [
+ "alias_1"
+ ]
+ }
+ ],
+ [
+ {
+ "type": "service",
+ "id": "definition_1"
+ },
+ {
+ "type": "service",
+ "id": ".definition_2"
+ }
+ ],
+ {
+ "type": "abstract",
+ "text": "placeholder"
+ }
+ ],
"file": null,
"factory_class": "Full\\Qualified\\FactoryClass",
"factory_method": "get",
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.md
index c92c8435ff847..fd94e43e9762e 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.md
@@ -14,6 +14,7 @@
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: yes
- Factory Class: `Full\Qualified\FactoryClass`
- Factory Method: `get`
- Usages: alias_1
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.txt b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.txt
index 7883d51c07300..eea6c70b11794 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.txt
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.txt
@@ -3,20 +3,28 @@
[33mInformation for Service "[39m[32mservice_1[39m[33m"[39m
[33m===================================[39m
- ---------------- -----------------------------
- [32m Option [39m [32m Value [39m
- ---------------- -----------------------------
- Service ID service_1
- Class Full\Qualified\Class1
- Tags -
- Public yes
- Synthetic no
- Lazy yes
- Shared yes
- Abstract yes
- Autowired no
- Autoconfigured no
- Factory Class Full\Qualified\FactoryClass
- Factory Method get
- Usages alias_1
- ---------------- -----------------------------
+ ---------------- ---------------------------------
+ [32m Option [39m [32m Value [39m
+ ---------------- ---------------------------------
+ Service ID service_1
+ Class Full\Qualified\Class1
+ Tags -
+ Public yes
+ Synthetic no
+ Lazy yes
+ Shared yes
+ Abstract yes
+ Autowired no
+ Autoconfigured no
+ Factory Class Full\Qualified\FactoryClass
+ Factory Method get
+ Arguments Service(.definition_2)
+ %parameter%
+ Inlined Service
+ Array (3 element(s))
+ Iterator (2 element(s))
+ - Service(definition_1)
+ - Service(.definition_2)
+ Abstract argument (placeholder)
+ Usages alias_1
+ ---------------- ---------------------------------
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.xml
index 06c8406da051b..3eab915abf4f5 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_1.xml
@@ -2,6 +2,26 @@
+
+ %parameter%
+
+
+ arg1
+ arg2
+
+
+
+ foo
+
+
+
+
+
+
+
+
+
+ placeholder
alias_1
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_2.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_2.json
index f3b930983ab3e..e59ff8524dd29 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_2.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_2.json
@@ -13,6 +13,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "factory.service",
"factory_method": "get",
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_2.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_2.md
index 3ec9516a398ce..045da01b0db26 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_2.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/alias_with_definition_2.md
@@ -14,6 +14,7 @@
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: `factory.service`
- Factory Method: `get`
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.json
index 0d6198b07e3a2..28d64c611753a 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.json
@@ -10,6 +10,67 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [
+ {
+ "type": "service",
+ "id": ".definition_2"
+ },
+ "%parameter%",
+ {
+ "class": "inline_service",
+ "public": false,
+ "synthetic": false,
+ "lazy": false,
+ "shared": true,
+ "abstract": false,
+ "autowire": false,
+ "autoconfigure": false,
+ "deprecated": false,
+ "arguments": [
+ "arg1",
+ "arg2"
+ ],
+ "file": null,
+ "tags": [],
+ "usages": []
+ },
+ [
+ "foo",
+ {
+ "type": "service",
+ "id": ".definition_2"
+ },
+ {
+ "class": "inline_service",
+ "public": false,
+ "synthetic": false,
+ "lazy": false,
+ "shared": true,
+ "abstract": false,
+ "autowire": false,
+ "autoconfigure": false,
+ "deprecated": false,
+ "arguments": [],
+ "file": null,
+ "tags": [],
+ "usages": []
+ }
+ ],
+ [
+ {
+ "type": "service",
+ "id": "definition_1"
+ },
+ {
+ "type": "service",
+ "id": ".definition_2"
+ }
+ ],
+ {
+ "type": "abstract",
+ "text": "placeholder"
+ }
+ ],
"file": null,
"factory_class": "Full\\Qualified\\FactoryClass",
"factory_method": "get",
@@ -26,6 +87,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": null,
"tags": [],
"usages": []
@@ -41,6 +103,7 @@
"autoconfigure": false,
"deprecated": false,
"description": "ContainerInterface is the interface implemented by service container classes.",
+ "arguments": [],
"file": null,
"tags": [],
"usages": []
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.md
index 2532a2c4eea58..57a209ecb95cc 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.md
@@ -15,6 +15,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: yes
- Factory Class: `Full\Qualified\FactoryClass`
- Factory Method: `get`
- Usages: none
@@ -30,6 +31,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- Usages: none
### service_container
@@ -44,6 +46,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- Usages: none
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml
index 3b13b72643b76..fdddad6537440 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml
@@ -3,6 +3,26 @@
+
+ %parameter%
+
+
+ arg1
+ arg2
+
+
+
+ foo
+
+
+
+
+
+
+
+
+
+ placeholder
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.json
index ac6d122ce4539..473709247839b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.json
@@ -10,6 +10,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "factory.service",
"factory_method": "get",
@@ -65,6 +66,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "inline factory service (Full\\Qualified\\FactoryClass)",
"factory_method": "get",
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.md
index 6dfab327d037a..64801e03b66d5 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.md
@@ -15,6 +15,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: `factory.service`
- Factory Method: `get`
@@ -40,6 +41,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: inline factory service (`Full\Qualified\FactoryClass`)
- Factory Method: `get`
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.json
index 5e60f26d170b7..cead51aa9232a 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.json
@@ -10,6 +10,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "factory.service",
"factory_method": "get",
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.md
index aeae0d9f294ce..8e92293499652 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.md
@@ -15,6 +15,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: `factory.service`
- Factory Method: `get`
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.json
index 518f694ea3451..6775a0e36167b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.json
@@ -10,6 +10,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "factory.service",
"factory_method": "get",
@@ -30,6 +31,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "factory.service",
"factory_method": "get",
@@ -50,6 +52,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "factory.service",
"factory_method": "get",
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.md
index 80da2ddafd560..cc0496e28e770 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.md
@@ -15,6 +15,7 @@ tag1
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: `factory.service`
- Factory Method: `get`
@@ -36,6 +37,7 @@ tag2
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: `factory.service`
- Factory Method: `get`
@@ -57,6 +59,7 @@ tag3
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: `factory.service`
- Factory Method: `get`
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.json
index 75d893297cd24..d9c3d050c11bc 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.json
@@ -10,6 +10,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"tags": [
{
@@ -40,6 +41,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "factory.service",
"factory_method": "get",
@@ -77,6 +79,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"tags": [
{
@@ -98,6 +101,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"tags": [
{
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.md
index 7137e1b1d81d1..90ef56ee45973 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.md
@@ -15,6 +15,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Tag: `tag1`
- Attr3: val3
@@ -36,6 +37,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: `factory.service`
- Factory Method: `get`
@@ -59,6 +61,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Tag: `tag1`
- Priority: 0
@@ -75,6 +78,7 @@ Definitions
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Tag: `tag1`
- Attr1: val1
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.json
index 735b3df470887..b0a612030cae1 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.json
@@ -8,6 +8,67 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [
+ {
+ "type": "service",
+ "id": ".definition_2"
+ },
+ "%parameter%",
+ {
+ "class": "inline_service",
+ "public": false,
+ "synthetic": false,
+ "lazy": false,
+ "shared": true,
+ "abstract": false,
+ "autowire": false,
+ "autoconfigure": false,
+ "deprecated": false,
+ "arguments": [
+ "arg1",
+ "arg2"
+ ],
+ "file": null,
+ "tags": [],
+ "usages": []
+ },
+ [
+ "foo",
+ {
+ "type": "service",
+ "id": ".definition_2"
+ },
+ {
+ "class": "inline_service",
+ "public": false,
+ "synthetic": false,
+ "lazy": false,
+ "shared": true,
+ "abstract": false,
+ "autowire": false,
+ "autoconfigure": false,
+ "deprecated": false,
+ "arguments": [],
+ "file": null,
+ "tags": [],
+ "usages": []
+ }
+ ],
+ [
+ {
+ "type": "service",
+ "id": "definition_1"
+ },
+ {
+ "type": "service",
+ "id": ".definition_2"
+ }
+ ],
+ {
+ "type": "abstract",
+ "text": "placeholder"
+ }
+ ],
"file": null,
"factory_class": "Full\\Qualified\\FactoryClass",
"factory_method": "get",
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.md
index c7ad62954ebc3..b99162bbf439d 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.md
@@ -7,6 +7,7 @@
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: yes
- Factory Class: `Full\Qualified\FactoryClass`
- Factory Method: `get`
- Usages: none
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.txt b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.txt
index 8ec7be868ca65..775a04c843e2b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.txt
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.txt
@@ -1,18 +1,25 @@
- ---------------- -----------------------------
- [32m Option [39m [32m Value [39m
- ---------------- -----------------------------
- Service ID -
- Class Full\Qualified\Class1
- Tags -
- Public yes
- Synthetic no
- Lazy yes
- Shared yes
- Abstract yes
- Autowired no
- Autoconfigured no
- Factory Class Full\Qualified\FactoryClass
- Factory Method get
- Usages none
- ---------------- -----------------------------
-
+ ---------------- ---------------------------------
+ [32m Option [39m [32m Value [39m
+ ---------------- ---------------------------------
+ Service ID -
+ Class Full\Qualified\Class1
+ Tags -
+ Public yes
+ Synthetic no
+ Lazy yes
+ Shared yes
+ Abstract yes
+ Autowired no
+ Autoconfigured no
+ Factory Class Full\Qualified\FactoryClass
+ Factory Method get
+ Arguments Service(.definition_2)
+ %parameter%
+ Inlined Service
+ Array (3 element(s))
+ Iterator (2 element(s))
+ - Service(definition_1)
+ - Service(.definition_2)
+ Abstract argument (placeholder)
+ Usages none
+ ---------------- ---------------------------------
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml
index be2b16b57ffa7..eba7e7bbdcd7f 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml
@@ -1,4 +1,24 @@
+
+ %parameter%
+
+
+ arg1
+ arg2
+
+
+
+ foo
+
+
+
+
+
+
+
+
+
+ placeholder
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.json
index a661428c9cb08..eeeb6f44a448b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.json
@@ -8,6 +8,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "factory.service",
"factory_method": "get",
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.md
index 486f35fb77a27..5b427bff5a26f 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.md
@@ -7,6 +7,7 @@
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: `factory.service`
- Factory Method: `get`
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_3.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_3.json
index 11768d0de1a45..c96c06d63ad0e 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_3.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_3.json
@@ -8,6 +8,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": "\/path\/to\/file",
"factory_service": "inline factory service (Full\\Qualified\\FactoryClass)",
"factory_method": "get",
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_3.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_3.md
index 8a9651641d747..5bfafe3d0e28a 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_3.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_3.md
@@ -7,6 +7,7 @@
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- File: `/path/to/file`
- Factory Service: inline factory service (`Full\Qualified\FactoryClass`)
- Factory Method: `get`
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_without_class.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_without_class.json
index 078f7cdca6b4b..c1305ac0c56c1 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_without_class.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_without_class.json
@@ -8,6 +8,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": null,
"tags": [],
"usages": []
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_without_class.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_without_class.md
index be221535f9889..7c7bad74dcf06 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_without_class.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_without_class.md
@@ -7,4 +7,5 @@
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- Usages: none
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_1.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_1.json
index c6de89ce5cd94..00c8a5be07a08 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_1.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_1.json
@@ -9,6 +9,7 @@
"autoconfigure": false,
"deprecated": false,
"description": "This is a class with a doc comment.",
+ "arguments": [],
"file": null,
"tags": [],
"usages": []
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_1.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_1.md
index 132147324bceb..907f694608347 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_1.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_1.md
@@ -8,4 +8,5 @@
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- Usages: none
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_2.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_2.json
index 7b387fd8683c1..88a59851a784b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_2.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_2.json
@@ -8,6 +8,7 @@
"autowire": false,
"autoconfigure": false,
"deprecated": false,
+ "arguments": [],
"file": null,
"tags": [],
"usages": []
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_2.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_2.md
index 0526ba117ecaa..8fd89fb0f1fd9 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_2.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/existing_class_def_2.md
@@ -7,4 +7,5 @@
- Autowired: no
- Autoconfigured: no
- Deprecated: no
+- Arguments: no
- Usages: none
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Functional/ContainerDebugCommandTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Functional/ContainerDebugCommandTest.php
index bb80a448429d5..b5d395a23296d 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Functional/ContainerDebugCommandTest.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Functional/ContainerDebugCommandTest.php
@@ -341,4 +341,22 @@ public static function provideCompletionSuggestions(): iterable
['txt', 'xml', 'json', 'md'],
];
}
+
+ public function testShowArgumentsNotProvidedShouldTriggerDeprecation()
+ {
+ static::bootKernel(['test_case' => 'ContainerDebug', 'root_config' => 'config.yml', 'debug' => true]);
+ $path = sprintf('%s/%sDeprecations.log', static::$kernel->getContainer()->getParameter('kernel.build_dir'), static::$kernel->getContainer()->getParameter('kernel.container_class'));
+ @unlink($path);
+
+ $application = new Application(static::$kernel);
+ $application->setAutoExit(false);
+
+ @unlink(static::getContainer()->getParameter('debug.container.dump'));
+
+ $tester = new ApplicationTester($application);
+ $tester->run(['command' => 'debug:container', 'name' => 'router', '--show-arguments' => true]);
+
+ $tester->assertCommandIsSuccessful();
+ $this->assertStringContainsString('[WARNING] The "--show-arguments" option is deprecated.', $tester->getDisplay());
+ }
}