This PR was merged into the 2.2 branch.
Discussion
----------
[HttpFoundation] fixed format duplication in Request
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8976
| License | MIT
| Doc PR | n/a
Commits
-------
8c2a733 [HttpFoundation] fixed format duplication in Request
This PR was merged into the 2.2 branch.
Discussion
----------
[2.2][Form] Fixed expanded choice field to be marked invalid when unknown choices are submitted
Same as #7940, rebased onto 2.2.
Commits
-------
4d2dc55 [DoctrineBridge] Improved test coverage of EntityChoiceList
9d3628c [Form] Improved test coverage of ChoiceList classes
ed83752 [Form] Fixed expanded choice field to be marked invalid when unknown choices are submitted
30aa1de [Form] Fixed ChoiceList::get*By*() methods to preserve order and array keys
53f292a [Form] Removed usage of the ChoiceList::getIndicesFor*() methods where they don't offer any performance benefit
This PR was merged into the 2.2 branch.
Discussion
----------
[Process][2.2] Fix#8970 : read output once the process is finished, enable pipe tests on Windows
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8970
| License | MIT
This fix the read of file handles after `proc_close` as described in the issue. I enable some stdin=>stdout pipes tests on windows with some dedicated buffer size. Solving the issue, I finally reproduced this [PHP bug](https://bugs.php.net/bug.php?id=65650) that I first described in my PR note in #8924
Most of Windows usage should be okay, but in case of a program throws lots of output and fills the buffer, some data might be lost/corrupted. Should it be documented ? This is a Windows only known issue.
Commits
-------
1e75cf9 [Process] Fix#8970 : read output once the process is finished, enable pipe tests on Windows
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8982).
Discussion
----------
Fixed docblock in UserInterface::getSalt()
This method can return null, too.
See the line above:
> "This can return null if the password was not encoded using a salt."
Commits
-------
3c7b557 Fixed docblock in UserInterface::getSalt()
This PR was merged into the 2.2 branch.
Discussion
----------
fixed regression in the way the request format is handled
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8917
| License | MIT
| Doc PR | n/a
Commits
-------
719b2bf [HttpFoundation] fixed regression in the way the request format is handled for duplicated requests (closes#8917)
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8686).
Discussion
----------
[TwigBundle] Fixed escaping of service identifiers in configuration
To recreate, add the following to `config.yml`:
twig:
globals:
foo: "@@bar"
**Expected behaviour:** Twig has a global variable named `foo` containing the string `@bar`.
**Actual behaviour:** ServiceNotFoundException: The service "twig" has a dependency on a non-existent service "@bar".
Environment tested on:
- Symfony Standard Distribution 2.3.2
- OS X 10.8.4
- PHP 5.4.16
Commits
-------
d613110 [TwigBundle] Fixed escaping of service identifiers in configuration
This PR was squashed before being merged into the 2.2 branch (closes#8924).
Discussion
----------
[Process][2.2] Fix Process component on windows
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8836, #8799, #7078
| License | MIT
This PR fixes Process on windows (almost, see note below).
- Some unit tests were not Windows compatible
- Use a file handle for STDERR as well as STDOUT to avoid blocking
- Decouple pipes and descriptors from Process
As this move some a part of Process in a sub class, I hope merging this in 2.3 and master would not be a PITA. I'm here to make some adjustments after theses merge if needed.
**Important note** :
We are using file handles instead of streams for `proc_open` pipes as described in the code (see [PHP bug #51800](https://bugs.php.net/bug.php?id=51800)). Unfortunately, this workaround may produce corrupted output/error output in some race conditions. That's why `AbstractProcessTest::testProcessPipes` randomly fails when using file handles (on unix and windows).
Commits
-------
4a76c76 [Process][2.2] Fix Process component on windows
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8882).
Discussion
----------
[HttpFoundation] Request->getPort() should prefer HTTP_HOST over SERVER_PORT
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/3420
| License | MIT
| Doc PR | none
What is this?
----
_Note to reviewer: This follows on from a previous pull request: https://github.com/symfony/symfony/pull/8184
Since the introduction of `Request->setTrustedHosts()` — the implementation of this fix has been simplified._
This fixes the semantics of the `Request#getPort()` method to prefer the HTTP_HOST header over SERVER_PORT.
This is relevant in situations where the web server is running on a different port to the public facing website. e.g. load balancers, proxies, port forwarding.
Consistency
----
This change makes Symfony more consistent with other popular web frameworks.
Preferring HTTP_HOST over SERVER_NAME and SERVER_PORT is the strategy used by Ruby's Rack and Python's Django.
Python has a PEP that describes how to reconstruct URLs:
http://www.python.org/dev/peps/pep-0333/#url-reconstructionb6290a184c/lib/rack/request.rb (L92)
Commits
-------
fa97d80 Request->getPort() should prefer HTTP_HOST over SERVER_PORT
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8952).
Discussion
----------
[HttpFoundation] Fixing broken http auth digest in some circumstances.
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | can be refered in issue #1813
| License | MIT
| Doc PR | n/a
With some apache + php-fpm setup we need to set ```PHP_AUTH_DIGEST``` value if not already setted in GLOBAL vars.
Added some unit tests too.
Commits
-------
9fc994b [HttpFoundation] Fixing broken http auth digest in some circumstances (php-fpm + apache).
This PR was merged into the 2.2 branch.
Discussion
----------
[Security] fixed a leak in the ContextListener
| 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
Trying to fix leaks when using the same Kernel to handle several requests in a row without resetting the Container or shutting down the Kernel.
Commits
-------
899f176 [Security] fixed a leak in ExceptionListener
2fd8a7a [Security] fixed a leak in the ContextListener
This PR was merged into the 2.2 branch.
Discussion
----------
Fixed some random leaks
| 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
Commits
-------
970405f fixed some circular references
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8943).
Discussion
----------
[PropertyAccess] Fixing singular form for kisses, accesses and addresses.
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Plural form of noums finishing by *sses* is always *ss* (contrary to plural form of noums finishing by *ses*).
Commits
-------
ebae88f Fixing singular form for kisses, accesses and addresses.
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8939).
Discussion
----------
[Console] Ignore posix_istatty warnings
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
When input stream is ``php://memory`` or ``php://temp`` function ``posix_isatty`` throws following warning
> posix_isatty(): could not use stream of type 'MEMORY' in ....
Commits
-------
cc255dd Ignore posix_istatty warnings
This PR was merged into the 2.2 branch.
Discussion
----------
[2.2] Return BC compatibility for `@Route` parameters and default values
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #7724
| License | MIT
Commits
-------
d400b5a Return BC compatibility for `@Route` parameters and default values
This PR was merged into the 2.2 branch.
Discussion
----------
[HttpKernel] fixed route parameters storage in the Request data collector (closes#8867)
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8867
| License | MIT
| Doc PR | n/a
Commits
-------
c931eb7 [HttpKernel] fixed route parameters storage in the Request data collector (closes#8867)
This PR was merged into the 2.2 branch.
Discussion
----------
[BrowserKit] fixed the redirect behavior according to the RFC
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Commits
-------
2d34e78 [BrowserKit] fixed method/files/content when redirecting a request
64e1655 [BrowserKit] removed some headers when redirecting a request
96a4b00 [BrowserKit] fixed headers when redirecting if history is set to false (refs #8697)
This PR was merged into the 2.2 branch.
Discussion
----------
[2.2] [BrowserKit] Pass headers when `followRedirect()` is called
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Tests pass? | yes
| Fixed tickets | #7929
| License | MIT
Commits
-------
0d07af8 [BrowserKit] Pass headers when `followRedirect()` is called