[Validator] fixed StaticMethodLoader trying to invoke methods of abstract classes (closes #8589)
removed dead code and fixed CS
merged branch fabpot/validator-abstract-fix (PR #8592)

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)
merged branch fabpot/dead-code (PR #8572)

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
[routing] added ability for apache matcher to handle array values
Revert "[Form] Remove "value" attribute on empty_value option"

This reverts commit 9e849eb78bcc668a2b8aad39cb47e2ad32c73a47.

Reasons for the revert:

* https://github.com/symfony/symfony/issues/8478
* https://github.com/symfony/symfony/issues/8526
[Form] Removed the "disabled" attribute from the placeholder option in select fields due to problems with the BlackBerry 10 browser
Fixes link indices
[Form] Fixed: If a form is not present in a request, it is not automatically submitted
Revert "[Form] Fix of "PATCH'ed forms are never valid""

This reverts commit a2b15359d81563d52b62b4357407efa949a0706a.

Conflicts:
	src/Symfony/Component/Form/Form.php

The commit is reverted because it introduces a bug demonstrated by a currently failing test.
[Form] Fixed patched forms to be valid even if children are not submitted
Fix issue with \DateTimeZone::UTC / 'UTC' for PHP 5.4
merged branch bobdenotter/2.2 (PR #8643)

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
[Form] fixed wrong call to setTimeZone() (closes #8644)
merged branch jfsimon/issue-8567 (PR #8608)

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
merged branch bschussek/issue8526 (PR #8622)

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
merged branch bschussek/revert-7678 (PR #8623)

This PR was merged into the 2.3 branch.

Discussion
----------

Revert "[Form] Remove "value" attribute on empty_value option"

| Q             | A
| ------------- | ---
| Bug fix?      | yes (together with #8622)
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #7678 #8478 #8526
| License       | MIT
| Doc PR        | -

Commits
-------

dbd14fc Revert "[Form] Remove "value" attribute on empty_value option"
merged branch langj/readme-link-fix (PR #8632)

This PR was merged into the 2.3 branch.

Discussion
----------

Fixes link indices

Fixes links in the symfony/intl README.md

Commits
-------

d1e5710 Fixes link indices
merged branch bschussek/issue8385 (PR #8636)

This PR was merged into the 2.3 branch.

Discussion
----------

[Form] Fixed: If a form is not present in a request, it is not automatically submitted

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

This PR changes the following behavior of `handleRequest()`:

Current behavior:

```php
$_POST = array('foo' => 'bar');
$form = $factory->createNamed('myform', 'mytype');

// "myform" is not present in the request
$form->handleRequest();

assert(true === $form->isSubmitted());
```

Behavior after PR:

```php
$_POST = array('foo' => 'bar');
$form = $factory->createNamed('myform', 'mytype');

// "myform" is not present in the request
$form->handleRequest();

assert(false === $form->isSubmitted());
```

As #8385 pointed out, the latter behavior is expected, so I consider the current behavior a bug.

Commits
-------

cb5e765 [Form] Fixed: If a form is not present in a request, it is not automatically submitted
merged branch bschussek/issue8111 (PR #8638)

This PR was merged into the 2.3 branch.

Discussion
----------

[Form] Fixed patched forms to be valid even if children are not submitted

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

#8362 was reverted because it introduces a failing test that is caused by a regression. This PR takes the alternative approach that

* unsubmitted fields in the PATCH request remain unsubmitted
* `isValid()` ignores unsubmitted children
* `mapFormsToData()` ignores unsubmitted children

In my opinion this is a more proper solution than #8362.

Commits
-------

85330a6 [Form] Fixed patched forms to be valid even if children are not submitted
50f201e Revert "[Form] Fix of "PATCH'ed forms are never valid""