This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8776).
Discussion
----------
{HttpFoundation] [Session] fixed session compatibility with memcached/re...
...dis session storage
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | no (no new failng/errors introduced)
| Fixed tickets | 7380
| License | MIT
Per https://bugs.php.net/bug.php?id=61470, and in fixing #7380, the following error occurs when using a Memcache or Redis session store w/ Symfony security: "Authentication exception occurred; redirecting to authentication entry point (A Token was not found in the SecurityContext.)". This patch applies the first fix only if the session store is "files"
Commits
-------
eb8d8eb {HttpFoundation] [Session] fixed session compatibility with memcached/redis session storage
Per https://bugs.php.net/bug.php?id=61470, and in fixing #7380, the following error occurs when using a Memcache or Redis session store w/ Symfony security: "Authentication exception occurred; redirecting to authentication entry point (A Token was not found in the SecurityContext.)". This patch applies the first fix only if the session store is "files"
{HttpFoundation] [Session] fixed session compatibility with memcached/redis session storage
Per https://bugs.php.net/bug.php?id=61470, and in fixing #7380, the following error occurs when using a Memcache or Redis session store w/ Symfony security: "Authentication exception occurred; redirecting to authentication entry point (A Token was not found in the SecurityContext.)". This patch applies the first fix only if the session store is "files"
This PR was submitted for the 2.3 branch but it was merged into the 2.2 branch instead (closes#8768).
Discussion
----------
[Console] Fixes for hasParameterOption and getParameterOption methods of ArgvInput
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
7ca9340 Fixes for hasParameterOption and getParameterOption methods of ArgvInput
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8767).
Discussion
----------
Added sleep() workaround for windows php rename bug
For more info see links in issue #8766
Commits
-------
b3c815b Added sleep() workaround for windows php rename bug
This PR was squashed before being merged into the 2.3 branch (closes#8756).
Discussion
----------
[Process] Fix for #8754 (Timed-out processes are successful)
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8754
| License | MIT
Commits
-------
fa01e6b [Process] Fix for #8754 (Timed-out processes are successful)
This PR was merged into the 2.3 branch.
Discussion
----------
[Process] Fix#8742 : Signal-terminated processes are not successful
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | require #8741 to be merged to pass tests
| Fixed tickets | #8742
| License | MIT
Commits
-------
909fab6 [Process] Fix#8742 : Signal-terminated processes are not successful
This PR was merged into the 2.2 branch.
Discussion
----------
[Process] Fix#8746 : slowness added in unit tests since #8741
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8746
| License | MIT
Commits
-------
8c4bae3 [Process] Revert change
8d9c7c6 [Process] Fix#8746 : slowness added in unit tests since #8741
* 2.2:
corrected English grammar (s/does not exists/does not exist)
[Process] Add more precision to Process::stop timeout
[Process] Avoid zombie process in case of unit tests failure
[Process] Fix#8739
[Process] Add failing test for #8739
[Process] Fix CS
Fixed documentation grammar for AuthenticationManagerInterface::authenticate()
[Validator] fixed the wrong isAbstract() check against the class (fixed#8589)
[TwigBridge] Prevent code extension to display warning
Use strstr instead of strpos
Conflicts:
src/Symfony/Component/Finder/Shell/Command.php
src/Symfony/Component/Process/Process.php
This PR was merged into the 2.2 branch.
Discussion
----------
[Process][2.2] Fix#8739
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8739
| License | MIT
This adds a fix to #8739. Whenever a call is done to to any non-blocking methods (`Process::isRunning`, `Process::isStopped`, `Process::isTerminated`, `Process::getStatus`, `Process::getPid`...), buffers are read, and callback executed.
Such code will now work :
```
$process->start(function ($type, $data) {
echo $data;
});
while ($process->isRunning()) {
// some stuff
// callback is executed
}
```
Commits
-------
fa769a2 [Process] Add more precision to Process::stop timeout
57d4159 [Process] Avoid zombie process in case of unit tests failure
3ef517b [Process] Fix#87397716fb2 [Process] Add failing test for #8739bff6f3c [Process] Fix CS
This PR was merged into the 2.2 branch.
Discussion
----------
Grammar fix
Commits
-------
d74eaf9 corrected English grammar (s/does not exists/does not exist)
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8722).
Discussion
----------
Fixed documentation grammar for AuthenticationManagerInterface::authenticate()
Commits
-------
8306be2 Fixed documentation grammar for AuthenticationManagerInterface::authenticate()
This PR was merged into the 2.2 branch.
Discussion
----------
[TwigBridge] Prevent code extension to display warning
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
During functional testing with phpunit and browserkit (and all their friends) when the application returns a `4XX` or a `5XX` response, symfony displays the trace with code context.
During a training, few people experienced a very weird issue with php 5.4, symfony 2.3.2, phpunit 3.7, Windows 7 or 8 and SensioLabsDesktop 0.5.
When they run functional tests, and the application returns a `404`, in the "console" there was lot of warnings. It was something like that `Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /XXXXX on line 9` With the `@`, no more warnings.
I can't reproduce this issue on my computer (not windows). If needed, I can try to reproduce this bug on Monday at work.
Commits
-------
e8e76ec [TwigBridge] Prevent code extension to display warning
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes#7893).
Discussion
----------
[HttpKernel] Fix internal sub-request creation
| 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
Fixes the creation of internal sub-request in case of disabled trusted
client-ip header.
Commits
-------
85d5413 [HttpKernel] Fix internal sub-request creation
This PR was squashed before being merged into the 2.3 branch (closes#8349).
Discussion
----------
[Form] Moved auto_initialize option to the BaseType
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8162
| License | MIT
| Doc PR | -
I'm not fully confident in this change, so let someone review it before mergin please. My thinking was - since "auto_initialized" option is always passed to a form factory, it should be required by the base type.
Commits
-------
6ed0fdf [Form] Moved auto_initialize option to the BaseType
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#8081).
Discussion
----------
Use strstr instead of strpos in ClassLoader (4% perf improvement)
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | [
| License | MIT
| Doc PR |
Using ClassLoader in Drupal 8, using strstr instead of strpos nets 4% perf improvement.
XHPROF diff https://dl.dropboxusercontent.com/u/10201421/diff.html
Commits
-------
25d7b90 [ClassLoader] Use strstr instead of strpos
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes#8688).
Discussion
----------
[Debug] Make sure ContextErrorException is loaded during compile time errors
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | no
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
### Description
When the `ErrorHandler->handle()` attempts to throw a `ContextErrorException` the script might die with a Fatal Error because the class is not found.
FatalErrorException: Error: Class 'Symfony\Component\Debug\Exception\ContextErrorException' not found in ...
That effectively hides the original error and causes confusion.
### Cause
The cause is a bug/limitation of PHP that makes class autoloading completely inactive during "compiling".
Relevant PHP source code in `zend_execute_API.c`:
/* The compiler is not-reentrant. Make sure we __autoload() only during run-time
* (doesn't impact functionality of __autoload()
*/
if (!use_autoload || zend_is_compiling(TSRMLS_C)) {
#### More information about the PHP bug/limitation:
- https://bugs.php.net/bug.php?id=65322
- many duplicates/relevant: https://www.google.com/search?btnG=1&pws=0&q=site%3Abugs.php.net+autoload+error+handling
### The fix
The most simple way to fix this is to manually ensure that `ContextErrorException` is loaded and if not, load it. This is what I did.
Another way is to detect if autoloading is available (possible by prepending a temporary autoloader) and act accordingly (how?).
### The test
I also added a test case that would fail with a fatal error if the error handler does not successfully throw an exception in case of a compile time error. But I'm not sure if this is the best way or if there should be a test case at all.
###
Commits
-------
b0082ab [Debug] Make sure ContextErrorException is loaded during compile time errors
This PR was merged into the 2.3 branch.
Discussion
----------
Validators
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
This PR avoid comparison validators to be executed if the compared value is null.
Commits
-------
48338fc Ignore null value in comparison validators