This PR was merged into the 2.7 branch.
Discussion
----------
[Serializer] Name converter support
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | #12212
| License | MIT
| Doc PR | symfony/symfony-docs#4692
This PR adds support for custom property naming strategies to the serializer and provides a built-in NameConverter using this new system: (CamelCase to underscore).
It handles normalization and denormalization (convert `fooBar` to `foo_bar` when serializing, then from `foo_bar` to `fooBar` when deserializing). It also has a flag to convert only some attributes.
The `setCamelizedAttributes()` is deprecated in favor of this new method (more flexible, allows to rename all attributes of a class and support deserialization) and now uses it internally.
Commits
-------
86b84a5 [Serializer] Update changelog
e14854f [Serializer] Name converter support
This PR was merged into the 2.6 branch.
Discussion
----------
[VarDumper] CSS fix
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Small css issue:
When you use `dump()` after some html has been already echoed (this can be common in non-Symfony app) and you have elements with e.g. `position: absolute` you can end up watching logos and menus instead of vardumper's output:
![css-issue](https://cloud.githubusercontent.com/assets/2826480/5841607/438bf874-a1af-11e4-9905-542a59d358f8.png)
`position: relative` and `z-index` help a lot and i don't see any disadvantages in having these styles by default
Commits
-------
538195c [Var-Dumper] css-fix
* 2.5:
[Validator] use 2.5 API in LengthValidator
fixed id for translations
bumped Symfony version to 2.3.26
Dutch translation for invalid charset message
German translation for invalid charset message
Add a Slovenian translation for invalid charset message
Add a Polish translation.
Test lowest deps with latest 5.3
updated VERSION for 2.3.25
update CONTRIBUTORS for 2.3.25
updated CHANGELOG for 2.3.25
Fix docblocks to comments
Inject the correct EventDispatcher instance
[Validator] reject ill-formed strings
[Validator] drop grapheme_strlen in LengthValidator
Unique Entity Validator Invalid Value
[FrameworkBundle][config] allow multiple fallback locales.
Conflicts:
src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php
src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php
src/Symfony/Component/Validator/Resources/translations/validators.de.xlf
src/Symfony/Component/Validator/Resources/translations/validators.en.xlf
src/Symfony/Component/Validator/Resources/translations/validators.fr.xlf
src/Symfony/Component/Validator/Resources/translations/validators.nl.xlf
src/Symfony/Component/Validator/Resources/translations/validators.pl.xlf
src/Symfony/Component/Validator/Resources/translations/validators.sl.xlf
This PR was merged into the 2.5 branch.
Discussion
----------
[Validator] use 2.5 API in LengthValidator
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Commits
-------
7602454 [Validator] use 2.5 API in LengthValidator
* 2.3:
fixed id for translations
bumped Symfony version to 2.3.26
Dutch translation for invalid charset message
German translation for invalid charset message
Add a Slovenian translation for invalid charset message
Add a Polish translation.
Test lowest deps with latest 5.3
updated VERSION for 2.3.25
update CONTRIBUTORS for 2.3.25
updated CHANGELOG for 2.3.25
Fix docblocks to comments
[Validator] reject ill-formed strings
[Validator] drop grapheme_strlen in LengthValidator
Unique Entity Validator Invalid Value
[FrameworkBundle][config] allow multiple fallback locales.
Conflicts:
src/Symfony/Bridge/Doctrine/Tests/Validator/Constraints/UniqueEntityValidatorTest.php
src/Symfony/Bridge/Doctrine/Validator/Constraints/UniqueEntityValidator.php
src/Symfony/Component/HttpKernel/Kernel.php
src/Symfony/Component/Validator/Resources/translations/validators.de.xlf
src/Symfony/Component/Validator/Resources/translations/validators.en.xlf
src/Symfony/Component/Validator/Resources/translations/validators.fr.xlf
src/Symfony/Component/Validator/Resources/translations/validators.nl.xlf
src/Symfony/Component/Validator/Resources/translations/validators.pl.xlf
src/Symfony/Component/Validator/Resources/translations/validators.sl.xlf
src/Symfony/Component/Validator/Tests/Constraints/LengthValidatorTest.php
This PR was merged into the 2.3 branch.
Discussion
----------
Test lowest deps with latest 5.3
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Once merged back into 2.6 and as demonstrated in #13555 / https://travis-ci.org/symfony/symfony/builds/48954841, this works around the segfault that happens there all the time since 8892cf0 (reverting the patch introduced on src/Symfony/Bridge/Twig/NodeVisitor/Scope.php also works around the segfault, but choosing this path would make no sense).
Commits
-------
713b8c8 Test lowest deps with latest 5.3
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] Add a Polish translation for invalid charset message
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
re #13528
Commits
-------
0d562eb Add a Polish translation.
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] Dutch translation for invalid charset message
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
re https://github.com/symfony/symfony/pull/13528
Commits
-------
0f72a1e Dutch translation for invalid charset message
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] German translation for invalid charset message
| Q | A
| ------------- | ---
| Fixed tickets |
| License | MIT
Commits
-------
97576ff German translation for invalid charset message
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] Add a Slovenian translation for invalid charset message
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | N/A
| License | MIT
| Doc PR | N/A
Concerning PR #13528
Commits
-------
bd804e6 Add a Slovenian translation for invalid charset message
This PR was squashed before being merged into the 2.3 branch (closes#13469).
Discussion
----------
Fix docblocks to comments
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | ?
| Fixed tickets | N/A
| License | MIT
| Doc PR | N/A
Change docblock into comment when it's not a proper docblock.
Commits
-------
779926a Fix docblocks to comments
This PR was merged into the 2.7 branch.
Discussion
----------
[Serializer] minor: fix comment
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
| Doc PR | n/a
Fix bad copy/paste from the Validator component.
Commits
-------
2971d43 [Serializer] minor: fix comment
This PR was merged into the 2.7 branch.
Discussion
----------
[TwigBundle] fixed Twig options (removed the parameter as it cannot contain service references)
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | no
| Fixed tickets | #13467
| License | MIT
| Doc PR | n/a
The new `autoescape_service` option is used to set the `autoescape` Twig option, which can be a callable. The Twig options are stored in a parameter (`twig.options`), but as parameters cannot have references, that does not work well.
So, this PR removed the parameter as it is not needed.
Commits
-------
69748a1 [TwigBundle] fixed Twig options (removed the parameter as it cannot contain service references)
This PR was submitted for the 2.6 branch but it was merged into the 2.5 branch instead (closes#13549).
Discussion
----------
[EventDispatcher] Wrong EventDispatcher instance injected in listeners
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Actually, when using the `TraceableEventDispatcher` the listeners gets injected as third parameter the original `EventDispatcher` instead of the decorated dispatcher, this causes that the method `getCalledListeners` returns a wrong result if we dispatch another event inside a listener.
Code to reproduce:
```php
<?php
require_once __DIR__.'/vendor/autoload.php';
use Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher;
use Symfony\Component\EventDispatcher\EventDispatcher;
use Symfony\Component\Stopwatch\Stopwatch;
$dispatcher = new TraceableEventDispatcher(new EventDispatcher(), new Stopwatch());
$dispatcher->addListener('bar', function ($event, $eventName, $dispatcher) {});
$dispatcher->addListener('foo', function ($event, $eventName, $dispatcher) {
$dispatcher->dispatch('bar');
});
$dispatcher->dispatch('foo');
$calledListeners = $dispatcher->getCalledListeners();
print_r($calledListeners);
```
Expected result:
```
Array
(
[bar.closure] => Array
(
[event] => bar
[type] => Closure
[pretty] => closure
)
[foo.closure] => Array
(
[event] => foo
[type] => Closure
[pretty] => closure
)
)
```
Actual result:
```
Array
(
[foo.closure] => Array
(
[event] => foo
[type] => Closure
[pretty] => closure
)
)
```
Commits
-------
458b029 Inject the correct EventDispatcher instance
This PR was merged into the 2.7 branch.
Discussion
----------
[SecurityBundle] removed usage of deprecated service
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Commits
-------
8100069 [SecurityBundle] removed usage of deprecated service
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] drop grapheme_strlen in LengthValidator
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13491
| License | MIT
| Doc PR | -
As stated in #13491, validating the length of a string with grapheme_strlen is not suited to validating input because a very long string can in fact have a length of 1 when counted with grapheme_strlen.
Counting UTF-8 characters (not clusters) is not subject to this problem.
The attached patch removes using grapheme_strlen but also adds more fallback when couting the length of strings, using iconv (which is more broadly avail. than mbstring) or PCRE for UTF-8 strings.
Commits
-------
915fcd8 [Validator] drop grapheme_strlen in LengthValidator