bug #10669 [Profiler] Prevent throwing fatal errors when searching timestamps or invalid dates (stloyd)

This PR was merged into the 2.3 branch.

Discussion
----------

[Profiler] Prevent throwing fatal errors when searching timestamps or invalid dates

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

Commits
-------

eea9d24 [Profiler] Prevent throwing fatal errors when searching timestamps or invalid dates
[Validator] Fix hack for nested Collection/All losing context
bug #10690 [Validator] Fix hack for nested Collection/All losing context (GromNaN)

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

Discussion
----------

[Validator] Fix hack for nested Collection/All losing context

The PR https://github.com/silexphp/Silex/pull/943 highlighted [a hack in `ConstraintValidatorFactory`](https://github.com/symfony/symfony/commit/d4ebbfd02d416504ebfed262d656941062905b76#diff-3a3e44a703775a35fbdd66850a43968dR48).

The issue that is solved by this hack is that the context injected into the `ConstraintValidator` can change during the execution of the method `validate()` ; because the same instance of the validator is reused.

The hack was fixing this issue for the `Collection` constraint only. This patch fixes also the `All` constraint as it can be nested too (new test case found by @harrytruong).

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/silexphp/Silex/pull/943
| License       | MIT
| Doc PR        | no

Commits
-------

edfa6d5 [Validator] Fix hack for nested Collection/All losing context
bug #10652 [HttpFoundation] fix PDO session handler under high concurrency (Tobion)

This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] fix PDO session handler under high concurrency

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8448 and http://trac.symfony-project.org/ticket/4777 (which was never really fixed as you can see here)
| License       | MIT

- The first commit fixes PDO session handler under high concurrency.
- The second commit uses MERGE SQL for MS SQL Server. Tested with http://sqlfiddle.com/#!6/66b6d/14
- The third commit uses INSERT OR REPLACE for sqlite session handler http://sqlfiddle.com/#!7/e6707/3

What I find rather bad with the class design is that it depends on the table definition, but it's not part of the class. Also it doesn't make use of open() and close() which could be used to make the database connection lazy instead of having is open all the time when not needed. Doctrine also only lazy connects, but we use PDO directly here.
Furthermore, the session handlers should not throw exceptions, from what I read, but return false when an error occurs. This is not followed in this class. Maybe @drak knows how php session management behaves when the session handlers return false?

Commits
-------

5c08e29 [HttpFoundation] use insert or replace for sqlite session handler
05ea19a [HttpFoundation] use MERGE SQL for MS SQL Server session storage
e58d7cf [HttpFoundation] fix PDO session handler under high concurrency
Merge branch '2.3' into 2.4

* 2.3:
  [Config] Fix NodeBuilderTest::testNumericNodeCreation to use BaseNodeBuilder alias.
  [Profiler] Prevent throwing fatal errors when searching timestamps or invalid dates
  [HttpKernel] Added the resource ID when printing a resource in the DataCollector
  [HttpFoundation] use insert or replace for sqlite session handler
  [HttpFoundation] use MERGE SQL for MS SQL Server session storage
  [HttpFoundation] fix PDO session handler under high concurrency

Conflicts:
	src/Symfony/Component/HttpKernel/DataCollector/DataCollector.php
	src/Symfony/Component/HttpKernel/Tests/Profiler/ProfilerTest.php
Merge branch '2.4'

* 2.4:
  [Validator] Fix hack for nested Collection/All losing context
  [Config] Fix NodeBuilderTest::testNumericNodeCreation to use BaseNodeBuilder alias.
  [Profiler] Prevent throwing fatal errors when searching timestamps or invalid dates
  [HttpKernel] Added the resource ID when printing a resource in the DataCollector
  [HttpFoundation] use insert or replace for sqlite session handler
  [HttpFoundation] use MERGE SQL for MS SQL Server session storage
  [HttpFoundation] fix PDO session handler under high concurrency

Conflicts:
	src/Symfony/Component/Validator/Tests/ExecutionContextTest.php
fixed a test
fixed a test
updated CHANGELOG for 2.5.0-BETA1
updated VERSION for 2.5.0-BETA1
bumped Symfony version to 2.5.0
[Translation] Make IcuDatFileLoader/IcuResFileLoader::load invalid resource compatible with HHVM.
bug #10697 [Translation] Make IcuDatFileLoader/IcuResFileLoader::load invalid resource compatible with HHVM. (idn2104)

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

Discussion
----------

[Translation] Make IcuDatFileLoader/IcuResFileLoader::load invalid resource compatible with HHVM.

[Translation] HHVM throws when an invalid ResourceBundle is constructed, while zend returns FALSE from the constructor. This patch makes IcuResFileLoader and IcuDatFileLoader compatible with HHVM.

The following tests now pass on HHVM:
https://github.com/symfony/symfony/blob/2.3/src/Symfony/Component/Translation/Tests/Loader/IcuDatFileLoaderTest.php#L33
https://github.com/symfony/symfony/blob/2.3/src/Symfony/Component/Translation/Tests/Loader/IcuResFileLoaderTest.php#L54

| 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

Commits
-------

9bc08c0 [Translation] Make IcuDatFileLoader/IcuResFileLoader::load invalid resource compatible with HHVM.
[TwigBundle] removed undefined argument
[HttpKernel] fixed an error message
removed extra/unsupported arguments
made types consistent with those defined in Hack
bug #10700 Fixes various inconsistencies in the code (fabpot)

This PR was merged into the 2.3 branch.

Discussion
----------

Fixes various inconsistencies in the code

| 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
-------

4b7a275 removed extra/unsupported arguments
f4adfc4 [HttpKernel] fixed an error message
8aa322c [TwigBundle] removed undefined argument
[Validator] Add missing czech translations
Add support Thai translations