Commit Graph

11599 Commits

Author SHA1 Message Date
Joseph Bielawski 4abd5bf071 Restrict Monolog version to be in version `<1.3`.
Because of conflict between `HttpKernel/Log/LoggerInterface` and `Psr\Log\LoggerInterface` (PSR-3)
2013-01-05 12:53:24 +01:00
Fabien Potencier 94aacec717 merged branch romainneutron/StreamSelect (PR #6540)
This PR was merged into the 2.1 branch.

Commits
-------

fa6fb6f [Process] Do not reset stdout/stderr pipes on Interrupted system call

Discussion
----------

[Process][2.1] Do not reset stdout/stderr pipes on stream_select failure

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
License of the code: MIT

When `stream_select` is called and failed, pipes are currently reset to an empty array. As a result, both error-output and output are empty whereas the exitcode is 0 (successful process).

There is no reason (at least I don't see it) to reset pipes when an error occurs.

---------------------------------------------------------------------------

by fabpot at 2013-01-04T08:18:03Z

This behavior was introduced by @Seldaek in bcf8cf91. Any reason?

---------------------------------------------------------------------------

by Seldaek at 2013-01-04T17:22:33Z

The rationale was that if stream_select failed, it will fail every time (maybe this is an incorrect assumption and I introduced a bug there). Since the while loop checks for $this->pipes being not empty, if the process dies off and stream_select() starts failing, it will be stuck in the while loop forever. That's what I was fixing there. As far as I can tell, your fix reintroduces that problem. Can you explain a bit more what you mean by "error-output and output are empty"? Maybe adding a test for the case you are seeing would help too?

---------------------------------------------------------------------------

by romainneutron at 2013-01-04T17:47:00Z

Hi !

I'm actually using `Process` in a amqp client using PhpAmqpLib. Sometimes both output and error-output of a process are empty whereas the process returned with an exitcode equal to 0.

By *empty*, I mean that the output of both `$process->getOuptut()` and `$process->getErrorOuptut()` are equal to `''`.

I removed the `@` before the `stream_select` and realized that some calls where failing :

```
stream_select(): unable to select [4]: Interrupted system call (max_fd=13) in .../vendor/symfony/process/Symfony/Component/Process/Process.php on line 341
```

With my patch, it appears that if a `stream_select` call fails one time, it can be called with success a second time.

Adding a test case that triggers this error does not seem easy as it seems system related.

What do you think about it ?

---------------------------------------------------------------------------

by Seldaek at 2013-01-04T17:52:04Z

Ok I see. So I guess your fix makes sense since stream_select can fail legitimately, but it's not the whole story. If it fails because the process died off (or whatever the cause was on windows) we shouldn't keep trying forever. Maybe just adding a limit of N retries that is reset whenever a call succeeds would be enough to go over the odd system call being interrupted without allowing infinite loops. Not sure what N makes sense.

---------------------------------------------------------------------------

by igorw at 2013-01-04T17:53:45Z

As per the `stream_select` manpage it can return false when interrupted by a system call. That does not indicate that something is broken. However, I'm not sure if it is possible to distinguish between actual errors and interrupts without capturing and parsing the error message.

---------------------------------------------------------------------------

by romainneutron at 2013-01-04T18:50:56Z

I've updated the PR to consider the error message as it's currently the only solution to find out why `stream_select` failed

---------------------------------------------------------------------------

by romainneutron at 2013-01-04T18:59:15Z

Merged fixes suggested by @stloyd  and @Seldaek
2013-01-04 22:46:41 +01:00
Romain Neutron fa6fb6fa80 [Process] Do not reset stdout/stderr pipes on Interrupted system call
When `stream_select` is called and return false because of an `Interrupted
system call`, pipes are currently reset to an empty array.
As a result, both error-output and output are empty whereas the
exitcode is 0 (successful process).
2013-01-04 19:58:07 +01:00
Fabien Potencier ea09a538f2 merged branch dbu/2.1-requestmatcher-httputils (PR #6553)
This PR was merged into the 2.1 branch.

Commits
-------

d601b13 use the right RequestMatcherInterface

Discussion
----------

use the right RequestMatcherInterface

this fixes #6470 by using the right interface
2013-01-04 18:17:24 +01:00
Fabien Potencier 8349816dc5 Merge branch '2.0' into 2.1
* 2.0:
  updated license year
  Update src/Symfony/Component/HttpFoundation/Response.php
  [Console] fixed unitialized properties (closes #5935)
  [Bundle] [FrameworkBundle] fixed typo in phpdoc of the SessionListener.
  bumped Symfony version to 2.0.21-DEV
  updated VERSION for 2.0.21
  updated CHANGELOG for 2.0.21

Conflicts:
	src/Symfony/Bundle/SwiftmailerBundle/LICENSE
	src/Symfony/Component/Filesystem/LICENSE
	src/Symfony/Component/HttpFoundation/Response.php
	src/Symfony/Component/HttpKernel/Kernel.php
2013-01-04 18:00:54 +01:00
Fabien Potencier df5c171490 updated license year 2013-01-04 17:59:43 +01:00
David Buchmann d601b1377c use the right RequestMatcherInterface 2013-01-04 15:29:54 +01:00
Fabien Potencier 66b5818cf9 merged branch jorgemaiden/patch-1 (PR #6525)
This PR was submitted for the master branch but it was merged into the 2.0 branch instead (closes #6525).

Commits
-------

0b5f1e3 Update src/Symfony/Component/HttpFoundation/Response.php

Discussion
----------

Update src/Symfony/Component/HttpFoundation/Response.php

Fix phpdoc typo
2013-01-03 20:29:37 +01:00
Jorge Maiden d337ad5133 Update src/Symfony/Component/HttpFoundation/Response.php 2013-01-03 20:29:37 +01:00
Fabien Potencier 9153f1980d merged branch jakzal/date-type-fix (PR #6543)
This PR was merged into the 2.1 branch.

Commits
-------

6c5e615 [Form] Fixed DateType when used with the intl extension disabled.

Discussion
----------

[Form] Fixed DateType when used with the intl extension disabled

DateType's month select box returns timestamps when used with intl extension disabled (see #6485).

The reason for this is that stubbed formats use *L* instead of *M* for month representation. My fix is simply taking this into account when building array for the select box.

I didn't provide unit tests since they're disabled when intl extension is not enabled. I've only manually verified if the months array contains correct data.

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #6485
Todo: -
License of the code: MIT
Documentation PR: -

---------------------------------------------------------------------------

by bschussek at 2013-01-03T17:41:47Z

Doesn't this call for fixing the stub instead of changing the Form component?

---------------------------------------------------------------------------

by stof at 2013-01-03T17:50:49Z

@bschussek L and M are both valid for the month in Intl

---------------------------------------------------------------------------

by jakzal at 2013-01-03T17:52:41Z

[StubIntlDateFormatter uses FullTransformer](https://github.com/symfony/symfony/blob/2.1/src/Symfony/Component/Locale/Stub/StubIntlDateFormatter.php#L206) to format the date. [FullTransformer supports both *L* and *M*](https://github.com/symfony/symfony/blob/2.1/src/Symfony/Component/Locale/Stub/DateFormat/FullTransformer.php#L50) formats. Both formats are treated interchangeably.
2013-01-03 20:25:35 +01:00
Fabien Potencier 14be3e014d merged branch bschussek/issue5428 (PR #6545)
This PR was merged into the 2.1 branch.

Commits
-------

c526ad9 [Form] Fixed inheritance of "error_bubbling" in RepeatedType

Discussion
----------

[Form] Fixed inheritance of "error_bubbling" in RepeatedType

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -
2013-01-03 20:23:22 +01:00
Bernhard Schussek c526ad9db6 [Form] Fixed inheritance of "error_bubbling" in RepeatedType 2013-01-03 18:55:30 +01:00
Jakub Zalas 6c5e615c0b [Form] Fixed DateType when used with the intl extension disabled. 2013-01-03 18:07:53 +01:00
Fabien Potencier 114bbce806 merged branch Tobion/expires-header (PR #6535)
This PR was merged into the 2.1 branch.

Commits
-------

10b01c9 [HttpFoundation] fix return types and handling of zero in Response
75952af [HttpFoundation] better fix for non-parseable Expires header date

Discussion
----------

[HttpFoundation] Response fixes

First commit is a better solution for #6471 and also fixes several phpdocs.
The second commit fixes the return types and handling of zero.

---------------------------------------------------------------------------

by Tobion at 2013-01-02T21:16:25Z

@dlsniper cc
2013-01-02 22:19:05 +01:00
Tobias Schultze 10b01c9159 [HttpFoundation] fix return types and handling of zero in Response 2013-01-02 22:06:26 +01:00
Tobias Schultze 75952af0c3 [HttpFoundation] better fix for non-parseable Expires header date
It also fixes several phpdocs
2013-01-02 22:03:29 +01:00
Fabien Potencier 25f970a6d7 merged branch andreabreu98/master (PR #6534)
This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes #6534).

Commits
-------

a5e7fdf Fixed missing plural message in portuguese validator

Discussion
----------

[Validator] Fixed missing plural message

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Fixes the following tickets: #6151
Todo: -
License of the code: -
Documentation PR: -
2013-01-02 16:51:07 +01:00
andreabreu98 ba5cd6ad2b Fixed missing plural message in portuguese validator 2013-01-02 16:51:06 +01:00
Fabien Potencier d9a55ed8cf merged branch dlsniper/fix-expiry (PR #6471)
This PR was squashed before being merged into the 2.1 branch (closes #6471).

Commits
-------

87b6cc2 Fix Expires when the header is -1

Discussion
----------

Fix Expires when the header is -1

This fixes the issue described in #6469.

Let me know if I've missed something.

Thanks.

---------------------------------------------------------------------------

by blaugueux at 2012-12-27T20:22:23Z

@dlsniper how can i help here, i really need to fix this issue

---------------------------------------------------------------------------

by dlsniper at 2012-12-27T20:28:53Z

I think @fabpot needs to get me some feedback on this but meanwhile you should try the proposed patch and let me know if it fixes the problem for you or I should add more tests to this.

Thanks!

---------------------------------------------------------------------------

by blaugueux at 2012-12-30T14:37:58Z

@dlsniper your patch is working great for me but it breaks tests. I agree that @fabpot point of view is required.

---------------------------------------------------------------------------

by dlsniper at 2012-12-30T18:38:38Z

@blaugueux Can you let me know what tests are failing? the one included in this PR or some custom ones from you? If it's the later, can you share some so that I can add them?

Thanks!

---------------------------------------------------------------------------

by arendjantetteroo at 2013-01-02T12:45:48Z

The headerbag fix works here. I'm not sure if the extra check in Response is really necessary, it works here without it.
2013-01-02 14:34:47 +01:00
Florin Patan 87b6cc2e19 Fix Expires when the header is -1 2013-01-02 14:34:47 +01:00
Fabien Potencier 36627c4c3c merged branch tammyd/bugfix/memcache-port-0 (PR #6529)
This PR was merged into the 2.1 branch.

Commits
-------

c282a2b [DoctrineBridge] Allowing memcache port to be 0 to support memcache unix domain sockets.

Discussion
----------

[DoctrineBridge] Allowing memcache port to be 0 to support memcache unix domain sockets.

[DoctrineBridge] Allowing memcache port to be 0 to support memcache unix domain sockets.

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Fixes the following tickets: #6527
Todo: -
License of the code: MIT
Documentation PR: ~
2013-01-02 10:33:53 +01:00
Fabien Potencier eb3eaf6f5b merged branch fabpot/console-5935 (PR #6523)
This PR was merged into the 2.0 branch.

Commits
-------

2fc41a1 [Console] fixed unitialized properties (closes #5935)

Discussion
----------

[Console] fixed unitialized properties (closes #5935)
2013-01-02 10:32:01 +01:00
Fabien Potencier 13f0a807b1 merged branch dbu/2.1-requestmatcher-httputils (PR #6470)
This PR was merged into the 2.1 branch.

Commits
-------

bfccd28 HttpUtils must handle RequestMatcher too

Discussion
----------

HttpUtils must handle RequestMatcher too

2.1 introduced the RequestMatcher as alternative to UrlMatcher. but HttpUtils was not adjusted.

---------------------------------------------------------------------------

by lsmith77 at 2013-01-01T18:15:13Z

@fabpot could you have a look at this PR? would like to know if this will be addressed in core or if we need to find another solution inside the CMF routing.
2013-01-02 10:30:52 +01:00
Tammy D c282a2bf15 [DoctrineBridge] Allowing memcache port to be 0 to support memcache unix domain sockets. 2012-12-31 09:26:26 -08:00
Fabien Potencier 2fc41a1ac8 [Console] fixed unitialized properties (closes #5935) 2012-12-30 21:29:27 +01:00
Fabien Potencier bf468ca0e6 merged branch jakzal/process-test-fix (PR #6520)
This PR was merged into the 2.1 branch.

Commits
-------

a5aeb21 [Process] Prevented test from failing when pcntl extension is not enabled.

Discussion
----------

[Process] Prevented test from failing when pcntl extension is not enabled

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -

*SIGTERM* constant is only defined if pcntl extension is present. Extension is not needed to use the Process component though.
2012-12-30 16:37:53 +01:00
Jakub Zalas a5aeb21b84 [Process] Prevented test from failing when pcntl extension is not enabled.
SIGTERM constant is only defined if pcntl extension is present. Extension is not needed to use the Process component though.
2012-12-30 13:18:39 +01:00
Fabien Potencier 477ddfb44d merged branch jakzal/stub-tests (PR #6515)
This PR was merged into the 2.1 branch.

Commits
-------

ef6f241 [Locale] Fixed the StubLocaleTest for ICU versions lower than 4.8.

Discussion
----------

[Locale] Fixed the StubLocaleTest for ICU versions lower than 4.8

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: no but for other reason in an another component
Fixes the following tickets: #5517
Todo: -
License of the code: MIT
Documentation PR: -

Symbol for Brazilian Real is BR$ only in ICU 4.8. All previous and later versions use R$.

Links to the relevant data files:
* http://source.icu-project.org/repos/icu/icu/tags/release-4-8/source/data/curr/en.txt
* http://source.icu-project.org/repos/icu/icu/tags/release-4-4/source/data/curr/en.txt
* http://source.icu-project.org/repos/icu/icu/tags/release-49-1/source/data/curr/en.txt

---------------------------------------------------------------------------

by jakzal at 2012-12-29T19:23:25Z

Note that currently *USE_ICU_DATA_VERSION* is required for some tests to pass. This is inconsistent with *Locale::getIcuDataVersion()* which returns *Locale::ICU_DATA_VERSION* if *USE_ICU_DATA_VERSION* is not set. Technically intl extension shouldn't be needed to run the stub tests.

Following code could fix the issue for StubLocale tests:

```php
class StubLocaleTest extends LocaleTestCase
{
    // ...
    protected function getIntlExtensionIcuVersion()
    {
        // Locale::getIcuDataVersion(), which is used to determine the directory of stubs,
        // uses Locale::ICU_DATA_VERSION if USE_INTL_ICU_DATA_VERSION is not given
        if (!getenv('USE_INTL_ICU_DATA_VERSION')) {
            return Locale::ICU_DATA_VERSION;
        }

        return parent::getIntlExtensionIcuVersion();
    }
}
```

This code cannot be placed in the LocaleTestCase as intl tests need the icu data version from the intl extension.

I'm not sure if this is desired and therefore I didn't include it in my PR. Let me know your thoughts and wether I should create another PR for this, use the current PR or forget about it.
2012-12-29 23:37:16 +01:00
Fabien Potencier f4f2ba8e40 merged branch jakzal/form-tests-fix (PR #6517)
This PR was merged into the 2.1 branch.

Commits
-------

81967f6 [Form] Fixed failing tests for DateTimeToStringTransformer.

Discussion
----------

[Form] Fixed failing tests for DateTimeToStringTransformer

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -

Tests were only failing at the end of the month. Since February was used in the test cases, date was being moved to the next month (February has less days than other months).

If a day is not passed, \DateTime's constructor will set it to the first day of the month:

```php
var_dump(new \DateTime('2010-02'));

object(DateTime)#1 (3) {
  ["date"]=>
  string(19) "2010-02-01 00:00:00"
  ["timezone_type"]=>
  int(3)
  ["timezone"]=>
  string(13) "Europe/London"
}
```
\DateTime is used in the test assertions.

However, DateTimeToStringTransformer::reverseTransform() uses \DateTime::createFromFormat(), which sets a missing day to the current day:

```php
var_dump(\DateTime::createFromFormat("Y-m", '2010-02'));

object(DateTime)#1 (3) {
  ["date"]=>
  string(19) "2010-03-01 20:09:26"
  ["timezone_type"]=>
  int(3)
  ["timezone"]=>
  string(13) "Europe/London"
}
```

I changed the date in the test case to avoid failures. If we need to be sure that month's not going to be changed, I'll update my PR.
2012-12-29 23:36:52 +01:00
Fabien Potencier 1d395ad16d Revert "[DoctrineBridge] Improved performance of the EntityType when used with the "query_builder" option"
This reverts commit b604eb7b52.

Conflicts:
	src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypePerformanceTest.php
2012-12-29 23:35:33 +01:00
Fabien Potencier 352eba385c merged branch hhamon/session_listener_typo (PR #6512)
This PR was merged into the 2.0 branch.

Commits
-------

a88607c [Bundle] [FrameworkBundle] fixed typo in phpdoc of the SessionListener.

Discussion
----------

[Bundle] [FrameworkBundle] fixed typo in phpdoc of the SessionListener.

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -
2012-12-29 21:08:40 +01:00
Jakub Zalas 81967f6a70 [Form] Fixed failing tests for DateTimeToStringTransformer.
Tests were only failing at the end of the month. PHP uses current day if it is not passed. Since February was used in the test cases, date was being moved to the next month (February has less days than other months).
2012-12-29 20:41:42 +01:00
Jakub Zalas ef6f241bfe [Locale] Fixed the StubLocaleTest for ICU versions lower than 4.8.
Symbol for Brazilian Real is BR$ only in ICU 4.8. All previous and later versions use R$.

Links to the data files:
* http://source.icu-project.org/repos/icu/icu/tags/release-4-8/source/data/curr/en.txt
* http://source.icu-project.org/repos/icu/icu/tags/release-4-4/source/data/curr/en.txt
* http://source.icu-project.org/repos/icu/icu/tags/release-49-1/source/data/curr/en.txt
2012-12-29 20:05:26 +01:00
Hugo Hamon a88607c7ff [Bundle] [FrameworkBundle] fixed typo in phpdoc of the SessionListener. 2012-12-29 15:12:58 +01:00
Fabien Potencier 9b71f30ade merged branch bschussek/issue6440 (PR #6505)
This PR was merged into the 2.1 branch.

Commits
-------

87dcf25 [Form] Fixed test regression introduced in #6440

Discussion
----------

[Form] Fixed test regression introduced in #6440

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -
2012-12-28 23:58:46 +01:00
Bernhard Schussek 87dcf25434 [Form] Fixed test regression introduced in #6440 2012-12-28 16:06:35 +01:00
Fabien Potencier 277ababc82 merged branch franmomu/fix_test_namespaces (PR #6497)
This PR was merged into the 2.1 branch.

Commits
-------

a6704f3 [Tests] Fix namespaces

Discussion
----------

[Tests] Fix namespaces
2012-12-28 08:29:59 +01:00
Fran Moreno a6704f34f4 [Tests] Fix namespaces 2012-12-27 22:06:37 +01:00
Fabien Potencier a0ea84bbc3 merged branch havvg/feature/propel1-modelchoice-preferred (PR #6454)
This PR was merged into the 2.1 branch.

Commits
-------

05fca6d use preferred_choices in favor of preferred_query
6855cff add preferred_query option to ModelType

Discussion
----------

[Propel1] add preferred_choices option to ModelType

This enables the ModelChoiceList to use 'preferred_choices' of the parent ChoiceType.

Ping @willdurand

---------------------------------------------------------------------------

by willdurand at 2012-12-22T09:39:39Z

👍
2012-12-27 16:10:36 +01:00
Fabien Potencier f66625d2d3 merged branch lyrixx/fix-eventdispatcher (PR #6487)
This PR was merged into the 2.1 branch.

Commits
-------

abf5e51 [EventDispatcher] Fixed php doc of GenericEvent::__construct

Discussion
----------

[EventDispatcher] Fixed php doc of GenericEvent::__construct

```
Bug fix: yes (doc)
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes (no modified)
Fixes the following tickets: -
Todo: -
License of the code: MIT
```

---------------------------------------------------------------------------

by drak at 2012-12-26T21:51:54Z

Well spotted.
2012-12-27 09:21:49 +01:00
Grégoire Pineau b444a10376 Fixed php doc of GenericEvent::__construct 2012-12-27 09:21:49 +01:00
Fabien Potencier 8fd34e4eae merged branch stloyd/bugfix/tests_form (PR #6440)
This PR was merged into the 2.1 branch.

Commits
-------

8beee64 [Form] Fix for `DateTimeToStringTransformer`

Discussion
----------

[Form] Fix for `DateTimeToStringTransformer`

Closes: #6429

---------------------------------------------------------------------------

by stloyd at 2012-12-21T08:19:11Z

@fabpot @bschussek Could you review this ? Thanks =)

---------------------------------------------------------------------------

by stloyd at 2012-12-23T13:51:36Z

Ping @fabpot (without this every PR gets false fail results from Travis-CI)
2012-12-23 19:08:33 +01:00
David Buchmann bfccd28207 HttpUtils must handle RequestMatcher too 2012-12-23 11:45:18 +01:00
Toni Uebernickel 05fca6d80e use preferred_choices in favor of preferred_query 2012-12-21 13:49:48 +01:00
Toni Uebernickel 6855cffb1d add preferred_query option to ModelType
This enables the ModelChoiceList to use 'preferred_choices' of the parent ChoiceType.
2012-12-21 12:21:17 +01:00
Fabien Potencier 6aeb546f31 bumped Symfony version to 2.0.21-DEV 2012-12-21 11:42:51 +01:00
Fabien Potencier 031a09dc00 bumped Symfony version to 2.1.7-DEV 2012-12-21 11:42:20 +01:00
Fabien Potencier 9270c41d91 updated VERSION for 2.1.6 2012-12-21 11:24:53 +01:00
Fabien Potencier 2dd2bace6c updated CHANGELOG for 2.1.6 2012-12-21 11:24:34 +01:00
Fabien Potencier 792e602cce updated VERSION for 2.0.21 2012-12-21 11:11:18 +01:00