[Process] Close unix pipes before calling `proc_close` to avoid a deadlock

see http://php.net/manual/en/function.proc-close.php
merged branch romainneutron/unix-pipes (PR #8996)

This PR was merged into the 2.2 branch.

Discussion
----------

[Process][2.2] Close unix pipes before calling `proc_close` to avoid a deadlock

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

see http://php.net/manual/en/function.proc-close.php

Commits
-------

37102dc [Process] Close unix pipes before calling `proc_close` to avoid a deadlock
[FrameworkBundle] removed obsolete code
[Form] Fixed regression in BooleanToStringTransformer from ed83752
merged branch bschussek/issue8989 (PR #9000)

This PR was merged into the 2.2 branch.

Discussion
----------

[Form] Fixed regression in BooleanToStringTransformer

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

Commits
-------

2747bdc [Form] Fixed regression in BooleanToStringTransformer from ed83752
[DependencyInjection] fixed a non-detected circular reference in PhpDumper (closes #8425)

This circular reference cannot be detected by the compiler pass as we
don't check for method arguments there.

The Container itself already detects such circular references at runtime.

So this fix is about circular references that are not detected at
compile time, and are not even detected at runtime because the code that
would cause the detection is never run (generated after a return
statement.)
[Form] Fixed regression causing invalid "WHERE id IN ()" statements
merged branch bschussek/issue8981-regression (PR #9001)

This PR was merged into the 2.2 branch.

Discussion
----------

[Form] Fixed regression causing invalid "WHERE id IN ()" statements

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

Commits
-------

867b81a [Form] Fixed regression causing invalid "WHERE id IN ()" statements
merged branch fabpot/circular-refs-php-dumper (PR #8999)

This PR was merged into the 2.2 branch.

Discussion
----------

[DependencyInjection] fixed a non-detected circular reference in PhpDumper (closes #8425)

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

Commits
-------

ce7de37 [DependencyInjection] fixed a non-detected circular reference in PhpDumper (closes #8425)
[FrameworkBundle] fixed registration of the register listener pass
[HttpKernel] added a check for private event listeners/subscribers
merged branch fabpot/event-services-check (PR #9006)

This PR was merged into the 2.2 branch.

Discussion
----------

Fixed registration of private event listeners/subscribers

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

When registering a private event subscriber/listener, the listener was just ignored.

This PR does two things to fix the problem:

 * the event listener pass is done earlier to get access to the private services
 * when a private service is identified, a proper exception is thrown

Commits
-------

8444339 [HttpKernel] added a check for private event listeners/subscribers
427ee19 [FrameworkBundle] fixed registration of the register listener pass
[TwigBridge] fixed form rendering when used in a template with dynamic inheritance
merged branch fabpot/twig-form-renderer-fix (PR #9010)

This PR was merged into the 2.2 branch.

Discussion
----------

[TwigBridge] fixed form rendering when used in a template with dynamic inheritance

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

Commits
-------

4c1dbc7 [TwigBridge] fixed form rendering when used in a template with dynamic inheritance
[HttpFoundation] tried to keep the original Request URI as much as possible to avoid different behavior between ::createFromGlobals() and ::create()
merged branch fabpot/request-uri-unification (PR #9012)

This PR was merged into the 2.2 branch.

Discussion
----------

[HttpFoundation] tried to keep the original Request URI as much as possible to avoid different behavior between ::createFromGlobals() and ::create()

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

Commits
-------

4f5b8f0 [HttpFoundation] tried to keep the original Request URI as much as possible to avoid different behavior between ::createFromGlobals() and ::create()
[HttpFoundation] removed double-slashes (closes #8388)
[Console] Fixed argument parsing when a single dash is passed.
[HttpFoundation] Fixed the way path to directory is trimmed.
fixed wrong usage of unset()