[Routing] fix handling of two starting slashes in the pattern

It would be confused with a network path e.g. '//domain/path' when generating a path so should be prevented.
[2.1][DependencyInjection] Incomplete error handling in the container
[Routing] fix handling of whitespace and synch between collection prefix and route pattern
merged branch Tobion/path-slash (PR #5683)

This PR was merged into the 2.1 branch.

Commits
-------

1566f9f [Routing] fix handling of whitespace and synch between collection prefix and route pattern
90145d2 [Routing] fix handling of two starting slashes in the pattern

Discussion
----------

[Routing] fix handling of slashes and whitespace in pattern/prefix

BC break: no
feature addition: no

The first commit fixes the handling of two starting slashes in the pattern. It would be confused with a network path e.g. `//domain/path` when generating a path, so should be prevented.

The second commit fixes the handling of whitespace in RouteCollection::addPrefix. It wasn't trimmed there but it is trimmed in Route::setPattern. So it can be out-of-synch between RouteCollection::getPrefix <-> Route::getPattern.
[HttpFoundation] Fixed #5697 - Request::createFromGlobals, Request::getContentType
Changed checking CONTENT_TYPE from server to headers variable

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5697
Todo: -
License of the code: MIT
merged branch Olden/ticket_5697 (PR #5712)

This PR was merged into the 2.1 branch.

Commits
-------

673f74b [HttpFoundation] Fixed #5697 - Request::createFromGlobals, Request::getContentType Changed checking CONTENT_TYPE from server to headers variable

Discussion
----------

[HttpFoundation] Fixed #5697 - Request::createFromGlobals, Request::getContentType

Changed checking CONTENT_TYPE from server to headers variable

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5697
Todo: -
License of the code: MIT
[Form][Tests] Make *TestCase files abstract
merged branch marekkalnik/form (PR #5717)

This PR was merged into the 2.1 branch.

Commits
-------

5c895c8 [Form][Tests] Make *TestCase files abstract

Discussion
----------

[Form][Tests] Make FormIntegrationTestCase abstract

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: no - but failing tests are unrelated (not in the Form component)
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -

Depending on PHPUnit configuration extending this class in a test makes PHPUnit fail throwing a warning: `No tests found in class "Symfony\Component\Form\Tests\FormIntegrationTestCase"`.

This class should not be run as a test and thus it can be safely converted to abstract. There's also an  incoherence between other TestCases, some of them being abstract and others concrete (eg. compare with *TypeTestCase* inheriting from *FormIntegrationTestCase*). Shouldn't all the TestCases be marked as abstract?

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

by fabpot at 2012-10-10T06:24:53Z

ping @bschussek

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

by bschussek at 2012-10-10T07:52:32Z

No objections. :+1:

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

by marekkalnik at 2012-10-10T07:58:46Z

If so - would you accept other pull requests just adding abstract to various *TestCase files? Or I could do it all at once in this PR.

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

by bschussek at 2012-10-10T08:17:17Z

Sure. Tests that shouldn't be run should be abstract.

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

by bschussek at 2012-10-10T08:18:40Z

To answer your question completely: You can add all these changes to this PR. Please do also squash the commits when you're done.

Thanks! :)

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

by marekkalnik at 2012-10-10T11:34:45Z

[![Build Status](https://secure.travis-ci.org/marekkalnik/symfony.png)](http://travis-ci.org/marekkalnik/symfony)

Done.
Fixed the handling of the intl locale when setting the default locale

Calling setDefaultLocale was replacing the intl locale even if the locale
was already set in the Request, thus leading to a different value than the
request locale.
merged branch stof/request_intl_locale (PR #5727)

This PR was merged into the 2.1 branch.

Commits
-------

8c6b7a4 Fixed the handling of the intl locale when setting the default locale

Discussion
----------

Fixed the handling of the intl locale when setting the default locale

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: none

Calling setDefaultLocale was replacing the intl locale even if the locale
was already set in the Request, thus leading to a different value than the
request locale.
[HttpFoundation] fixed empty path when using Request::create() (closes #5729)
fixed #5384
added a unit test
merged branch bamarni/console (PR #5689)

This PR was merged into the 2.1 branch.

Commits
-------

86503db [Console] added a unit test
3b2eeb6 [Console] fixed #5384

Discussion
----------

[Console] Simplified find method

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5384

It simplifies the way command or command suggestions are found, also fixing issue #5384.

It's a WIP I had, my plan was to also remove the original methods findAlternatives, etc... but some other methods are relying on them, so I'm sending it as it instead of running into more refactoring.

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

by bamarni at 2012-10-06T20:35:59Z

I've refactored some code, as you can see in the tests I've changed, the exception messages have slightly changed.

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

by fabpot at 2012-10-08T13:04:36Z

I don't see the point fo this big refactoring, especially if it also changes the behavior. I think a better approach would be to do only one thing at a time. But as is, this is not mergeable.

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

by bamarni at 2012-10-08T14:01:41Z

I'll try to fix this PR to keep the same behavior and error messages as it is currently.

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

by bamarni at 2012-10-08T14:07:43Z

Well if in fact there is only one bug, it would be better to patch the current code instead of doing this refactoring, even though I think the current code which finds commands is overcomplicated.

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

by stof at 2012-10-08T14:09:18Z

Well, in this case, please submit only a bug report for the 2.1 branch (or 2.0 if it is also affected), and then you can refactor the logic in master to simplify it if needed. But a refactoring should not happen in a maintenance branch

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

by bamarni at 2012-10-09T07:32:47Z

I've patched the code.

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

by fabpot at 2012-10-09T07:37:53Z

Can you add a test for the bug fix?

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

by bamarni at 2012-10-09T21:30:21Z

here you go
UnitTest fix

Check that the e-service initialized
UnitTest fix

 - no return value
Fix incorrect variable in FileProfilerStorage
merged branch merk/patch-4 (PR #5738)

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

Commits
-------

894377f Fix incorrect variable in FileProfilerStorage

Discussion
----------

[HttpKernel] [Profiler] Fix incorrect variable use in FileProfilerStorage

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: ~
Todo: ~
License of the code: MIT
Documentation PR: ~

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

by pborreli at 2012-10-13T06:58:57Z

:+1:

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

by sstok at 2012-10-13T09:20:33Z

This should be done 2.1 as the bug also existing there.
[WebProfilerBundle] fixed typos
Made the router lazy when setting the context

Initializing the matcher and the generator to set the context does not make
sense as it is set anyway when building them. This avoids initializing
them in the RouterListener if you never actually use them (for instance
because you use the apache matcher).