This PR was squashed before being merged into the 2.8 branch (closes#16734).
Discussion
----------
Make sure security.role_hierarchy.roles always exists
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16731
| License | MIT
| Doc PR | -
Commits
-------
b272ab5 Make sure security.role_hierarchy.roles always exists
This PR was submitted for the 2.3 branch but it was merged into the 2.8 branch instead (closes#16460).
Discussion
----------
[SecurityBundle] Fix disabling of RoleHierarchyVoter when passing empty hierarchy
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16358
| License | MIT
| Doc PR | -
* When passing `role_hierarchy: ~` in the config, the role hierarchy voter was still enabled. I've now changed this so that an empty hierarchy also results in disabling this voter. With an empty hierarchy, the voter behaves exactly the same as the RoleVoter, so no BC break is introduced here.
* Added some tests for the RoleHierarchyVoter when passing an empty hierarchy. As it then behaves exactly like RoleVoter, the question is whether we shouldn't just always return ACCESS_ABSTAIN when the hierarchy is empty
Commits
-------
96afff6 [SecurityBundle] Fix disabling of RoleHierarchyVoter when passing empty hierarchy
This PR was squashed before being merged into the 2.8 branch (closes#16722).
Discussion
----------
[Security][SecurityBundle] Use csrf_token_id instead of deprecated intention
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16720
| License | MIT
| Doc PR | -
Commits
-------
0450865 [Security][SecurityBundle] Use csrf_token_id instead of deprecated intention
* 2.7:
[HttpKernel] clearstatcache() so the Cache sees when a .lck file has been released
[WIP] [Form] [TwigBridge] Bootstrap horizontal theme missing tests
AssetBundle - fix docs
CS: remove impossible default argument value
This PR was squashed before being merged into the 2.3 branch (closes#16312).
Discussion
----------
[HttpKernel] clearstatcache() so the Cache sees when a .lck file has been released
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15813
| License | MIT
| Doc PR | n/a
I've been trying to debug #15813 and modified the Store in a way to keep unique request IDs in the .lck file. That way, I was hoping to find out which request is blocking and/or if the request is actually still running.
It turned out that `is_file()` would claim that a lock file still exists, but a subsequent attempt to read the information from that file returned "file not found" errors.
So, my assumption is that the `is_file()` result is based on the fstat cache and wrong once a process has seen the lock file.
@jakzal said in https://github.com/symfony/symfony/issues/15813#issuecomment-149013691 that `unlink()`ing the lock file should clear the statcache, but I doubt this is true across PHP processes.
Commits
-------
982710f [HttpKernel] clearstatcache() so the Cache sees when a .lck file has been released
This PR was submitted for the 2.8 branch but it was merged into the 2.7 branch instead (closes#16351).
Discussion
----------
[WIP] [Form] [TwigBridge] Bootstrap horizontal theme missing tests
| Q | A
| ------------------ | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
The current bootstrap horizontal theme has a limitation where the inputs will always have `col-sm-2` class applied to them and the developer has no way on changing this when he wants larger/smaller labels or wants to target another screen size only. The same applies for the `div` around the `input`.
PR checks if a label's class has a `col-*` class set and then uses it rather than the default so that the developer can change them as is needed. Again the same for the `div` by checking the `group_attr.class`
This is my first contribution to Symfony and from the contribution docs I see that the following is still needed.
### ToDo
- [ ] Create Doc and its PR
- [ ] Edit `CHANGELOG???`
For the Doc it seems best to edit `cookbook/form/form_customization.rst` and add another 'admonition' below the "built-in form themes" section that highlights this capability?
I'm not sure what will go into the CHANGELOG?
Commits
-------
a35d3d4 [WIP] [Form] [TwigBridge] Bootstrap horizontal theme missing tests
This PR was squashed before being merged into the 2.8 branch (closes#16547).
Discussion
----------
[Serializer] Improve ObjectNormalizer performance
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16179
| License | MIT
| Doc PR | n/a
Cache attributes detection in a similar way than in #16294 for PropertyAccess.
As for the PropertyAccess Component, I'll open another PR (in 2.8 or 3.1) allowing to cache these attributes between requests using Doctrine Cache.
@Tobion, can you try this PR with your benchmark to estimate the gain?
Commits
-------
683f0f7 [Serializer] Improve ObjectNormalizer performance
This PR was submitted for the 2.8 branch but it was merged into the 2.7 branch instead (closes#16673).
Discussion
----------
AssetBundle - fix docs
Hi,
This PR updates some docs in Asset Bundle.
Best regards,
Michal
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
Commits
-------
62b3cb2 AssetBundle - fix docs
This PR was merged into the 2.8 branch.
Discussion
----------
[Yaml] more fixes to changelog and upgrade files
| Q | A
| ------------- | ---
| Fixed tickets | #16433, #16654
| License | MIT
Commits
-------
273ed25 [Yaml] more fixes to changelog and upgrade files
This PR was merged into the 2.8 branch.
Discussion
----------
[SecurityBundle] test legacy CSRF configuration options
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16704
| License | MIT
| Doc PR |
Commits
-------
444b6ef test legacy CSRF configuration options
* 2.7:
[ci] Force update of ./phpunit deps
[Form] Fixed: Duplicate choice labels are remembered when using "choices_as_values" = false
[Process] Don't catch RuntimeException when it complicates tests debugging
[appveyor] Workaround transient segfault when APCu is enabled
* 2.3:
[ci] Force update of ./phpunit deps
[Process] Don't catch RuntimeException when it complicates tests debugging
[appveyor] Workaround transient segfault when APCu is enabled
This PR was merged into the 2.7 branch.
Discussion
----------
[Form] Fixed: Duplicate choice labels are remembered when using "choices_as_values" = false
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15606
| License | MIT
| Doc PR | -
Commits
-------
1179f07 [Form] Fixed: Duplicate choice labels are remembered when using "choices_as_values" = false
This PR was merged into the 2.8 branch.
Discussion
----------
[Bridge\PhpUnit] Display the stack trace of a deprecation on-demand
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
This PR has been essential into making #16708, and I think everyone working on a 3.0 migration will need this.
Example:
```
$ SYMFONY_DEPRECATIONS_HELPER=/FormExtensionBootstrap3LayoutTest/ ./phpunit src/Symfony/Bridge/Twig/
PHPUnit 4.8.18 by Sebastian Bergmann and contributors.
Testing src/Symfony/Bridge/Twig/
................................................
Remaining deprecation triggered by Symfony\Bridge\Twig\Tests\Extension\FormExtensionBootstrap3LayoutTest::testSingleChoiceGrouped:
The value "false" for the "choices_as_values" option is deprecated since version 2.8 and will not be supported anymore in 3.0. Set this option to "true" and flip the contents of the "choices" option instead.
Stack trace:
#0 src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php(286): trigger_error()
#1 src/Symfony/Component/OptionsResolver/OptionsResolver.php(962): Symfony\Component\Form\Extension\Core\Type\ChoiceType->Symfony\Component\Form\Extension\Core\Type\{closure}()
#2 src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php(277): Symfony\Component\OptionsResolver\OptionsResolver->offsetGet()
#3 src/Symfony/Component/OptionsResolver/OptionsResolver.php(962): Symfony\Component\Form\Extension\Core\Type\ChoiceType->Symfony\Component\Form\Extension\Core\Type\{closure}()
#4 src/Symfony/Component/OptionsResolver/OptionsResolver.php(791): Symfony\Component\OptionsResolver\OptionsResolver->offsetGet()
#5 src/Symfony/Component/Form/ResolvedFormType.php(156): Symfony\Component\OptionsResolver\OptionsResolver->resolve()
#6 src/Symfony/Component/Form/FormFactory.php(119): Symfony\Component\Form\ResolvedFormType->createBuilder()
#7 src/Symfony/Component/Form/FormFactory.php(48): Symfony\Component\Form\FormFactory->createNamedBuilder()
#8 src/Symfony/Component/Form/Tests/AbstractBootstrap3LayoutTest.php(540): Symfony\Component\Form\FormFactory->createNamed()
#9 [internal function]: Symfony\Component\Form\Tests\AbstractBootstrap3LayoutTest->testSingleChoiceGrouped()
#10 {main}
KO src/Symfony/Bridge/Twig/
```
Commits
-------
5a88fb6 [Bridge\PhpUnit] Display the stack trace of a deprecation on-demand
This PR was merged into the 2.3 branch.
Discussion
----------
[Process] Don't catch RuntimeException when it complicates tests debugging
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
See https://github.com/symfony/symfony/pull/16702/files?w=1
Commits
-------
8588a4f [Process] Don't catch RuntimeException when it complicates tests debugging
This PR was merged into the 2.7 branch.
Discussion
----------
[Form] Deprecated setting "choices_as_values" to "false"
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
This is #16681 for 2.7, i.e. without the deprecations trigger
Commits
-------
3ab8189 [Form] Deprecated setting "choices_as_values" to "false"
This PR was merged into the 2.8 branch.
Discussion
----------
[Form] Deprecated TimezoneType::getTimezones()
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
This method is useless as of https://github.com/symfony/symfony/pull/16681. It needs to be deprecated before we can remove it since it is public.
Commits
-------
41df3fc [Form] Deprecated TimezoneType::getTimezones()