Symfony version(s) affected
7.2
Description
Cannot send email messages using the async transport and the sender address configuration. Exception thrown:
"An email must have a "From" or a "Sender" header."
How to reproduce
Set the sender address in the configuration:
Send an email without using any transport (sync sending): OK
Send an email using the async transport: KO
Error thrown while handling message Symfony\Component\Mailer\Messenger\SendEmailMessage. Sending for retry #1 using 1060 ms delay. Error: "An email must have a "From" or a "Sender" header." {"class":"Symfony\Component\Mailer\Messenger\SendEmailMessage","message_id":77,"retryCount":1,"delay":1060,"error":"An email must have a "From" or a "Sender" header.","exception":"[object] (Symfony\Component\Mime\Exception\LogicException(code: 0): An email must have a "From" or a "Sender" header. at /app/vendor/symfony/mime/Message.php:132)"} []
Async transport configuration:
framework:
messenger:
# Uncomment this (and the failed transport below) to send failed messages to this transport for later handling.
failure_transport: failed
transports:
# https://symfony.com/doc/current/messenger.html#transport-configuration
async: '%env(MESSENGER_TRANSPORT_DSN)%'
failed: 'doctrine://default?queue_name=failed'
# sync: 'sync://'
routing:
# Route your messages to the transports
# 'App\Message\YourMessage': async
Symfony\Component\Mailer\Messenger\SendEmailMessage: async
Possible Solution
No response
Additional Context
The EnvelopeListener which I suppose is responsible of setting the sender is actually called even using the async transport.
Symfony version(s) affected
7.2
Description
Cannot send email messages using the async transport and the sender address configuration. Exception thrown:
How to reproduce
Set the sender address in the configuration:
Send an email without using any transport (sync sending): OK
Send an email using the async transport: KO
Async transport configuration:
Possible Solution
No response
Additional Context
The
EnvelopeListenerwhich I suppose is responsible of setting the sender is actually called even using the async transport.