[HttpFoundation] fixed the creation of sub-requests under some circumstancies (closes #6923, closes #6936)

This fixes the creation of a sub-request when the master request Request URI
is determined with specific server information.
merged branch fabpot/request-uti-fix (PR #6966)

This PR was merged into the 2.0 branch.

Commits
-------

ddf4678 [HttpFoundation] fixed the creation of sub-requests under some circumstancies (closes #6923, closes #6936)

Discussion
----------

[HttpFoundation] fixed the creation of sub-requests under some circumstancies (closes #6923, closes #6936)

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

This fixes the creation of a sub-request when the master request Request URI
is determined with specific server information.
Add dot character `.` to legal mime subtype regular expression
replaced usage of the deprecated pattern routing key (replaced with path)
merged branch romainneutron/file-binary-guesser (PR #7006)

This PR was merged into the 2.0 branch.

Commits
-------

a12744e Add dot character `.` to legal mime subtype regular expression

Discussion
----------

[HttpFoundation][2.0] Add dot character `.` to legal mime subtype regular expression

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

For example, the following mimetype (used for Microsoft powerpoints) is not recognized given the current regexp : `application/vnd.ms-powerpoint; charset=binary`
[Security] fixed session creation on login (closes #7011)
merged branch adriensamson/issue-7011 (PR #7013)

This PR was merged into the 2.1 branch.

Commits
-------

3615e19 [Security] fixed session creation on login (closes #7011)

Discussion
----------

[Security] fixed session creation on login (closes #7011)

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

I fixed the test with UsernamePasswordToken (should start the session) and added a new test without token (should not start session).
Fix 'undefined index' error, when entering scope recursively
merged branch ludekstepan/fix-di-scope-nesting (PR #6119)

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

Commits
-------

3b9f763 [DI] Fix 'undefined index' error, when entering scope recursively

Discussion
----------

[DI] Fix 'undefined index' error, when entering scope recursively

Imagine two scopes:

```php
$container = new Container();
$container->addScope(new Scope('foo'));
$container->addScope(new Scope('bar', 'foo'));
```

Enter the same scope twice recursively:

```php
$container->enterScope('foo');
// not entering bar in between
$container->enterScope('foo');
// prints warning: undefined index: bar
// at Symfony/Component/DependencyInjection/Container.php:341
```

---------------------------------------------------------------------------

by fabpot at 2012-11-28T16:30:00Z

The problem exists, but the fix looks wrong to me. We should keep the scoped services even with nested scopes. Right now, and even after your patch, we loose some information.

---------------------------------------------------------------------------

by ludekstepan at 2012-11-28T16:38:05Z

I don't know how to fix properly, the patch above is just a workaround.

Without the patch, it's not possible to simply create a child scope of the "request" scope, because "enterScope" would fail upon every forward between "request" and nested "request" unless "bar" scope was entered prior to forward.

---------------------------------------------------------------------------

by stof at 2012-11-28T16:51:50Z

@fabpot why would it be wrong ? If the nested scope was not active when entering a subrequest, there is simply nothing to save

---------------------------------------------------------------------------

by stloyd at 2013-01-04T18:16:54Z

Any news about this one ? =)

---------------------------------------------------------------------------

by stof at 2013-01-04T18:22:58Z

@fabpot could you explain which info we are loosing ?
[DependencyInjection] Allow frozen containers to be dumped to graphviz
merged branch igorw/graphviz-frozen-container-2.0 (PR #7017)

This PR was merged into the 2.0 branch.

Commits
-------

bd0ad92 [DependencyInjection] Allow frozen containers to be dumped to graphviz

Discussion
----------

[DependencyInjection] Allow frozen containers to be dumped to graphviz

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

This PR replaces #7010.
Merge branch '2.0' into 2.1

* 2.0:
  [DependencyInjection] Allow frozen containers to be dumped to graphviz
  Add dot character `.` to legal mime subtype regular expression
  [HttpFoundation] fixed the creation of sub-requests under some circumstancies (closes #6923, closes #6936)
[DependencyInjection] Add clone for resources which were introduced in 2.1
[EventDispathcer] Fix removeListener
merged branch vicb/event (PR #7023)

This PR was squashed before being merged into the 2.0 branch (closes #7023).

Commits
-------

87f3db7 [EventDispathcer] Fix removeListener

Discussion
----------

[EventDispathcer] Fix removeListener

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

Todo

- [x] Add a UT

I won't have time to add a test before next Friday but this PR could save some debugging (especially with Silex & Closures)

---------------------------------------------------------------------------

by vicb at 2013-02-09T23:32:51Z

Probably related to https://bugs.php.net/bug.php?id=62976, I need to do some more investigation - I use 546. anyway the fix is valid for whatever php version.

---------------------------------------------------------------------------

by vicb at 2013-02-10T10:24:46Z

This **is** related to the PHP bug mentioned above, see http://3v4l.org/Q6WKj:

```
Output for 5.3.18 - 5.3.21, 5.4.8 - 5.5.0alpha4
bool(false)

Output for 5.3.0 - 5.3.17, 5.4.0 - 5.4.7
Notice: Object of class Klass could not be converted to int in /in/Q6WKj on line 9
Notice: Object of class Closure could not be converted to int in /in/Q6WKj on line 9
int(0)
```

@fabpot anything more needed to merge this ?

---------------------------------------------------------------------------

by fabpot at 2013-02-10T10:26:52Z

Is it possible to add a test?

---------------------------------------------------------------------------

by vicb at 2013-02-10T10:29:34Z

It is, for php versions < fixed version, I'll do that

---------------------------------------------------------------------------

by vicb at 2013-02-10T10:42:01Z

@fabpot ready Sir !

---------------------------------------------------------------------------

by vicb at 2013-02-10T10:44:35Z

well I can probably add an assert, please wait !
[EventDispatcher] Added assertion.
fixed the IP address in HttpCache when calling the backend
added support for the X-Forwarded-For header (closes #6982, closes #7000)
merged branch fabpot/ip-cache (PR #7034)

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

Commits
-------

1fdded5 [HttpKernel] added support for the X-Forwarded-For header (closes #6982, closes #7000)
be65d7c [HttpKernel] fixed the IP address in HttpCache when calling the backend

Discussion
----------

Make HttpCache behaves more like a real reverse proxy

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

---------------------------------------------------------------------------

by bendavies at 2013-02-10T00:55:29Z

Awesome, thanks Fabien. should this not target 2.0/2.1?
merged branch fabpot/pattern-fix (PR #6998)

This PR was merged into the 2.2 branch.

Commits
-------

73aa7d1 replaced usage of the deprecated pattern routing key (replaced with path)

Discussion
----------

replaced usage of the deprecated pattern routing key (replaced with path)

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

---------------------------------------------------------------------------

by lsmith77 at 2013-02-07T13:35:54Z

do we have tests to cover the BC behavior?

---------------------------------------------------------------------------

by fabpot at 2013-02-07T16:30:31Z

I've just added some tests for the legacy way.