[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 jfsimon/fix-tests (PR #8618)

This PR was merged into the master branch.

Discussion
----------

[Console] fix tests

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

Commits
-------

e4c1b30 [Console] fixed tests
merged branch jfsimon/issue-8130 (PR #8615)

This PR was merged into the master branch.

Discussion
----------

[WebProfilerBundle] make toolbar listener instantiation conditional

In the `WebProfilerBundle`, if `intercept_redirects` and `toolbar` options are both `false`, the `toolbar.xml` config file should not be loaded as the listener becomes useless.

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8130

Commits
-------

17cbfc8 [WebProfilerBundle] made toolbar listener instantiation conditional
merged branch jfsimon/issue-8294 (PR #8611)

This PR was merged into the master branch.

Discussion
----------

[HttpFoundation] deprecates FlashBag::getIterator() method

This PR does not fix #8294 but this issue is not fixable. The `FlashBag::getIterator()` method actualy does not make any sense and is confusing. It should be removed. I just added a `@deprecated` tag and `Will be removed in 3.0.` message because removing it now would introduce a BC break. I guess issue #8294 can be closed after merge as it make not more sense than the incriminated method.

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8294

Commits
-------

ce8a7d6 [HttpFoundation] deprecated FlashBag::getIterator() method
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
Merge pull request #8634 from bschussek/issue8473

[Form] Changed (Number|Integer)ToLocalizedStringTransformer::reverseTransform() to do rounding
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""
merged branch StanAngeloff/issue-8424-refactoring (PR #8514)

This PR was merged into the master branch.

Discussion
----------

[Serializer] Added XML attributes support in XmlEncoder

This is a rebase and refactoring of #8424.

---

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

---

| New Code | Result
| --- | ---
| Code coverage | 100%
| PSR-2 | No violations
| PHP-CS-Fixer | No changes

---

### TODO

- [ ] **Q**: I looked through `symfony-docs` for any mention of `xml_root_node_name` which is already implemented, but failed to find any. How to best document those new additions?

Commits
-------

21218cc [Serializer] Added XML attributes support for DomDocument in XmlEncoder.
[Validator] improved image validator
merged branch lmammino/improved-image-validator (PR #8490)

This PR was squashed before being merged into the master branch (closes #8490).

Discussion
----------

[Validator] improved image validator

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

CHANGELOG
* Added options to validate image aspect ratio (`minRatio` and `maxRatio`)
* Added options to validate if the image ratio is square, landscape or portrait (`allowSquare`, `allowLandscape`, and `allowPortrait`)

Commits
-------

b030624 [Validator] improved image validator
[HttpKernel] added a missing dep for dev
moved some fixed dep versions from 2.2.* to ~2.2 (refs #8613)
merged branch fabpot/httpkernel-deps (PR #8648)

This PR was merged into the 2.2 branch.

Discussion
----------

Added a missing dev dep for Httpkernel

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

Commits
-------

a741414 [HttpKernel] added a missing dep for dev