This PR was merged into the 4.3 branch.
Discussion
----------
[DI] fix support for "!tagged_locator foo"
| Q | A
| ------------- | ---
| Branch? | 4.3
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Spotted during the workshop at WebSummerCamp
Commits
-------
a9f75692c9 [DI] fix support for "!tagged_locator foo"
This PR was merged into the 4.4 branch.
Discussion
----------
[Mailer] Add a more precise exception
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks? | no <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass? | yes <!-- please add some, will be required by reviewers -->
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.
Additionally (see https://symfony.com/roadmap):
- Bug fixes must be submitted against the lowest maintained branch where they apply
(lowest branches are regularly merged to upper ones so they get the fixes too).
- Features and deprecations must be submitted against branch 4.4.
- Legacy code removals go to the master branch.
-->
Commits
-------
561f9b7345 [Mailer] Add a more precise exception
This PR was squashed before being merged into the 5.0-dev branch (closes#33431).
Discussion
----------
Casting getInt to integer
| Q | A
| ------------- | ---
| Branch? | 4.4 for features / 3.4 or 4.3 for bug fixes <!-- see below -->
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| License | MIT
Until two months ago (until here ead419b77b ) getInt was casting the returned value to integer however this was removed.
Commits
-------
68e92022e0 Casting getInt to integer
This PR was merged into the 3.4 branch.
Discussion
----------
[PHPUnit Bridge] Avoid registering listener twice
The listener can be registered via configuration by the user. In that
case, we do not want to add it again to the list of listeners.
Closes#31649
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Commits
-------
b190536205 Check phpunit configuration for listeners
The bridge listener can be registered via configuration by the user. In that
case, we do not want to add it again to the list of listeners.
Closes#31649
* 4.4:
[Bridge/PhpUnit] fix looking for composer
cs fix
[Mailer] fixed Mailgun support when a response is not JSON as expected
[4.3] Cleanup tests
Cleanup tests
[Finder] Prevent unintentional file locks in Windows
[FrameworkBundle] Fix about command not showing .env vars
[DomCrawler] Fix FileFormField PHPDoc
[Mailer] Remove the default dispatcher in AbstractTransport
Fix#33395 PHP 5.3 compatibility
This PR was merged into the 4.3 branch.
Discussion
----------
[Mailer] Fix Mailgun support when a response is not JSON as expected
| Q | A
| ------------- | ---
| Branch? | 4.3
| Bug fix? | yes
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks? | no <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass? | yes <!-- please add some, will be required by reviewers -->
| Fixed tickets | #32043
| License | MIT
| Doc PR | n/a
Sometimes, like when getting a 401, the Mailgun API does not respond with JSON :(
Commits
-------
3b2db425f6 [Mailer] fixed Mailgun support when a response is not JSON as expected
This PR was merged into the 4.4 branch.
Discussion
----------
[Mailer] hotfix
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks? | no <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass? | yes <!-- please add some, will be required by reviewers -->
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.
Additionally (see https://symfony.com/roadmap):
- Bug fixes must be submitted against the lowest maintained branch where they apply
(lowest branches are regularly merged to upper ones so they get the fixes too).
- Features and deprecations must be submitted against branch 4.4.
- Legacy code removals go to the master branch.
-->
Commits
-------
e15df84313 [Mailer] fixed wrong behavior
This PR was merged into the 4.4 branch.
Discussion
----------
[Mailer] Add support for multiple mailers
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass? | yes <!-- please add some, will be required by reviewers -->
| Fixed tickets | closes#32535
| License | MIT
| Doc PR | -
This adds the possibility to define several email transports.
If you only have one email transport, nothing changes:
```yaml
framework:
mailer:
dsn: '%env(MAILER_DSN)%'
```
But if you need more than one, use the `transports` entry instead:
```yaml
framework:
mailer:
transports:
main: '%env(MAILER_DSN)%'
important: '%env(MAILER_DSN_IMPORTANT)%'
```
Then, when sending an email via the `Mailer`, pass the mailer name explicitly (by default, the first one is used):
```php
// use the first "main" transport
$mailer->send($email);
// or use the "important" one (`null` is the envelope)
$mailer->send($email, null, 'important');
```
The web profiler now displays the name and the shorten DSN.
Commits
-------
de5fae4dd8 [Mailer] Add support for multiple mailers
This PR was merged into the 4.4 branch.
Discussion
----------
[Mailer] Change the DSN semantics
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | no
| New feature? | yes
| BC breaks? | yes
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass? | yes <!-- please add some, will be required by reviewers -->
| Fixed tickets | n/a
| License | MIT
| Doc PR | https://github.com/symfony/symfony-docs/pull/12258
I'm not very satisfied with the current DSNs for the Mailer. First, the scheme/protocol should use the provider name, then, there is no way to change the host, which would be nice to debug more easily (using a requestb.in service for instance).
Before:
```
smtp://USERNAME:PASSWORD@mailgun
http://KEY:DOMAIN@mailgun
```
After:
```
mailgun+smtp://USERNAME:PASSWORD@default
mailgun+http://KEY:DOMAIN@default
# New
mailgun+http://KEY:DOMAIN@somewhere.com:99
```
SMTP DSNs did not change, but the special sendmail one did:
Before:
```
smtp://sendmail
```
After:
```
sendmail+smtp://default
```
And for the `null` transport:
Before:
```
smtp://null
```
After:
```
null://null
```
Commits
-------
469c989697 [Mailer] Change the DSN semantics
This PR was merged into the 4.4 branch.
Discussion
----------
[Mailer] Renamed getName() to toString()
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks? | no <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass? | yes <!-- please add some, will be required by reviewers -->
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
The `getName()` method on a Transport was introduced in 4.4. We rename it here as this method is mainly used by the profiler to display useful information about which mailer is used. This is more a string representation than a name (which is going to be introduced in the PR about multiple mailer support).
Commits
-------
5b7bba9ef3 [Mailer] Renamed getName() to toString()
This PR was submitted for the 4.3 branch but it was squashed and merged into the 3.4 branch instead (closes#33402).
Discussion
----------
[Finder] Prevent unintentional file locks in Windows
| Q | A
| ------------- | ---
| Branch? | 4.3 for bug fixes <!-- see below -->
| Bug fix? | yes
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks? | no <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass? | yes <!-- please add some, will be required by reviewers -->
| Fixed tickets | #33400 <!-- #-prefixed issue number(s), if any -->
| License | MIT
| Doc PR |
~~This replaces the constructor behavior for `SortableIterator`. Instead of storing the sort strategy as a property, causing the object to hold references to the files being sorted and thus locking them in Windows, it uses a method to determine the sort strategy when calling `getIterator`.~~
Change stored `$sort` closure to a static closure. This removes the instance context that causes the file lock. This doesn't change any intended behavior.
I, unfortunately, did not provided tests for 2 reasons. The first being that I've never written tests for the Symfony framework so I do not know the nuances. ~~The second is that in order for the test to actually fail it would need to be run in the Windows OS.~~ AppVeyor tests with a Windows instance, but it appears the `Finder` tests get skipped.
Commits
-------
997cc5c3f0 [Finder] Prevent unintentional file locks in Windows
This PR was merged into the 4.4 branch.
Discussion
----------
Fix the profiler panel for Mailer
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks? | no <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass? | yes <!-- please add some, will be required by reviewers -->
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Currently, the web profiler panel for Mailer is never shown as `$this->mailerConfigEnabled` is set after the profiler is configured.
Commits
-------
326afc7a09 Fix the profiler panel for Mailer