Commit Graph

359 Commits

Author SHA1 Message Date
Fabien Potencier
0d990449b3 bug #37961 [Mailer] Fixed 'verify_peer' option in mailer DSN being ignored (SnakePin)
This PR was squashed before being merged into the 5.1 branch.

Discussion
----------

[Mailer] Fixed 'verify_peer' option in mailer DSN being ignored

| Q             | A
| ------------- | ---
| Branch?       | 5.1 <!-- see below -->
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | N/A <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License       | MIT
| Doc PR        | N/A <!-- required for new features -->

The mailer DSN option 'verify_peer' was being ignored because `$dsn->getOption('verify_peer', true)` was returning a string and thus NOT operator on it was always resulting in false. I propose changing the line where it is used with a `filter_var` call with the `FILTER_VALIDATE_BOOLEAN` as the filter parameter to overcome this issue.

Commits
-------

1c789e87aa [Mailer] Fixed 'verify_peer' option in mailer DSN being ignored
2020-08-31 21:53:05 +02:00
SnakePin
1c789e87aa [Mailer] Fixed 'verify_peer' option in mailer DSN being ignored 2020-08-31 21:52:58 +02:00
Michał Jusięga
15643642a3 Fix symfony/amazon-mailer constraint 2020-08-31 12:16:00 +02:00
Fabien Potencier
7b865eaeba Fix constraint 2020-08-23 11:12:48 +02:00
Clara van Miert
61754cb891
[Mailer] Support Return-Path in SesApiAsyncAwsTransport
Enable sending `SendEmailRequest`s with a `Return-Path` configured in
`SesApiAsyncAwsTransport`.
2020-08-22 13:41:45 +02:00
Fabien Potencier
eec66a26de Merge branch '4.4' into 5.1
* 4.4:
  [Mailer] Fixed mandrill api header structure
  [HttpClient][ResponseTrait] Fix typo
  [Mailer] Reorder headers used to determine Sender
  [Validator] Add Lithuanian translation for ISIN constraint
2020-08-21 11:48:22 +02:00
Fabien Potencier
91dc9c7083 Fix CS 2020-08-21 08:40:21 +02:00
wulff
aeb4c5e6c7 [Mailer] Fixed mandrill api header structure 2020-08-21 08:31:47 +02:00
Clara van Miert
163e961b44
[Mailer] Support reply-to in SesApiAsyncAwsTransport
Enable sending `SendEmailRequest`s with reply-to addresses with
`SesApiAsyncAwsTransport`.
2020-08-20 19:12:17 +02:00
Clara van Miert
7e60a8f8c9
[Mailer] Reorder headers used to determine Sender
Use the `Return-Path` header as the last candidate to determine the
Envelope's sender address.

The `Return-Path` is usually configured _in addition_ to the `Sender`
and/or `From` header: it allows for email bounces and complaints to be
sent to a dedicated email address. It should therefore not be used as
the first candidate header to determine the sender.
2020-08-19 19:05:08 +02:00
Fabien Potencier
44caccbac8 Merge branch '4.4' into 5.1
* 4.4:
  [Sendgrid-Mailer] Fixed envelope recipients on sendgridApiTransport
  mark the AssertingContextualValidator class as internal
  Fix the parameter names in the SecurityFactoryInterface::create() method
  [Serializer][ClassDiscriminatorMapping] Fix getMappedObjectType() when a discriminator child extends another one
  make return type correct
2020-08-18 13:41:36 +02:00
Arend-Jan Tetteroo
c4e5131757 [Sendgrid-Mailer] Fixed envelope recipients on sendgridApiTransport
Fixes #37870

The SendgridApiTransport was not using the envelope to get the
recipients, so overriding the recipients with the EnvelopeListener was
not working.
2020-08-18 12:11:56 +02:00
Fabien Potencier
38e5a15ff4 Merge branch '4.4' into 5.1
* 4.4:
  stop using deprecated PHPUnit APIs
2020-08-17 12:01:29 +02:00
Christian Flothmann
3d209c46e4 stop using deprecated PHPUnit APIs 2020-08-17 11:35:39 +02:00
Fabien Potencier
ea69524de9 Merge branch '4.4' into 5.1
* 4.4:
  fail properly when the required service is not defined
  Fix typo
  [Finder] Fix GitIgnore parser when dealing with (sub)directories and take order of lines into account
  Update UPGRADE-5.0.md
  Added the missing reset tag to mailer.logger_message_listener
  Updated README for the Mailer component
  fix error with custom function and web profiler routing tab
2020-08-06 07:08:30 +02:00
Fabien Potencier
4c40ff8392 Fix typo 2020-07-31 08:55:54 +02:00
Fabien Potencier
203ed71ec1 minor #37542 [Mailer] Updated README for the Mailer component (wouterj)
This PR was merged into the 4.4 branch.

Discussion
----------

[Mailer] Updated README for the Mailer component

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | n/a
| License       | MIT
| Doc PR        | symfony/symfony-docs#13945

I think it's worth adding a second example showcasing the twig integration for 2 reasons:

* If you're used to use this component in the framework, I think it's likely you want Twig integration in standalone apps.
* The integration actually lives in `symfony/twig-bridge`, it won't be very easy to catch while reading the component code - unless you're very comfortable with the Symfony architecture.

Commits
-------

696560c690 Updated README for the Mailer component
2020-07-31 08:54:29 +02:00
Nicolas Grekas
1b7714a05c Merge branch '5.0' into 5.1
* 5.0:
  fix merge
  Require PHPUnit 9.3 on PHP 8
  [Cache] fix catching auth errors
  Fix CS
  [FrameworkBundle] set default session.handler alias if handler_id is not provided
  Fix CS
  Readability update
  Fix checks for phpunit releases on Composer 2 (resolves #37601)
  [Serializer] Support multiple levels of discriminator mapping
  Use hexadecimal numerals instead of hexadecimals in strings to represent error codes.
  [SCA] Minor fixes on tests
  [WebProfilerBundle] modified url generation to use absolute urls
  [Mailer] Fix reply-to functionality in the SendgridApiTransport
  [Mime] Fix compat with HTTP requests
  ticket_36879 - Fix mandrill raw http request setting from email/name
2020-07-23 10:36:24 +02:00
Nicolas Grekas
5d79383028 Merge branch '4.4' into 5.0
* 4.4:
  fix merge
  Require PHPUnit 9.3 on PHP 8
  [Cache] fix catching auth errors
  Fix CS
  [FrameworkBundle] set default session.handler alias if handler_id is not provided
  Fix CS
  Readability update
  Fix checks for phpunit releases on Composer 2 (resolves #37601)
  [Serializer] Support multiple levels of discriminator mapping
  Use hexadecimal numerals instead of hexadecimals in strings to represent error codes.
  [SCA] Minor fixes on tests
  [WebProfilerBundle] modified url generation to use absolute urls
  [Mailer] Fix reply-to functionality in the SendgridApiTransport
  [Mime] Fix compat with HTTP requests
  ticket_36879 - Fix mandrill raw http request setting from email/name
2020-07-23 10:36:09 +02:00
Fabien Potencier
8b673f5a81 [Mailer] Fix failover transport 2020-07-20 16:15:11 +02:00
Fabien Potencier
8308861b70 bug #36888 [Mailer] Fix mandrill raw http request setting from email/name (JohJohan)
This PR was merged into the 4.4 branch.

Discussion
----------

[Mailer] Fix mandrill raw http request setting from email/name

| Q             | A
| ------------- | ---
| Branch?       | 4.4, 5.0, 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36879
| License       | MIT
| Doc PR        | None

As describe in https://github.com/symfony/symfony/issues/36879 there is a bug in sending raw http request to mandrill it will not set from email/name correct.

As you can see i make sure to set `from_email` and `from_name` correct now and changed the unit test to check correct you can see the doc that the format is correct https://mandrillapp.com/api/docs/messages.curl.html#method-send-raw

Commits
-------

6128dd0b75 ticket_36879 - Fix mandrill raw http request setting from email/name
2020-07-15 14:27:58 +02:00
Fabien Potencier
fd13f5f8e9 bug #37527 [Mailer] Fix reply-to functionality in the SendgridApiTransport (jt2k)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Mailer] Fix reply-to functionality in the SendgridApiTransport

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

When sending a message using the `SendgridApiTransport`, the reply-to address was being ignored. In other transports, the reply to can be set using headers, but SendGrid requires that certain fields be added explicitly to the API payload. This is already handled for From, To, Cc, Bcc, and Subject, but was not handled for Reply-To. This change extracts the reply to address from the `Email` object and adds it to the payload.

Note that the `Email` object allows for multiple Reply-To addresses, but SendGrid only supports a single one, so I am just using the first element of the array.

I also fixed a link in a comment to SendGrid's documentation explaining the reserved headers that are not allowed.

Commits
-------

2cf25d1055 [Mailer] Fix reply-to functionality in the SendgridApiTransport
2020-07-15 14:22:44 +02:00
Jason Tan
2cf25d1055 [Mailer] Fix reply-to functionality in the SendgridApiTransport 2020-07-15 14:22:36 +02:00
Fabien Potencier
28e072a8ec Merge branch '5.0' into 5.1
* 5.0:
  [DependencyInjection][Config] Use several placeholder unique prefixes for dynamic placeholder values
  [Mime] Keep Sender full address when used by non-SMTP transports
  Update MimeTypes.php
2020-07-15 12:53:22 +02:00
Fabien Potencier
ba1b05e1b6 Merge branch '4.4' into 5.0
* 4.4:
  [DependencyInjection][Config] Use several placeholder unique prefixes for dynamic placeholder values
  [Mime] Keep Sender full address when used by non-SMTP transports
  Update MimeTypes.php
2020-07-15 12:53:08 +02:00
Fabien Potencier
1ca9be77aa [Mime] Keep Sender full address when used by non-SMTP transports 2020-07-15 08:28:59 +02:00
Wouter de Jong
696560c690 Updated README for the Mailer component 2020-07-09 18:20:35 +02:00
Tobias Schultze
551f7cfa8d Merge branch '5.0' into 5.1 2020-06-11 23:20:02 +02:00
Tobias Schultze
c704acbf9b Merge branch '4.4' into 5.0 2020-06-11 23:19:34 +02:00
Fabien Potencier
52161f35c7 [Mailer] Remove an internal annot 2020-06-10 07:55:43 +02:00
Fabien Potencier
f88570af2f bug #37162 [Mailer] added the reply-to addresses to the API SES transport request. (ribeiropaulor)
This PR was merged into the 4.4 branch.

Discussion
----------

[Mailer] added the reply-to addresses to the API SES transport request.

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| License       | MIT

The transport was not sending the reply-to addresses to the SES API when using SendEmail API method.

Commits
-------

ee752f90ed [Mailer] added the reply-to addresses to the API SES transport request.
2020-06-10 03:24:15 +02:00
Paulo Ribeiro
ee752f90ed [Mailer] added the reply-to addresses to the API SES transport request.
The transport was not sending the reply-to addresses to the SES API.
2020-06-10 03:24:02 +02:00
Nicolas Grekas
afefcfd078 Merge branch '5.0' into 5.1
* 5.0:
  minor #37141 [Messenger] fix forward compatibility with Doctrine DBAL 2.11+ (xabbuh)
  fix forward compatibility with Doctrine DBAL 3
  [WebProfilerBundle] Set NullLogger for functional tests
  [Mailer] Fixed generator bug when creating multiple transports using Transport::fromDsn
  [FrameworkBundle] Fix XSD definition
  Update welcome.html.php
  [travis] add nightly to allowed failures
2020-06-09 13:33:28 +02:00
Nicolas Grekas
19228e6740 Merge branch '4.4' into 5.0
* 4.4:
  minor #37141 [Messenger] fix forward compatibility with Doctrine DBAL 2.11+ (xabbuh)
  fix forward compatibility with Doctrine DBAL 3
  [WebProfilerBundle] Set NullLogger for functional tests
  [Mailer] Fixed generator bug when creating multiple transports using Transport::fromDsn
  [FrameworkBundle] Fix XSD definition
  Update welcome.html.php
  [travis] add nightly to allowed failures
2020-06-09 13:33:14 +02:00
Ahmed TAILOULOUTE
c5833fa784 [Mailer] Fixed generator bug when creating multiple transports using Transport::fromDsn 2020-06-09 10:20:50 +02:00
Nicolas Grekas
51da6239ba Merge branch '5.0' into 5.1
* 5.0:
  Fix abstract method name in PHP doc block
  Various cleanups
  [HttpClient] fix issues in tests
  Fixes sprintf(): Too few arguments in form transformer
  [Console] Fix QuestionHelper::disableStty()
  [Validator] Use Mime component to determine mime type for file validator
  validate subforms in all validation groups
  Update Hungarian translations
  Add meaningful message when Process is not installed (ProcessHelper)
  [PropertyAccess] Fix TypeError parsing again.
  [TwigBridge] fix fallback html-to-txt body converter
  [Security/Http] fix merge
  [ErrorHandler] fix setting $trace to null in FatalError
  [Form] add missing Czech validators translation
  [Validator] add missing Czech translations
  never directly validate Existence (Required/Optional) constraints
2020-05-30 22:35:19 +02:00
Nicolas Grekas
527f3f305e Merge branch '4.4' into 5.0
* 4.4:
  Fix abstract method name in PHP doc block
  Various cleanups
  [HttpClient] fix issues in tests
  Fixes sprintf(): Too few arguments in form transformer
  [Console] Fix QuestionHelper::disableStty()
  [Validator] Use Mime component to determine mime type for file validator
  validate subforms in all validation groups
  Update Hungarian translations
  Add meaningful message when Process is not installed (ProcessHelper)
  [PropertyAccess] Fix TypeError parsing again.
  [TwigBridge] fix fallback html-to-txt body converter
  [Form] add missing Czech validators translation
  [Validator] add missing Czech translations
  never directly validate Existence (Required/Optional) constraints
2020-05-30 22:12:43 +02:00
Nicolas Grekas
282cafb093 Merge branch '3.4' into 4.4
* 3.4:
  Various cleanups
2020-05-30 22:06:45 +02:00
JohJohan
6128dd0b75 ticket_36879 - Fix mandrill raw http request setting from email/name 2020-05-21 10:16:02 +02:00
Nicolas Grekas
e65cdb685f Merge branch '5.0' into 5.1
* 5.0:
  [PhpUnitBridge] fix leftover
  [PhpUnitBridge] fix installing under PHP >= 8
  Use ">=" for the "php" requirement
  bump icu 67.1
2020-05-20 19:43:50 +02:00
Nicolas Grekas
b429b15eb5 Merge branch '4.4' into 5.0
* 4.4:
  [PhpUnitBridge] fix leftover
  [PhpUnitBridge] fix installing under PHP >= 8
  Use ">=" for the "php" requirement
  bump icu 67.1
2020-05-20 19:38:26 +02:00
Nicolas Grekas
f8aa0873cf Use ">=" for the "php" requirement 2020-05-20 10:37:50 +02:00
Nicolas Grekas
f8616f8eae Merge branch '5.0'
* 5.0:
  [PhpUnitBridge] fix bad test
  [4.4] CS fixes
  [3.4] CS fixes
  Disable phpunit verbosity
  Queue name is a required parameter
  [FrameworkBundle] display actual target for error in AssetsInstallCommand
  Remove patches for Doctrine bugs and deprecations
  [Mime] fix bad method call on "EmailAddressContains"
  [DI][EventDispatcher] added contract for implementation
2020-05-08 14:36:29 +02:00
Nicolas Grekas
0b34b39cc8 Merge branch '4.4' into 5.0
* 4.4:
  [PhpUnitBridge] fix bad test
  [4.4] CS fixes
  [3.4] CS fixes
  Disable phpunit verbosity
  Queue name is a required parameter
  [FrameworkBundle] display actual target for error in AssetsInstallCommand
  Remove patches for Doctrine bugs and deprecations
  [Mime] fix bad method call on "EmailAddressContains"
  [DI][EventDispatcher] added contract for implementation
2020-05-08 14:34:39 +02:00
Nicolas Grekas
eba09d47e7 [4.4] CS fixes 2020-05-08 12:39:41 +02:00
Nicolas Grekas
39aab260d4 Merge branch '5.0'
* 5.0:
  Use PHP 7.2 minimum in tests run with github actions
  Fix exception messages containing exception messages
2020-05-04 17:54:21 +02:00
Nicolas Grekas
992f50fee2 Merge branch '4.4' into 5.0
* 4.4:
  Fix exception messages containing exception messages
2020-05-04 17:34:58 +02:00
Nicolas Grekas
b0573cb418 Merge branch '3.4' into 4.4
* 3.4:
  Fix exception messages containing exception messages
2020-05-04 17:32:48 +02:00
Fabien Potencier
669b7f132b feature #35992 [Mailer] Use AsyncAws to handle SES requests (jderusse)
This PR was squashed before being merged into the 5.1-dev branch.

Discussion
----------

[Mailer] Use AsyncAws to handle SES requests

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | #33183, #35468 and #35037
| License       | MIT
| Doc PR        | TODO

alternative to #33326

This PR replace the native code to call AWS SES by the new [AsyncAws](https://github.com/async-aws/aws) project maintained by @Nyholm and me.

This removes complexity of signing request, and adds new features likes:
- authentication via .aws/config.ini, Instance profile, WebIdentity (K8S service account)
- usesignature V4 (the one recommanded by the Official SDK )
- fully compatible with API (uses the official AWS SDK interface contract to generate classes)

Because it's based on `symfony/http-client`, it's fully integrable with Symfony application.

Commits
-------

21243874bc [Mailer] Use AsyncAws to handle SES requests
2020-05-03 16:23:47 +02:00
Jérémy Derussé
21243874bc [Mailer] Use AsyncAws to handle SES requests 2020-05-03 16:23:41 +02:00