Adjusting CacheClear Warmup method to namespaced kernels

Backported the patch in #9525 to the 2.3 branch.
bug #9605 Adjusting CacheClear Warmup method to namespaced kernels (rdohms)

This PR was merged into the 2.3 branch.

Discussion
----------

Adjusting CacheClear Warmup method to namespaced kernels

Backported the patch in #9525 to the 2.3 branch.

| Q             | A
| ------------- | ---
| Bug fix?      | [yes]
| New feature?  | [no]
| BC breaks?    | [no]
| Deprecations? | [no]
| Tests pass?   | have not tried yet
| License       | MIT
| Fixed tickets | further fixes #1431

My kernel has been moved and namespaced to `Cfs\Bundle\MultiSiteBundle\Kernel\CfsKernel`. This worked fine until a change was made to how the kernel temp stuff is handled in the warmup phase.

When the app generates its own cache (i.e you run cache without warmup and access the site) everything is generated ok and the .meta files generate the proper reference to the FQN of the Kernel.

However if the warmup is used, it uses `Cfs\Bundle\MultiSiteBundle\Kernel\CfsKerne_` as the temporary Kernel, and when it does "fix references to the Kernel in .meta files" it generates 2 errors.

1. It does not use a string safe tempKernel name, so it never finds the reference to the kernel
2. If you fix that, then it replaces the FQN of the tempKernel with `CfsKernel`, the non-namespaced name of the proper Kernel (it also leaves the character count wrong in the serialization `C:43:<class>` where 43 is the char count for the FQN above)

The two changes above fix this, by escaping the string and replacing it with a FQN Kernel Class name.

What are your thoughts on this? If this sounds reasonable i'll do further enhancements and check tests.

Commits
-------

00d79d5 Adjusting CacheClear Warmup method to namespaced kernels
Fix undefined offset when formatting namespace suggestions
bug #9624 [Console] Fix undefined offset when formatting namespace suggestions (GromNaN)

This PR was submitted for the master branch but it was merged into the 2.4 branch instead (closes #9624).

Discussion
----------

[Console] Fix undefined offset when formatting namespace suggestions

[`preg_grep`](http://www.php.net/manual/en/function.preg-grep.php) returns an array indexed using the keys from the input array. `array_values` is used in the method `find`, but was missing in `findNamespace`.

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

Edit: should be merged to 2.4

Commits
-------

f5c4011 [Console] Fix undefined offset when formatting namespace suggestions
When getting the session's id, check if the session is not closed

This introduced a regression from #9246, with an incomplete fix ;
As the `started` flag on the NativeSessionStorage was not `true`
anymore when saving the session, the session id was always empty
when saving it, and thus when sending the `PHPSESSID` cookie
[HttpKernel] Fix profiler event-listener usage outside request stack context
bug #9628 [2.4][HttpKernel] Fix profiler event-listener usage outside request stack context (romainneutron)

This PR was merged into the 2.4 branch.

Discussion
----------

[2.4][HttpKernel] Fix profiler event-listener usage outside request stack context

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

The bug has been reported at https://github.com/silexphp/Silex-WebProfiler/issues/27

todo :
 - [x] add unit test

Commits
-------

55a76e7 [HttpKernel] Fix profiler event-listener usage outside request stack context
[Validator] Replaced inexistent interface.

ClassMetadataFactoryInterface was removed in 2.3 and replaced with MetadataFactoryInterface.
bug #9637 [Validator] Replaced inexistent interface (jakzal)

This PR was merged into the 2.3 branch.

Discussion
----------

[Validator] Replaced inexistent interface

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

`ClassMetadataFactoryInterface` was removed in 2.3 (#6096) and replaced with `MetadataFactoryInterface`.

Commits
-------

8fd3256 [Validator] Replaced inexistent interface.
Fixes #9633, Removed dependency to Symfony\Bundle\FrameworkBundle\Tests\TestCase
minor #9636 [Translation] Fixes #9633, Removed dependency to Symfony\Bundle\FrameworkBundle\Tests\TestCase (ismailasci)

This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes #9636).

Discussion
----------

[Translation] Fixes #9633, Removed dependency to Symfony\Bundle\FrameworkBundle\Tests\TestCase

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

Commits
-------

2669486 [Translation] Fixes #9633, Removed dependency to Symfony\Bundle\FrameworkBundle\Tests\TestCase
fixed lexing expression ending with spaces
bug #9621 [ExpressionLanguage] fixed lexing expression ending with spaces (fabpot)

This PR was submitted for the master branch but it was merged into the 2.4 branch instead (closes #9621).

Discussion
----------

[ExpressionLanguage] fixed lexing expression ending with spaces

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

Alternative fix for #9615

Commits
-------

d8f61c4 [ExpressionLanguage] fixed lexing expression ending with spaces
bug #9625 [HttpFoundation] Do not return an empty session id if the session was closed (Taluu)

This PR was merged into the 2.2 branch.

Discussion
----------

[HttpFoundation] Do not return an empty session id if the session was closed

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

A regression from the bug fix #9246 was introduced due to an incomplete fix ;

As the `started` flag on the NativeSessionStorage was not `true` anymore when saving the session, the session id was always empty when saving it, and thus when sending the `PHPSESSID` cookie.

The previous PR I made (#9530) was another approach to solve this regression, but this one should keep the fix made by @tecbot on #9246, and finish it with another verification. I may miss another place where `started` is used, but I don't really see which other conditions depending on this property should be altered...

**Note : this is #9611 rebased on 2.2**

This should be mergeable.

Commits
-------

5b9a727 When getting the session's id, check if the session is not closed
Fixed the registration of validation.xml file when the form is disabled
bug #9443 [FrameworkBundle] Fixed the registration of validation.xml file when the form is disabled (hason)

This PR was submitted for the 2.1 branch but it was merged into the 2.2 branch instead (closes #9443).

Discussion
----------

[FrameworkBundle] Fixed the registration of validation.xml file when the form is disabled

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

Commits
-------

cfa5aa5 [FrameworkBundle] Fixed the registration of validation.xml file when the form is disabled
Fix DateType for 32bits computers.
bug #9314 [Form] Fix DateType for 32bits computers. (WedgeSama)

This PR was squashed before being merged into the 2.2 branch (closes #9314).

Discussion
----------

[Form] Fix DateType for 32bits computers.

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

Fix an issue due to 32bits machines, date can be only between 1902-2037.
Simply not add date if false. Can be good to add this to 2.3 and master too.

Commits
-------

b80fb43 [Form] Fix DateType for 32bits computers.
Modified guessDefaultEscapingStrategy to not escape txt templates

Useful for plaintext emails.
bug #9639 Modified guessDefaultEscapingStrategy to not escape txt templates (fabpot)

This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes #9639).

Discussion
----------

Modified guessDefaultEscapingStrategy to not escape txt templates

This PR was submitted on the symfony/TwigBundle read-only repository and moved automatically to the main Symfony repository (closes symfony/TwigBundle#2).

Useful for plaintext emails.

Commits
-------

6affe94 Modified guessDefaultEscapingStrategy to not escape txt templates