[HttpFoundation] Throw proper exception when invalid data is passed to JsonResponse class
[Security] fixed pre/post authentication checks
bug #9902 [Security] fixed pre/post authentication checks (fabpot)

This PR was merged into the 2.3 branch.

Discussion
----------

[Security] fixed pre/post authentication checks

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8510, #9622
| License       | MIT
| Doc PR        | N/A

After further investigation of #8510, I found that all checks in the `checkPreAuth` actually belongs to `checkPostAuth` and the same goes for checks in `CheckPostAuth` (I checked the original source from Spring and indeed, that's how it is implemented there: see https://github.com/spring-projects/spring-security/blob/master/core/src/main/java/org/springframework/security/authentication/dao/AbstractUserDetailsAuthenticationProvider.java#L305
).

So, this PR fixes that issue. I think that we can do this change safely in 2.3 as the error message is the same for all causes by default (`$hideUserNotFoundExceptions` is `true` by default in `UserAuthenticationProvider`).

The only "real" change is whether the authentication is checked or not.

Commits
-------

ada82a2 [Security] fixed pre/post authentication checks
bug #9908 [HttpFoundation] Throw proper exception when invalid data is passed to JsonResponse class (stloyd)

This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] Throw proper exception when invalid data is passed to JsonResponse class

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| BC breaks?    | no*
| Tests pass?   | yes
| Fixed tickets | #9903
| License       | MIT

\* as described in mentioned issue, before this PR there was thrown exception `UnexpectedValueException`, which was not correct, but I guess some people trying to hide the bug could use `try {} catch` on it.

Commits
-------

38287e7 [HttpFoundation] Throw proper exception when invalid data is passed to JsonResponse class
[Routing] add unit tests for Symfony\Component\Routing\RequestContext class
minor #9916 [Routing] add unit tests for Symfony\Component\Routing\RequestContext class (FlorianLB)

This PR was merged into the 2.3 branch.

Discussion
----------

[Routing] add unit tests for Symfony\Component\Routing\RequestContext class

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | none
| License       | MIT
| Doc PR        | none

ATM, this class don't have its own unit tests. This PR fill this gap with a full coverage.

Commits
-------

c4aaa38 [Routing] add unit tests for Symfony\Component\Routing\RequestContext class
Prepend Child Bundle paths before the parent
bug #9112 Prepend Child Bundle paths before the parent (trsteel88)

This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #9112).

Discussion
----------

Prepend Child Bundle paths before the parent

This fixes #9085

Say you have AcmeDemoBundle and AppDemoBundle. AcmeDemoBundle is the parent of AppDemoBundle.

If you load templates using @AcmeDemoBundle/ControllerDir/template.html.twig it means that you cannot override the template in AppDemoBundle. The patch below prepends the AppDemoBundle Resources directory to the AcmeDemo namespace.

The namespace directories would not result in:

```
[AcmeDemo] => Array(
    [0] => [absolute-dir-here]/src/App/DemoBundle/Resources/views
    [1] => [absolute-dir-here]/app/Resources/AcmeDemoBundle/views
    [2] => [absolute-dir-here]/src/Acme/DemoBundle/Resources/views
)
```

Commits
-------

19fad88 Prepend Child Bundle paths before the parent
removed unneeded use statements
minor #9920 removed unneeded use statements (fabpot)

This PR was merged into the 2.3 branch.

Discussion
----------

removed unneeded use statements

| Q             | A
| ------------- | ---
| License       | MIT

Commits
-------

7f9a366 removed unneeded use statements
Revert "bug #9112 Prepend Child Bundle paths before the parent (trsteel88)"

This reverts commit cfa99a96ddccb0be75945e6c0d57e4461fd1bf62, reversing
changes made to f8965b6499726d0dae711b94f726375812d2fa34.
[Routing] add missing unit tests for Route and RouteCollection classes
minor #9925 [Routing] add missing unit tests for Route and RouteCollection classes (FlorianLB)

This PR was squashed before being merged into the 2.3 branch (closes #9925).

Discussion
----------

[Routing] add missing unit tests for Route and RouteCollection classes

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | none
| License       | MIT
| Doc PR        | none

Just add few unit tests in Route and RouteCollection classes to have a full coverage.

Commits
-------

7bbd568 [Routing] add missing unit tests for Route and RouteCollection classes
[HttpFoundation] Documented public properties.
[Propel1Bridge][ModelChoiceList] add exception message for invalid classes
minor #9928 [HttpFoundation] Documented public properties (jakzal)

This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] Documented public properties

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #9670
| License       | MIT
| Doc PR        | -

`$request` and `$query` parameter bags could be hard to get for a newcommer, who's used to `$_POST` and `$_GET` variables. Some people claim naming makes no sense (see #9671).

For consistency I documented all public properties.

Commits
-------

1b79831 [HttpFoundation] Documented public properties.
Fix hardcoded listenerTag name in error message
bug #9940 [EventDispatcher] Fix hardcoded listenerTag name in error message (lemoinem)

This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #9940).

Discussion
----------

[EventDispatcher] Fix hardcoded listenerTag name in error message

| Q             | A
| ------------- | ---
| Fixed tickets | N/A
| License       | MIT

Just as the title say, there was a kernel.event_listener string hardcoded in an error message although everywhere else in this class it is stored in the `$listenerTag` property.

Commits
-------

8c91537 [EventDispatcher] Fix hardcoded listenerTag name in error message
Add support SAPI cli-server
bug #9938 [Process] Add support SAPI cli-server (peter-gribanov)

This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #9938).

Discussion
----------

[Process] Add support SAPI cli-server

As of PHP 5.4.0, the CLI SAPI provides a built-in web server.
```php
PHP_SAPI == 'cli-server'
```
PHP can be used portable without installation on PC. For example, the [assembly](http://windows.php.net/download/) does not require installation in the system on Windows. In this case `PHP_BINARY` contains the path to the PHP executor, and all the other search methods will not return result.

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

Commits
-------

92d8323 Add support SAPI cli-server