Fixed bug that incorrectly causes the "required" attribute to be omitted from select even though it contains the "multiple" attribute
bug #10491 Fixed bug that incorrectly causes the "required" attribute to be omitted from select even though it contains the "multiple" attribute (fabpot)

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

Discussion
----------

Fixed bug that incorrectly causes the "required" attribute to be omitted from select even though it contains the "multiple" attribute

According to the HTML5 specification the required attribute should be allowed in this case: "A select element with a required attribute and **without** a multiple attribute, and whose size is “1”, must have a child option element."

Related PR: https://github.com/symfony/symfony/pull/9030

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

Commits
-------

f9aa676 Fixed bug that incorrectly causes the "required" attribute to be omitted from select even though it contains the "multiple" attribute
[Process] Remove unreachable code + avoid skipping tests in sigchild environment
minor #10492 [2.3][Process] Remove unreachable code + avoid skipping tests in sigchild environment (romainneutron)

This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Process] Remove unreachable code + avoid skipping tests in sigchild environment

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

As mentioned by @Tobion in https://github.com/symfony/symfony/pull/10480#issuecomment-38002910, I removed the dead code. I also fixed/updated the test suite on PHP compiled with `--enable-sigchild`.

Commits
-------

d52dd32 [Process] Remove unreachable code + avoid skipping tests in sigchild environment
Fix IBAN validator
bug #10494 [2.3][Validator] Minor fix in IBAN validator (sprain)

This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Validator] Minor fix in IBAN validator

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #10481, #10489
| License       | MIT

Added more values to unit tests of IBAN validator to make clear it doesn't accept lower case letters.

> Permitted IBAN characters are the digits 0 to 9 and the 26 upper-case Latin alphabetic characters A to Z.
http://en.wikipedia.org/wiki/International_Bank_Account_Number

Also made little adjustment to code which meant to validate lowercase letters but actually was useless.

Commits
-------

3eeb306 Fix IBAN validator
[Form] Fix "Array was modified outside object" in ResizeFormListener.
bug #10410 [Form] Fix "Array was modified outside object" in ResizeFormListener. (Chekote)

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

Discussion
----------

[Form] Fix "Array was modified outside object" in ResizeFormListener.

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

This is the second pull request for this issue. The history of this is as follows:

Original Fix was added Feb 11th under Pull Request #10232.
Users began complaining of Doctrine ArrayCollection not being updated in forms.
Revert was added Feb 15th under Pull Request #10269.
Issue #10405 was opened on 7th Mar for the original bug.

Pull Request #10269 has a failing test that illustrates users concerns.
I have added failing tests to this pull request to illustrate the problems described in #10405.

All tests now pass, and all forms of $data are now supported, including arrays, DoctrineCollection, ArrayObject, and other IteratorAggregates.

__Details as follows:__

The onSubmit() method of the ResizeFormListener class is assuming the data is an array, and calling unset directly inside a foreach. This works fine in most scenarios, but if data is an instance of IteratorAggregate that is iterating over $data by reference, it breaks with the following error:

Symfony\Component\Form\Extension\Core\EventListener\ResizeFormListener::onSubmit(): ArrayIterator::next(): Array was modified outside object and internal position is no longer valid in ./vendor/symfony/symfony/src/Symfony/Component/Form/Extension/Core/EventListener/ResizeFormListener.php line 142

This is because the foreach loop is using an Iterator in the background, but the ResizeFormListener has unset the underlying data directly, causing the value that the Iterators internal pointer is pointing to to change.

The Iterator provided by IteratorAggregate may or may not have the ability to modify it's underlying data. So it is not possible to rely on the Iterator to modify the data. Instead, it is simpler to avoid modifying $data at all while we are iterating over it. So instead, we simply iterate over $data once to determine the keys we need to delete, and store them. Then we iterate over the keys and delete them from $data.

Commits
-------

aa63fae [Form] Fix "Array was modified outside object" in ResizeFormListener.
Fixed doc of InitAclCommand
minor #10497 [SecurityBundle] Fixed doc of InitAclCommand (dunglas)

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

Discussion
----------

[SecurityBundle] Fixed doc of InitAclCommand

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

Use {@inheritdoc}. Consistency with https://github.com/symfony/symfony/pull/9990#discussion-diff-10219606.

Commits
-------

aa49009 [SecurityBundle] Fixed doc of InitAclCommand
Cast the group name as a string

This allows the options to be grouped by association fields.
bug #10416 [Form] Allow options to be grouped by objects (felds)

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

Discussion
----------

[Form] Allow options to be grouped by objects

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

Commits
-------

ae3f02f Cast the group name as a string
Clean KernelInterface docblocks

- Fixed questionable grammar
- Added missing periods to make it consistent
minor #10525 [HttpKernel] Clean KernelInterface docblocks (sbward)

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

Discussion
----------

[HttpKernel] Clean KernelInterface docblocks

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

- Fixed questionable grammar
- Added missing periods to make it consistent

Commits
-------

4b1f050 Clean KernelInterface docblocks
fixed comment in forms.xml file
minor #10514 [FrameworkBundle] fixed comment in forms.xml file (hhamon)

This PR was merged into the 2.3 branch.

Discussion
----------

[FrameworkBundle] fixed comment in forms.xml file

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

Commits
-------

f9f7246 [FrameworkBundle] fixed comment in forms.xml file
Update OptionsResolver.php

Deleting an extra space in the exception.
minor #10528 Update OptionsResolver.php (shadypierre)

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

Discussion
----------

Update OptionsResolver.php

Deleting an extra space in the exception.

Commits
-------

7507fbb Update OptionsResolver.php
removed ini check to make uploadedfile work on gae
bug #9784 [HttpFoundation] Removed ini check to make Uploadedfile work on Google App Engine (micheleorselli)

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

Discussion
----------

[HttpFoundation] Removed ini check to make Uploadedfile work on Google App Engine

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

related to #9238

Commits
-------

ecb6481 removed ini check to make uploadedfile work on gae