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.
This PR was merged into the 2.2 branch.
Discussion
----------
[Tests] Tests on php 5.5 should pass
Because php 5.5 is stable now
Commits
-------
0086ee3 [Tests] Tests on php 5.5 should pass
This PR was merged into the 2.2 branch.
Discussion
----------
[Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes#8546)
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8546
| License | MIT
| Doc PR | n/a
Commits
-------
ae7fa11 [Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes#88546)
* 2.3:
[Validator] fixed ConstraintViolation:: incorrect when nested
handle Optional and Required constraints from XML or YAML sources correctly
added missing comments to WebTestCase
Fixed#8455: PhpExecutableFinder::find() does not always return the correct binary
Added missing files .gitignore
[DependencyInjection] Fix Container::camelize to convert beginning and ending chars
[Validator] Fixed groups argument misplace for validateValue method from validator class
[Form] Fix of "PATCH'ed forms are never valid"
* 2.2:
[Validator] fixed ConstraintViolation:: incorrect when nested
handle Optional and Required constraints from XML or YAML sources correctly
added missing comments to WebTestCase
Fixed#8455: PhpExecutableFinder::find() does not always return the correct binary
[DependencyInjection] Fix Container::camelize to convert beginning and ending chars
[Validator] Fixed groups argument misplace for validateValue method from validator class
Conflicts:
src/Symfony/Component/Validator/Tests/Constraints/CollectionTest.php
src/Symfony/Component/Validator/Tests/GraphWalkerTest.php
This PR was squashed before being merged into the 2.2 branch (closes#8421).
Discussion
----------
[Validator] fixed ConstraintViolation::$propertyPath incorrect when nested
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8351
| License | MIT
In nested constraints, the property path will be overwritten in the context (as there would be a recursive call to CollectionValidotor when nested). Reason is, in ConstraintValidatorFactory object is loaded from memory if exists and context is initialized with the new context. So, other constraints after the nested constraints PropertyPath would be wrong.
So I think better create a new object for CollectionValidator always.
see this https://gist.github.com/alexkappa/5851274
It shows [name][email] even though the email is not under the name node.
Commits
-------
28e0709 [Validator] fixed ConstraintViolation:: incorrect when nested
This PR was merged into the 2.3 branch.
Discussion
----------
[Form] Fix of "PATCH'ed forms are never valid". Fixes#8111
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8111
| License | MIT
Commits
-------
a2b1535 [Form] Fix of "PATCH'ed forms are never valid"
This PR was submitted for the 2.3 branch but it was merged into the master branch instead (closes#8409).
Discussion
----------
[DoctrineBridge] Only load event managers if tagged event subscribers are found
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
This PR only wraps the code that adds event subscribers / listeners in the Doctrine compiler pass RegisterEventListenersAndSubscribersPass so it doesn't run if no tagged services are found. So in general it doesn't change anything besides not running a few lines of code if it's not necessary. The reason I want this change is that it will allow DoctrinePHPCRBundle to be installed without Doctrine2 PHPCR ODM (I just want the PHPCR session..I don't need the ODM). This doesn't work currently as it tries to load the entity managers resulting in an error (Error: The service definition "doctrine_phpcr.odm.default_session.event_manager" does not exist.).
Commits
-------
63bc18c [DoctrineBridge] Only load event managers if tagged event subscribers are found
This PR was submitted for the 2.1 branch but it was merged into the 2.2 branch instead (closes#7930).
Discussion
----------
handle Optional and Required constraints from XML or YAML sources correc...
...tly
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #7575
| License | MIT
| Doc PR | symfony/symfony-docs#2432
Commits
-------
a93a23a handle Optional and Required constraints from XML or YAML sources correctly