This PR was merged into the 2.2 branch.
Discussion
----------
[Form] Removed the "disabled" attribute from the placeholder option in select fields due to problems with the BlackBerry 10 browser
| Q | A
| ------------- | ---
| Bug fix? | yes (together with #8623)
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #7678#8478#8526
| License | MIT
| Doc PR | -
Commits
-------
97cbb19 [Form] Removed the "disabled" attribute from the placeholder option in select fields due to problems with the BlackBerry 10 browser
This PR was merged into the 2.2 branch.
Discussion
----------
[Routing] add ability for apache matcher to handle array values
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8567
Commits
-------
c138304 [routing] added ability for apache matcher to handle array values
This PR was merged into the 2.2 branch.
Discussion
----------
[Form] Fix issue with \DateTimeZone::UTC / 'UTC' for PHP < 5.5
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
On PHP 5.4.x and 5.3.x, `setTimeZoneId()` requires the parameter to be a string, but the constant `\DateTimeZone::UTC` is (int) 1024.
See: http://www.php.net/manual/en/intldateformatter.settimezoneid.php
This caused an issue for us when using Date formfields, giving this error:
"DateTimeZone::__construct(): Unknown or bad timezone (1024)"
Commits
-------
5c359a8 Fix issue with \DateTimeZone::UTC / 'UTC' for PHP 5.4
This PR was merged into the master branch.
Discussion
----------
[HttpFoundation] deprecates FlashBag::getIterator() method
This PR does not fix#8294 but this issue is not fixable. The `FlashBag::getIterator()` method actualy does not make any sense and is confusing. It should be removed. I just added a `@deprecated` tag and `Will be removed in 3.0.` message because removing it now would introduce a BC break. I guess issue #8294 can be closed after merge as it make not more sense than the incriminated method.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8294
Commits
-------
ce8a7d6 [HttpFoundation] deprecated FlashBag::getIterator() method
This PR was merged into the master branch.
Discussion
----------
[WebProfilerBundle] make toolbar listener instantiation conditional
In the `WebProfilerBundle`, if `intercept_redirects` and `toolbar` options are both `false`, the `toolbar.xml` config file should not be loaded as the listener becomes useless.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8130
Commits
-------
17cbfc8 [WebProfilerBundle] made toolbar listener instantiation conditional
This PR was merged into the master branch.
Discussion
----------
[Console] fix tests
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
Commits
-------
e4c1b30 [Console] fixed tests
This reverts commit a2b15359d8.
Conflicts:
src/Symfony/Component/Form/Form.php
The commit is reverted because it introduces a bug demonstrated by a currently failing test.
This PR was merged into the master branch.
Discussion
----------
[console] makes descriptors use output instead of returning a string
This PR changes `DescriptorInterface::describe($object, array $options = array())` method signature to `describe(OutputInterface $output, $object, array $options = array())` and all subsequent implementations.
It's now possible to use helpers inside descriptors.
That was not easy!
@lyrixx this is all for you
@fabpot I just added one new class
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | yes
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8371
Commits
-------
b9fa52c [Console] made descriptors use output instead of returning a string
This PR was merged into the 2.3 branch.
Discussion
----------
[FrameworkBundle] fixed regression where the command might have the wrong container if the application is reused several times
Commits
-------
1bd45b3 [FrameworkBundle] fixed regression where the command might have the wrong container if the application is reused several times
This PR was merged into the master branch.
Discussion
----------
[FrameworkBundle] fixed regression where the command might have the wrong container if the application is reused several times
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
This fixes a regression introduced in #8242. Before this PR, the commands were always getting the current container registered in the kernel. But as the commands are now registered only once, if the container changes, the commands were not aware of this change. That happens quite frequently in functional tests where the Kernel is booted and shutdown several times in the same process.
Commits
-------
1bd45b3 [FrameworkBundle] fixed regression where the command might have the wrong container if the application is reused several times
This PR was merged into the master branch.
Discussion
----------
[Debug] Developer friendly Class Not Found and Undefined Function errors
This is a followup of #8156
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8156
| License | MIT
| Doc PR | n/a
Here is the original description from #8156:
Per a discussion with @weaverryan and others, I took a crack at enhancing the exception display for class not found errors and undefined function errors. It is not the cleanest solution but this is a work in progress to see whether or not following this path makes sense.
# Class Names
## Class Not Found: Unknown Class (Global Namespace)
```php
<?php
new WhizBangFactory();
```
> Attempted to load class 'WhizBangFactory' from the global namespace in foo.php line 12. Did you forget a use statement for this class?
## Class Not Found: Unknown Class (Full Namespace)
```php
<?php
namespace Foo\Bar;
new WhizBangFactory();
```
> Attempted to load class 'WhizBangFactory' from namespace 'Foo\Bar' in foo.php line 12. Do you need to 'use' it from another namespace?
## Class Not Found: Well Known Class (Global Namespace)
```php
<?php
new Request();
```
> Attempted to load class 'Request' from the global namespace in foo.php line 12. Did you forget a use statement for this class? Perhaps you need to add 'use Symfony\Component\HttpFoundation\Request' at the top of this file?
## Class Not Found: Well Known Class (Full Namespace)
```php
<?php
namespace Foo\Bar;
new Request();
```
> Attempted to load class 'Request' from namespace 'Foo\Bar' in foo.php line 12. Do you need to 'use' it from another namespace? Perhaps you need to add 'use Symfony\Component\HttpFoundation\Request' at the top of this file?
# Functions
## Undefined Function (Global Namespace)
```php
<?php
// example.php:
// namespace Acme\Example;
// function test_namespaced_function()
// {
// }
include "example.php";
test_namespaced_function()
```
> Attempted to call function 'test_namespaced_function' from the global namespace in foo.php line 12. Did you mean to call: '\acme\example\test_namespaced_function'?
## Undefined Function (Full Namespace)
```php
<?php
namespace Foo\Bar\Baz;
// example.php:
// namespace Acme\Example;
// function test_namespaced_function()
// {
// }
include "example.php";
test_namespaced_function()
```
> Attempted to call function 'test_namespaced_function' from namespace 'Foo\Bar\Baz' in foo.php line 12. Did you mean to call: '\acme\example\test_namespaced_function'?
## Undefined Function: Unknown Function (Global Namespace)
```php
<?php
test_namespaced_function()
```
> Attempted to call function 'test_namespaced_function' from the global namespace in foo.php line 12.
## Undefined Function: Unknown Function (Full Namespace)
```php
<?php
namespace Foo\Bar\Baz;
test_namespaced_function()
```
> Attempted to call function 'test_namespaced_function' from namespace 'Foo\Bar\Baz' in foo.php line 12.
Commits
-------
bde67f0 fixed an error message
80e19e2 [Debug] added some missing phpdocs
968764b [Debug] refactored unit tests
cefa1b5 [Debug] moved special fatal error handlers to their own classes
53ab284 [Debug] made Debug find FQCN automatically based on well-known autoloaders
208ca5f [Debug] made guessing of possible class names more flexible
a0b1585 [Debug] fixed CS
6671945 Developer friendly Class Not Found and Undefined Function errors.
This PR was merged into the 2.2 branch.
Discussion
----------
removed dead code and fixed CS
| 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
-------
7d58147 removed dead code and fixed CS
This PR was merged into the 2.2 branch.
Discussion
----------
[Validator] Fixed StaticMethodLoader does not try to invoke methods of abstract classes anymore
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8589
| License | MIT
| Doc PR | n/a
Commits
-------
b41cf82 [Validator] fixed StaticMethodLoader trying to invoke methods of abstract classes (closes#8589)
* 2.3:
[Form] fixes empty file-inputs get treated as extra field
return 0 if there is no valid data
[DependencyInjection] fixed regression where setting a service to null did not trigger a re-creation of the service when getting it
[DependencyInjection] fixed#8570
fixed file permission
The ignoreAttributes itself should be ignored, too.
[Tests] Tests on php 5.5 should pass
[Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes#88546)
* 2.2:
return 0 if there is no valid data
[Tests] Tests on php 5.5 should pass
[Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes#88546)
This PR was merged into the master branch.
Discussion
----------
[templating] fixed test failure introduted from #8585
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8585
| License | MIT
| Doc PR | n/a
Commits
-------
4b7c3b9 [template] fixed test failure introduted from #8585
This PR was squashed before being merged into the 2.3 branch (closes#8575).
Discussion
----------
[Form] fixes empty file-inputs get treated as extra field
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8548, #8566
| License | MIT
Commits
-------
e5fba3c [Form] fixes empty file-inputs get treated as extra field
This PR was submitted for the 2.3 branch but it was merged into the master branch instead (closes#8585).
Discussion
----------
Print form name in form_start function
It'd be useful if form_start() prints the form's name.
This way if you want to test it in your page, you can catch the form by `$crawler->filter('form[name=my_form_name]')`
Commits
-------
221bc15 Print form name in form_start function
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8581).
Discussion
----------
TimeCollector, Notice, if no events
https://github.com/symfony/symfony/issues/8574
Commits
-------
e9da1c0 return 0 if there is no valid data
This PR was merged into the 2.3 branch.
Discussion
----------
[DependencyInjection] setLazy not work on DefinitionDecorator
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8570
| License | MIT
| Doc PR | n/a
Commits
-------
970ce2c [DependencyInjection] fixed#8570
This PR was merged into the 2.3 branch.
Discussion
----------
[DependencyInjection] fixed regression where setting a service to null did not trigger a re-creation of the service when getting it (closes#8392)
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8392
| License | MIT
| Doc PR | n/a
Commits
-------
50d0727 [DependencyInjection] fixed regression where setting a service to null did not trigger a re-creation of the service when getting it
This PR was merged into the 2.3 branch.
Discussion
----------
[FrameworkBundle] RedirectCotroller: The ignoreAttributes parameter should be ignored
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
As discussed in PR #7590, when pointing a route to FrameworkBundle's `RedirectController` the attribute `ignoreAttributes` is added to the new route's attributes, if specified as array. As @lsmith77 wrote in a comment to that PR, this should not be the intended behavior. A valid workaround is to add `ignoreAttributes` itself to this array.
The problem remained undiscovered by the unit test, as `ignoreAttribues` was not included in the `_route_params` of the faked `Request` object. This PR should fix both, the unit test and the `RedirectController` itself, so the workaround mentioned above is not necessary anymore. Additionally, my fix should not break any routing configuration that is using the workaround.
Commits
-------
dc1fff0 The ignoreAttributes itself should be ignored, too.