Skip to content

Commit c3ad8a5

Browse files
bug #29395 [FrameworkBundle][Messenger] Restore check for messenger serializer default id (ogizanagi)
This PR was merged into the 4.2 branch. Discussion ---------- [FrameworkBundle][Messenger] Restore check for messenger serializer default id | Q | A | ------------- | --- | Branch? | 4.2 <!-- see below --> | Bug fix? | yes | New feature? | no <!-- don't forget to update src/**/CHANGELOG.md files --> | BC breaks? | no <!-- see https://symfony.com/bc --> | Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files --> | Tests pass? | yes <!-- please add some, will be required by reviewers --> | Fixed tickets | https://symfony-devs.slack.com/archives/C9PQ75TV3/p1543590611003500 <!-- #-prefixed issue number(s), if any --> | License | MIT | Doc PR | N/A From Slack: > @adamquaile [4:10 PM] > So, I just updated to 4.2 today, and got this message: > > The default Messenger serializer cannot be enabled as the Serializer support is not available. Try enabling it or running "composer require symfony/serializer-pack" > > In the docs it's stated: > > In order to use Symfony's built-in AMQP transport, you will need the Serializer Component. Ensure that it is installed with: > >But I haven't yet configured AMQP - I'm using my own transport. Should I be getting this exception? --- This check was removed in #28405, but is actually still necessary to not fail as soon as you can install the Messenger component without the Serializer one installed. Commits ------- 1cf17c0 [FrameworkBundle][Messenger] Restore check for messenger serializer default id
2 parents 799ad2e + 1cf17c0 commit c3ad8a5

14 files changed

+15
-3
lines changed

src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -1059,7 +1059,7 @@ function ($a) {
10591059
})
10601060
->end()
10611061
->children()
1062-
->scalarNode('id')->defaultValue('messenger.transport.symfony_serializer')->end()
1062+
->scalarNode('id')->defaultValue(!class_exists(FullStack::class) && class_exists(Serializer::class) ? 'messenger.transport.symfony_serializer' : null)->end()
10631063
->scalarNode('format')->defaultValue('json')->end()
10641064
->arrayNode('context')
10651065
->normalizeKeys(false)

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php

+2-1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
use Symfony\Component\Config\Definition\Processor;
1919
use Symfony\Component\Lock\Store\SemaphoreStore;
2020
use Symfony\Component\Messenger\MessageBusInterface;
21+
use Symfony\Component\Serializer\Serializer;
2122

2223
class ConfigurationTest extends TestCase
2324
{
@@ -293,7 +294,7 @@ class_exists(SemaphoreStore::class) && SemaphoreStore::isSupported() ? 'semaphor
293294
'routing' => array(),
294295
'transports' => array(),
295296
'serializer' => array(
296-
'id' => 'messenger.transport.symfony_serializer',
297+
'id' => !class_exists(FullStack::class) && class_exists(Serializer::class) ? 'messenger.transport.symfony_serializer' : null,
297298
'format' => 'json',
298299
'context' => array(),
299300
),

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_routing.php

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
$container->loadFromExtension('framework', array(
44
'serializer' => true,
55
'messenger' => array(
6+
'serializer' => 'messenger.transport.symfony_serializer',
67
'routing' => array(
78
'Symfony\Component\Messenger\Tests\Fixtures\DummyMessage' => array('amqp', 'audit'),
89
'Symfony\Component\Messenger\Tests\Fixtures\SecondMessage' => array(

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transport.php

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
'serializer' => true,
55
'messenger' => array(
66
'serializer' => array(
7+
'id' => 'messenger.transport.symfony_serializer',
78
'format' => 'csv',
89
'context' => array('enable_max_depth' => true),
910
),

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transport_no_serializer.php

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
'enabled' => false,
66
),
77
'messenger' => array(
8+
'serializer' => 'messenger.transport.symfony_serializer',
89
'transports' => array(
910
'default' => 'amqp://localhost/%2f/messages',
1011
),

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transports.php

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
$container->loadFromExtension('framework', array(
44
'serializer' => true,
55
'messenger' => array(
6+
'serializer' => 'serializer: messenger.transport.symfony_serializer',
67
'transports' => array(
78
'default' => 'amqp://localhost/%2f/messages',
89
'customised' => array(

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_routing.xml

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
<framework:config>
99
<framework:serializer enabled="true" />
1010
<framework:messenger>
11+
<framework:serializer id="messenger.transport.symfony_serializer" />
1112
<framework:routing message-class="Symfony\Component\Messenger\Tests\Fixtures\DummyMessage">
1213
<framework:sender service="amqp" />
1314
<framework:sender service="audit" />

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transport.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<framework:config>
99
<framework:serializer enabled="true" />
1010
<framework:messenger>
11-
<framework:serializer format="csv">
11+
<framework:serializer id="messenger.transport.symfony_serializer" format="csv">
1212
<framework:context>
1313
<framework:enable_max_depth>true</framework:enable_max_depth>
1414
</framework:context>

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transport_no_serializer.xml

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
<framework:config>
99
<framework:serializer enabled="false" />
1010
<framework:messenger>
11+
<framework:serializer id="messenger.transport.symfony_serializer" />
1112
<framework:transport name="default" dsn="amqp://localhost/%2f/messages" />
1213
</framework:messenger>
1314
</framework:config>

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transports.xml

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
<framework:config>
99
<framework:serializer enabled="true" />
1010
<framework:messenger>
11+
<framework:serializer id="messenger.transport.symfony_serializer" />
1112
<framework:transport name="default" dsn="amqp://localhost/%2f/messages" />
1213
<framework:transport name="customised" dsn="amqp://localhost/%2f/messages?exchange_name=exchange_name">
1314
<framework:options>

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_routing.yml

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
framework:
22
serializer: true
33
messenger:
4+
serializer: messenger.transport.symfony_serializer
45
routing:
56
'Symfony\Component\Messenger\Tests\Fixtures\DummyMessage': [amqp, audit]
67
'Symfony\Component\Messenger\Tests\Fixtures\SecondMessage':

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transport.yml

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ framework:
22
serializer: true
33
messenger:
44
serializer:
5+
id: messenger.transport.symfony_serializer
56
format: csv
67
context:
78
enable_max_depth: true

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transport_no_serializer.yml

+1
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,6 @@ framework:
22
serializer:
33
enabled: false
44
messenger:
5+
serializer: messenger.transport.symfony_serializer
56
transports:
67
default: 'amqp://localhost/%2f/messages'

src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transports.yml

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
framework:
22
serializer: true
33
messenger:
4+
serializer: messenger.transport.symfony_serializer
45
transports:
56
default: 'amqp://localhost/%2f/messages'
67
customised:

0 commit comments

Comments
 (0)