Using https for symfony.com/search stops chrome (and eventually firefox)
from warning us about "Mixed Content" when developing sites that use SSL
for the entire site.
This PR was merged into the 2.3 branch.
Discussion
----------
[EventDispatcher] Added the sorted priority information on phpdoc of the getListeners method
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | no
| License | MIT
Added the sorting by descending priority information on the `EventDisparcherInterface`
Commits
-------
c3eecb5 Add better phpdoc message for getListeners method of the EventDispatcher
There is no translation writer format named 'xliff', but 'xlf' only. So the TranslationUpdateCommand can't be called with 'output-format' == 'xliff' and the version info will never be shown.
This PR was squashed before being merged into the 2.3 branch (closes#14325).
Discussion
----------
[Routing][DependencyInjection] Support .yaml extension in YAML loaders
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14319
| License | MIT
| Doc PR | -
YAML [FAQ](http://www.yaml.org/faq.html) states that .yaml file extension should be used whenever possible. I tweaked YamlFileLoader supports() method in Symfony Routing component to accept both .yml and .yaml and added some asserts in tests for that behavior.
This PR replaces #14319 as it was based on 2.7. BTW Is there a way to "rebase" PR branch without redoing all the work?
Commits
-------
dd5a811 [Routing][DependencyInjection] Support .yaml extension in YAML loaders
This PR was merged into the 2.3 branch.
Discussion
----------
[Translation][fixed test] refresh cache when resources are no longer fresh.
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Fixed tickets | #14279
| Tests pass? | yes
| License | MIT
Commits
-------
04b8e4e [Translation][fixed test] refresh cache when resources are no longer fresh.
This PR was squashed before being merged into the 2.3 branch (closes#14231).
Discussion
----------
[DependencyInjection] Show better error when the Yaml component is not installed
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
As the Yaml component is a suggested dependency, if someone try to use the `YamlFileLoader` or the `YamlDumper` without the component will get an ugly message:
```
PHP Fatal error: Class 'Symfony\Component\Yaml\Dumper' not found in xxxx
```
With this PR the error will be an exception with the message: `Unable to dump the container as the Symfony Yaml Component is not installed.` for `YamlDumper` and `Unable to load YAML files service definitions as the Symfony Yaml Component is not installed.'` for `YamlFileLoader`
Commits
-------
870a299 [DependencyInjection] Show better error when the Yaml component is not installed
This PR was squashed before being merged into the 2.3 branch (closes#14206).
Discussion
----------
[2.3] SCA for Components - reference mismatches
| 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
Static Code Analysis with Php Inspections (EA Extended), no functional changes:
- worked out some of reference mismatches
Commits
-------
f732659 [2.3] SCA for Components - reference mismatches
This PR was squashed before being merged into the 2.3 branch (closes#14097).
Discussion
----------
[2.3] Static Code Analysis for Components
| 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
Static Code Analysis with Php Inspections (EA Extended), no functional changes:
- array_keys/array_values usage as foreach array
- foreach value by reference - added unsets to keep scope clear
- strstr usage as strpos fixed
- array_push miss-use resolved
Commits
-------
78cc93c [2.3] Static Code Analysis for Components
This PR was merged into the 2.3 branch.
Discussion
----------
renamed some confusing tests
| 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
-------
a8e4c43 renamed some confusing tests
This PR was merged into the 2.3 branch.
Discussion
----------
[2.3] Fix javascript
| Q | A
| ------------- | ---
| Bug fix? |yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
Remove dead code and add missing semicolons.
Commits
-------
df76126 Fix javascript
As we're dumping entire catalogues including their fallbacks (standalone or inlined in ~2.7), we need to use different cache files for different sets of fallback locales.
This PR was merged into the 2.3 branch.
Discussion
----------
CS: Use "self" keyword instead of class name if possible
| 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
Fixes provided by new fixer: https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1116
If this pr is merged I would change the level of the fixer to `symfony`.
Commits
-------
e72128f CS: Use "self" keyword instead of class name if possible
This PR was merged into the 2.3 branch.
Discussion
----------
[Validator] Use strict comparisons in loaders
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
| Doc PR | n/a
Commits
-------
efc1c03 [Validator] Use strict comparisons in loaders
The word 'movies' was singularified to 'movy'. There seem to be only two
words ending in 'ovies', which are 'movies' and 'anchovies'. The singular
of the latter is 'anchovy'. All other words ending in 'vies' singularify to
'vy', so the word 'movies' is an exception to the general rule.
This PR was merged into the 2.3 branch.
Discussion
----------
[CS] Fix some phpdocs for Twig extensions & templating helpers
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| Tests pass? | yes
| License | MIT
Commits
-------
a95f7f3 Fix some phpdocs for Twig extensions & templating helpers
This PR was merged into the 2.3 branch.
Discussion
----------
[DoctrineBridge] Add missing variable declaration in testcase
| Q | A
| ------------- | ---
| Bug fix? | yes?
| New feature? | no
| BC breaks? | no
| Tests pass? | yes
| License | MIT
Commits
-------
52885f0 [DoctrineBridge] Add missing variable declaration in testcase
This PR was merged into the 2.3 branch.
Discussion
----------
CS: Unary operators should be placed adjacent to their operands
| 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
Update before upcoming changes on PHP CS Fixer 1.7
To keep fabbot.io happy ;)
Commits
-------
2367f4a CS: Unary operators should be placed adjacent to their operands
This PR was merged into the 2.3 branch.
Discussion
----------
CS: Binary operators should be arounded by at least one space
| 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
Update before upcoming changes on PHP CS Fixer 1.7
To keep fabbot.io happy ;)
Commits
-------
ec2cec6 CS: Binary operators should be arounded by at least one space
This PR was merged into the 2.3 branch.
Discussion
----------
[Translator] fix test for php 7 compatibility
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14086 for Translation component
| License | MIT
| Doc PR | -
Commits
-------
02b829f [Translator] fix test for php 7 compatibility
This PR was merged into the 2.3 branch.
Discussion
----------
[Process] prefix should not be escaped
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #12826
| License | MIT
| Doc PR | -
The phpdoc of `ProcessBuilder#setPrefix` says:
```
Adds an unescaped prefix to the command string.
```
But in the current implementation, the prefix is merged with arguments array and then is escaped which seems wrong.
Commits
-------
67f65c9 Update phpdoc of ProcessBuilder#setPrefix()
This PR was merged into the 2.3 branch.
Discussion
----------
[2.3] [SecurityBundle] removed a duplicated service definition and simplified others.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | ~
| License | MIT
| Doc PR | ~
Commits
-------
f24c8ab [SecurityBundle] removed a duplicated service definition and simplified others.
This PR was merged into the 2.3 branch.
Discussion
----------
CS: general fixes
| 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
After this PR the whole 2.3 version will be valid when running PHP CS Fixer.
It is also first step to apply PHP CS Fixer on next version.
To keep fabbot.io happy ;)
Commits
-------
063ae13 CS: general fixes
This PR was merged into the 2.3 branch.
Discussion
----------
CS: fix some license headers
| 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
Commits
-------
2b74841 CS: fix some license headers
This PR was merged into the 2.3 branch.
Discussion
----------
Replace GET parameters when changed in form
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13962
| License | MIT
| Doc PR | -
Commits
-------
fa9fb5c Replace GET parameters when changed
This PR was merged into the 2.3 branch.
Discussion
----------
CS: Convert double quotes to single quotes
| 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
Changes generated automatically by upcoming PHP CS Fixer.
To keep fabbot.io happy ;)
Commits
-------
f99c22c CS: Convert double quotes to single quotes
This PR was merged into the 2.3 branch.
Discussion
----------
[2.3+][Form][DoctrineBridge] Improved loading of entities and documents
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13961
| License | MIT
Commits
-------
529d99c Fixed MongoODM entity loader. Improved loading behavior of entities and documents by reusing entity loader.
This PR was squashed before being merged into the 2.3 branch (closes#13995).
Discussion
----------
[2.3] Static Code Analysis for Components
| 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
Static Code Analysis with Php Inspections (EA Extended), no functional changes:
- [Filesystem] : nested ifs, not optimal ifs
- in_array() miss-uses
- class re-implements an interface of super(s)
- array_keys/array_values as foreach array - fixed cases where changes has sense
Commits
-------
4abfabf [2.3] Static Code Analysis for Components
If `router.request_context.host` is defined in `parameters.yml` and if this
key is used in `globals` section of twig bundle then the value registered in the
DIC/parameters is the default value (`localhost`).
It occurs because generall the framework bundle is defined before the twig
bundle. So after the first loop, the (user) value registered in the
`ContainerBuilder` is overridden by the default value of the framework bundle.
And so, when it comes the time to process twig bundle, the last one gets the
default value, and not the user value.
This patch force the merge of default value, but give an highest precedence of
user parameters for each extensions.
This PR was merged into the 2.3 branch.
Discussion
----------
[DependencyInjection] `ResolveParameterPlaceHoldersPass` unit tests
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
When working #13924, I noticed that there were no tests for the `ResolveParameterPlaceHoldersPass` class. So I decided to add them for the `2.3` branch too.
Commits
-------
b8d42b3 `ResolveParameterPlaceHoldersPass` unit tests
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.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)"
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 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 merged into the 2.3 branch.
Discussion
----------
Enforce UTF-8 charset for core controllers
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #7532
| License | MIT
| Doc PR | -
See https://github.com/symfony/symfony/issues/7617 and https://github.com/symfony/symfony/pull/7532 for the context of this PR.
Commits
-------
3032014 Enforce UTF-8 charset for core controllers
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 merged into the 2.3 branch.
Discussion
----------
[WebProfilerBundle] fix html lint on empty onclick
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
The request collector has an empty onclick="" attribute
when {{ link }} isn't available. This tends to happen when
rendering the debug toolbar.
Commits
-------
a3a2f15 [WebProfilerBundle] fix html linting on empty onclick
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
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
Apache rewrite module renames client request
header (`HTTP_`) by prepending `REDIRECT_` to
it. http basic authentication and http digest
authentication are properly processed in
REDIRECT_ form, while bearer is processed in
HTTP_ form, but dropped in REDIRECT_ form.
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
This PR was merged into the 2.3 branch.
Discussion
----------
[FrameworkBundle] Keep "pre" meaning for var_dump quick-and-dirty debug
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
This is a minor fix to have a quick-and-dirty var_dump nicely work with the exception output from Symfony.
In short, the default "pre" whitespace CSS rules should be kept outside of block "#content", so that var_dump output is not diplayed in a single huge line.
Commits
-------
b6d4390 Keep "pre" meaning for var_dump quick-and-dirty debug
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.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.3 branch.
Discussion
----------
[2.3] Removed dead code and various cleaning
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | ~
| License | MIT
| Doc PR | ~
Commits
-------
50973ba Removed dead code and various cleaning
This PR was merged into the 2.3 branch.
Discussion
----------
Make the container considered non-fresh if the environment parameters are changed
| Q | A
| ------------- | ---
| Bug fix? | not really
| New feature? | kind of
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #11365
| License | MIT
| Doc PR | https://github.com/symfony/symfony-docs/pull/4645Fixes#11365 by making the container non-fresh if any of the prefixed environment parameters are added/removed/changed. Not a bug as it was documented as behaving as such, but I think it's worth applying to 2.3 rather than considering it a new feature.
Commits
-------
b49fa12 Make the container considered non-fresh if the environment parameters are changed
This PR was merged into the 2.3 branch.
Discussion
----------
[Console] fixed 10531
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #10531
| License | MIT
| Doc PR | -
This is a fix for #10531. It works by extracting all the parent namespaces of a command.
Commits
-------
e6afff4 [Console] fixed#10531
This PR was merged into the 2.3 branch.
Discussion
----------
Consistent spaceless nodes in form templates
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Added '-' at the start and at the end of all if, for, set and block nodes. Related to #12422.
Replaces #12560.
Commits
-------
41c5be6 Added the '-' character for spaceless on tag start and end to be consistent for block, if, set and for nodes
This PR was squashed before being merged into the 2.3 branch (closes#13039).
Discussion
----------
[HttpFoundation] [Request] fix baseUrl parsing to fix wrong path_info
Hi everyone!
We at trivago had an issue with the Request object. It seems that all versions of symfony 2.x and 3.x are affected from this (possible) bug (don't checked 1.x).
Here is the problem:
some old legacy pages are deployed in the Document Root, let's say /var/www/www.test.com/ .
one or more new applications based on symfony are deployed to /var/release/new_app1/ , /var/release/new_app2/ , ... .
in /var/www/www.test.com/ there is a symlink "app" to /var/release/new_app1/web, like:
/var/www/www.test.com/app --> /var/release/new_app1/web/
there is a "SEO"/human-readable rewrite rule for Document Root (if called path/file not exist): (.*) --> app/app.php
the problem comes, when the user calls a uri starting with "app" or whatever the rewrite rule / symlink points to:
the user calls "http://www.test.com/apparthotel-1234"
results in $_SERVER parameters like this
```
'DOCUMENT_ROOT' =>'/var/www/www.test.com',
'SCRIPT_FILENAME' => '/var/www/www.test.com/app/app.php',
'SCRIPT_NAME' => '/app/app.php',
'PHP_SELF' => '/app/app.php/apparthotel-1234'
```
in Request::prepareBaseUrl() there are checks to find the baseUrl:
```
if ($baseUrl && false !== $prefix = $this->getUrlencodedPrefix($requestUri, $baseUrl)) {
// full $baseUrl matches
return $prefix;
}
if ($baseUrl && false !== $prefix = $this->getUrlencodedPrefix($requestUri, dirname($baseUrl))) {
// directory portion of $baseUrl matches
return rtrim($prefix, '/');
}
```
first it is checked if (in our case) "/app/app.php" is in the request uri (/apparthotel-1234).
it's not.
then it takes the dirname (of /app/app.php) which is /app and checks if it is in the request uri (/apparthotel-1234), and YES, it is! and "/app" is returned, but this is wrong, it should be empty (because it comes from a rewrite rule from root: /)!
later in preparePathInfo(), if there is a baseUrl, then the baseUrl is removed from the request uri:
/apparthotel-1234 ---> /arthotel-1234
The cause is, the second baseUrl check, checks if the path of the application is already in the uri, like when the request was "http://www.test.com/app/apparthotel-1234" and hit a rewrite rule like (.*) --> app.php in there, but because it matches a directory it must match "dirname($baseUrl) . '/'".
I also needed to fix one unit test of the getBaseUrl test:
the request uri recently was "/foo%20bar".
but from the $_SERVER infos "foo bar" is a directory, see:
```
'SCRIPT_FILENAME' => '/home/John Doe/public_html/foo bar/app.php',
'SCRIPT_NAME' => '/foo bar/app.php',
'PHP_SELF' => '/foo bar/app.php',
```
webservers will redirect a request "http://www.test.com/foo%20bar" to "http://www.test.com/foo%20bar/" when "foo bar" is a directory. checked this for apache 2.x and nginx 1.4.x.
this fix is for symfony master (3.0.x, see #13039).
I also prepared a merge request for actual 2.7 branch, it will also follow in some minutes. (see #13040)
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | this, #13040, #13038, #7329
| License | MIT
[HttpFoundation] [Request]
* added missing slash to baseUrl-path part check to remove the path, only when it's also a path in the uri
[HttpFoundation] [Tests] [RequestTest]
* fixed and added unittests
This is the symfony 2.3 branch fix for the issue related to #13038 and #13040
Happy christmas!
Commits
-------
3a3ecd3 [HttpFoundation] [Request] fix baseUrl parsing to fix wrong path_info
This PR was merged into the 2.3 branch.
Discussion
----------
[Form] Improved exception message if the data class is not found
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #12359, #12367
| License | MIT
| Doc PR | -
Commits
-------
4145836 [Form] Improved exception message if the data class is not found
This PR was merged into the 2.3 branch.
Discussion
----------
[Yaml] execute cheaper checks before more expensive ones
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Minor improvements to the checks as suggested by @stof in #13262.
Commits
-------
cd4349d execute cheaper checks before more expensive ones