Make Mailgun Header compatible with other Bridges
This commit is contained in:
parent
c9dea7c750
commit
82f1f9c618
@ -80,7 +80,6 @@ Inflector
|
|||||||
Mailer
|
Mailer
|
||||||
------
|
------
|
||||||
|
|
||||||
* Deprecated passing Mailgun headers without their "h:" prefix.
|
|
||||||
* Deprecated the `SesApiTransport` class. It has been replaced by SesApiAsyncAwsTransport Run `composer require async-aws/ses` to use the new classes.
|
* Deprecated the `SesApiTransport` class. It has been replaced by SesApiAsyncAwsTransport Run `composer require async-aws/ses` to use the new classes.
|
||||||
* Deprecated the `SesHttpTransport` class. It has been replaced by SesHttpAsyncAwsTransport Run `composer require async-aws/ses` to use the new classes.
|
* Deprecated the `SesHttpTransport` class. It has been replaced by SesHttpAsyncAwsTransport Run `composer require async-aws/ses` to use the new classes.
|
||||||
|
|
||||||
|
@ -1,7 +1,13 @@
|
|||||||
CHANGELOG
|
CHANGELOG
|
||||||
=========
|
=========
|
||||||
|
|
||||||
|
5.2
|
||||||
|
---
|
||||||
|
|
||||||
|
* Not prefixing headers with "h:" is no more deprecated
|
||||||
|
|
||||||
5.1.0
|
5.1.0
|
||||||
|
-----
|
||||||
|
|
||||||
* Not prefixing headers with "h:" is deprecated.
|
* Not prefixing headers with "h:" is deprecated.
|
||||||
|
|
||||||
|
@ -214,6 +214,7 @@ class MailgunApiTransportTest extends TestCase
|
|||||||
$json = json_encode(['foo' => 'bar']);
|
$json = json_encode(['foo' => 'bar']);
|
||||||
$email = new Email();
|
$email = new Email();
|
||||||
$email->getHeaders()->addTextHeader('h:X-Mailgun-Variables', $json);
|
$email->getHeaders()->addTextHeader('h:X-Mailgun-Variables', $json);
|
||||||
|
$email->getHeaders()->addTextHeader('Custom-Header', 'value');
|
||||||
$email->getHeaders()->add(new TagHeader('password-reset'));
|
$email->getHeaders()->add(new TagHeader('password-reset'));
|
||||||
$email->getHeaders()->add(new MetadataHeader('Color', 'blue'));
|
$email->getHeaders()->add(new MetadataHeader('Color', 'blue'));
|
||||||
$email->getHeaders()->add(new MetadataHeader('Client-ID', '12345'));
|
$email->getHeaders()->add(new MetadataHeader('Client-ID', '12345'));
|
||||||
@ -223,9 +224,10 @@ class MailgunApiTransportTest extends TestCase
|
|||||||
$method = new \ReflectionMethod(MailgunApiTransport::class, 'getPayload');
|
$method = new \ReflectionMethod(MailgunApiTransport::class, 'getPayload');
|
||||||
$method->setAccessible(true);
|
$method->setAccessible(true);
|
||||||
$payload = $method->invoke($transport, $email, $envelope);
|
$payload = $method->invoke($transport, $email, $envelope);
|
||||||
|
|
||||||
$this->assertArrayHasKey('h:x-mailgun-variables', $payload);
|
$this->assertArrayHasKey('h:x-mailgun-variables', $payload);
|
||||||
$this->assertEquals($json, $payload['h:x-mailgun-variables']);
|
$this->assertEquals($json, $payload['h:x-mailgun-variables']);
|
||||||
|
$this->assertArrayHasKey('h:custom-header', $payload);
|
||||||
|
$this->assertEquals('value', $payload['h:custom-header']);
|
||||||
$this->assertArrayHasKey('o:tag', $payload);
|
$this->assertArrayHasKey('o:tag', $payload);
|
||||||
$this->assertSame('password-reset', $payload['o:tag']);
|
$this->assertSame('password-reset', $payload['o:tag']);
|
||||||
$this->assertArrayHasKey('v:Color', $payload);
|
$this->assertArrayHasKey('v:Color', $payload);
|
||||||
|
@ -135,9 +135,7 @@ class MailgunApiTransport extends AbstractApiTransport
|
|||||||
if (\in_array($prefix, ['h:', 't:', 'o:', 'v:']) || \in_array($name, ['recipient-variables', 'template', 'amp-html'])) {
|
if (\in_array($prefix, ['h:', 't:', 'o:', 'v:']) || \in_array($name, ['recipient-variables', 'template', 'amp-html'])) {
|
||||||
$headerName = $name;
|
$headerName = $name;
|
||||||
} else {
|
} else {
|
||||||
// fallback to prefix with "h:" to not break BC
|
|
||||||
$headerName = 'h:'.$name;
|
$headerName = 'h:'.$name;
|
||||||
@trigger_error(sprintf('Not prefixing the Mailgun header name with "h:" is deprecated since Symfony 5.1. Use header name "%s" instead.', $headerName), \E_USER_DEPRECATED);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$payload[$headerName] = $header->getBodyAsString();
|
$payload[$headerName] = $header->getBodyAsString();
|
||||||
|
Reference in New Issue
Block a user