fixed wrong started states
bug #9246 [Session] fixed wrong started state (tecbot)

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

Discussion
----------

[Session] fixed wrong started state

Currently the session stays in the started mode after the call of  ```save()``` which will close the session. We found the issue in our custom SAPI which keeps the symfony stack initialized over multiple requests.

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

Commits
-------

d641cd6 [Session] fixed wrong started states
Fix in ChainLoader.php

The LoaderInterface requires the time to be passed.
bug #9270 [Templating] Fix in ChainLoader.php (janschoenherr)

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

Discussion
----------

[Templating] Fix in ChainLoader.php

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

The LoaderInterface requires the _time_ parameter to be passed.

Commits
-------

2631eb3 [Templating] Fix in ChainLoader.php
[Yaml] Fixed the escaping of strings starting with a dash when dumping

Dashes need to be escaped in character sets in regexes as they are used to
specify a range otherwise.
Refs #9039
bug #9274 [Yaml] Fixed the escaping of strings starting with a dash when dumping (stof)

This PR was merged into the 2.2 branch.

Discussion
----------

[Yaml] Fixed the escaping of strings starting with a dash when dumping

Dashes need to be escaped in character sets in regexes as they are used to specify a range otherwise.
It fixes the dumper bug reported in #9039 (the parsing issue is not fix here)

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

Commits
-------

af369ae [Yaml] Fixed the escaping of strings starting with a dash when dumping
Replaced the @inheritdoc with an actual list of params since the original method has a different signature.

Also, fixed indentation in other docblocks.
minor #9293 [HttpFoundation] Docblock fix (jakzal)

This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] Docblock fix

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

`BinaryFileResponse::create()` has a different signature than `Response::create()` and cannot inherit its doc. I also fixed indentation in other blocks in this file.

Commits
-------

bb8930c Replaced the @inheritdoc with an actual list of params since the original method has a different signature.
Added japanese translation resource for security component.
minor #9283 [Security] Added japanese translation resource for security component. (hidenorigoto)

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

Discussion
----------

[Security] Added japanese translation resource for security component.

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

Commits
-------

4176cf1 Added japanese translation resource for security component.
Make usleep longer and simplify assertions
minor #9276 [Stopwatch] Fix tests on Travis (also vagrant) (brikou)

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

Discussion
----------

[Stopwatch] Fix tests on Travis (also vagrant)

Travis often fails to run tests related to the Stopwatch Component, check it yourself:

- https://travis-ci.org/symfony/symfony/jobs/12340378
- https://travis-ci.org/symfony/symfony/jobs/12365787
- https://travis-ci.org/symfony/symfony/jobs/12365790
- https://travis-ci.org/symfony/symfony/jobs/12367771
- https://travis-ci.org/symfony/symfony/jobs/12367844
- https://travis-ci.org/symfony/symfony/jobs/12368619
- https://travis-ci.org/symfony/symfony/jobs/12371316
- https://travis-ci.org/symfony/symfony/jobs/12375730

This is because Travis is just slow as hell. So I just multiply the used usleep by 10.

Commits
-------

bf65483 Make usleep longer and simplify assertions
Removed unused use statements.
[DoctrineBridge] Loosened CollectionToArrayTransformer::transform() to accept arrays
minor #9304 Dead code v2.2 (hhamon)

This PR was merged into the 2.2 branch.

Discussion
----------

Dead code v2.2

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

Commits
-------

0946be6 Removed unused use statements.
bug #9308 [DoctrineBridge] Loosened CollectionToArrayTransformer::transform() to accept arrays (bschussek)

This PR was merged into the 2.2 branch.

Discussion
----------

[DoctrineBridge] Loosened CollectionToArrayTransformer::transform() to accept arrays

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

Previously, writing an association getter like this was impossible:

```php
public function addTag(Tag $tag) { ... }
public function removeTag(Tag $tag) { ... }

public function getTags()
{
    return $this->tags->toArray();
}
```

Using `toArray()` is a useful way to restrict modifications of the collection to the specified methods. But previously, CollectionToArrayTransformer failed in this case, because it did not accept arrays as input.

Commits
-------

55001ab [DoctrineBridge] Loosened CollectionToArrayTransformer::transform() to accept arrays
Improve documentation of X-Forwarded-For header handling
minor #9247 [HttpKernel] Improve documentation of X-Forwarded-For header handling (samuelvogel)

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

Discussion
----------

[HttpKernel] Improve documentation of X-Forwarded-For header handling

After having problems with the handling of `X-Forwarded-For` headers and the configuration of trusted proxies, it was really hard to understand how the algorithm actually works. After looking into it, the PHPDoc of `IpUtils` did not really describe what the methods do. For `Request::getClientIps()` the PHPDoc actually explained how the `X-Forwarded-For` header works with multiple proxies, but it's really hard to understand, when it's not mentioned what the text is actually talking about. As one would expect a description of what the method does, I altered the description to describe the return value.

Feel free not to merge the inline comments in `Request::getClientIps()`, even though they greatly help understanding this method for somebody not deeply familiar with the internals of `HttpKernel` and HTTP proxy handling in general.

| Q             | A
| ------------- | ---
| Fixed tickets | none
| License       | MIT

Commits
-------

1f786e0 [HttpKernel] Improve documentation of X-Forwarded-For header handling
Merge branch '2.2' into 2.3

* 2.2:
  [DoctrineBridge] Loosened CollectionToArrayTransformer::transform() to accept arrays
  Removed unused use statements.
  Make usleep longer and simplify assertions
  Added japanese translation resource for security component.
  [Yaml] Fixed the escaping of strings starting with a dash when dumping
  Fix in ChainLoader.php
  fixed wrong started states
[Form] Changed FormTypeCsrfExtension to use the form's name as default intention