[Translation] Fixed regression: When only one rule is passed to transChoice(), this rule should be used
[Translation] Grammar fix
merged branch bschussek/issue8789-regression (PR #8837)

This PR was merged into the 2.2 branch.

Discussion
----------

[Translation] Fixed regression: When only one rule is passed to transChoice(), this rule should be used

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

There was one regression introduced by #8789, namely when exactly one message is passed to `transChoice()`. Before, the following code was perfectly valid:

```php
$translator = new IdentityTranslator(new MessageSelector());

echo $translator->transChoice('There are two apples', 2, array('%count%' => 2));
```

This didn't fail, because internally, the locale `null` was passed to `MessageSelector`, which always returned the index `0` in that case.

Now, the user's locale is passed, and if the selector returns anything but `0`, an exception is thrown.

I removed this exception for the case that exactly one standard message (without explicit interval) is passed. In that case, this message is returned (just like from `trans()`). If the message key contains more than one message, or if the message has explicit intervals, the exception will still be thrown. See the tests for clarification.

A use case for why no exception should be thrown is validation:

```php
/**
 * @Assert\Length(min=2, minMessage="Please enter at least two characters")
 */
```

Commits
-------

2b3dcb9 [Translation] Grammar fix
0951b8d [Translation] Fixed regression: When only one rule is passed to transChoice(), this rule should be used
[Form] Fixed Form::all() signature for PHP 5.3.3
[Form] Fixed Form::all() signature for PHP 5.3.3
fix typo in test skipped message
merged branch Inori/2.1 (PR #8855)

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

Discussion
----------

[HttpFoundation] [Tests] fix typo in Memcached tests skipped message

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

Commits
-------

83e4fcf fix typo in test skipped message
merged branch bschussek/dereference-all-2.2 (PR #8851)

This PR was merged into the 2.2 branch.

Discussion
----------

[2.2][Form] Dereferenced Form::&all() since it is not supported for PHP <= 5.3.3

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

see 00bc2708bce4f1c16a77c371de871c922c31079

Commits
-------

ea480bd [Form] Fixed Form::all() signature for PHP 5.3.3
merged branch bschussek/dereference-all-2.3 (PR #8852)

This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Form] Dereferenced Form::&all() since it is not supported for PHP <= 5.3.3

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

see 00bc2708bce4f1c16a77c371de871c922c31079 and #8851

Commits
-------

fd09484 [Form] Fixed Form::all() signature for PHP 5.3.3
Merge branch '2.2' into 2.3

* 2.2:
  fix typo in test skipped message
  [Form] Fixed Form::all() signature for PHP 5.3.3
  [Translation] Grammar fix
  [Translation] Fixed regression: When only one rule is passed to transChoice(), this rule should be used

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