Commit Graph

14867 Commits

Author SHA1 Message Date
Fabien Potencier
b46e0ad556 fixed CS 2013-08-17 18:32:21 +02:00
Fabien Potencier
812900f00b merged branch klmatom/ticket_8460 (PR #8776)
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
2013-08-17 18:31:21 +02:00
Tom Avery
99adcf1f6a {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"
2013-08-17 18:31:20 +02:00
Fabien Potencier
bd4488b5c8 fixed CS 2013-08-17 18:29:09 +02:00
Fabien Potencier
be7172844c merged branch Sirian/argvinput_fix (PR #8768)
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
2013-08-17 18:28:38 +02:00
Vasily Khayrulin
ab9a96b774 Fixes for hasParameterOption and getParameterOption methods of ArgvInput 2013-08-17 18:27:58 +02:00
Fabien Potencier
91e5b10d05 Merge branch '2.2' into 2.3
* 2.2:
  Added sleep() workaround for windows php rename bug
  [HttpKernel] removed unused variable

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
2013-08-15 19:08:02 +02:00
Fabien Potencier
d60fa064f3 merged branch caponica/cache-clear-win-workaround (PR #8767)
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
2013-08-15 15:44:11 +02:00
Christian Morgan
dbd08551f8 Added sleep() workaround for windows php rename bug 2013-08-15 15:44:11 +02:00
Fabien Potencier
282b05cbc1 [HttpKernel] removed unused variable 2013-08-15 15:02:15 +02:00
Fabien Potencier
e2f7d1e51a merged branch bschussek/fix-submit (PR #8764)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] Fixed: Added "validation_groups" option to submit button

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

Commits
-------

c342715 [Form] Fixed: Added "validation_groups" option to submit button
2013-08-15 14:51:56 +02:00
Bernhard Schussek
c342715679 [Form] Fixed: Added "validation_groups" option to submit button 2013-08-15 14:37:02 +02:00
Fabien Potencier
e6d0e693fa merged branch romainneutron/fix-8754 (PR #8756)
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)
2013-08-15 00:22:46 +02:00
Romain Neutron
fa01e6b4d3 [Process] Fix for #8754 (Timed-out processes are successful) 2013-08-15 00:22:46 +02:00
Fabien Potencier
4af7276f89 merged branch romainneutron/fix-8742 (PR #8744)
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
2013-08-14 14:58:19 +02:00
Fabien Potencier
16413ffcc7 Merge branch '2.2' into 2.3
* 2.2:
  [Process] Revert change
  [Process] Fix #8746 : slowness added in unit tests since #8741
2013-08-14 14:57:12 +02:00
Fabien Potencier
b146f75b3f merged branch romainneutron/slowness (PR #8749)
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
2013-08-14 14:56:31 +02:00
Romain Neutron
8c4bae3592 [Process] Revert change 2013-08-14 13:29:25 +02:00
Romain Neutron
8d9c7c6fae [Process] Fix #8746 : slowness added in unit tests since #8741 2013-08-14 12:41:24 +02:00
Romain Neutron
909fab6979 [Process] Fix #8742 : Signal-terminated processes are not successful 2013-08-14 12:31:50 +02:00
Fabien Potencier
11018011dd Merge branch '2.2' into 2.3
* 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
2013-08-13 22:18:00 +02:00
Fabien Potencier
f6e664d9b9 merged branch romainneutron/process-callbacks-2.2 (PR #8741)
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 #8739
7716fb2 [Process] Add failing test for #8739
bff6f3c [Process] Fix CS
2013-08-13 22:10:11 +02:00
Fabien Potencier
d66db41bef merged branch shieldo/grammar_fix (PR #8745)
This PR was merged into the 2.2 branch.

Discussion
----------

Grammar fix

Commits
-------

d74eaf9 corrected English grammar (s/does not exists/does not exist)
2013-08-13 22:01:35 +02:00
Douglas Greenshields
d74eaf9603 corrected English grammar (s/does not exists/does not exist) 2013-08-13 20:56:24 +01:00
Romain Neutron
fa769a2c21 [Process] Add more precision to Process::stop timeout 2013-08-13 19:23:51 +02:00
Romain Neutron
57d4159133 [Process] Avoid zombie process in case of unit tests failure 2013-08-13 18:52:19 +02:00
Romain Neutron
3ef517b356 [Process] Fix #8739 2013-08-13 18:52:18 +02:00
Romain Neutron
7716fb25ab [Process] Add failing test for #8739 2013-08-13 18:22:32 +02:00
Romain Neutron
bff6f3c4a6 [Process] Fix CS 2013-08-13 18:22:25 +02:00
Fabien Potencier
df5a32af70 merged branch fabpot/form_enctype-fix (PR #8731)
This PR was merged into the 2.3 branch.

Discussion
----------

form_enctype() fix (closes #8660)

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

Commits
-------

572ba68 [TwigBridge] removed superflous ; when rendering form_enctype() (closes #8660)
2013-08-13 16:06:36 +02:00
Fabien Potencier
572ba68338 [TwigBridge] removed superflous ; when rendering form_enctype() (closes #8660) 2013-08-13 11:52:49 +02:00
Fabien Potencier
2c466d2a25 merged branch jaikdean/documentation-grammar (PR #8722)
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()
2013-08-13 09:47:15 +02:00
Jaik Dean
9a29e5bade Fixed documentation grammar for AuthenticationManagerInterface::authenticate() 2013-08-13 09:47:14 +02:00
Fabien Potencier
cb14afca40 merged branch marcj/ticket_8589 (PR #8728)
This PR was merged into the 2.2 branch.

Discussion
----------

[Validator] Fixed the wrong isAbstract() call in PR #8592

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

Commits
-------

18896d5a [Validator] fixed the wrong isAbstract() check against the class (fixed #8589)
2013-08-13 09:37:59 +02:00
Fabien Potencier
c07aa94664 merged branch lyrixx/twig-code-ext-warning (PR #8721)
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
2013-08-13 09:32:38 +02:00
marcj
18896d5a9e [Validator] fixed the wrong isAbstract() check against the class (fixed #8589) 2013-08-12 23:46:36 +02:00
Grégoire Pineau
e8e76ece5a [TwigBridge] Prevent code extension to display warning 2013-08-12 10:19:38 +02:00
Fabien Potencier
615bd0ba7d merged branch lazyhammer/fix-inline-fragment (PR #7893)
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
2013-08-11 19:29:22 +02:00
Dmitrii Chekaliuk
96aec0f49c Fix internal sub-request creation
Fixes the creation of internal sub-request in case of disabled trusted
client-ip header
2013-08-11 19:29:22 +02:00
Fabien Potencier
7eaaec1468 [FrameworkBundle] made code more generic 2013-08-09 14:53:54 +02:00
Fabien Potencier
2b2c1167ef merged branch jakzal/2.3-form-button-fix (PR #8349)
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
2013-08-09 14:45:16 +02:00
Jakub Zalas
6ed0fdfda4 [Form] Moved auto_initialize option to the BaseType 2013-08-09 14:45:15 +02:00
Fabien Potencier
36e4b8c1c2 merged branch larowlan/master (PR #8081)
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
2013-08-09 09:17:14 +02:00
Lee Rowlands
2769c9dbb1 Use strstr instead of strpos 2013-08-09 09:16:43 +02:00
Fabien Potencier
0d16f5dd45 merged branch ShiraNai7/master (PR #8688)
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
2013-08-08 16:16:27 +02:00
ShiraNai7
e47657dba1 Make sure ContextErrorException is loaded during compile time errors 2013-08-08 16:16:10 +02:00
Fabien Potencier
ffe5567955 merged branch EmmanuelVella/validators (PR #8577)
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
2013-08-08 16:01:12 +02:00
Fabien Potencier
fa2c71adf7 merged branch helmer/processutils_patch (PR #8691)
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes #8691).

Discussion
----------

[Process] Fix empty process argument escaping on Windows

PR #6796 introduced a regression on Windows platform (symfony 2.3.0+), forgetting to escape explicitly requested empty arguments to ```""``` and return an empty string instead.

This behaviour is imo unintended and renders the component unusable for corner-cases, where you indeed want to specify an empty argument. One good example of this is assetic and compass, which (up to this day) relies on existence of empty parameters on windows.

Some panic and related links on the topic:
https://github.com/kriswallsmith/assetic/issues/455
https://github.com/kriswallsmith/assetic/pull/471
http://stackoverflow.com/questions/17001517/symfony2-3-with-compass ([diff](http://marker.to/KrctHM))
http://stackoverflow.com/questions/17135219/symfony-2-compass-with-assetic-on-windows-xp

Please consider a merge to master and a backport to 2.3.x

Commits
-------

a91537a Fix empty process argument escaping on Windows
2013-08-08 14:56:07 +02:00
Helmer Aaviksoo
98f6969e9c Fix empty process argument escaping on Windows 2013-08-08 14:56:07 +02:00
Joseph Bielawski
0d07af896b [BrowserKit] Pass headers when followRedirect() is called 2013-08-08 14:24:29 +02:00