* 2.3:
[DependencyInjection] fixed service resolution for factories
Conflicts:
src/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php
This PR was merged into the 2.3 branch.
Discussion
----------
[DependencyInjection] fixed service resolution for factories
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13455
| License | MIT
| Doc PR | n/a
In the service container, factories can be defined with a class/method pair or a service/method pair.
The class or service value can be a container parameter, but it was not supported everywhere, this PR fixes that.
Note that the method can never be a container parameter as this is supported nowhere in the current code, so this has not been changed.
Another PR will fix the 2.6 way of configuring a factory.
Commits
-------
f86ad95 [DependencyInjection] fixed service resolution for factories
This PR was merged into the 2.6 branch.
Discussion
----------
[Debug] reintroduce charset param to ExceptionHandler
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
For some reason, we removed the charset arg of the constructor in 2.5, then used the same position to add fileLinkFormat in 2.6. This is a BC break with 2.3.
This PR reintroduces charset at second position, with some heuristic to keep compat with 2.6
Commits
-------
c8bd867 [Debug] reintroduce charset param to ExceptionHandler
* 2.3:
[HttpFoundation] MongoDbSessionHandler::read() now checks for valid session age
[WebProfilerBundle] Set debug+charset on the ExceptionHandler fallback
used HTML5 meta charset tag and removed hardcoded ones
Revert "bug #13715 Enforce UTF-8 charset for core controllers (WouterJ)"
Conflicts:
src/Symfony/Bundle/TwigBundle/Controller/ExceptionController.php
src/Symfony/Bundle/WebProfilerBundle/Controller/ProfilerController.php
src/Symfony/Component/HttpFoundation/Session/Storage/Handler/MongoDbSessionHandler.php
src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php
This PR was merged into the 2.3 branch.
Discussion
----------
[Bundle] Fix charset config
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13715, #7617, #7532
| License | MIT
| Doc PR | -
This reverts #13715 and resurrects #7532, which was fine.
Commits
-------
ef41059 [WebProfilerBundle] Set debug+charset on the ExceptionHandler fallback
cbd0525 used HTML5 meta charset tag and removed hardcoded ones
6ca7fc9 Revert "bug #13715 Enforce UTF-8 charset for core controllers (WouterJ)"
* 2.3:
Changed visibility of setUp() and tearDown to protected
fixed XSS in the exception handler
Php Inspections (EA Extended) - static code analysis includes:
[2.3] Remove most refs uses
Test with local components instead of waiting for the subtree-splitter when possible
Conflicts:
src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
src/Symfony/Component/Config/Util/XmlUtils.php
src/Symfony/Component/Console/Helper/ProgressHelper.php
src/Symfony/Component/Debug/ExceptionHandler.php
src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
src/Symfony/Component/Filesystem/Tests/FilesystemTest.php
src/Symfony/Component/OptionsResolver/Options.php
src/Symfony/Component/Security/Acl/Dbal/MutableAclProvider.php
src/Symfony/Component/Yaml/Inline.php
This PR was merged into the 2.3 branch.
Discussion
----------
[2.3] Remove most refs uses
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13813
| License | MIT
| Doc PR | -
Removes some references usages. They are error prone, and trigger too many copies-on-writes.
Commits
-------
8862705 [2.3] Remove most refs uses
Reduce couple count calls in [Yaml]
Modernize type casting, fix several strict comparisons
Unsets merged
Elvis operator usage
Short syntax for applied operations
This PR was squashed before being merged into the 2.6 branch (closes#13835).
Discussion
----------
[PropertyAccess] stop overwriting once a reference is reached (3rd)
I commited with a different email address in [PR 13831](https://github.com/symfony/symfony/pull/13831), so here is the third attempt. Also removed unnecessary test as suggested by @Tobion
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | [13731](https://github.com/symfony/symfony/issues/13731)
| License | MIT
| Doc PR | none
I added test cases for the scenario described in my issue. After looking through the PropertyAccessor source my conclusion was that there is no reason to overwrite parents of references, so I changed that. None of the previous test cases disagreed and my new tests also passed.
Or maybe I got it all wrong, I'm willing to learn.
Commits
-------
d733a88 [PropertyAccess] stop overwriting once a reference is reached (3rd)
* 2.3:
[Form] NativeRequestHandler file handling fix
[HttpKernel] Throw double-bounce exceptions
minor #13377 [Console] Change greater by greater or equal for isFresh in FileResource
[2.3] [HttpFoundation] fixed param order for Nginx's x-accel-redirect
This PR was merged into the 2.3 branch.
Discussion
----------
minor #13377 [Console] Change greater by greater or equal for isFresh in FileResource
| Q | A
| ------------- | ---
| Fixed tickets | #13377
| License | MIT
FileResource and tests update
Commits
-------
87800ae minor #13377 [Console] Change greater by greater or equal for isFresh in FileResource
This PR was merged into the 2.3 branch.
Discussion
----------
[2.3] [HttpFoundation] fixed param order for Nginx's x-accel-mapping
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | kinda
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13502
| License | MIT
| Doc PR | n/a
Inverted path and location directives for x-accel-mapping header (fixes#13502).
Before:
```proxy_set_header X-Accel-Mapping /internal/=/var/www/example.com/```
After:
```proxy_set_header X-Accel-Mapping /var/www/example.com/=/internal/```
It could be a BC break since the response will fail if someone sends this header
honoring the previous signature, thus I need some feedback in order to choose the right branch for this change.
Commits
-------
9f9f230 [2.3] [HttpFoundation] fixed param order for Nginx's x-accel-redirect
This PR was squashed before being merged into the 2.3 branch (closes#13769).
Discussion
----------
[Form] NativeRequestHandler file handling fix
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13746
| License | MIT
| Doc PR | n/a
`NativeRequestHandler` reused the local variable for the form name `$name` as a loop variable for processing the `$_FILES` array. A separate variable is now used.
Two new test cases are included:
- Handling a request with multiple files
- Handling a request with file upload and a nameless form
Both tests fail without the fix. The test cases could probably be better though.
Commits
-------
9b3421f [Form] NativeRequestHandler file handling fix
This PR was squashed before being merged into the 2.3 branch (closes#13733).
Discussion
----------
[2.3][Process] Fixed PhpProcess::getCommandLine() result
The `PhpProcess::getCommandLine()` return `null` if `PhpProcess::start()` was not called.
```php
$process = new PhpProcess(<<<PHP
<?php echo "foobar";
PHP
);
$process->getCommandLine(); // return null
$process->start();
$process->getCommandLine(); // return the PHP binary path
```
This PR fix the problem.
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR | -
Commits
-------
d0f1d32 [2.3][Process] Fixed PhpProcess::getCommandLine() result
This PR was merged into the 2.3 branch.
Discussion
----------
fixed possible race condition when creating a directory
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13228
| License | MIT
| Doc PR | n/a
Commits
-------
8542866 fixed possible race condition when creating a directory
This PR was squashed before being merged into the 2.3 branch (closes#13691).
Discussion
----------
[Console] Added a little explaination about Command#interact()
This has confused some long time Symfony users recently: https://twitter.com/jmolivas/status/566283453264850945
| Q | A
| ------------- | ---
| Fixed tickets | -
| License | MIT
Commits
-------
38e7b72 [Console] Added a little explaination about Command#interact()
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] Fixed: The state of the XML/YAML loaders was changed even if an exception was thrown upon loading
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #12158
| License | MIT
| Doc PR | -
Commits
-------
85d464a [Validator] Fixed: The state of the XML/YAML loaders was changed even if an exception was thrown upon loading
* 2.3:
[FrameworkBundle] Fix title and placeholder rendering in php form templates.
RequestDataCollector - small fix
renamed composer.phar to composer to be consistent with the Symfony docs
[FrameworkBundle] bumped min version of Routing to 2.3
removed composer --dev option everywhere
fixed a test
[Console] Fixed output bug, if escaped string in a formatted string.
[Security] Remove ContextListener's onKernelResponse listener as it is used
Revert "minor #12652 [HttpFoundation] [Hackday] #9942 test: Request::getContent() for null value (skler)"
Revert "fixed assertion"
fixed assertion
[HttpFoundation] [Hackday] #9942 test: Request::getContent() for null value
fixed URL
Add reference to documentation in FormEvents phpdocs
[YAML] Fix one-liners to work with multiple new lines
Keep "pre" meaning for var_dump quick-and-dirty debug
[Console][Table] Fix cell padding with multi-byte
Conflicts:
src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/widget_attributes.html.php
src/Symfony/Bundle/FrameworkBundle/composer.json
src/Symfony/Component/Console/Helper/TableHelper.php
This PR was merged into the 2.3 branch.
Discussion
----------
removed composer --dev option everywhere
| 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
-------
0fe4913 renamed composer.phar to composer to be consistent with the Symfony docs
af59316 removed composer --dev option everywhere
This PR was squashed before being merged into the 2.3 branch (closes#13466).
Discussion
----------
[Security] Remove ContextListener's onKernelResponse listener as it is used
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
The context listeners are specific to a particular firewall, and as such, should not be applied if the current request doesn't match that context listener. To avoid this, the context listener can remove itself from the dispatcher as it is called.
This comes in to affect when two or more firewalls are setup and using the same kernel for multiple requests. Assuming there are two firewalls 'site' and 'admin'
- Request comes in matching 'site' firewall, 'site' ContextListener adds it's onKernelResponse method to the dispatcher
- Succesful auth for 'site'
- ContextListener writes token to session
- Request comes in matching 'admin' firewall, 'admin' ContextListener can't find anything in the session, so nulls the token in the security context
- 'site' ContextListener listens for response, can't find a token in the security context so removes the 'site' token from the session
Commits
-------
380d805 [Security] Remove ContextListener's onKernelResponse listener as it is used
This PR was squashed before being merged into the 2.3 branch (closes#12626).
Discussion
----------
Add reference to documentation in FormEvents phpdocs
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | no
| Fixed tickets | #12512
| License | MIT
| Doc PR |
Commits
-------
2b33ba6 Add reference to documentation in FormEvents phpdocs
This PR was merged into the 2.3 branch.
Discussion
----------
[Console][Table] Fix cell padding with multi-byte
| 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
When the `TableHelper` dealing with East Asian text, it renders wrong widths. This fixes that problem.
Commits
-------
11014c2 [Console][Table] Fix cell padding with multi-byte
* 2.5:
fixxed order of usage
[2.7] [Form] Replaced calls to array_search() by in_array() where is no need to get the index
[Process] Make test AbstractProcessTest::testStartAfterATimeout useful again
[Validator] Remove unnecessary include in tests
[HttpFoundation] minor: clarify Request::getUrlencodedPrefix() regex
fixed typo
[Validator] fix DOS-style line endings
bumped Symfony version to 2.5.11
updated VERSION for 2.5.10
updated CHANGELOG for 2.5.10
[Validator] Add a Russian translation for invalid charset message
[2.3] [Validator] spanish translation for invalid charset message
[Routing] make host matching case-insensitive according to RFC 3986
Conflicts:
src/Symfony/Component/Console/Application.php
src/Symfony/Component/Console/Tests/Fixtures/application_1.txt
src/Symfony/Component/Console/Tests/Fixtures/application_2.txt
src/Symfony/Component/Console/Tests/Fixtures/application_astext1.txt
src/Symfony/Component/Console/Tests/Fixtures/application_astext2.txt
src/Symfony/Component/Console/Tests/Fixtures/application_gethelp.txt
src/Symfony/Component/Console/Tests/Fixtures/application_run1.txt
src/Symfony/Component/HttpKernel/Kernel.php
src/Symfony/Component/Validator/Resources/translations/validators.bg.xlf
src/Symfony/Component/Validator/Resources/translations/validators.es.xlf
src/Symfony/Component/Validator/Resources/translations/validators.ru.xlf
* 2.3:
fixxed order of usage
[2.7] [Form] Replaced calls to array_search() by in_array() where is no need to get the index
[Process] Make test AbstractProcessTest::testStartAfterATimeout useful again
[Validator] Remove unnecessary include in tests
[HttpFoundation] minor: clarify Request::getUrlencodedPrefix() regex
fixed typo
[Validator] fix DOS-style line endings
[Validator] Add a Russian translation for invalid charset message
[2.3] [Validator] spanish translation for invalid charset message
[Routing] make host matching case-insensitive according to RFC 3986
Conflicts:
src/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php
src/Symfony/Component/Validator/Resources/translations/validators.es.xlf
src/Symfony/Component/Validator/Resources/translations/validators.ru.xlf
This PR was merged into the 2.3 branch.
Discussion
----------
[Routing] make host matching case-insensitive
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #9072
| License | MIT
| Doc PR |
Ignore case in host which means:
- When generating URLs we leave the case in the host as specified.
- When matching we always return lower-cased versions of parameters (because of https://github.com/symfony/symfony/blob/2.7/src/Symfony/Component/Routing/RequestContext.php#L190 ) in the host. This is also what browers do. They lowercase the host before sending the request, i.e. WWW.eXample.org is sent as www.example.org. But when using curl for example it sends the host as-is. So the HttpFoundation Request class can actually have a non-lowercased host because it doesn't have this normalization.
Commits
-------
952388c [Routing] make host matching case-insensitive according to RFC 3986
This PR was squashed before being merged into the 2.3 branch (closes#13446).
Discussion
----------
[Process] Make test AbstractProcessTest::testStartAfterATimeout useful again
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
The test AbstractProcessTest::testStartAfterATimeout() is pretty useless, due to two reasons:
1. Any exception is caught
This means even the exception thrown with
<code>$this->fail('A RuntimeException should have been raised.');</code>
is caught, making the test pretty useless.
2. Invalid PHP code gets executed
The command that is executed in the tests actually is:
<code># php -r "$n = 1000; while ($n--) {echo ''; usleep(1000); }"</code>
.
This does not wait ~1s, but produces the following error:
<code>PHP Parse error: syntax error, unexpected '=' in Command line code on line 1</code>
Commits
-------
1be266f [Process] Make test AbstractProcessTest::testStartAfterATimeout useful again
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] Add a Russian translation for invalid charset message
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | N/A
| License | MIT
Commits
-------
503f061 [Validator] Add a Russian translation for invalid charset message
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] fix DOS-style line endings
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Commits
-------
603fec5 [Validator] fix DOS-style line endings
This PR was merged into the 2.6 branch.
Discussion
----------
[VarDumper] CSS fix
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Small css issue:
When you use `dump()` after some html has been already echoed (this can be common in non-Symfony app) and you have elements with e.g. `position: absolute` you can end up watching logos and menus instead of vardumper's output:
![css-issue](https://cloud.githubusercontent.com/assets/2826480/5841607/438bf874-a1af-11e4-9905-542a59d358f8.png)
`position: relative` and `z-index` help a lot and i don't see any disadvantages in having these styles by default
Commits
-------
538195c [Var-Dumper] css-fix
* 2.5:
[Validator] use 2.5 API in LengthValidator
fixed id for translations
bumped Symfony version to 2.3.26
Dutch translation for invalid charset message
German translation for invalid charset message
Add a Slovenian translation for invalid charset message
Add a Polish translation.
Test lowest deps with latest 5.3
updated VERSION for 2.3.25
update CONTRIBUTORS for 2.3.25
updated CHANGELOG for 2.3.25
Fix docblocks to comments
Inject the correct EventDispatcher instance
[Validator] reject ill-formed strings
[Validator] drop grapheme_strlen in LengthValidator
Unique Entity Validator Invalid Value
[FrameworkBundle][config] allow multiple fallback locales.
Conflicts:
src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php
src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php
src/Symfony/Component/Validator/Resources/translations/validators.de.xlf
src/Symfony/Component/Validator/Resources/translations/validators.en.xlf
src/Symfony/Component/Validator/Resources/translations/validators.fr.xlf
src/Symfony/Component/Validator/Resources/translations/validators.nl.xlf
src/Symfony/Component/Validator/Resources/translations/validators.pl.xlf
src/Symfony/Component/Validator/Resources/translations/validators.sl.xlf
* 2.3:
fixed id for translations
bumped Symfony version to 2.3.26
Dutch translation for invalid charset message
German translation for invalid charset message
Add a Slovenian translation for invalid charset message
Add a Polish translation.
Test lowest deps with latest 5.3
updated VERSION for 2.3.25
update CONTRIBUTORS for 2.3.25
updated CHANGELOG for 2.3.25
Fix docblocks to comments
[Validator] reject ill-formed strings
[Validator] drop grapheme_strlen in LengthValidator
Unique Entity Validator Invalid Value
[FrameworkBundle][config] allow multiple fallback locales.
Conflicts:
src/Symfony/Bridge/Doctrine/Tests/Validator/Constraints/UniqueEntityValidatorTest.php
src/Symfony/Bridge/Doctrine/Validator/Constraints/UniqueEntityValidator.php
src/Symfony/Component/HttpKernel/Kernel.php
src/Symfony/Component/Validator/Resources/translations/validators.de.xlf
src/Symfony/Component/Validator/Resources/translations/validators.en.xlf
src/Symfony/Component/Validator/Resources/translations/validators.fr.xlf
src/Symfony/Component/Validator/Resources/translations/validators.nl.xlf
src/Symfony/Component/Validator/Resources/translations/validators.pl.xlf
src/Symfony/Component/Validator/Resources/translations/validators.sl.xlf
src/Symfony/Component/Validator/Tests/Constraints/LengthValidatorTest.php
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] Add a Polish translation for invalid charset message
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
re #13528
Commits
-------
0d562eb Add a Polish translation.
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] Dutch translation for invalid charset message
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
re https://github.com/symfony/symfony/pull/13528
Commits
-------
0f72a1e Dutch translation for invalid charset message
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] German translation for invalid charset message
| Q | A
| ------------- | ---
| Fixed tickets |
| License | MIT
Commits
-------
97576ff German translation for invalid charset message
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] Add a Slovenian translation for invalid charset message
| 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
Concerning PR #13528
Commits
-------
bd804e6 Add a Slovenian translation for invalid charset message
This PR was squashed before being merged into the 2.3 branch (closes#13469).
Discussion
----------
Fix docblocks to comments
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | ?
| Fixed tickets | N/A
| License | MIT
| Doc PR | N/A
Change docblock into comment when it's not a proper docblock.
Commits
-------
779926a Fix docblocks to comments
This PR was merged into the 2.6 branch.
Discussion
----------
[OptionsResolver] added test for allowed values and types that default to null
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | no
| Fixed tickets | -
| License | MIT
| Doc PR | -
Added test to keep logic as experienced in #12809
Commits
-------
0b42cad [OptionsResolver] added test for allowed values and types that default to null