This PR was merged into the 4.4 branch.
Discussion
----------
[4.4] Fix support for PHP8 union types
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | -
| License | MIT
| Doc PR | -
Same as #37340 for 4.4
Commits
-------
da68e66a99 Fix support for PHP8 union types
* 3.4:
[3.4] Fix support for PHP8 union types
[PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option
[3.4] Small update in our internal terminology
[Cache] fix compat with DBAL v3
[VarDumper] Fix CliDumper coloration
[DI] tighten detection of local dirs to prevent false positives
[FrameworkBundle] preserve dots in query-string when redirecting
bumped Symfony version to 3.4.43
updated VERSION for 3.4.42
update CONTRIBUTORS for 3.4.42
updated CHANGELOG for 3.4.42
This PR was merged into the 3.4 branch.
Discussion
----------
[DI] tighten detection of local dirs to prevent false positives
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#36510 and #37150
| License | MIT
| Doc PR | -
Commits
-------
b746dd900c [DI] tighten detection of local dirs to prevent false positives
This PR was squashed before being merged into the 3.4 branch.
Discussion
----------
[PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| License | MIT
Currently the coloring of composer output is forced in some calls, forced not to be colored in one other call and left for auto in the others.
This change would make it uniform, depending on the --colors option of phpunit provided (or not provided) in the call
Commits
-------
968d6c4276 [PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option
This PR was merged into the 3.4 branch.
Discussion
----------
[VarDumper] Fix CliDumper coloration on light arrays
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets |
| License | MIT
| Doc PR |
When `AbstractDumper::DUMP_LIGHT_ARRAY` is used with the `CliDumper`, the first line (opening bracket) is not colored. When an empty array is dumped (with or without `AbstractDumper::DUMP_LIGHT_ARRAY`) the array is not colored too. This PR aims to fix that.
Commits
-------
7af3469771 [VarDumper] Fix CliDumper coloration
This PR was merged into the 5.1 branch.
Discussion
----------
Fix package rename when releasing
| Q | A
| ------------- | ---
| Branch? | 5.1
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix when upgrading my local project to use the package instead of my old code :)
| License | MIT
---
Related to
a89a2a8893 (diff-bd586be86489d3e4725496bf5d4caf23) friendly ping @fabpot
The package is released at https://packagist.org/packages/symfony/free-mobile-notifier
And thus this needed to be fixed t give proper hint to devs
Thanks
Commits
-------
7a93222259 Fix package rename when releasing
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[HttpClient] Move configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | yes
| Deprecations? | no
| Tickets | Part of #37186
| License | MIT
| Doc PR | -
Commits
-------
955ab04d96 [HttpClient] Move configuration to PHP
This PR was merged into the 5.2-dev branch.
Discussion
----------
Adding a keyword for Packagist
Thank you @javiereguiluz for the suggestion.
https://github.com/symfony/symfony/pull/37273
| Q | A
| ------------- | ---
| Branch? | N/A
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | N/A
| License | MIT
| Doc PR | N/A
So project will appear here:
https://packagist.org/search/?tags=terminal
Commits
-------
aeef1e19bb Adding a keyword for Packagist
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[AssetBundle] Move xml service configuration to php
| Q | A
| ------------- | ---
| Branch? | master for features / 3.4, 4.4, 5.0 or 5.1 for bug fixes <!-- see below -->
| Bug fix? | yes/no
| New feature? | yes/no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | yes/no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | Fix #... <!-- prefix each issue number with "Fix #", if any -->
| License | MIT
| Doc PR | symfony/symfony-docs#... <!-- required for new features -->
<!--
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/releases):
- Always add tests and ensure they pass.
- Never break backward compatibility (see https://symfony.com/bc).
- 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 master.
-->
Commits
-------
74650610ff [AssetBundle] Move xml service configuration to php
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[DebugBundle] Move xml service configuration to php
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | #37186
| License | MIT
| Doc PR | -
Move DebugBundles xml service configuration to php.
Commits
-------
7355c95fb0 [DebugBundle] Move xml service configuration to php
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[SecurityBundle] Move configuration from XML to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | #37186 <!-- prefix each issue number with "Fix #", if any -->
| License | MIT
| Doc PR |- <!-- required for new features -->
<!--
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/releases):
- Always add tests and ensure they pass.
- Never break backward compatibility (see https://symfony.com/bc).
- 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 master.
-->
Move security configuration from XML to PHP for `collectors`, `console` and `guard`
Commits
-------
417636fb61 [Security] Move configuration of guard to PHP
79764a9e85 [Security] Move configuration of console to PHP
2176ed23b1 [Security] Move configuration of collectors to PHP
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[request] Move configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | Part of #37186
| License | MIT
| Doc PR |
<!--
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/releases):
- Always add tests and ensure they pass.
- Never break backward compatibility (see https://symfony.com/bc).
- 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 master.
-->
Commits
-------
ca72bbbf4d [request] Move configuration to PHP
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Move XML service configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
Move the FrameworkBundle service configuration to PHP.
Commits
-------
679486257d [FrameworkBundle] Move XML service configuration to PHP
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[Routing] Move configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | [#37186](https://github.com/symfony/symfony/issues/37186)
| License | MIT
Moving routing configurations in FrameworkBundle to PHP
Commits
-------
268edd8e71 [Routing] Move configuration to PHP
* 5.1:
[Console] Reset question validator attempts only for actual stdin (bis)
Fix CookieClearingLogoutListener DI configuration
[HttpFoundation] use InputBag for Request::$request only if data is coming from a form
Make PhpDocExtractor compatible with phpDocumentor v5
fixed prototype block prefixes hierarchy of the CollectionType
Reset question validator attempts only for actual stdin
fixed block prefixes hierarchy of the CollectionType
bumped Symfony version to 5.0.11
updated VERSION for 5.0.10
updated CHANGELOG for 5.0.10
bumped Symfony version to 4.4.11
updated VERSION for 4.4.10
updated CHANGELOG for 4.4.10
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[WebProfilerBundle] Move xml service configuration to php
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | #37186 <!-- prefix each issue number with "Fix #", if any -->
| License | MIT
| Doc PR | -
Move WebProfilerBundles xml service configuration to php.
Commits
-------
c17429ff76 [WebProfilerBundle] Move xml service configuration to php
* 5.0:
Make PhpDocExtractor compatible with phpDocumentor v5
Reset question validator attempts only for actual stdin
bumped Symfony version to 5.0.11
updated VERSION for 5.0.10
updated CHANGELOG for 5.0.10
bumped Symfony version to 4.4.11
updated VERSION for 4.4.10
updated CHANGELOG for 4.4.10
* 4.4:
Make PhpDocExtractor compatible with phpDocumentor v5
Reset question validator attempts only for actual stdin
bumped Symfony version to 4.4.11
updated VERSION for 4.4.10
updated CHANGELOG for 4.4.10
This PR was merged into the 5.1 branch.
Discussion
----------
[HttpFoundation] use InputBag for Request::$request only if data is coming from a form
| Q | A
| ------------- | ---
| Branch? | 5.1
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37100
| License | MIT
| Doc PR | -
Commits
-------
786ba109d0 [HttpFoundation] use InputBag for Request::$request only if data is coming from a form
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Move translation service configuration from xml to php #37186
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | #37186
| License | MIT
| Doc PR | -
Move translation service configuration from xml to php
Commits
-------
e4bc48f334 [FrameworkBundle] Move translation service configuration from xml to php #37186
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Move mailer configuration to php
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? |no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | Part of #37186
| License | MIT
Move mailer configuration file to php
Commits
-------
eb88f8856b [FrameworkBundle] Move mailer configuration to php
This PR was merged into the 4.4 branch.
Discussion
----------
Reset question validator attempts only for actual stdin
| Q | A
| ------------- | ---
| Branch? | 4/4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | Fix#37046
| License | MIT
| Doc PR |
Let's see what CI says. Works for me locally with phpunit and when running such command manually
Commits
-------
8fe7be4212 Reset question validator attempts only for actual stdin
This PR was merged into the 4.4 branch.
Discussion
----------
[PropertyInfo] Make PhpDocExtractor compatible with phpDocumentor v5
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#36049
| License | MIT
| Doc PR | N/A
Version 5 of phpDocumentor introduced some changes to the `getTagsByName()` method that break the `PhpDocExtractor`.
More specific, it now returns an instance of `InvalidTag` instead of `null` when parsing an invalid tag.
Commits
-------
b1f8e5a80a Make PhpDocExtractor compatible with phpDocumentor v5
Version 5 of phpDocumentor introduced some changes to the
`getTagsByName()` method that break the `PhpDocExtractor`.
More specific, it now returns an instance of `InvalidTag` instead of
`null` when parsing an invalid tag.
* 5.1:
[Security] Run functional tests also for the authenticator system
Fix register csrf protection listener
bumped Symfony version to 5.1.2
updated VERSION for 5.1.1
updated CHANGELOG for 5.1.1
This PR was merged into the 5.2-dev branch.
Discussion
----------
[Validator][FrameworkBundle] Move configurations from XML to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | Part of #37186 <!-- prefix each issue number with "Fix #", if any -->
| License | MIT
<!--
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/releases):
- Always add tests and ensure they pass.
- Never break backward compatibility (see https://symfony.com/bc).
- 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 master.
-->
Move `src/Symfony/Bundle/FrameworkBundle/Resources/config/validator*.xml` configurations to PHP
Commits
-------
46de8900f0 [FrameworkBundle] Move Validator configuration to PHP
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Move session configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37186
| License | MIT
Move session configuration file to php
Commits
-------
de8f07d5bd [FrameworkBundle] Move session configuration to PHP
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[Notifier] Remove default transport property in Transports class
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | yes <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | - <!-- prefix each issue number with "Fix #", if any -->
| License | MIT
| Doc PR | tbd. <!-- required for new features -->
At the moment the `Transports` class uses the first element of the injected transports array as the default transport: https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Notifier/Transport/Transports.php#L35
If you try to send a message that doesn't define a transport (`!$message->getTransport()`) the default transport is used. I see two main drawbacks with this solution that I try to fix with this PR:
1. There is no check if the given message is supported by the default transport. What means that the transport is going to fail with an Exception, if it's not supporting the given message. E.g. the `SlackTransport` only supports `ChatMessage`s with nullable options or options from type `SlackOptions`. So as a default transport the `SlackTransport` can't handle all types of `ChatMessage`s.
2. Why should we only send the message using the default transport if there are more possible transports which are probably supported?
I did the following to fix the mentioned drawbacks:
- removed the default transport property
- added a check to make sure the transport defined by the message supports it
- send the message to **all** supported transports, in case the given message does not define a transport
- added a test
Commits
-------
5c167b08d3 [Notifier] Remove default transport property in Transports class
* 5.1:
[DependencyInjection][CheckTypeDeclarationsPass] Handle unresolved parameters pointing to environment variables
switch the context when validating nested forms
remove unused param from validator service config
Fix typo
[HttpKernel] Fix regression where Store does not return response body correctly
rework form validator tests
Update AbstractController.php
* 5.0:
[DependencyInjection][CheckTypeDeclarationsPass] Handle unresolved parameters pointing to environment variables
switch the context when validating nested forms
remove unused param from validator service config
Fix typo
[HttpKernel] Fix regression where Store does not return response body correctly
rework form validator tests
Update AbstractController.php
* 4.4:
[DependencyInjection][CheckTypeDeclarationsPass] Handle unresolved parameters pointing to environment variables
switch the context when validating nested forms
remove unused param from validator service config
Fix typo
[HttpKernel] Fix regression where Store does not return response body correctly
rework form validator tests
Update AbstractController.php
* 3.4:
switch the context when validating nested forms
Fix typo
[HttpKernel] Fix regression where Store does not return response body correctly
rework form validator tests
Update AbstractController.php
This PR was merged into the 3.4 branch.
Discussion
----------
[Form] switch the context when validating nested forms
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37072
| License | MIT
| Doc PR |
Commits
-------
38135de549 switch the context when validating nested forms
This PR was merged into the 5.2-dev branch.
Discussion
----------
[APP_CACHE_DIR] Ensure a split per environment when using that new variable
| Q | A
| ------------- | ---
| Branch | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| License | MIT
| Doc PR | https://github.com/symfony/symfony-docs/pull/13819
All the explanation here: https://github.com/symfony/symfony-docs/pull/13819
Commits
-------
06b793f59e Ensure a split per environment
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[Lock] Move configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | yes-ish
| Deprecations? | no
| Tickets | #37186
| License | MIT
| Doc PR | n/a
Change lock config file from XML to PHP.
Commits
-------
7882cd5527 [Lock] Move configuration to PHP
This PR was merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Move web configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
Commits
-------
9000e72a23 add missing abstract_arg to fix replace arguments
8a81abeb6f [FrameworkBundle] Move web configuration to PHP
This PR was merged into the 5.2-dev branch.
Discussion
----------
[SecurityBundle] convert templating configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
Commits
-------
0c36a4b8d9 [SecurityBundle] convert templating configuration to PHP
This PR was merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Move profiling collectors configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | https://github.com/symfony/symfony/issues/37186
| License | MIT
Moving profiling collectors configuration in framework bundle to PHP.
Commits
-------
3a0db4cf4d [FrameworkBundle] Move profiling collectors configuration to PHP
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[DI][Framework] Use PHP instead of XML for test config
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Partially #37186
| License | MIT
See #37186
Commits
-------
36cc98228e [DI][Framework] Use PHP instead of XML for test config
This PR was merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Move profiling configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | #37186
| License | MIT
Moving profiling configuration in framework bundle to PHP.
Commits
-------
20b5d245c7 [FrameworkBundle] Move profiling configuration to PHP
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[Ssi] Move configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
| Doc PR | n/a
Commits
-------
5a4d667369 [Ssi] Move configuration to PHP
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Move debug configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
<!--
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/releases):
- Always add tests and ensure they pass.
- Never break backward compatibility (see https://symfony.com/bc).
- 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 master.
-->
Commits
-------
a226a52d65 [FrameworkBundle] Move debug configuration to PHP
This PR was merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Move security-csrf configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
Moving security-csrf configuration in framework bundle to PHP.
Commits
-------
a2d6581345 [FrameworkBundle] Move security-csrf configuration to PHP
This PR was merged into the 4.4 branch.
Discussion
----------
Remove non-existing arg and param from serializer service config
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets |
| License | MIT
| Doc PR |
Leftover from #22741
Commits
-------
d179d71f45 Remove non-existing arg and param from serializer service config
This PR was merged into the 4.4 branch.
Discussion
----------
[DependencyInjection][CheckTypeDeclarationsPass] Always resolve parameters
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | https://github.com/symfony/symfony/issues/37166
| License | MIT
| Doc PR | -
> Only array parameters are not inlined when dumped.
This is true only when the XML debug container is used, not on a live container that can contain unresolved parameters in the `%my_param%` form. That was my mistake. We have to resolve to get the parameter type.
`$value = [];` was just an improvement to avoid useless parameter resolve btw.
Commits
-------
da0e2c36ef [DependencyInjection][CheckTypeDeclarationsPass] Always resolve parameters
This PR was squashed before being merged into the 5.1 branch.
Discussion
----------
[DependencyInjection] Apply ExpressionLanguageProviderPass to router.default
| Q | A
| ------------- | ---
| Branch? | 5.1
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix https://github.com/symfony/symfony/issues/37042
| License | MIT
Using a `chain_router` usually replaces the `router` and add the `router.default` to it's chain.
This would `addExpressionLanguageProvider` to the default router only as the chain router is not expected to have `addExpressionLanguageProvider` as it is not part of the router interface.
Commits
-------
215ad1f93d [DependencyInjection] Apply ExpressionLanguageProviderPass to router.default
This PR was merged into the 5.1 branch.
Discussion
----------
[String] Fix ellipsis of truncate when not using cut option
| 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 | - <!-- prefix each issue number with "Fix #", if any -->
| License | MIT
| Doc PR | - <!-- required for new features -->
[Since 5.1](https://symfony.com/blog/new-in-symfony-5-1-string-improvements#keep-the-last-word-when-truncating), we can use a cut option on truncate.
But with this option, we don't have the expected behavior when the entire chain is returned.
Currently:
`u('Lorem Ipsum')->truncate(8, '…', false); // 'Lorem Ipsum...'`
Instead of:
`u('Lorem Ipsum')->truncate(8, '…', false); // 'Lorem Ipsum'`
Thanks to @jmsche for his help.
Commits
-------
a2ee6c6cf4 [String] Fix ellipsis of truncate when not using cut option
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[PropertyInfo] Move configuration to PHP
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
| Doc PR | n/a
Commits
-------
5dab6ffc4b [PropertyInfo] Move configuration to PHP
This PR was merged into the 5.2-dev branch.
Discussion
----------
[Framework] Convert config/error_renderer.xml to php
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
Commits
-------
213091e8d2 [Framework] Convert config/error_renderer.xml to php
This PR was merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Convert config/secrets.xml to .php
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
Commits
-------
6ec97116a3 Convert config/secrets.xml to .php
This PR was merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Add support for tagged_iterator/tagged_locator in unused tags util
| Q | A
| ------------- | ---
| Branch? | master <!-- 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 #", if any -->
| License | MIT
| Doc PR | n/a
/cc @stof :)
Commits
-------
164ca90d89 [FrameworkBundle] Add support for tagged_iterator/tagged_locator in unused tags util
This PR was merged into the 5.2-dev branch.
Discussion
----------
[FrameworkBundle] Convert config/mime_type.xml to .php
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Ref #37186
| License | MIT
Commits
-------
fa92490fcb Convert config/mime_type.xml into mime_type.php
This PR was merged into the 5.2-dev branch.
Discussion
----------
[HttpClient] make DNS resolution lazy with NativeHttpClient
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | -
| License | MIT
| Doc PR | -
Neither a bug nor a feature but still an improvement. This aligns the behavior of NativeHttpClient with the other adapters.
Commits
-------
d3a450353d [HttpClient] make DNS resolution lazy with NativeHttpClient
This PR was merged into the 5.1 branch.
Discussion
----------
[Routing] Keeping routes priorities after add a name prefix to the collection
| Q | A
| ------------- | ---
| Branch? | 5.1
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37089
| License | MIT
| Doc PR | -
Commits
-------
10105267b5 kept routes priorities after add a name prefix to the collection
This PR was squashed before being merged into the 5.1 branch.
Discussion
----------
[Lock] Fixed reading locks from replica set secondary nodes
| Q | A
| ------------- | ---
| Branch? | 5.1
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37139
| License | MIT
| Doc PR | https://github.com/symfony/symfony-docs/pull/13775
Force lock existence query to use `readPreference=primary` in case the given mongo connection is using any of the following `readPreference`s:
* primaryPreferred
* secondary
* secondaryPreferred
* nearest
Any of the above would fail if a secondary node is queried during a lock release.
Commits
-------
ebf7eaf503 [Lock] Fixed reading locks from replica set secondary nodes
This PR was merged into the 5.2-dev branch.
Discussion
----------
[Mime] Add DKIM support
| Q | A
| ------------- | ---
| Branch? | master <!-- see below -->
| Bug fix? | no
| New feature? | yes <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | Fix#36014 <!-- prefix each issue number with "Fix #", if any -->
| License | MIT
| Doc PR | not yet
```php
$dkimSigner = new DkimSigner($pk, 'example.com', 'sf');
$signedEmail = $dkimSigner->sign($email);
```
You can also pass options:
```php
$dkimSigner = new DkimSigner($pk, 'example.com', 'sf');
$signedEmail = $dkimSigner->sign($email, (new DkimOptions())
->bodyCanon('relaxed')
->headerCanon('relaxed')
->headersToIgnore(['Message-ID'])
->toArray()
);
```
Commits
-------
6dc533821c [Mime] Add DKIM support
This PR was merged into the 5.2-dev branch.
Discussion
----------
Use PHP instead of XML as the prefered service/route configuration in core
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | yes-ish <!-- 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 #", if any -->
| License | MIT
| Doc PR | n/a
In Symfony 6, I (we?) would want to promote usage of configuration written in PHP instead of YAML. For third-party bundles and core, we should do the same, replacing XML with PHP. Doing so would remove the need for the XML lib for core.
The biggest advantage is auto-completion with any modern IDE without explicit support for Symfony, and probably one less thing to learn (how to configure things in YAML/XML).
Be warned that it does NOT concern semantic configuration which is much harder.
This PR does the work for the Twig bundle as an example. Once we agreed on the CS, the same should then be done for other core bundles both for service configuration and route configuration.
Embeds #36775 until it is merged.
Commits
-------
0aedd54fc1 [Twig] Move configuration to PHP
This PR was squashed before being merged into the 4.4 branch (closes#37177).
Discussion
----------
[Ldap] fix refreshUser() ignoring extra_fields
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? |no
| Tickets | -
| License | MIT
| Doc PR | -
While #31532 introduced `extra_fields` in general, #32824 later added `LdapUser` & `LdapUserProvider` and ignored `extra_fields` on `refreshUser()`.
This PR fixes `refreshUser()` and adds a test which makes sure, that the refreshed ldap user doesn't lose its default values.
Commits
-------
cb8f12996c [Ldap] fix refreshUser() ignoring extra_fields
This PR was merged into the 5.2-dev branch.
Discussion
----------
[Console] Add support for true colors
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | yes <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | Fix#26576, Fix#19844 <!-- prefix each issue number with "Fix #", if any -->
| License | MIT
| Doc PR | -
This PR adds support for true colors in the Console component.
Instead of adding many ways to add more colors than the current "default" ones, I've opted to only add true color support via Hex CSS colors. If you have something else (RGB, HSV, ...), you need to first convert it to a CSS color. I've also decided to not support the ANSI 256 colors as most terminals support true colors nowadays.
If true colors are not supported by the terminal, we fall back to the "nearest" default color.
`<fg=green;bg=blue>` is now equivalent to `<fg=#00ff00;bg=#00f>`.
The `Color` class is usable outside of the Console framework as well:
```php
$color = new Color('black', 'white');
echo $color->apply("foo");
echo "\n";
$color = new Color('red', 'yellow');
echo $color->apply("foo");
echo "\n";
$color = new Color('#000000', '#ffffff');
echo $color->apply("foo");
$color = new Color('#000', '#fff', ['underscore', 'reverse']);
echo $color->apply("bar");
echo "\n";
```
Rainbow time!
```php
function rainbowColor($i) {
$h = (int) ($i / 43);
$f = (int) ($i - 43 * $h);
$t = (int) ($f * 255 / 43);
$q = 255 - $t;
if ($h == 0) {
return new Color('', sprintf('#FF%02x00', $t));
} elseif ($h == 1) {
return new Color('', sprintf('#%02xFF00', $q));
} elseif ($h == 2) {
return new Color('', sprintf('#00FF%02x', $t));
} elseif ($h == 3) {
return new Color('', sprintf('#00%02xFF', $q));
} elseif ($h == 4) {
return new Color('', sprintf('#%02x00FF', $t));
} elseif ($h == 5) {
return new Color('', sprintf('#FF00%02x', $q));
}
}
for ($i = 0; $i < 128; $i++) {
echo rainbowColor($i)->apply(' ');
}
echo "\n";
for ($i = 255; $i >= 128; $i--) {
echo rainbowColor($i)->apply(' ');
}
echo "\n";
```
![image](https://user-images.githubusercontent.com/47313/81796170-59af5e00-950d-11ea-8203-18c13ae8a07e.png)
Commits
-------
d066514cf1 [Console] Add support for true colors
This PR was merged into the 5.2-dev branch.
Discussion
----------
[ExpressionLanguage] add details for error messages
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Fix#36847
| License | MIT
| Doc PR |
Hello!
This PR contains a more detail error messages for [ExpressionLanguage], which include info about affected node and attribute.
My English is poor. Please, spell check in error texts.
Commits
-------
5852a8cedd [ExpressionLanguage] add details for error messages
This PR was squashed before being merged into the 5.2-dev branch.
Discussion
----------
[PropertyInfo] Support using the SerializerExtractor with no group check
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | yes
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | <!-- prefix each issue number with "Fix #", if any -->
| License | MIT
| Doc PR | <!-- required for new features -->
It seems there is no way currently to leverage the new `@Ignore` annotation metadata without using serializer groups in third party code.
Indeed the only way to access the serializer's metadata is through the PropertyInfo component since metadata are marked as `@internal` in the Serializer component itself. However, the PropertyInfo component doesn't allow accessing them without using a groups constraint.
This PR proposes a fix by interpreting `serializer_groups = null` as no groups constraint.
This feature would be useful in NelmioApiDocBundle, see https://github.com/nelmio/NelmioApiDocBundle/issues/1595.
Commits
-------
4190bfaf48 [PropertyInfo] Support using the SerializerExtractor with no group check
This PR was merged into the 5.1 branch.
Discussion
----------
[PhpUnitBridge] Fix ExpectDeprecationTrait::expectDeprecation() conflict
| Q | A
| ------------- | ---
| Branch? | 5.1
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | https://github.com/symfony/symfony/issues/37133
| License | MIT
| Doc PR | -
ExpectDeprecationTrait::expectDeprecation() must be compatible with TestCase::expectDeprecation(). I'm personally against a renaming on our side because this name is the best.
Commits
-------
ea5bb242fd [PhpUnitBridge] Fix ExpectDeprecationTrait::expectDeprecation() conflict
This PR was merged into the 5.2-dev branch.
Discussion
----------
[DependencyInjection] Display alternatives when a service is not found in CheckExceptionOnInvalidReferenceBehaviorPass
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | -
| License | MIT
| Doc PR | -
I often see the mistake of using `@my_service` instead of `my_service` in bundles configurations in YAML (on entries that are then turned into references). Since we don't currently display alternatives, the message content is just that the service don't exist which is hard to understand for new users of the framework.
Commits
-------
6b8f181f1a [DependencyInjection] Display alternatives when a service is not found in CheckExceptionOnInvalidReferenceBehaviorPass
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.
This PR was merged into the 5.1 branch.
Discussion
----------
[DI] Add check around class_alias for generated proxy classes
| Q | A
| ------------- | ---
| Branch? | 5.1
| Bug fix? | yes
| New feature? | no
| Deprecations? | nofiles -->
| Tickets | Fix#37059
| License | MIT
| Doc PR |
Here is the [requested](https://github.com/symfony/symfony/issues/37059#issuecomment-638633262) fix.
I'd like to note that I consider this kind of a workaround. I don't know why the issue only started to appear with Symfony 5.1 and not before. There might be some other problem hidden somewhere else.
Commits
-------
c8b7459115 Add class_alias for generated proxy classes