[BrowserKit] Fix #10641 : BrowserKit is broken when using ip as host
bug #10649 [BrowserKit] Fix #10641 : BrowserKit is broken when using ip as host (romainneutron)

This PR was merged into the 2.3 branch.

Discussion
----------

[BrowserKit] Fix #10641 : BrowserKit is broken when using ip as host

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

As documented in http://php.net/manual/en/function.preg-replace.php, we have to use the `$` notation for replacing the backreference

>When working with a replacement pattern where a backreference is immediately followed by another number (i.e.: placing a literal number immediately after a matched pattern), you cannot use the familiar \\1 notation for your backreference. \\11, for example, would confuse preg_replace() since it does not know whether you want the \\1 backreference followed by a literal 1, or the \\11 backreference followed by nothing. In this case the solution is to use \${1}1. This creates an isolated $1 backreference, leaving the 1 as a literal.

Commits
-------

e946da3 [BrowserKit] Fix #10641 : BrowserKit is broken when using ip as host
[Form] Improved test coverage of UrlType
minor #10647 [Form] Improved test coverage of UrlType (webmozart)

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

Discussion
----------

[Form] Improved test coverage of UrlType

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

Commits
-------

f3e172f [Form] Improved test coverage of UrlType
Changed the typehint of the EsiFragmentRenderer to the interface
bug #10654 Changed the typehint of the EsiFragmentRenderer to the interface (stof)

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

Discussion
----------

Changed the typehint of the EsiFragmentRenderer to the interface

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

While it is true that passing a different core renderer implementation as inline strategy does not make any sense. Typehint the inline strategy here makes it much more complex to decorate the inline strategy (your decorator has to extend the class and overwrite all public methods instead of implementing the interface directly just to pass the typehint). And I have a valid use case for it (which is the reason why I submitted it now), or rather @lolautruche has one in EZPublish: https://github.com/ezsystems/ezpublish-kernel/pull/793

I don't know exactly whether this change should be considered as a bugfix (merged in the upcoming 2.3.13) or a new feature (merged in 2.5). I guess @lolautruche will like us if it goes its way to 2.3.x (EZPublish could bump its requirement to run on 2.3.13+ instead of 2.3.0+ and use a simpler code).

I remember suggesting the change in the initial PR btw, but it was rejecting sayign it does not make sense to use other strategies at that time.

Commits
-------

d1fca90 Changed the typehint of the EsiFragmentRenderer to the interface
Fix ticket #10663 - Added setCharset method call to PHP templating engine.
bug #10665 [DependencyInjection] Fix ticket #10663 - Added setCharset method call to PHP templating engine (koku)

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

Discussion
----------

[DependencyInjection] Fix ticket #10663 - Added setCharset method call to PHP templating engine

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

Commits
-------

0bc79ca Fix ticket #10663 - Added setCharset method call to PHP templating engine.
[Templating] PhpEngine should propagate charset to its helpers
bug #10670 [Templating] PhpEngine should propagate charset to its helpers (stloyd)

This PR was merged into the 2.3 branch.

Discussion
----------

[Templating] PhpEngine should propagate charset to its helpers

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

Commits
-------

ed9e48b [Templating] PhpEngine should propagate charset to its helpers
Update MimeTypeExtensionGuesser.php

Fixed bug for MimeType `image/x-ms-bmp`
minor #10685 Update MimeTypeExtensionGuesser.php (marktopper)

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

Discussion
----------

Update MimeTypeExtensionGuesser.php

Fixed bug for MimeType `image/x-ms-bmp`

Commits
-------

be0e362 Update MimeTypeExtensionGuesser.php
Merge branch '2.3' into 2.4

* 2.3:
  Update MimeTypeExtensionGuesser.php
  [Templating] PhpEngine should propagate charset to its helpers
  Fix ticket #10663 - Added setCharset method call to PHP templating engine.
  Changed the typehint of the EsiFragmentRenderer to the interface
  [Form] Improved test coverage of UrlType
  [BrowserKit] Fix #10641 : BrowserKit is broken when using ip as host

Conflicts:
	src/Symfony/Component/HttpKernel/Fragment/EsiFragmentRenderer.php
	src/Symfony/Component/Templating/PhpEngine.php