Commit Graph

10078 Commits

Author SHA1 Message Date
Fabien Potencier
f9467128ad fixed CHANGELOG 2012-09-18 19:22:28 +02:00
Fabien Potencier
6e5d341522 merged branch hason/wincache (PR #5436)
Commits
-------

9135431 [HttpKernel] Added support for WinCache in ConfigDataCollector

Discussion
----------

[HttpKernel] Added support for WinCache in ConfigDataCollector

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
License of the code: MIT
2012-09-18 19:22:16 +02:00
Fabien Potencier
c79584aac8 merged branch romainneutron/DependencyInjectionExceptions (PR #5399)
Commits
-------

f2e4802 [Yaml] Normalize exceptions
b0f5f2e [Serializer] Normalize exceptions
bcd8db2 [DependencyInjection] Normalize exceptions

Discussion
----------

Normalize exceptions

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

This PR adds consistence to components which already have their own exception interface.

DependencyInjection, Serializer and Yaml now only throw their own scoped exceptions.

For other components, it's much more work and could introduce some bugs. It would be better to do it in Symfony 2.2.
2012-09-18 19:05:29 +02:00
Fabien Potencier
0d181bc06d merged branch romainneutron/ProcessExceptions (PR #5398)
Commits
-------

c5e7793 [Process] Normalize exceptions

Discussion
----------

[Process] Normalize exceptions

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

There were some exceptions in the Process scope but they were not implemented everywhere in the component.

This PR ensure that all exceptions thrown inside Process implements `Process\Exception\ExceptionInterface`.

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

by romainneutron at 2012-08-30T20:05:41Z

Tests passes, it's a travis issue, see http://travis-ci.org/#!/symfony/symfony/builds/2287439
2012-09-18 19:05:11 +02:00
Toni Uebernickel
8dd19d8d89 fix Fatal error: Cannot access private property
PHP Fatal error: Cannot access private property Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler\MongoDbSessionHandlerTest::$options
in src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php on line 85
2012-09-18 18:09:52 +02:00
Fabien Potencier
bf41d8b74a merged branch fabpot/profiler-tests (PR #4897)
Commits
-------

22e9036 updated CHANGELOG
bafe890 [FrameworkBundle] changed Client::enableProfiler() behavior to fail silently when the profiler is not available (it makes it easier to write functional tests)
f41872b [FrameworkBundle] added a way to enable the profiler for the very next request in functional tests (closes #4307)
67b91e5 [HttpKernel] added a way to enable a disable Profiler

Discussion
----------

[2.2] added a way to enable the profiler for the very next request in a functional test

Bug fix: yes/no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4307
Todo: -
License of the code: MIT
Documentation PR: should be done before merging

After merging this PR, we need to disable the profiler in the test environment in Symfony SE.
2012-09-18 16:35:58 +02:00
Fabien Potencier
22e9036f8c updated CHANGELOG 2012-09-18 16:35:13 +02:00
Fabien Potencier
bafe89047f [FrameworkBundle] changed Client::enableProfiler() behavior to fail silently when the profiler is not available (it makes it easier to write functional tests) 2012-09-18 16:35:10 +02:00
Jeanmonod David
71db836e1f Better config validation handling for numerical values:
* New node type Integer and Float
 * New expressions: min() and max()
2012-09-18 16:22:25 +02:00
Fabien Potencier
f6857d4075 updated CHANGELOG 2012-09-18 15:46:10 +02:00
Fabien Potencier
d6b5feb769 merged branch merk/financial-validators (PR #4734)
Commits
-------

6ff9b04 Add Luhn validator

Discussion
----------

[2.2] [Validator] Add Luhn validator

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets:
Todo: Adding documentation if this PR is blessed.
License of the code: MIT

I submitted these validators to JMSPaymentCoreBundle, because they're payment related, but @schmittjoh feels that they're a better choice for adding to Symfony2.

See schmittjoh/JMSPaymentCoreBundle#52 for the original submission.

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

by fabpot at 2012-07-04T05:19:42Z

I'm +1. @bschussek?

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

by shieldo at 2012-07-04T15:46:05Z

+1 in principle (certainly the Luhn check).  I did wonder whether Visa Electron should also be in there (although, that uses a subset of the Visa range, and the chance that you would be checking for a Visa Electron but *not* Visa at the same time is vanishingly small, so maybe this is unnecessary).

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

by merk at 2012-07-04T21:25:30Z

@shieldo I did have a concern about the Electron as well, but in the case of an online system doing payment processing, I'm not sure anyone would ever need to check if it was an Electron card or not.

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

by merk at 2012-07-04T21:28:25Z

We could expand the CardScheme stuff further with this list: http://en.wikipedia.org/wiki/List_of_Issuer_Identification_Numbers

Is there any point expanding the validator beyond financial services and into the other sevices listed?

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

by shieldo at 2012-07-04T21:37:41Z

@merk Yes, in actuality there are always going to be cases you can't trap with a regex - I'd say validation like this is working if it catches a majority of cases of invalid numbers, because in reality ones that get through will just fail downstream anyway. The purpose of the validator isn't to identify individual schemes for numbers, it's to do a sanity check across collections of schemes.

I don't really see any point expanding beyond financial services for a core validator (imho) - I'm not sure how stable some of this information is.

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

by Gator92 at 2012-07-11T00:45:50Z

+1 on the Luhn check (without the authorship, just give credit to Greg Knapp), the CardScheme, however, is not really required by most gateways these days, it's a better candidate for a custom constraint.

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

by merk at 2012-07-11T00:47:20Z

I dont object, but Greg's algorithm has a flaw for odd length creditcard numbers. The unit testing written by Infinite caught this.

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

by Gator92 at 2012-07-11T01:35:46Z

You're right, the Knapp algo is flawed and does not appear to work on odd-numbered length cards.

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

by fabpot at 2012-07-11T05:49:22Z

@merk: Can you open two new pull requests? One for each validator?

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

by merk at 2012-07-26T23:42:24Z

PR updated to remove CardScheme into its own PR.

Documentation PR added to symfony-docs
2012-09-18 15:45:05 +02:00
Fabien Potencier
81206a2c92 Merge branch '2.1'
* 2.1:
  Create CONTRIBUTING.md file for auto-linking in PR's
  Added Bulgarian translation
  [Profiler]Use the abstract method to get client IP
  Typo fix
  Fixing incorrect word in twig:lint command description
  Rename $key parameter to $name for consistency
  =Minor chnage: replaced function by method
  Fixed the phpdoc in the DependencyInjection component
2012-09-17 22:42:23 +02:00
Fabien Potencier
ff1b990075 merged 2.0 2012-09-17 22:41:57 +02:00
Roumen Damianoff
326901497a Added Bulgarian translation
Bulgarian translation of validator messages
2012-09-17 20:45:59 +03:00
Thomas Tourlourat
de6658b902 [Profiler]Use the abstract method to get client IP 2012-09-17 16:33:21 +03:00
Martin Hasoň
91354311f0 [HttpKernel] Added support for WinCache in ConfigDataCollector 2012-09-17 10:32:13 +02:00
Martin Hasoň
bb2566c17d [Console] Console colorization is also provided by ConEmu on Windows 2012-09-17 10:22:05 +02:00
Andrey Chernykh
580d5a7c54 Typo fix 2012-09-17 11:30:49 +04:00
Richard Miller
2bcb6f2c9b Fixing incorrect word in twig:lint command description 2012-09-16 20:33:46 +01:00
Fabien Potencier
e2f1914636 merged branch Nanocom/master (PR #5519)
Commits
-------

cc58b30 [Console] Misuse of str_pad instead of str_repeat

Discussion
----------

[Console] Misuse of str_pad instead of str_repeat
2012-09-16 09:25:14 +02:00
Pascal Borreli
baf2c46a07 [Config] Little tweak 2012-09-16 00:50:00 +00:00
Arnaud Kleinpeter
cc58b3092d [Console] Misuse of str_pad instead of str_repeat 2012-09-15 18:15:43 +02:00
Alexander Deruwe
c2f8563a52 Rename $key parameter to $name for consistency 2012-09-13 09:24:01 +02:00
Michal Piotrowski
2a35941bab ParameterBag tests 2012-09-11 16:34:01 +02:00
Fabien Potencier
f23fd03732 bumped Symfony version to 2.1.2-DEV 2012-09-11 11:12:50 +02:00
Fabien Potencier
173711a462 updated VERSION for 2.1.1 2012-09-11 07:00:41 +02:00
Tobias Schultze
005a9a3c5b [Routing] fixed RouteCompiler for adjacent and nested placeholders 2012-09-10 22:41:05 +02:00
Fabien Potencier
885d473366 merged branch Tobion/empty-requirement (PR #5426)
Commits
-------

02516de [Routing] fix variable with a requirement of '0'
1f5b793 [Routing] fix setting empty requirement in Route

Discussion
----------

[Routing] fix setting empty requirement

First commit: A requirement of "^$" was overlooked and wasn't recognized as empty after stripping it in Route.
Second commit: Fixes a requirement of '0' that was ignored by the Compiler.
2012-09-10 22:27:16 +02:00
Besnik Br
3648abea9b =Minor chnage: replaced function by method 2012-09-10 20:40:01 +02:00
Fabien Potencier
13937de2c8 replaced self.version/2.1.* by 2.2.* in composer.json files 2012-09-10 12:59:37 +02:00
Fabien Potencier
a9a0f420e2 merged 2.1 2012-09-10 12:54:04 +02:00
Fabien Potencier
3c32fd993d replaced self.version by 2.1.* in composer.json files 2012-09-10 12:53:42 +02:00
Fabien Potencier
c5edce7c48 merged branch eventhorizonpl/100ptc_component_httpfundation_p7 (PR #5434)
Commits
-------

8f46795 tests for HeaderBag

Discussion
----------

tests for HeaderBag

Hi,

This patch adds 100% tests coverage for HeaderBag.

Best regards,
Michal
2012-09-10 11:51:36 +02:00
Fabien Potencier
4d6dd469ce merged branch eventhorizonpl/100ptc_component_httpfundation_p6 (PR #5433)
Commits
-------

9bc8f65 Cookie tests

Discussion
----------

Cookie tests

Hi,

This patch adds 100% test coverage for Cookie class.

Best regards,
Michal
2012-09-10 11:50:31 +02:00
Fabien Potencier
329efcd3df merged branch boombatower/proccess-callable (PR #5466)
Commits
-------

622102e [Process] change all  documentation type to callable

Discussion
----------

[Process] change all  documentation type to callable

Update documentation per #5456 instead of mixing in with restart() pull request.
2012-09-10 11:48:39 +02:00
Fabien Potencier
8b7ba9b1e5 merged branch Tobion/numeric-placeholder (PR #5439)
Commits
-------

be28e56 [Routing] disallow numeric named variables in pattern

Discussion
----------

[Routing] compile check for numeric named variables in pattern

Because PHP raises an error for such subpatterns in PCRE and thus would break matching, e.g. this is not allowed as regex `(?<123>.+)`.
So add a compile time check for a non-working pattern like '/{123}'.

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

by sstok at 2012-09-06T08:31:42Z

Strangely enough Regex buddy gives no warning or error with the pattern.
Is the name all numeric invalid or just the beginning?

1e4 and 0xFF would be perfectly valid but returns true with is_nummeric()

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

by Tobion at 2012-09-06T08:59:07Z

Any numeric is not valid. I guess this limitation is unique to PHP's binding to PCRE.
I think it's because the returned matches array of of preg_match contains both the subpattern as integer index and as named variable. So having a numeric named variable would conflict as `array['1'] === array[1]`.
2012-09-10 11:27:26 +02:00
Fabien Potencier
71b39d51de merged branch Tobion/same-requirements-issue (PR #5435)
Commits
-------

7c5cfeb [Routing] added test why #5238 is not that easy

Discussion
----------

[Routing] added test why #5238 is not that easy

This just adds a test that wasn't covered yet and shows why #5238 is not that easy as I thought at first.
2012-09-10 11:25:47 +02:00
Fabien Potencier
e77a5337bc merged branch Tobion/patch-4 (PR #5293)
Commits
-------

0f86a33 micro-optim: replace for with foreach
4efb9fe [Form] Remove unneeded FormUtil constants

Discussion
----------

[Form] Remove FormUtil constants

The constants are not useful from outside the class as the $pluralMap is also private. So no need to expose these veriables in the API when they cannot be used in any way. Unfortunately there are not private constants, so use private static. Then I realized the variables can be removed altogether, as they are only used once anyway and the index meaning is already documented in pluralMap.

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

by empire at 2012-08-18T12:58:22Z

FormUtils is abstract class, and maybe subclass (in future) will use this constants, I think changing access modifier to `protected` is better option.

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

by Tobion at 2012-08-18T12:59:40Z

They cannot, as pluralMap is private...

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

by Partugal at 2012-08-18T14:11:17Z

extract self::$pluralMap into local variable add small speed up
4.5499801635742 ms vs 5.7430267333984 ms on 100 iterations

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

by Tobion at 2012-08-18T14:16:47Z

This is not about performance.

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

by Partugal at 2012-08-18T14:21:11Z

yes but adds
your changes vs current is
5.7430267333984 ms vs 6.4971446990967 ms on 100 iterations

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

by Tobion at 2012-08-18T14:29:48Z

How about `$map =& self::$pluralMap[$i]`?

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

by Partugal at 2012-08-18T14:59:57Z

I mean https://gist.github.com/3387253

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

by Partugal at 2012-08-18T15:01:45Z

foreach is event faster :)
(4.1971206665039 ms on my hw)

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

by Tobion at 2012-08-18T15:04:51Z

I see.

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

by Partugal at 2012-08-18T15:06:41Z

in first comment i mean code like this:
```php
$pluralMap = self::$pluralMap; // do this because access to static property is to slow
```

on my machine & is slower `$map =& $pluralMap[$i]` vs `$map = $pluralMap[$i]`
5.0 vs 4.8 ms

imho & not needed in read only code

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

by Tobion at 2012-08-18T15:15:03Z

Well, you'd need to benchmark memory too. `=&` should reduce memory primarily in this case.

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

by Partugal at 2012-08-18T15:19:35Z

```php
echo memory_get_usage() . "\n"; // 711536

$a = array_fill(5, 6000, 'banana');
echo memory_get_usage() . "\n"; // 1497632

$b = $a;
echo memory_get_usage() . "\n"; // 1497760

$b[1] = 2;
echo memory_get_usage() . "\n"; // 2283832
```

1497760  - 1497632 = 128  it is size for variable structure not for its value:

```php
echo memory_get_usage() . "\n"; // 711536

$a = 1;
echo memory_get_usage() . "\n"; // 1497632

$b = &$a;
echo memory_get_usage() . "\n"; // 1497760
```

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

by Seldaek at 2012-08-18T17:52:32Z

@Tobion http://schlueters.de/blog/archives/125-Do-not-use-PHP-references.html - search for "copy-on-write" if you don't want to read it all.

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

by Tobion at 2012-08-18T19:37:44Z

Yeah I know about copy on write. I thought there might be a difference what you assign a sub-element of an array to a variable. But apparently not.
Interestingly `$a =& $b` takes a little more memory than `$a = $b` according to `memory_get_usage ()` but not when using `memory_get_usage (true)`.

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

by bschussek at 2012-08-30T08:15:01Z

I don't like the removal of the constants. They introduce meaning into the integers and improve code clarity. The rest looks good.

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

by Tobion at 2012-08-30T13:18:19Z

My opinion of the constants:
- They are part of the public API (as const are alwalys public) but cannot be used at all, as everything else is private...
- They are each only used once.
- The meaning of the indices is already documented in `$pluralMap`
- They are not used when building `$pluralMap` so they dont imprivate code clarity and consistence either. But doing so would on the other hand make it probably more ugly. So removing them is IMO best solution.

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

by bschussek at 2012-08-30T15:21:03Z

If you really need to remove the constants, then please comment the code where they are used accordingly.

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

by Tobion at 2012-08-31T00:58:51Z

I dont see what I should comment to make it more understandable, as the the map is already assigned to a named variable like `$suffixLength = $map[1];`.

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

by bschussek at 2012-08-31T09:12:18Z

> I dont see what I should comment to make it more understandable, as the the map is already assigned to a named variable

`$map[2]` and `$map[3]` is not self-describing.

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

by Tobion at 2012-08-31T17:23:15Z

@bschussek Done.

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

by bschussek at 2012-08-31T22:13:41Z

Could you please squash your commits?
2012-09-10 11:24:41 +02:00
Alexander Deruwe
690e28e3df Convert parameter name to lowercase when removing an element from ParameterBag 2012-09-10 10:22:46 +02:00
Christophe Coevoet
05f7f78332 Fixed the phpdoc in the DependencyInjection component 2012-09-08 00:56:45 +02:00
boombatower
622102e2e9 [Process] change all documentation type to callable 2012-09-07 14:36:28 -07:00
Tobias Schultze
e22823bb7d [Routing] context params should have higher priority than defaults
fixes #5437
2012-09-07 03:30:48 +02:00
Fabien Potencier
4dc197c3e1 udpated composer.json to 2.2 2012-09-06 20:45:30 +02:00
Tobias Schultze
16c1b01531 [Routing] fixed 4 bugs in the UrlGenerator 2012-09-06 16:15:10 +02:00
Fabien Potencier
cba2a31e36 bumped Symfony version to 2.2.0-DEV 2012-09-06 12:12:45 +02:00
Fabien Potencier
e7059b44c7 bumped Symfony version to 2.1.1-DEV 2012-09-06 12:12:03 +02:00
Fabien Potencier
5745b53d05 updated VERSION for 2.1.0 2012-09-06 11:01:56 +02:00
Fabien Potencier
00ec9b5391 Revert "merged branch Tobion/strictrequirements (PR #5181)"
This reverts commit 2da2a44382, reversing
changes made to 58855475c6.
2012-09-05 17:44:14 +02:00
Fabien Potencier
aae4ceea56 Revert "merged branch Tobion/requirementscheck (PR #5187)"
This reverts commit 2cf50b7801, reversing
changes made to 569e29d91f.
2012-09-05 17:44:10 +02:00
Fabien Potencier
fdf25289f8 Revert "merged branch Tobion/uselessparamdefaults (PR #5400)"
This reverts commit 0f61b2eb90, reversing
changes made to 5e7723fcbb.
2012-09-05 17:44:05 +02:00
Tobias Schultze
7c5cfeb776 [Routing] added test why #5238 is not that easy 2012-09-05 06:36:05 +02:00
Michal Piotrowski
8f467956c8 tests for HeaderBag 2012-09-04 20:36:25 +02:00
Michal Piotrowski
9bc8f659bd Cookie tests 2012-09-04 18:27:42 +02:00
Fabien Potencier
1dd153205b merged branch beberlei/RevertDbalAcl (PR #5253)
Commits
-------

1b5ad17 Revert "Removed MySQL-exclusive usage of unsigned integer from table creation"

Discussion
----------

[Security][DBAL] Revert MySQL unsigned removal

Revert "Removed MySQL-exclusive usage of unsigned integer from table creation"

This reverts commit 57694aaa94.

The problem is underlying in Doctrine DBAL change tracking and should
either be fixed or ignored there.

I opened a ticket on Doctrine Jira http://doctrine-project.org/jira/browse/DBAL-322

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

by fabpot at 2012-08-14T06:40:47Z

I will merge this PR after we have a release of DBAL that includes the fix for DBAL-322.

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

by acasademont at 2012-08-20T08:01:48Z

This was already fixed 2 weeks ago in doctrine/dbal#183 so i guess this can be closed

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

by acasademont at 2012-08-20T08:02:06Z

merged i mean
2012-09-04 16:49:55 +02:00
Fabien Potencier
0919361e2e merged branch eventhorizonpl/100ptc_component_httpfundation (PR #5409)
Commits
-------

3036b00 JsonResponseTest

Discussion
----------

JsonResponseTest

Hi,

This patch adds some tests for JsonResponse.

Best regards,
Michal

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

by eventhorizonpl at 2012-09-01T07:09:12Z

Done. Thanks for the review!
2012-09-04 14:24:42 +02:00
Fabien Potencier
2cd61ab8d9 merged branch eventhorizonpl/100_ptc_symfony_component_class_loader_p3 (PR #5412)
Commits
-------

8a3c8c9 load test

Discussion
----------

load test

Hi,

This patch add test that covers this situation

public static function load($classes, $cacheDir, $name, $autoReload, $adaptive = false, $extension = '.php')
{
  // each $name can only be loaded once per PHP process
  if (isset(self::$loaded[$name])) {
     return;
}

Best regards,
Michal
2012-09-04 14:23:54 +02:00
Fabien Potencier
5040599272 merged branch eventhorizonpl/100ptc_component_httpfundation_p2 (PR #5413)
Commits
-------

0af8778 Response tests

Discussion
----------

Response tests

Hi,

This patch adds some tests to ResponseTest.

Best regards,
Michal

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

by eventhorizonpl at 2012-09-01T09:45:16Z

Fixed, thanks for the review.

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

by eventhorizonpl at 2012-09-02T19:39:26Z

CS fixed. Thanks for the review :)
2012-09-04 14:19:30 +02:00
Fabien Potencier
a44c8d8c84 merged branch eventhorizonpl/100ptc_component_httpfundation_p3 (PR #5414)
Commits
-------

c74d9a9 ResponseHeaderBag tests

Discussion
----------

ResponseHeaderBag tests

Hi,

This patch adds some ResponseHeaderBag tests. Now ResponseHeaderBag got 100% test coverage :)

Best regards,
Michal
2012-09-04 14:18:55 +02:00
Fabien Potencier
ee51ca8c16 merged branch eventhorizonpl/100ptc_component_httpfundation_p4 (PR #5415)
Commits
-------

b89d4ee StreamedResponseTest

Discussion
----------

StreamedResponseTest

Hi,

This patch adds one test to StreamedResponseTest and fixes another. StreamedResponse has 100% test coverage.

Best regards,
Michal
2012-09-04 14:18:30 +02:00
Fabien Potencier
36c64e0e33 merged branch eventhorizonpl/100ptc_component_httpfundation_p5 (PR #5416)
Commits
-------

21a5841 RedirectResponse tests

Discussion
----------

RedirectResponse tests

Hi,

This patch adds 100% test coverage for RedirectResponse class.

Best regards,
Michal
2012-09-04 14:18:13 +02:00
Tobias Schultze
02516de652 [Routing] fix variable with a requirement of '0' 2012-09-04 07:18:13 +02:00
Tobias Schultze
be28e56f4e [Routing] disallow numeric named variables in pattern
because PHP raises an error for such subpatterns in PCRE and thus would break matching, e.g. '(?<123>.+)'.
2012-09-04 07:10:18 +02:00
Tobias Schultze
1f5b7930c0 [Routing] fix setting empty requirement in Route 2012-09-04 06:31:46 +02:00
Michal Piotrowski
0af87785a7 Response tests
fix things pointed out by Koc

fix things pointed out by stof
2012-09-02 15:37:09 -04:00
Michal Piotrowski
21a5841c6a RedirectResponse tests 2012-09-01 08:25:20 -04:00
Michal Piotrowski
b89d4eeb23 StreamedResponseTest 2012-09-01 07:57:21 -04:00
Michal Piotrowski
c74d9a90f5 ResponseHeaderBag tests 2012-09-01 07:18:47 -04:00
Michal Piotrowski
8a3c8c9c03 load test 2012-09-01 03:02:36 -04:00
Michal Piotrowski
3036b009a3 JsonResponseTest 2012-09-01 02:56:27 -04:00
Fabien Potencier
797ba6846a merged branch bschussek/issue4670 (PR #5406)
Commits
-------

04fd5f1 [Form] Fixed PropertyPath to not modify Collection instances (not even their clones)

Discussion
----------

[Form] Fixed PropertyPath to not modify Collection instances

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4670
Todo: -

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

by pocallaghan at 2012-08-31T14:20:52Z

As far as I can see the pull request does fix the issue, which makes sense based on the code change (I didn't know iterator_to_array existed, good call). One thing I would say, I'm not sure on the use in the change to the test case. It's not clear to me what additional protection this extra assertion gives, as both the old and new code seem to pass.

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

by bschussek at 2012-08-31T14:21:46Z

The new assertion is there because not even the old code (`clone`) was tested.

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

by stof at 2012-08-31T14:37:38Z

@bschussek but was it failing without the code change ?

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

by bschussek at 2012-08-31T22:12:00Z

@stof It was not, but I was unable to write a good test for the change within reasonable time. I added an explanatory comment instead.
2012-09-01 08:47:43 +02:00
Tobias Schultze
0f86a33b61 micro-optim: replace for with foreach 2012-09-01 02:18:27 +02:00
Tobias Schultze
4efb9fec50 [Form] Remove unneeded FormUtil constants
They are part of the public API (as const are always public) but cannot be used at all from outside the class as the$pluralMap is private. The meaning of the indices is already documented in the array.
2012-09-01 02:16:28 +02:00
Fabien Potencier
07ec1cb63b [Security] fixed typo in a test 2012-08-31 19:17:17 +02:00
Bernhard Schussek
04fd5f1b21 [Form] Fixed PropertyPath to not modify Collection instances (not even their clones) 2012-08-31 14:34:27 +02:00
Fabien Potencier
0f61b2eb90 merged branch Tobion/uselessparamdefaults (PR #5400)
Commits
-------

cb7e3f5 [Routing] added route compile check to identify a default value of a required variable that does not match the requirement

Discussion
----------

[Routing] added route compile check to identify a bad default value

BC break: yes but only for strange route definitions

See the exception message in code for the reasoning.

An exception is thrown for a __required__ variable that __has a default__ that __doesn't match__ the requirement.
So optional variables can of course still have a default that don't meet the requirement, which is useful.
This helps to identify useless route definitions at compile time instead of when generating or matching a URL.
2012-08-31 11:55:46 +02:00
Fabien Potencier
5e7723fcbb merged branch janmarek/patch-1 (PR #5202)
Commits
-------

890aea2 FileLocatorInterface used in typehint instead of FileLocator

Discussion
----------

FileLocatorInterface used in typehint instead of FileLocator

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

by stof at 2012-08-30T22:09:39Z

@fabpot this makes sense (and it is BC)

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

by mvrhov at 2012-08-31T08:34:17Z

What's wrong with Interface hint? I always hint interface when available as this means that I can inject whatever class implementing that interface.
2012-08-31 11:52:07 +02:00
Tobias Schultze
cb7e3f5edb [Routing] added route compile check to identify a default value of a required variable that does not match the requirement 2012-08-31 08:36:21 +02:00
Romain Neutron
f2e4802565 [Yaml] Normalize exceptions 2012-08-30 21:55:18 +02:00
Romain Neutron
b0f5f2e7f2 [Serializer] Normalize exceptions 2012-08-30 21:55:08 +02:00
Romain Neutron
bcd8db2a34 [DependencyInjection] Normalize exceptions 2012-08-30 21:32:42 +02:00
Romain Neutron
c5e7793004 [Process] Normalize exceptions 2012-08-30 21:25:16 +02:00
Tobias Schultze
33638320f2 extended phpdoc of ConfigurableRequirementsInterface 2012-08-30 16:35:30 +02:00
Tobias Schultze
5f64503132 [Routing] added test for disabled requirements check 2012-08-30 15:08:30 +02:00
Tobias Schultze
4225869939 [Routing] allow disabling the requirements check on URL generation 2012-08-30 15:08:29 +02:00
Romain Neutron
407db6510b Add @Seldaek remote modifications 2012-08-30 14:49:05 +02:00
Romain Neutron
3bfb9762d7 Add unit test demonstrating bad exit code getter for a failing process 2012-08-30 12:55:38 +02:00
Fabien Potencier
2982e6e678 merged branch rdohms/html5-regexp (PR #5382)
Commits
-------

7503ec9 Issue #5307: HTML regexp when match is false

Discussion
----------

Issue #5307: HTML regexp when match is false

When match is false the html5 validation regexp should be either inverted or not added.
Since we are in RC added a fix where this is not added, but marked a @todo so that this
can be revisited and we try to inverse the regexp instead.

Discussed in #5307.

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

by bschussek at 2012-08-30T08:40:06Z

👍 once the CS issue is fixed.

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

by rdohms at 2012-08-30T09:23:57Z

Could swear that was the CS in PSR-1 or 2, anyway, fixed.

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

by fabpot at 2012-08-30T09:26:07Z

Can you squash your commits before I merge? Thanks.

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

by rdohms at 2012-08-30T09:54:26Z

@fabpot done.
2012-08-30 12:00:56 +02:00
Rafael Dohms
7503ec954f Issue #5307: HTML regexp when match is false
When match is false the html5 validation regexp should be either inverted or not added.
Since we are in RC added a fix where this is not added, but marked a @todo so that this
can be revisited and we try to inverse the regexp instead.
2012-08-30 11:53:07 +02:00
Marcel Beerta
e271b176b8 Remove the string optimization since it causes no real performance gain but increases generation time of the
dumped PHP Container
2012-08-30 11:00:05 +02:00
Fabien Potencier
03f34a9765 merged branch mpiecko/master (PR #5280)
Commits
-------

58ebd1b [Form] Fixed error bubbling from DateTime widget - Issue #5270
8ea1607 Update src/Symfony/Component/Form/Extension/Core/Type/DateTimeType.php

Discussion
----------

[Form] Fixed error bubbling from DateTime widget - Issue #5270

This is related to https://github.com/symfony/symfony/issues/5270

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

by mpiecko at 2012-08-16T19:37:45Z

Travisbot shows something like this in it's log:

    [Composer\Downloader\TransportException] The "http://nodeload.github.com/phingofficial/phing/zipball/2.4.12" file could not be downloaded (HTTP/1.1 500 Internal Server Error)

So is it my PR ot Travis CI who fails ... ? I saw this error in some other PR's ...

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

by stloyd at 2012-08-16T20:40:39Z

It's GitHub =)

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

by mpiecko at 2012-08-17T09:36:31Z

Bad GitHub :)

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

by bschussek at 2012-08-17T11:21:39Z

Could you please add a test to DateTimeTypeTest?

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

by mpiecko at 2012-08-17T12:23:40Z

Sure!

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

by bschussek at 2012-08-30T08:20:08Z

👍
2012-08-30 10:23:27 +02:00
Fabien Potencier
548db6dfcd fixed typo 2012-08-30 09:43:00 +02:00
Fabien Potencier
2da2a44382 merged branch Tobion/strictrequirements (PR #5181)
Commits
-------

0706d18 [Routing] fixed 4 bugs in the UrlGenerator

Discussion
----------

[Routing] UrlGenerator: fixed missing query param and some ignored requirements

This was pretty hard to figure out. I could fix 4 bugs and refactor the code to safe 2 variables and several assignments. Sorry for doing this in one commit, but they were highly interdependent.
See the added tests for what was fixed. The most obvious bug was that a query param was ignored if it had by accident the same name as a default param (but wasn't used in the path).
In 3 cases it generated the wrong URL that wouldn't match this route. The generator wrongly ignored either the requirements or the passed parameter. I had to adjust one test that was asserting something wrong (see comments).

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

by Tobion at 2012-08-13T14:22:35Z

ping @fabpot

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

by Tobion at 2012-08-29T17:53:07Z

@fabpot I think it's important to merge this before 2.1 final.
2012-08-30 09:34:36 +02:00
Fabien Potencier
58855475c6 [HttpFoundation] added missing property declarations (refs #5379) 2012-08-30 09:11:02 +02:00
Fabien Potencier
24ae90deee merged branch Baachi/test-refactoring (PR #5379)
Commits
-------

f2d8a8a Refactor the unit test for the "MongoDbSessionHandler"

Discussion
----------

[HttpFoundation] Refactor the unit test for the "MongoDbSessionHandler"

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

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

by drak at 2012-08-29T19:49:49Z

Big +1 from me. Exactly how these kind of tests should be written.
2012-08-30 09:10:05 +02:00
DerManoMann
cf4189bdaf Move remember me ResponseListener from security bundle into security component
This move allows to implement the remember me feature in Silex without having to reference the security bundle.
2012-08-30 11:15:49 +12:00
Markus Bachmann
f2d8a8a85b Refactor the unit test for the "MongoDbSessionHandler" 2012-08-29 21:23:32 +02:00
Fabien Potencier
ecab04c38d merged branch Tobion/formexception (PR #5337)
Commits
-------

eb2eba1 [Form] don't allow users to force exceptions by submitting unexpected data

Discussion
----------

[Form] don't allow users to force exceptions by submitting unexpected data

fix #5334

This makes it more fault-tolerant by simply ignoring wrong stuff from hackers.

@bschussek: I didn't find any other UnexpectedTypeExceptions that could be invoked by simply submitting unexpected data. But I'm not 100% sure that there aren't any indirectly invokeable, e.g. in some listeners.

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

by stof at 2012-08-24T22:34:52Z

a test is missing for this.

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

by Tobion at 2012-08-24T23:02:26Z

@stof true, I will add one

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

by Tobion at 2012-08-25T13:51:23Z

Added test.

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

by bschussek at 2012-08-29T11:07:37Z

👍

Could you please squash the commits?

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

by Tobion at 2012-08-29T13:43:52Z

Done.
2012-08-29 15:48:30 +02:00
Tobias Schultze
eb2eba17e3 [Form] don't allow users to force exceptions by submitting unexpected data
this makes it more fault-tolerant by simply ignoring wrong stuff from hackers

[Form] added test to ensure binding of wrong data is ignored
2012-08-29 15:43:26 +02:00
Fabien Potencier
e49fd8fd0a merged branch Tobion/formincon (PR #5355)
Commits
-------

7e8ab54 [Form] raise OutOfBoundsException instead of InvalidArgumentException for inexistent form childs to be in line with PropertyPath

Discussion
----------

[Form] raise OutOfBoundsException instead of InvalidArgumentException in Form::get

BC break: yes

Raise OutOfBoundsException instead of InvalidArgumentException in Form::get for inexistent form childs to be in line with PropertyPath, which also uses OutOfBoundsException for invalid indexes. OutOfBoundsException fits much better as it extends RuntimeException instead of LogicException and this error can typically not be detected at compile time.

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

by bschussek at 2012-08-29T11:01:01Z

👍

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

by stloyd at 2012-08-29T11:07:51Z

Shouldn't this change be noted in upgrade file ?

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

by stof at 2012-08-29T11:23:04Z

it should (and in the changelog of the component)
2012-08-29 13:46:44 +02:00
Fabien Potencier
deb41a10de merged branch Tobion/formguess (PR #5361)
Commits
-------

e7e39e0 [Form] refactor Guess
dcbeeb1 [Form] replaced UnexpectedValueException by InvalidArgumentException in Guess

Discussion
----------

[Form] replaced UnexpectedValueException by InvalidArgumentException in Guess

BC break: yes

this is a better fit because the error is a logic exception (that can be detected at compile time, i.e. when writing the code) instead of a runtime exception

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

by bschussek at 2012-08-29T10:51:54Z

👍
2012-08-29 13:44:34 +02:00
Fabien Potencier
77a47d362c merged branch Tobion/formhasparent (PR #5360)
Commits
-------

0186731 [Form] removed hasParent from FormInterface and deprecated its use

Discussion
----------

[Form] removed hasParent from FormInterface and deprecated its use

There are already 2 alternatives with getParent() and isRoot(), so a third one with similar semantics is confusing and unneeded.

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

by bschussek at 2012-08-29T11:11:11Z

👍
2012-08-29 13:43:39 +02:00
Fabien Potencier
0e9156dd34 merged branch Tobion/formrefactor (PR #5338)
Commits
-------

492c990 [Form] optimized PropertyPathMapper to invoke the expensive property path less often
47a8bbd [Form] optimized the binding of child forms and calculation of extra data
8d45539 [Form] refactor Form::bind to save 7 assignments

Discussion
----------

[Form] refactor Form::bind to save 7 assignments and a complete loop

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

by stof at 2012-08-24T23:45:18Z

the new code is not equivalent. See travis for the proof.

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

by Tobion at 2012-08-25T01:50:41Z

@stof fixed, I had to reduce the refactoring a little

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

by bschussek at 2012-08-29T11:05:52Z

👍
2012-08-29 13:43:12 +02:00
Fabien Potencier
867e31ca39 merged branch Tobion/formhaserrors (PR #5356)
Commits
-------

d5eb4f7 [Form] fix phpdoc of Form::hasErrors
5cb8264 [Form] deprecated Form::hasErrors that isn't part of the Interface

Discussion
----------

[Form] deprecated Form::hasErrors that isn't part of the Interface

This method is not part of FormInterface, so I deprecated it as it cannot be used reliably. This is consistent with other hassers that were deprecated like `hasChildren` where one should use `count` instead.

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

by stof at 2012-08-26T19:11:19Z

You should deprecate it, not remove it

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

by Tobion at 2012-08-26T19:17:35Z

oh right. I thought it was added in 2.1 and thus can be removed but it's also in 2.0.
Done.

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

by bschussek at 2012-08-29T11:00:32Z

👍
2012-08-29 13:42:45 +02:00
Fabien Potencier
003f8c59c3 merged branch Tobion/formparent (PR #5357)
Commits
-------

30c1457 [Form] fixed Form::setParent(null)
214f0de [Form] added test with null parent

Discussion
----------

[Form] fixed Form::setParent(null)

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

by bschussek at 2012-08-29T10:58:20Z

👍
2012-08-29 13:42:13 +02:00
Fabien Potencier
e080f5ae68 merged branch Tobion/redirectcontroller (PR #5368)
Commits
-------

3f8127c fixed '0' problem
7bec460 fixed phpdoc
4c5bfab [FrameworkBundle] non-permanent redirect should be status code 404 according to spec

Discussion
----------

[FrameworkBundle] non-permanent redirect to unknown location with 404

according to spec: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html see 410 Gone

bc break: tiny when omitting 2 parameter (I can avoid this with `func_num_args` but i think its not necessary and makes the code strange and inconsistent)
2012-08-29 12:24:19 +02:00
Fabien Potencier
0881bdeb89 merged branch Tobion/patch-7 (PR #5377)
Commits
-------

dd0403f [Routing] small refactoring in Router

Discussion
----------

[Routing] small refactoring in Router
2012-08-29 09:29:15 +02:00
Jonathan Ingram
a094f7e2a5 Add check to Store::unlock to ensure file exists
Fix indentation and shorten code
2012-08-29 16:45:40 +10:00
Tobias Schultze
dd0403f117 [Routing] small refactoring in Router 2012-08-29 09:36:18 +03:00
Daniel Gomes
f52e6dfa13 minor correction 2012-08-29 01:17:36 +01:00
Tobias Schultze
3f8127ca1a fixed '0' problem 2012-08-29 01:07:28 +02:00
Tobias Schultze
7bec46036a fixed phpdoc 2012-08-29 01:04:20 +02:00
Fabien Potencier
9f4525a614 merged branch pitiflautico/patch-1 (PR #5372)
Commits
-------

7fc8fc0 [Form] Fix double semicolon

Discussion
----------

[Form] Fix double semicolon
2012-08-28 16:00:19 +02:00
Daniel Perez Pinazo
7fc8fc0419 [Form] Fix double semicolon 2012-08-28 16:24:45 +03:00
Albert Casademont
8bac44274c [Validator] Fix Spanish and Catalan translation messages for the CSRF token validator 2012-08-28 13:55:44 +02:00
Fabien Potencier
3969011f7f [Routing] fixed a test 2012-08-28 13:06:09 +02:00
Fabien Potencier
e35b4d8afe bumped Symfony version to 2.1.0-DEV 2012-08-28 10:43:50 +02:00
Fabien Potencier
462f93ad12 bumped Symfony version to 2.0.18-DEV 2012-08-28 10:43:15 +02:00
Fabien Potencier
39606c8c3f updated VERSION for 2.1.0-RC2 2012-08-28 10:00:18 +02:00
Fabien Potencier
a6bc12c9c1 Merge branch '2.0'
* 2.0:
  updated VERSION for 2.0.17
  updated CHANGELOG for 2.0.17
  updated vendors for 2.0.17
  fixed XML decoding attack vector through external entities
  prevents injection of malicious doc types
  disabled network access when loading XML documents
  refined previous commit
  prevents injection of malicious doc types
  standardized the way we handle XML errors
  Redirects are now absolute

Conflicts:
	CHANGELOG-2.0.md
	src/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php
	src/Symfony/Component/DomCrawler/Crawler.php
	src/Symfony/Component/HttpKernel/Kernel.php
	tests/Symfony/Tests/Component/DependencyInjection/Loader/XmlFileLoaderTest.php
	tests/Symfony/Tests/Component/Routing/Loader/XmlFileLoaderTest.php
	tests/Symfony/Tests/Component/Serializer/Encoder/XmlEncoderTest.php
	tests/Symfony/Tests/Component/Translation/Loader/XliffFileLoaderTest.php
	tests/Symfony/Tests/Component/Validator/Mapping/Loader/XmlFileLoaderTest.php
	vendors.php
2012-08-28 09:54:42 +02:00
Fabien Potencier
348babccba updated VERSION for 2.0.17 2012-08-28 09:05:44 +02:00
Fabien Potencier
5bf4f92e86 fixed XML decoding attack vector through external entities 2012-08-28 08:43:14 +02:00
Fabien Potencier
4e0c99211d prevents injection of malicious doc types 2012-08-28 08:43:14 +02:00
Fabien Potencier
47fe725bd4 disabled network access when loading XML documents 2012-08-28 08:43:14 +02:00
Fabien Potencier
c896d71594 refined previous commit 2012-08-28 08:43:14 +02:00
Johannes M. Schmitt
a2a6cdca8d prevents injection of malicious doc types 2012-08-28 08:43:14 +02:00
Fabien Potencier
865461d204 standardized the way we handle XML errors 2012-08-28 08:43:14 +02:00
Thorsten Hallwas
352e8f583c Redirects are now absolute
According to w3c locations need to be absolute:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.30
2012-08-28 08:40:05 +02:00
Tobias Schultze
7e8ab546e4 [Form] raise OutOfBoundsException instead of InvalidArgumentException for inexistent form childs to be in line with PropertyPath 2012-08-28 08:29:12 +02:00
Tobias Schultze
0186731cca [Form] removed hasParent from FormInterface and deprecated its use
There are already 2 alternatives with getParent() and isRoot(), so a third one with similar semantics is confusing and unneeded.
2012-08-28 08:23:10 +02:00
Tobias Schultze
e7e39e04e3 [Form] refactor Guess 2012-08-28 08:15:57 +02:00
Tobias Schultze
dcbeeb1df7 [Form] replaced UnexpectedValueException by InvalidArgumentException in Guess
this is a better fit because the error is a logic exception instead of a runtime exception
2012-08-28 08:15:56 +02:00
Tobias Schultze
4c5bfab058 [FrameworkBundle] non-permanent redirect should be status code 404 according to spec 2012-08-28 08:03:23 +02:00
Fabien Potencier
c0590bfd7c merged branch eventhorizonpl/100pc_symfony_component_class_loader_p2 (PR #5330)
Commits
-------

f1970fa dump test

Discussion
----------

Symfony\Component\ClassLoader\ClassMapGenerator dump test

Hi,

100 percent test coverage for ClassMapGenerator  :)

Best regards,
Michal

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

by eventhorizonpl at 2012-08-24T07:47:24Z

Fixed, thanks for the review!
2012-08-28 07:39:30 +02:00
Fabien Potencier
66a060defd merged branch Tobion/formdoc (PR #5350)
Commits
-------

83dc966 [Form] Fixed some PHPDoc
596bbb1 [Form] fixed FormConfigBuilder to use PropertyPathInterface
a523823 [Form] fixed and added phpDoc

Discussion
----------

[Form] fixed and added phpDoc

[ci skip]

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

by sstok at 2012-08-26T08:11:01Z

Some descriptions don''t seem to be properly aligned, use the CS-fixer.

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

by Tobion at 2012-08-26T17:02:25Z

@sstok This is more about manual fixes concerning forgotten exceptions or wrong data type. The cs fixer gives many false positives and can be applied later.
2012-08-28 07:38:26 +02:00
Pascal Borreli
83dc966f1c [Form] Fixed some PHPDoc 2012-08-27 18:33:44 +02:00
Tobias Schultze
596bbb1327 [Form] fixed FormConfigBuilder to use PropertyPathInterface 2012-08-27 18:33:44 +02:00
Tobias Schultze
a52382344d [Form] fixed and added phpDoc 2012-08-27 18:33:43 +02:00
Michal Piotrowski
f1970fa5a3 dump test
fix things pointed out by stof

fix things pointed out by pborreli

fix things pointed out by fabpot
2012-08-27 17:51:49 +02:00
Tobias Schultze
e2a50ef4bc [OptionsResolver] fix normalizer without corresponding option 2012-08-27 05:42:35 +02:00
Tobias Schultze
5a53821ca3 [OptionsResolver] fix removing normalizers 2012-08-27 05:42:35 +02:00
Tobias Schultze
d5eb4f730b [Form] fix phpdoc of Form::hasErrors 2012-08-26 21:37:25 +02:00
Tobias Schultze
5cb82648ad [Form] deprecated Form::hasErrors that isn't part of the Interface 2012-08-26 21:36:52 +02:00
Tobias Schultze
30c145775d [Form] fixed Form::setParent(null) 2012-08-26 21:21:27 +02:00
Tobias Schultze
214f0de6e9 [Form] added test with null parent 2012-08-26 21:21:26 +02:00
Jordi Boggiano
7b63428698 [Process] Add workaround for PHP's internal sigchild failing to return proper exit codes 2012-08-26 15:13:51 +02:00
Fabien Potencier
2c0e851059 merged branch vitaliytv/master (PR #5352)
Commits
-------

1f95b1e [Validator] updated Ukrainian translation of messages

Discussion
----------

[Validator] updated Ukrainian translation of messages
2012-08-26 13:03:16 +02:00
vitaliytv
1f95b1e8f7 [Validator] updated Ukrainian translation of messages 2012-08-26 13:55:38 +03:00
Fabien Potencier
c29edb5e2e merged 2.0 2012-08-26 11:32:04 +02:00
Fabien Potencier
71732b1ec7 merged branch bdmu/ticket_5345 (PR #5346)
Commits
-------

85a53c1 [FrameworkBundle] fixed *FrameworkExtensionTest::testTranslator fail on Windows on master branch

Discussion
----------

[FrameworkBundle] fixed *FrameworkExtensionTest::testTranslator fail on Windows on master branch

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5345
Todo: -
License of the code: MIT
Documentation PR:
fixed using some
str_replace('/', DIRECTORY_SEPARATOR, <value>)
so it works on Windows because it replaces the / in \ and shouldn't affect linux based OS, since it will replace / with /.

Not very nice, but it works, if anyone wants to do better, he/she is most welcome.
2012-08-26 11:11:06 +02:00
Fabien Potencier
f8f4408eba merged branch 1ed/hungarian-validator-messages (PR #5348)
Commits
-------

4af877b [Validator] updated hungarian translation of messages

Discussion
----------

[Validator] updated hungarian translation of messages
2012-08-26 10:59:46 +02:00
Tobias Schultze
492c99073b [Form] optimized PropertyPathMapper to invoke the expensive property path less often 2012-08-26 08:43:27 +02:00
Gábor Egyed
4af877b532 [Validator] updated hungarian translation of messages 2012-08-26 00:39:15 +02:00
Christophe L
85a53c1ec9 [FrameworkBundle] fixed *FrameworkExtensionTest::testTranslator fail on Windows on master branch 2012-08-26 00:54:18 +04:00
Fabien Potencier
bef34bda67 merged branch Tobion/patch-2 (PR #5240)
Commits
-------

9e5d5a4 [Form] fix static method call

Discussion
----------

[Form] fix static method call

`allowDataWalking` was called statically, but wasnt defined as such.
2012-08-25 19:04:51 +02:00
Fabien Potencier
d1be451996 merged branch willdurand/fix-composer-components (PR #5318)
Commits
-------

933e821 Add minimum-stability (dev) in each component

Discussion
----------

Add minimum-stability (dev) in each component

This fixes the ability to run the test suite in each component if a `composer install` is needed.

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

by stof at 2012-08-22T13:57:14Z

If you really want to run the testsuite standalone, some dev requirements are missing (SecurityBundle needs the FrameworkBundle for its functional tests for instance). If you have some time to check the missing dev requirement, it would be great.
Anyway, 👍 for this

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

by willdurand at 2012-08-22T13:59:15Z

Yes I already did that once. I'll try to fix more components later.

On Wed, Aug 22, 2012 at 3:57 PM, Christophe Coevoet <
notifications@github.com> wrote:

> If you really want to run the testsuite standalone, some dev requirements
> are missing (SecurityBundle needs the FrameworkBundle for its functional
> tests for instance). If you have some time to check the missing dev
> requirement, it would be great.
> Anyway, [image: 👍] for this
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/symfony/symfony/pull/5318#issuecomment-7934886>.
>
>

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

by stof at 2012-08-22T14:02:23Z

Well, I think most components should be good now (as some work has been done on them). But the bridges and bundles may need some work (bundles were not having any dev requirements until yesterday when @guilhermeblanco added some on FrameworkBundle)

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

by pborreli at 2012-08-22T14:14:00Z

what about having for each READ-ONLY repo his own .travis.yml and travisci hook activated ?

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

by fabpot at 2012-08-22T14:30:13Z

please, don't add more travis files. The main already tests everything, and that's all we need.

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

by stof at 2012-08-22T14:33:46Z

@pborreli tests should not be different for subtree split repos as the code is the same and the tests are the same (except that more tests could be skipped because of missing deps).
Note that for the bundles, it is likely to be different currently as I think some skip tests are missing (just like dev requirements are). But fixing this does not require enablign travis.

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

by pborreli at 2012-08-22T14:42:30Z

ok, i was just thinking about a way to be sure each component is usable individually but yeah that would require to relaunch each tests and add a bunch of travis files + hook

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

by hason at 2012-08-24T13:12:04Z

@stof, @eriksencosta, @fabpot: Tests are different for Locale component, see #5235

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

by stof at 2012-08-24T13:35:07Z

@hason no. You also need to do it when running the tests of the Locale component as part of the full run.
2012-08-25 19:03:43 +02:00
Fabien Potencier
b5517b2f1c merged branch eventhorizonpl/100pc_symfony_component_class_loader (PR #5329)
Commits
-------

8c74b55 getNamespaces test

Discussion
----------

100pc symfony component class loader

Hi,

I added some tests for Symfony\Component\ClassLoader\UniversalClassLoader and Symfony\Component\ClassLoader\ClassLoader.

Best regards,
Michal

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

by eventhorizonpl at 2012-08-23T20:05:02Z

Fixed. Thanks for the review!

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

by pborreli at 2012-08-24T05:11:00Z

👍

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

by fabpot at 2012-08-24T05:46:36Z

Can you squash your commits before I merge the PR? Thanks.
2012-08-25 18:59:24 +02:00
Fabien Potencier
0e9d1ea069 merged branch meandmymonkey/fluent-validatorbuilder (PR #5328)
Commits
-------

1ff081d added tests for ValidatorBuilder fluent interface
fec11ae updated docblocks for ValidatorBuilderInterface
b5aaf53 added fluent interface to validatorbuilder

Discussion
----------

[Validator] Added missing fluent interface to ValidatorBuilder

The new ValidatorBuilder class seems to be intended to have a fluent interface, reasoning:

- Static Validation::createValidatorBuilder() method exists
- Consistency with other builders in the framework
- Component README actually uses fluent interface for examples.

This was not implemented though. This PR adds the fluent interface.

BC Break: No
Symfony2 Tests Pass: Yes

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

by henrikbjorn at 2012-08-23T09:47:35Z

Could you add a test for this? :)

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

by bschussek at 2012-08-23T12:04:12Z

Great, thanks! 👍

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

by meandmymonkey at 2012-08-23T12:30:40Z

@henrikbjorn Yes, will do.

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

by meandmymonkey at 2012-08-25T16:21:37Z

@henrikbjorn done
2012-08-25 18:51:05 +02:00
Andreas Hucks
1ff081d93f added tests for ValidatorBuilder fluent interface 2012-08-25 18:16:50 +02:00
Tobias Schultze
47a8bbdada [Form] optimized the binding of child forms and calculation of extra data 2012-08-25 16:01:45 +02:00
Tobias Schultze
8d45539eac [Form] refactor Form::bind to save 7 assignments 2012-08-25 03:46:40 +02:00
Shin
472dfdc46a oops, the command with name, too 2012-08-24 23:41:40 +09:00
Shin
b1a9587ea7 fixed bug related to the change PR #5326 2012-08-24 23:33:39 +09:00
Michal Piotrowski
8c74b55a27 getNamespaces test
getPrefixes test

loadClass test

getPrefixes test

addPrefix test

getFallbackDirs test

fix things pointed out by stof
2012-08-24 09:33:45 +02:00
Andreas Hucks
fec11aec01 updated docblocks for ValidatorBuilderInterface 2012-08-23 11:12:01 +02:00
Andreas Hucks
b5aaf534ab added fluent interface to validatorbuilder 2012-08-23 11:11:32 +02:00
Tobias Schultze
4f57d69789 [Routing] removed cyclic reference Route<->CompiledRoute 2012-08-23 10:21:02 +02:00
Andreas Hucks
7734fdfeda removed deprecated examples from doc 2012-08-22 18:47:48 +02:00
Fabien Potencier
3a147340f8 merged branch bschussek/issue5221 (PR #5319)
Commits
-------

a38232a [Form] Fixed: FormTypeInterface::getParent() supports returning FormTypeInterface instances again

Discussion
----------

[Form] Fixed: FormTypeInterface::getParent() supports returning FormTypeInterface instances again

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5221
Todo: -

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

by stof at 2012-08-22T14:14:55Z

the return value of the getParent method should be updated in the phpdoc of the FormTypeInterface to mention the FormTypeInterface .And the description of the method should be updated to explain than returning an instance is discouraged as it implies a performance penalty and does not support using type extensions (if the comment in the factory also applies to the unregistered parent)

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

by henrikbjorn at 2012-08-22T14:22:00Z

Wasn't TypeExtensions supported before? This means that Csrf will not be applied?

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

by stof at 2012-08-22T14:23:50Z

@henrikbjorn the csrf extension is targeting the FormType, which is registered in the form registry. What is not supported is having a type extension targeting an unregistered type

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

by bschussek at 2012-08-22T14:39:53Z

@stof Exactly. I find it a bit unlogical to register an extension for something that is not registered.

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

by henrikbjorn at 2012-08-22T14:39:57Z

Okay. That wasn't what i got from reading the comment :)

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

by bschussek at 2012-08-22T14:44:27Z

@stof Updated.
2012-08-22 17:54:47 +02:00
Fabien Potencier
2df222bd08 merged branch goohib/fix-form-component-typo (PR #5323)
Commits
-------

bca68ca Fixed a typo

Discussion
----------

Fixed a typo

The CSRF error message won't be translated due to this typo even if the translator is enabled.
2012-08-22 17:51:59 +02:00
Bernhard Schussek
a38232ae0e [Form] Fixed: FormTypeInterface::getParent() supports returning FormTypeInterface instances again 2012-08-22 16:44:02 +02:00
goohib
bca68ca605 Fixed a typo 2012-08-22 23:41:29 +09:00
William DURAND
933e821496 Add minimum-stability (dev) in each component 2012-08-22 15:48:41 +02:00
Tobias Schultze
79a1257a09 [Form] removed getPositions from PropertyPathInterface
this method was just an implementation detail (that is not even needed) and should not be part of the public API as it serves no purpose
2012-08-22 06:31:13 +02:00
Guilherme Blanco
595a9744d5 Update src/Symfony/Bundle/FrameworkBundle/composer.json 2012-08-21 13:47:47 -03:00
Fabien Potencier
173f23de34 merged branch bdmu/ticket_5233 (PR #5234)
Commits
-------

47b8538 [Filesystem] missing realpath breaking FilesystemTest class on Windows (one line of code change)

Discussion
----------

[Filesystem] missing readlink breaking FilesystemTest class on Windows

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

fix for windows plateform

$file == 'C:\Users\USERNA~1\...' before touch
$file == 'C:\Users\Username\... after the touch and readlink so it can pass following assertEquals

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

by bdmu at 2012-08-13T05:35:07Z

Hello,

Another solution may be (need to test it) to add
    $this->workspace = realpath($this->workspace);
line 36, after the
    mkdir($this->workspace, 0777, true);
in the setup method

Regards,
Christophe
2012-08-21 15:33:05 +02:00
Sergey Linnik
630d16b8c7 small optimization 2012-08-19 00:47:48 +04:00
Jordi Boggiano
832f8dd4fe Add support for Monolog 1.2.0 2012-08-18 19:58:03 +02:00
Fabien Potencier
7fe18d13a0 merged branch mtdowling/event_dispatcher_add_iterator (PR #5268)
Commits
-------

0ad00f8 [EventDispatcher] Adding IteratorAggregate to GenericEvent

Discussion
----------

[EventDispatcher] Adding IteratorAggregate to GenericEvent

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

by drak at 2012-08-16T07:43:29Z

What is the use case for this that it should be part of the Generic event?

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

by mtdowling at 2012-08-16T17:12:28Z

This allows for the GenericEvent to be even more generic. Now listeners don't need to know an exact key from the arguments, but rather can iterate over the arguments to find what they are looking for. This makes the GenericEvent more like an array.

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

by mtdowling at 2012-08-17T19:31:04Z

How would this be a nasty break? It's just giving the GenericEvent more capabilities with IteratorAggregate.

This is a completely separate PR from the one that flipped the constructor args.

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

by schmittjoh at 2012-08-17T19:34:47Z

Why are you not just doing ``foreach ($event->getArguments() as $arg) { /** ... */ }``?

If you just have ``foreach ($event)``, to me at least it would not be so clear what we are actually iterating over.

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

by mtdowling at 2012-08-17T19:39:23Z

This class already has ArrayAccess. If you're already using this class like an array, then I think you should expect to be able to iterate it like an array. I'm just finishing that concept off by implementing IteratorAggregate.

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

by schmittjoh at 2012-08-17T19:47:43Z

Indeed, if we already have ArrayAccess which we probably don't want to remove again, then that seems reasonable.
2012-08-18 10:28:12 +02:00
Fabien Potencier
1f37191938 merged branch Marmelatze/var_dump (PR #5291)
Commits
-------

9c20634 fixes pre for var_dump with xdebug

Discussion
----------

Displaying var_dump with xdebug in exceptions

When debugging code I often use `var_dump` to quickly look into variables. Since 2.1 alle output generated by `var_dump` is displayed in one line. http://screencast.com/t/11LuIlIdHsvP
It seems to be no problem for small objects, but it becomes a real pain when displaying huge arrays or objects.

This is caused by the changed word-wrapping for the pre tag introduced in #3827

With fix: http://screencast.com/t/GdA3dkpWxU

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

by dlsniper at 2012-08-17T17:22:38Z

👍
2012-08-18 10:25:33 +02:00
Fabien Potencier
df889fb28b merged branch drak/nullhandler (PR #5290)
Commits
-------

8e11aaa [FrameworkBundle] Allow to set null for the handler in NativeSessionStorage

Discussion
----------

[FrameworkBundle] Allow to set null for the handler in NativeSessionStorage

Bug fix: no
Feature addition: yes (ok for RC)
Backwards compatibility break: yes
Symfony2 tests pass: yes
Fixes the following tickets: 5267
Todo: ~
License of the code: MIT
Documentation PR: ~

Refs #5267

Adds the following configuration

```
session:
        handler_id: ~
```

Which allows the configuration of the session not to use any save handler and therefor just use whatever save_handler is set in `php.ini`

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

by dlsniper at 2012-08-17T17:24:37Z

👍
2012-08-18 10:24:48 +02:00
Michael Piecko
58ebd1bb83 [Form] Fixed error bubbling from DateTime widget - Issue #5270 2012-08-17 19:39:57 +02:00
Florian Pfitzer
9c20634297 fixes pre for var_dump with xdebug 2012-08-17 18:39:39 +02:00
Drak
8e11aaa2f2 [FrameworkBundle] Allow to set null for the handler in NativeSessionStorage 2012-08-17 17:38:35 +01:00
Bilal Amarni
bd9319bd6e added a missing phpdoc param 2012-08-17 13:01:11 +03:00
Fabien Potencier
d3625b0c2b merged branch Tobion/headerbag (PR #5282)
Commits
-------

ccb6dad [HttpFoundation] fixed undefined offset for assoc arrays in HeaderBag

Discussion
----------

[HttpFoundation] fixed undefined offset for assoc arrays in HeaderBag

`get` is assuming the headers are zero-indexed. So something like this would otherwise create a php warning.
```
$bag->set('foo', array('bad-assoc-index' => 'value'));
$this->assertSame('value', $bag->get('foo'));
```
2012-08-17 10:18:18 +02:00
Fabien Potencier
71d2301726 merged branch Tobion/patch-3 (PR #5276)
Commits
-------

bdaa877 [HttpFoundation] fix #5271 (duplicated header in JsonResponse)

Discussion
----------

fix JsonResponse: duplicate header

fix #5271

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

by Tobion at 2012-08-16T16:50:04Z

Will look into the failing test later.

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

by Tobion at 2012-08-16T23:55:45Z

Finished.
2012-08-17 10:16:33 +02:00
Tobias Schultze
ccb6dad09a [HttpFoundation] fixed undefined offset for assoc arrays in HeaderBag 2012-08-17 02:19:35 +02:00
Tobias Schultze
bdaa8774af [HttpFoundation] fix #5271 (duplicated header in JsonResponse) 2012-08-17 01:52:46 +02:00
Michael Piecko
8ea1607991 Update src/Symfony/Component/Form/Extension/Core/Type/DateTimeType.php 2012-08-16 21:12:31 +03:00
Fabien Potencier
6d740314c5 merged branch bschussek/issue5144 (PR #5278)
Commits
-------

0add23f [Form] Reintroduced the option "invalid_message_parameters"

Discussion
----------

[Form] Reintroduced the option "invalid_message_parameters"

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5144
Todo: -
2012-08-16 20:05:46 +02:00
Bernhard Schussek
0add23f8d6 [Form] Reintroduced the option "invalid_message_parameters" 2012-08-16 19:22:27 +02:00
Bernhard Schussek
3ad3876ff8 [Form] Fixed support for preferred choices in "entity" type 2012-08-16 18:19:53 +02:00
Michael Dowling
0ad00f8a56 [EventDispatcher] Adding IteratorAggregate to GenericEvent 2012-08-15 14:38:32 -07:00
Fabien Potencier
50df1a72aa merged branch guilhermeblanco/redis_support (PR #5224)
Commits
-------

493aa12 Added support to redis, wincache and zend data cache.

Discussion
----------

Added support to redis, wincache and zend data cache.

These three drivers were missing support on DoctrineBundle.

DoctrineBundle PR https://github.com/doctrine/DoctrineBundle/pull/99 must be merged first

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

by stof at 2012-08-09T20:35:21Z

This looks good to me
2012-08-15 19:23:23 +02:00
Fabien Potencier
d4d368f970 merged branch gimler/patch-3 (PR #5256)
Commits
-------

a7b4573 add format to exception message

Discussion
----------

add format to exception message
2012-08-15 19:22:38 +02:00
Fabien Potencier
82902e6ecc merged branch myurasov/patch-1 (PR #5261)
Commits
-------

ac0fb48 0x02 -> \MongoBinData::BYTE_ARRAY
70a64bd MongoBinData constructor now require "type" parameter

Discussion
----------

MongoBinData constructor now requires "type" parameter

From mongo driver version 1.2.11 E_DEPRECATED is emitted when the 2nd argument (type) is not used for MongoBinData constructor. At the moment the default value is 0x02 ("byte array").

See: http://php.net/manual/en/mongobindata.construct.php
2012-08-15 19:21:07 +02:00
Julien 'ruian' Galenski
524081f4cf fix CS into Finder
fix CS into Finder
2012-08-15 13:32:42 +03:00
Mikhail Yurasov
ac0fb48496 0x02 -> \MongoBinData::BYTE_ARRAY 2012-08-14 23:38:12 -07:00
Mikhail Yurasov
70a64bd7cf MongoBinData constructor now require "type" parameter
From mongo driver version 1.2.11 E_DEPRECATED is emitted when the 2nd argument (type) is not used for MongoBinData constructor. At the moment the default value is 0x02 ("byte array").

See: http://php.net/manual/en/mongobindata.construct.php
2012-08-14 10:56:22 -07:00
Fabien Potencier
826f5122e9 Revert "merged branch guilhermeblanco/patch-6 (PR #4456)"
This reverts commit 6c527b6282, reversing
changes made to 223d187abc.
2012-08-14 19:34:30 +02:00
Gordon Franke
a7b4573a69 add format to exception message 2012-08-14 16:38:05 +02:00
Benjamin Eberlei
1b5ad1736d Revert "Removed MySQL-exclusive usage of unsigned integer from table creation"
This reverts commit 57694aaa94.

The problem is underlying in Doctrine DBAL change tracking and should
either be fixed or ignored there.
2012-08-14 08:02:38 +02:00
Fabien Potencier
fa4f9f58ff merged branch daFish/fixes/issue5108 (PR #5247)
Commits
-------

57694aa Removed MySQL-exclusive usage of unsigned integer from table creation

Discussion
----------

[Security] Removed MySQL-exclusive usage of unsigned integer from table creation

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5108

This patch removes the setting of unsigned integer fields which are MySQL-only.

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

by fabpot at 2012-08-13T12:25:23Z

@beberlei Does it look good?

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

by travisbot at 2012-08-13T12:30:27Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2107738) (merged 57694aaa into 31536c36).

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

by lsmith77 at 2012-08-13T20:04:20Z

indeed afaik unsigned isnt part of the sql standard. in other RDBMS you need to use a constraint if you want to prevent negative values and of course there is no way to then also get the additional values per bit that you get with MySQL, but so it goes. that being said .. i dont know how Doctrine schema handles unsigned for other RDBMS .. ie if it just emulates them by trying to double the size with a constraint.

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

by beberlei at 2012-08-13T20:10:44Z

Looks good.

Doctrine ignores the 'unsigned' => true for all others vendors.
2012-08-13 22:15:47 +02:00
Grayson Koonce
b7caf374bf Adding more specific debug bar reset CSS.
This prevents frameworks like Foundation from getting past the reset.

Fixes #5250
2012-08-13 12:02:28 -07:00
Christophe L
47b8538edd [Filesystem] missing realpath breaking FilesystemTest class on Windows (one line of code change) 2012-08-13 20:33:11 +04:00
daFish
57694aaa94 Removed MySQL-exclusive usage of unsigned integer from table creation 2012-08-13 14:02:41 +02:00
Massimiliano Arione
f248e0c33d Update src/Symfony/Component/Validator/Resources/translations/validators.it.xlf
fixed typo in Italian translation
2012-08-13 14:18:03 +03:00
Tobias Schultze
9e5d5a4763 [Form] fix static method call 2012-08-11 00:52:54 +03:00
Fabien Potencier
31536c36ec merged 2.0 2012-08-10 13:48:23 +02:00
Fabien Potencier
ee572b34cf merged branch hidenorigoto/fix-di-phpdumper (PR #5194)
Commits
-------

1a4a4ee [DependencyInjection] Fixed a frozen constructor of a container with no parameters
2a124bc [DependencyInjection] Added a test for a frozen constructor of a container with no parameters

Discussion
----------

[DependencyInjection] Fix PHP Dumper for a constructor of a frozen container with no parameters

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

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

by travisbot at 2012-08-06T16:51:20Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2049206) (merged 1a4a4ee9 into 3d32a0bc).
2012-08-10 12:39:41 +02:00
Fabien Potencier
268b618bfe merged branch lyrixx/console-typo (PR #5208)
Commits
-------

039264d [Console] Fixed tests about message exception when command is not available
a4d2d31 [Console] Added tests for message exception when command is not available

Discussion
----------

[Console] Fixed message exception when command is not avaible

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

Fixed singular / plural
`Did you mean this?` VS `Did you mean one of these`

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

by travisbot at 2012-08-07T14:40:55Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2057647) (merged 039264d2 into b91a4a83).

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

by lyrixx at 2012-08-07T15:11:47Z

@travisbot You failed, not me !
2012-08-10 12:37:27 +02:00
Fabien Potencier
1122be7d27 merged branch bamarni/patch-4 (PR #5207)
Commits
-------

5ad75c7 updated method name in a comment

Discussion
----------

updated method name in a comment

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

by travisbot at 2012-08-07T14:35:39Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2057604) (merged 5ad75c71 into b91a4a83).
2012-08-10 12:37:02 +02:00
Fabien Potencier
1c314677d6 merged branch drak/nativefiletest (PR #5230)
Commits
-------

fa93324 [HttpFoundation] Fixed test under Windows environment

Discussion
----------

[HttpFoundation] Fixed test under Windows environment

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

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

by travisbot at 2012-08-10T09:54:20Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2084750) (merged fa933247 into dd9afddf).
2012-08-10 12:32:50 +02:00
Drak
fa93324791 [HttpFoundation] Fixed test under Windows environment 2012-08-10 10:43:07 +01:00
Guilherme Blanco
493aa12f99 Added support to redis, wincache and zend data cache. 2012-08-09 15:02:27 -04:00
Fabien Potencier
ef2c5bc18a merged branch drak/session_clean (PR #5211)
Commits
-------

22be499 [HttpFoundation][Session] Cleaned up constructor invokation

Discussion
----------

[HttpFoundation][Session] Cleaned up constructor invokation

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: ~

This simply cleans up a mismatch between the class instantiation and the actual class constructor. Evidently something left over from the various iterations.

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

by travisbot at 2012-08-07T19:16:14Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2060028) (merged 22be4993 into 7dbadbf2).

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

by drak at 2012-08-09T08:25:43Z

ping @fabpot
2012-08-09 17:28:16 +02:00
Florin Patan
0677ed77b2 [Validator] Updated Romanian translations 2012-08-09 00:33:58 +03:00
Jordan Alliot
92e10a87ac Updated HttpFoundation and Locale for proper Composer autoloading 2012-08-08 23:02:46 +02:00
Niklas Fiekas
2f7bbbfec1 [HttpFoundation] Added BinaryFileResponse. 2012-08-08 17:25:51 +02:00
Drak
22be49932f [HttpFoundation][Session] Cleaned up constructor invokation 2012-08-07 19:53:41 +01:00
Kris Wallsmith
c51fc105f4 avoid fatal error on invalid session 2012-08-07 14:21:04 -04:00
Eriksen Costa
33105e08d7 [Locale] added more information to the README.md regarding the need to build the ICU data when the intl extension ICU data version mismatch the one shipped with Symfony 2012-08-07 12:17:03 -03:00
Eriksen Costa
3191c704a1 [Validator] fixed tests, ICU 4.4 (Travis version) does not have the "my" locale 2012-08-07 12:17:03 -03:00
Eriksen Costa
d7b6bb32e6 [Locale] updated README.md 2012-08-07 12:17:03 -03:00
Eriksen Costa
6456361878 [Locale] added note about ICU data building: use the same PHP intl/ICU version as the desired version to build 2012-08-07 12:17:03 -03:00
Eriksen Costa
025f972973 [Locale] renamed function 2012-08-07 12:17:02 -03:00
Eriksen Costa
8da99ca67a [Locale] updated CHANGELOG.md 2012-08-07 12:17:02 -03:00
Eriksen Costa
d909360942 [Locale] don't create a "current" directory anymore, uses only the ICU version as the name of the data directory 2012-08-07 12:17:02 -03:00
Eriksen Costa
3f2b4bf344 [Locale] changed build data script name 2012-08-07 12:17:02 -03:00
Eriksen Costa
61e353942e [Form][Locale] updated minimum ICU version to 4.0 2012-08-07 12:17:01 -03:00
Eriksen Costa
0d442c7653 [Locale] as of ICU 4.8+, slash ("/") and dash ("-") are interchangeable, you can use any of them in a date/time pattern 2012-08-07 12:17:01 -03:00
Eriksen Costa
90d6dc3791 [Locale] fixed tests 2012-08-07 12:17:00 -03:00
Eriksen Costa
5fd4eb1c3a [Locale] updated ICU data paths 2012-08-07 12:17:00 -03:00
Eriksen Costa
64ccee7f98 [Locale] updated ICU data 2012-08-07 12:16:59 -03:00
Eriksen Costa
0d0a8d4649 [Locale] updated script to generate separated data directories for different ICU releases 2012-08-07 12:16:57 -03:00
Grégoire Pineau
039264d2d2 [Console] Fixed tests about message exception when command is not available 2012-08-07 16:24:01 +02:00
Grégoire Pineau
a4d2d31a9d [Console] Added tests for message exception when command is not available
These tests fail
2012-08-07 16:24:01 +02:00
Bilal Amarni
5ad75c71f3 updated method name in a comment 2012-08-07 17:22:46 +03:00
Fabien Potencier
b91a4a8368 merged branch sun/yaml-indent (PR #5157)
Commits
-------

3e1a1ab Force the value of Dumper::setIndentation($num) to be of type integer.
5be7237 Added Yaml\Dumper::setIndentation() method to allow a custom indentation level of nested nodes.

Discussion
----------

[Yaml] Allow custom indentation level for nested nodes

YAML does not specify an absolute indentation level, but a consistent indentation of nested nodes only: http://yaml.org/spec/current.html#indentation%20space/

Projects that are generally using 2 spaces for indentation should be able to retain consistency with their coding standards by supplying a custom value for the new $indent parameter for Yaml::dump() and Dumper::dump().

The new parameter is a backwards-compatible API addition and defaults to the previous default of 4 (which was changed from 2 via PR #2242 only recently).

The old $indent parameter is renamed to $level, and remains to be used internally only.

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

by travisbot at 2012-08-03T00:24:22Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2024289) (merged 56331202 into b1618d21).

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

by travisbot at 2012-08-03T00:29:02Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2024315) (merged eeae28a4 into b1618d21).

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

by travisbot at 2012-08-03T02:41:42Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2024905) (merged 9a82c438 into b1618d21).

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

by fabpot at 2012-08-03T07:53:50Z

This is indeed a BC break as the method signature changed in a non-BC way.

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

by fabpot at 2012-08-03T08:35:51Z

I think I would prefer to have a static method to be able to change the number of spaces to use on a global basis. It makes more sense and would prevent the BC break. What do you think?

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

by sun at 2012-08-03T13:23:23Z

Thanks for your feedback! — Took some time to think through the static proposal.  Here's what I think:

1. The call from DependencyInjection\Dumper\YamlDumper truly was a unexpected/nasty surprise for me.  That is, because it passes a parameter to Yaml\Dumper that is documented for internal use only, and the surrounding YamlDumper code generally hard-codes lots of assumptions of where exactly the nodes/collections will be output in the dumped YAML structure.  (I think that code can be simplified, cleaned up, and made faster at the same time (hence the todo), but indeed, that probably belongs into a separate issue.)
1. The essential problem with a static is closely bound to that though; a static property value for the indentation would "stick" and thus hi-jack the DependencyInjection\Dumper\YamlDumper, as it hard-codes and thus expects 4 spaces (contrary to any custom indentation).
1. Most code uses Yaml\Yaml as utility/helper service directly, so there'd be no clean way to prime the static with a custom value, aside from subclassing the entire thing - in which case this entire issue would sorta become moot, because at the point you're subclassing, you can as well go the extra mile and replace the entire Yaml\Dumper::dump() to implant the custom indentation level...
1. Another option would be to use a non-static Yaml\Dumper::$indent property, supplied through the constructor; i.e.:

        public function __construct($indent = 4)

  ...or alternatively, ::setIndentation(). Essentially requiring people to use and instantiate Yaml\Dumper directly, if they want to use a custom indentation.
1. Though in the end, I don't want to sound pedantic, but I *do* wonder a bit about the exact extent of the `@api` tags, as well as `@param`s that are explicitly documented as "internal use only"... :)  That is, because only Yaml\Yaml is tagged with `@api`, but nothing in Yaml\Dumper.  The same sorta applies to DependencyInjection\Dumper\YamlDumper::dump(), which is tagged with `@api`, but the :.addService() method being adjusted accordingly here is not.  So essentially, when taking those tags (plus the param's description) seriously and in a nitpicky way, then there is no BC break, since no one should rely on their exact implementation... ;)  (I perfectly realize that this is a long shot :))

So... depending on the final stance on the last point, I'd either move forward with the current proposal in this PR.  Otherwise, I'd suggest the non-static property on Yaml\Dumper - in which case we'd likely try to swap out the static Symfony\Component\Yaml\Yaml helper with a Drupal\Component\Yaml\Yaml in order to always instantiate the dumper with the custom indentation.  What do you think?

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

by sun at 2012-08-04T22:57:21Z

Alright.  While I believe I made some good points in my last comment, I've taken the fully backwards-compatible path:

- added the new $indent parameter only to Yaml::dump()
- added a new Dumper::$intendation property and Dumper::setIndentation() method, to control the indentation level within the scope of a single Dumper instance only.

Do you think this is acceptible? :)

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

by travisbot at 2012-08-05T06:16:22Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2039120) (merged 5be7237b into c99f9d29).

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

by travisbot at 2012-08-07T07:51:04Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2055164) (merged 3e1a1abd into c99f9d29).

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

by sun at 2012-08-07T07:53:18Z

Only one environment failed, and the [test failure](http://travis-ci.org/#!/symfony/symfony/jobs/2055165/L203) seems unrelated to this PR.
2012-08-07 10:09:45 +02:00
Fabien Potencier
13454efe30 merged branch jfsimon/issue-5196 (PR #5197)
Commits
-------

c2207da [Console] Removed unused phpunit annotation.
c0c61da [Console] Added current style appliance for all styled text.
696a653 [Console] Removed text transformation for empty styles.
c7e324a [Console] Added test for non style tag formatting.

Discussion
----------

[Console] Non style tags dont disturb formatting anymore

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes

Fixes issue #5196.

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

by travisbot at 2012-08-06T19:35:20Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2050455) (merged c0c61da0 into 842b599c).

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

by travisbot at 2012-08-07T07:47:31Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2055153) (merged c2207da6 into 842b599c).
2012-08-07 10:07:43 +02:00
sun
3e1a1abd5d Force the value of Dumper::setIndentation($num) to be of type integer. 2012-08-07 09:40:56 +02:00
Jan Marek
890aea2ffe FileLocatorInterface used in typehint instead of FileLocator 2012-08-07 10:39:30 +03:00
jfsimon
c2207da6ab [Console] Removed unused phpunit annotation. 2012-08-07 09:37:46 +02:00
Jean-François Simon
af0149d638 [Console] Added some precision in OutputInterface::write docblock. 2012-08-06 21:34:56 +02:00
Jean-François Simon
c0c61da0be [Console] Added current style appliance for all styled text. 2012-08-06 21:23:53 +02:00
Jean-François Simon
696a65370e [Console] Removed text transformation for empty styles. 2012-08-06 21:22:20 +02:00
Jean-François Simon
c7e324af90 [Console] Added test for non style tag formatting. 2012-08-06 21:21:07 +02:00
hidenorigoto
1a4a4ee93c [DependencyInjection] Fixed a frozen constructor of a container with no parameters 2012-08-07 01:03:17 +09:00
Fabien Potencier
3d32a0bcc2 merged branch beberlei/ConfigFileLoaderTypeMissing (PR #5193)
Commits
-------

b3cf36a [Config] Missing type argument passed to loader.

Discussion
----------

[Config] Missing type argument passed to loader.

In FileLoader the $type is not passed to the child loader.

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

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

by travisbot at 2012-08-06T14:22:30Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2047982) (merged b3cf36af into 89dce2df).
2012-08-06 16:50:56 +02:00
Fabien Potencier
842b599c50 merged branch lsmith77/bundle_inheritance_in_config_dump_reference (PR #5126)
Commits
-------

cdfbe72 handle inheritance in config:dump-reference when a bundle name is passed to the command

Discussion
----------

handle inheritance in config:dump-reference

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

Currently when passing in a bundle name that identifies a bundle that is a parent to another bundle, it will not return the reference for the requested bundle, but for the inheriting (even if that bundle has no configuration class).

F.e.
app/console config:dump-reference SymfonyCmfBlockBundle

will fail if there is a Bundle SandboxBlockBundle that has SymfonyCmfBlockBundle set as the parent.
2012-08-06 16:48:36 +02:00
Benjamin Eberlei
b3cf36af9e [Config] Missing type argument passed to loader.
In FileLoader the $type is not passed to the child loader.
2012-08-06 16:02:40 +02:00
Fabien Potencier
0ccda38775 merged branch Garfield-fr/master (PR #5015)
Commits
-------

f1c4b8b [Doctrine Bridge] Added a parameter ignoreNull on Unique entity to allow a nullable value on field. Added Test

Discussion
----------

[Doctrine Bridge] Added parameter ignoreNull to accept a nullable value on field

In my last project, i use this syntax to test unicity on 2 fields, but it fail because the validator stop if value is null. I dropped the test on validator and my unicity work fine.

```
@UniqueEntity(fields={"username", "deletedAt"})
```

It's possible to add this PR on Bridge.

Thanks

Bertrand

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

by stof at 2012-07-23T08:14:19Z

This is wrong. RDBMS allow several null values in a unique column and this change will break it.

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

by henrikbjorn at 2012-07-23T08:17:08Z

@stof seems weird indeed it would return if any of the values are null. Makes sense to do a query where the field `IS NULL` or whatever the find method does.

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

by stof at 2012-07-23T08:18:50Z

@henrikbjorn if you do a query with IS NULL, the validator would force to have only 1 entity with a null field whereas it is not the behavior of the DB-level constraint.

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

by henrikbjorn at 2012-07-23T08:20:41Z

In this case i suspect that he wants to achieve a `WHERE username = "henrikbjorn" AND deletedAt IS NULL` which would be valid right? Currently it just returns if any of the fields are null and the validation is never done.

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

by bschussek at 2012-07-23T08:27:24Z

I suggest to make this configurable as the handling of NULL values in UNIQUE columns [differs between SQL implementations](http://forums.mysql.com/read.php?22,53591,53591#msg-53591).

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

by Garfield-fr at 2012-07-23T08:52:53Z

@stof What the correct solution to test my unicity with deletedAt == null ?

I use this definition: @ORM\Column(name="deleted_at", type="datetime", nullable=true)

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

by Garfield-fr at 2012-07-23T20:28:44Z

In my local repository, i added a new parameter "$authorizedNullField" on UniqueEntity.php and tested this on UniqueEntityValidator.php:

Code: https://gist.github.com/4122efbe569e3c2c95c0

What about that ?

Thanks for your help

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

by stof at 2012-07-23T20:45:30Z

yep, this would be good (except for the naming which seems weird)

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

by Garfield-fr at 2012-07-23T20:46:44Z

No problem to change this. I don't find a good name for this ?

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

by stof at 2012-07-23T20:47:57Z

what about ``allowMultipleNull`` (defaulting to ``true`` for BC) ?

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

by Garfield-fr at 2012-07-23T20:51:30Z

Why multiple ? This option is for one or many. what about `allowNullable` ?

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

by stof at 2012-07-23T20:52:44Z

@Garfield-fr the current behavior allows having multiple null values without failing to the unique constraint

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

by Garfield-fr at 2012-07-23T20:56:07Z

ok. I make `allowMultipleNull`.

It's ok with that: https://gist.github.com/cae8d43780c45a5011ed

Thanks

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

by bschussek at 2012-07-23T20:58:12Z

What about `uniqueNull` (`false` by default)? `ignoreNull` (`true` by default)? I find `allowMultipleNull` a bit cumbersome.

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

by stof at 2012-07-23T20:58:26Z

no it is not. You have an issue in the validator. You have an extra negation.

Please update your PR

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

by Garfield-fr at 2012-07-23T21:01:59Z

@stof `ignoreNull` is ok for you ?

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

by stof at 2012-07-23T21:10:24Z

yes

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

by fabpot at 2012-08-05T07:48:03Z

Is it mergeable now? Is yes, @Garfield-fr Can you squash your commits?

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

by travisbot at 2012-08-05T08:43:23Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2039523) (merged 19ae3cf9 into c20c1d18).

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

by stof at 2012-08-05T12:09:02Z

@Garfield-fr when squashing the commits, you need to force the push as you are rewriting the history. You should not have merged with your remote branch

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

by Garfield-fr at 2012-08-05T12:10:15Z

What's the right solution for resolve this ?

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

by stof at 2012-08-05T12:11:09Z

@Garfield-fr reset your local branch to the squashed commit and force the push

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

by Garfield-fr at 2012-08-05T12:14:09Z

@stof Thanks for your help

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

by travisbot at 2012-08-05T12:19:06Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2040210) (merged f1c4b8b4 into 20d2e5a1).
2012-08-06 10:17:10 +02:00
Fabien Potencier
ca9f5e8db3 merged branch modi/master (PR #5186)
Commits
-------

83269a4 update zh_CN translations of Form Component

Discussion
----------

update zh_CN translations of Form Component

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

by travisbot at 2012-08-06T01:45:01Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2044024) (merged 83269a46 into 20d2e5a1).
2012-08-06 09:40:57 +02:00
modi
83269a46cb update zh_CN translations of Form Component 2012-08-06 09:36:49 +08:00
Christophe Coevoet
85187ec266 [DoctrineBridge] Fixed the testsuite 2012-08-05 14:43:59 +02:00
Fran Moreno
3d5b1dbfff [Validator] Updated Catalonian translations y fixed typos in Spanish 2012-08-05 12:26:28 +02:00
Bertrand Zuchuat
f1c4b8b415 [Doctrine Bridge] Added a parameter ignoreNull on Unique entity to allow a nullable value on field. Added Test 2012-08-05 10:35:10 +02:00
sun
5be7237b69 Added Yaml\Dumper::setIndentation() method to allow a custom indentation level of nested nodes.
YAML does not specify an absolute indentation level, but a consistent indentation of nested nodes only: http://www.yaml.org/spec/1.2/spec.html#space/indentation/

Projects that are generally using 2 spaces for indentation should be able to retain consistency with their coding standards by supplying a custom value for the new $indent parameter added to Yaml::dump(), or the new Dumper::setIndentation() method.

The new parameter is a backwards-compatible API addition and defaults to the previous default of 4 (which was changed from 2 via PR #2242 only recently).
2012-08-05 08:07:18 +02:00
Tobias Schultze
0706d18adc [Routing] fixed 4 bugs in the UrlGenerator 2012-08-05 05:44:00 +02:00
Fabien Potencier
c99f9d29cd fixed merge 2012-08-04 12:08:20 +02:00
Fabien Potencier
d6374ae531 bumped Symfony version to 2.1.0-DEV 2012-08-04 12:04:35 +02:00
Fabien Potencier
443e77ddec updated VERSION for 2.1.0-RC1 2012-08-04 11:32:21 +02:00
Fabien Potencier
7a75a1160b merged branch EvanK/master (PR #5132)
Commits
-------

aa890ae validateOptionTypes checking existence of key rather than value
c6a9638 OptionsResolver#validateOptionTypes should check if option value exists before checking its type; added corresponding test

Discussion
----------

[OptionsResolver] validateOptionTypes raises error for optional, nonexistant option values

The [`OptionsResolver#validateOptionTypes`](https://github.com/symfony/OptionsResolver/blob/master/OptionsResolver.php#L315) method should check if a given option value exists before trying to test its type:

```php
<?php
// Two optional 'one' and 'two' options that, if they exist, must be a string and int respectively
$resolver = new OptionsResolver();
$resolver->setOptional(array('one', 'two'))->setAllowedTypes(array('one' => 'string', 'two' => 'int'));

// Correctly fails as wrong type
$resolver->resolve(array('one' => 1, 'two' => 'alpha'));

// Correctly succeeds
$resolver->resolve(array('one' => 'alpha', 'two' => 1));

// Raises error "Undefined index: two", see OptionsResolver.php line 315
$resolver->resolve(array('one' => 'alpha'));
```

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

by travisbot at 2012-08-01T01:46:50Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2006049) (merged c6a9638a into b1618d21).

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

by ericclemmons at 2012-08-03T05:15:27Z

I hope this makes it in for the 2.1 release.  We have several types attempting to take advantage of the `OptionsResolver` component and want to help resolve this.

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

by stof at 2012-08-03T07:30:44Z

👍

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

by travisbot at 2012-08-03T17:25:12Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2030053) (merged aa890aed into b1618d21).
2012-08-04 11:23:52 +02:00
Fabien Potencier
ed5153d810 merged branch franmomu/patch-2 (PR #5177)
Commits
-------

981da1a [Validator] Updated Spanish translations

Discussion
----------

[Validator] Updated Spanish translations

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

by travisbot at 2012-08-03T23:06:26Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2032706) (merged 981da1a9 into be41ca35).
2012-08-04 11:19:37 +02:00
Fabien Potencier
aeaa69ae43 [HttpFoundation] fixed tests (refs #5175) 2012-08-04 11:18:38 +02:00
Fabien Potencier
3f51bc0a3d [HttpFoundation] fixed typo (refs #5175) 2012-08-04 11:17:35 +02:00
Fran Moreno
981da1a908 [Validator] Updated Spanish translations 2012-08-04 01:58:06 +03:00
chx
b00ea41769 StreamedResponse always sends a HTTP 1.1 response
SERVER_PROTOCOL is "Name and revision of the information protocol via which the page was requested; i.e. 'HTTP/1.0'"
2012-08-03 21:27:14 +03:00
Evan Kaufman
aa890aedfc validateOptionTypes checking existence of key rather than value 2012-08-03 12:17:58 -05:00
Fabien Potencier
be41ca353b merged branch cs278/master (PR #5172)
Commits
-------

d1aae0b [Form] Fix UnexpectedTypeException from HttpFoundation extension

Discussion
----------

[Form] Fix UnexpectedTypeException from HttpFoundation extension

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

Fixes exception thrown by the `AbstractExtension` because the wrong method has been implemented.

```
Uncaught exception 'Symfony\\Component\\Form\\Exception\\UnexpectedTypeException' with message 'Expected argument of type "Symfony\\Component\\Form\\FormTypeInterface", "Symfony\\Component\\Form\\Extension\\HttpFoundation\\Type\\FormTypeHttpFoundationExtension" given' in vendor/symfony/form/Symfony/Component/Form/AbstractExtension.php:153
```

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

by stof at 2012-08-03T12:36:55Z

👍
2012-08-03 14:48:44 +02:00
Fabien Potencier
c5346610f3 Merge branch '2.0'
* 2.0:
  Fixes incorrect class used in src/Symfony/Bundle/FrameworkBundle/Console/Application.php
  [FrameworkBundle] added test for fix broken command registration
  corrected phpdoc
2012-08-03 14:44:30 +02:00
Fabien Potencier
89dce2df51 merged branch SamsonIT/fix_broken_command_registration (PR #5169)
Commits
-------

55a0b34 Fixes incorrect class used in src/Symfony/Bundle/FrameworkBundle/Console/Application.php
79c547f [FrameworkBundle] added test for fix broken command registration

Discussion
----------

[FrameworkBundle] fix broken command registration

fixed #5168, #5166

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

by travisbot at 2012-08-03T11:35:29Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2027699) (merged 39e964b8 into fee3f4e1).

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

by travisbot at 2012-08-03T11:45:14Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2027761) (merged 55a0b347 into fee3f4e1).

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

by xeross at 2012-08-03T11:45:45Z

Duplicate of #5166

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

by Burgov at 2012-08-03T11:47:54Z

@xeross that PR was opened on master instead of 2.0

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

by xeross at 2012-08-03T11:48:49Z

@Burgov Ah sorry, I got confused and thought this was another dupe
2012-08-03 14:43:49 +02:00
Fabien Potencier
982545350b merged branch lsmith77/container_builder_cosmetics (PR #5165)
Commits
-------

4563397 corrected phpdoc

Discussion
----------

corrected phpdoc

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

by travisbot at 2012-08-03T09:37:07Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2026993) (merged 4563397c into fee3f4e1).
2012-08-03 14:40:59 +02:00
Chris Smith
d1aae0b106 [Form] Fix UnexpectedTypeException from HttpFoundation extension 2012-08-03 13:20:47 +01:00
smokeybear87
55a0b347a0 Fixes incorrect class used in src/Symfony/Bundle/FrameworkBundle/Console/Application.php
Issue must be related to commit 7a5f614240 (merged 2.0), specifically this file src/Symfony/Bundle/FrameworkBundle/Console/Application.php, lines 86-88. 

Presumably to do "instanceof Bundle" correct class has to be imported at the top of the file:

instead of 
use Symfony\Component\HttpKernel\Bundle;

this should be
use Symfony\Component\HttpKernel\Bundle\Bundle;
Conflicts:

	src/Symfony/Bundle/FrameworkBundle/Console/Application.php
2012-08-03 13:33:57 +02:00
Bart van den Burg
79c547f09c [FrameworkBundle] added test for fix broken command registration 2012-08-03 13:33:31 +02:00
lsmith77
4563397c0a corrected phpdoc 2012-08-03 11:27:08 +02:00
Fabien Potencier
48e384b6e0 merged branch vicb/doctrine_logger_2.1 (PR #5162)
Commits
-------

6097c80 [DoctrineBridge] Fix log of non utf8 data

Discussion
----------

[DoctrineBridge] Fix log of non utf8 data

relates to #5139 (fix #5115 for 2.1)

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

by travisbot at 2012-08-03T08:34:14Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2026546) (merged 6097c804 into 6f32078b).
2012-08-03 11:14:28 +02:00
Fabien Potencier
7a5f614240 merged 2.0 2012-08-03 11:11:11 +02:00
Fabien Potencier
fee3f4e1ef merged branch vicb/doctrine_logger (PR #5139)
Commits
-------

a0709fc [DoctrineBridge] Fix log of non utf8 data

Discussion
----------

Doctrine logger - fix logging of binary data

fix #5115

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

by travisbot at 2012-08-01T11:21:07Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2008862) (merged a0709fc3 into 1da896dc).

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

by stof at 2012-08-01T11:54:45Z

I see a way to fix it in a far better way: instead of json_encoding the parameters and appending them to the SQL, we could pass them as context to the logger (the optional second argument) as Monolog already handles normalizing the context (and in a better way silencing the error).
Btw, this would also make the log message better for rich logger as they would receive the array (for instance, the FirephpHandler is able to send the context as an array instead of a string as firebug is able to dump arrays)

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

by vicb at 2012-08-01T12:19:06Z

@stof you're right that would be much better. What about keeping this fix for 2.0 and use your suggestion for 2.1 (as the public `log` method prototype would change (to take the context as argument) ?

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

by stof at 2012-08-01T12:21:09Z

@vicb as the method is public, it need to be done in 2.1 only indeed. The next question being "why is it public ?" :)

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

by fabpot at 2012-08-03T07:47:39Z

So, what's the next step?

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

by vicb at 2012-08-03T07:48:38Z

I think this should be merged in 2.0 and then 2.1 should be updated with the suggestion from @stof

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

by fabpot at 2012-08-03T07:54:16Z

Can you provide a PR for 2.1 so that I merge both at the same time?
2012-08-03 10:46:13 +02:00
Fabien Potencier
6b94407e1c merged branch dlsniper/php-engine-escape-cache (PR #5117)
Commits
-------

22cb817 Caching variables for the PHP templating engine

Discussion
----------

[Templating] PHP templating engine speed-ups

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/dlsniper/symfony.png?branch=php-engine-escape-cache)](http://travis-ci.org/dlsniper/symfony)
Fixes the following tickets: ~
Todo: ~
License of the code: MIT
Documentation PR: ~

This PR should improve the speed for rendering the form present here: https://github.com/dlsniper/symfony-standard . On my computer, Ubuntu 12.04 Apache 2.2.22 + mod_php 5.3.10 default packages from Ubuntu on a core i7 I get about 30-40ms improvement / request with the first commit and with the second one I get a further smaller boost and also a small memory usage decrease.

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

by dlsniper at 2012-07-31T06:18:54Z

ping @bschussek This should help a bit more on the effort for optimizing the example provided for the Forms component.

If there's another example of complex form(s) let me know so that I can have a look on them as well. Thanks!

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

by travisbot at 2012-07-31T19:55:03Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2003907) (merged 240152b9 into a172a812).

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

by dlsniper at 2012-08-02T07:41:03Z

@fabpot what do you think about this? or anyone else for that matter?

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

by travisbot at 2012-08-02T12:55:54Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2018613) (merged 5e773e79 into a172a812).

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

by fabpot at 2012-08-03T07:42:31Z

Can you squash your commits?

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

by dlsniper at 2012-08-03T08:32:05Z

@fabpot Done

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

by travisbot at 2012-08-03T08:40:46Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/2026559) (merged 22cb8173 into 6f32078b).
2012-08-03 10:43:22 +02:00
Florin Patan
22cb8173b5 Caching variables for the PHP templating engine 2012-08-03 11:28:29 +03:00
lsmith77
3605c54f9d removed unused private property 2012-08-03 10:28:23 +02:00
lsmith77
d4a78a21de fix phpdoc statement of getAlias() 2012-08-03 10:28:07 +02:00
Victor Berchet
6097c804ce [DoctrineBridge] Fix log of non utf8 data 2012-08-03 10:23:47 +02:00
Fabien Potencier
13c60bdeaf merged branch henrikbjorn/2.0 (PR #5137)
Commits
-------

0b78fdf Only call registerCommand on bundles that is an instance of Bundle

Discussion
----------

Only call registerCommand on bundles that is an instance of Bundle

Fixes GH-5133

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

by travisbot at 2012-08-01T09:41:05Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/2008252) (merged 0b78fdff into 1da896dc).

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

by henrikbjorn at 2012-08-01T10:05:00Z

Build failed because of HTTP request error.

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

by lsmith77 at 2012-08-01T11:31:08Z

wondering if it would be good if you could include the commit from #5133 in this PR .. then we get the test and the fix at once.
2012-08-03 10:19:10 +02:00
Victor Berchet
a0709fc365 [DoctrineBridge] Fix log of non utf8 data 2012-08-01 13:10:42 +02:00
Henrik Bjørnskov
0b78fdffa4 Only call registerCommand on bundles that is an instance of Bundle
Fixes GH-5133
2012-08-01 11:35:03 +02:00
Josiah Truasheim
30bcb57286 Added a test case to demonstrate the fatal error occuring when a Bundle implementing BundleInterface only is registered in the kernel. 2012-08-01 09:25:05 +07:00
Evan Kaufman
c6a9638adb OptionsResolver#validateOptionTypes should check if option value exists before checking its type; added corresponding test
OptionsResolver#validateOptionsCompleteness would already have thrown exception if the option were required, so this should only affect something explicitly marked as optional
2012-07-31 20:34:40 -05:00
Fabien Potencier
b1618d210c merged branch vicb/doctrine_deps (PR #5127)
Commits
-------

4ae54e3 [Composer] Bumped doctrine/orm to 2.2.3

Discussion
----------

[Composer] Bumped doctrine/orm to 2.2.3

fix #4966

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

by stloyd at 2012-07-31T15:01:41Z

You should also _bump_ Security component [deps](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Security/composer.json#L28).

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

by vicb at 2012-07-31T15:05:03Z

The security does not depend on `doctrine/orm`
2012-07-31 17:06:32 +02:00
Victor Berchet
4ae54e39fc [Composer] Bumped doctrine/orm to 2.2.3 2012-07-31 16:51:24 +02:00
Fabien Potencier
ee2b8c474e merged branch bschussek/bootstrap (PR #5112)
Commits
-------

b982883 [Form] Moved FormHelper back to FrameworkBundle
cb62d05 [Form] [Validator] Fixed issues mentioned in the PR
2185ca8 [Validator] Added entry point "Validation" for more convenient usage outside of Symfony2
ed87361 [Form] Moved FormHelper creation to TemplatingExtension
87ccb6a [Form] Added entry point "Forms" for more convenient usage outside of Symfony

Discussion
----------

[Form] [Validator] Added more convenient entry points for stand-alone usage

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

This PR greatly simplifies the usage of the Form and Validator component when used outside of Symfony2. Check out the below code to get an idea about the simplified usage:

```php
<?php

use Symfony\Component\Validator\Validation;
use Symfony\Component\Validator\Mapping\Cache\ApcCache;
use Symfony\Component\Form\Forms;
use Symfony\Component\Form\Extension\HttpFoundation\HttpFoundationExtension;
use Symfony\Component\Form\Extension\Csrf\CsrfExtension;
use Symfony\Component\Form\Extension\Csrf\CsrfProvider\SessionCsrfProvider;
use Symfony\Component\Form\Extension\Templating\TemplatingExtension;
use Symfony\Component\Form\Extension\Validator\ValidatorExtension;
use Symfony\Component\HttpFoundation\Session;
use Symfony\Component\Templating\PhpEngine;

$session = new Session();
$secret = 'V8a5Z97e...';
$csrfProvider = new SessionCsrfProvider($session, $secret);
$engine = new PhpEngine(/* ... snap ... */);

$validator = Validation::createValidator();
// or
$validator = Validation::createValidatorBuilder()
    ->addXmlMapping('path/to/mapping.xml')
    ->addYamlMapping('path/to/mapping.yml')
    ->addMethodMapping('loadValidatorMetadata')
    ->enableAnnotationMapping()
    ->setMetadataCache(new ApcCache())
    ->getValidator();

$formFactory = Forms::createFormFactory();
// or
$formFactory = Forms::createFormFactoryBuilder()
    // custom types, if you're too lazy to create an extension :)
    ->addType(new PersonType())
    ->addType(new PhoneNumberType())
    ->addTypeExtension(new FormTypeHelpTextExtension())
    // desired extensions (CoreExtension is loaded by default)
    ->addExtension(new HttpFoundationExtension())
    ->addExtension(new CsrfExtension($csrfProvider))
    ->addExtension(new TemplatingExtension($engine, $csrfProvider, array(
        'FormBundle:Form'
    ))
    ->addExtension(new ValidatorExtension($validator))
    ->getFormFactory();

$form = $formFactory->createBuilder()
    ->add('firstName', 'text')
    ->add('lastName', 'text')
    ->add('age', 'integer')
    ->add('gender', 'choice', array(
        'choices' => array('m' => 'Male', 'f' => 'Female'),
    ))
    ->getForm();

if (isset($_POST[$form->getName()])) {
    $form->bind($_POST[$form->getName()]);

    if ($form->isValid()) {
        // do stuff
    }
}

return $engine->render('AcmeHelloBundle:Hello:index.html.php', array(
    'form' => $form->createView(),
));
```

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

by bschussek at 2012-07-30T10:08:42Z

I should maybe add a comment about the benefits of this change, in case they are not self-explanatory:

* class construction with default configuration is now a one-liner
* userland code is decoupled from core implementations → userland code doesn't break if we change constructor signatures
* easier to understand, since many core classes are now created internally
* easy to discover the possible settings → just look at (FormFactory|Validator)BuilderInterface
* usage of custom interface implementations is supported, just like before

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

by fabpot at 2012-07-31T08:18:53Z

The new syntax is great.

I have one comment though about this PR about support of PHP as a templating system (support for Twig is provided by the bridge and it was already easy to configure Twig as a templating system for forms -- see Silex for instance).

The `FormHelper` has been moved into the Form component. This helper is only useful when using the PHP templating system (which is not what we recommend people to use), but the default templates are still in the Framework bundle. So using the Form component as standalone with PHP as a templating system still requires to install the bundle to get access to the default templates. Am I missing something? Do we want to move the PHP templates to the Form component too?

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

by stof at 2012-07-31T08:28:28Z

@fabpot it is even worse than that: the FormHelper currently uses the theme by using ``$theme . ':' . $block . '.html.php`` IIRC. This is not compatible with the default template name parser of the component expecting a path. And the FrameworkBundle template name parser does not support accessing a template outside a bundle AFAIK.
So moving the templating to the component would require some refactoring in the FormHelper and the template name parser. However, I think it is worth it. Some people complained that using the form rendering (outside the full-stack framework) was requiring either setting up Twig with the bridge, or adding FrameworkBundle in the project (which means including most of the code of the full-stack framework). Having the Templating rendering in the standalone component could be a great idea

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

by fabpot at 2012-07-31T08:42:53Z

But then, I don't want to promote the Templating component or the PHP templating system. Twig is always a better alternative and this should be what people use most of the time, PHP being the rare exception.

Anyway, we are too close from the first 2.1 RC, so any big refactoring will have to wait for 2.2.

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

by stof at 2012-07-31T09:02:10Z

then maybe we should keep the FormHelper in FrameworkBundle for now as it is tied to the FrameworkBundle template name parser anyway currently.

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

by bschussek at 2012-07-31T14:22:35Z

> it it is even worse than that: the FormHelper currently uses the theme by using ``$theme . ':' . $block . '.html.php`` IIRC. This is not compatible with the default template name parser of the component expecting a path.

This is why the templates are still in FrameworkBundle. I think they should be moved too, but then we have to change

* the default theme to an absolute file path
* the FrameworkBundle name parser to accept absolute paths

I think this can wait until 2.2. Baby steps.

> I don't want to promote the Templating component or the PHP templating system.

We can both promote Twig while making Templating as easy to use as possible. If people want to use Templating, they probably have a reason. We don't have to make their lives more painful than necessary.

Btw: Templating is a *lot* faster for rendering forms than Twig. On Denis' form, Templating takes 1.15 seconds while Twig takes 2.

About moving the helpers, we have two choices:

* Move each helper to the respective component. This would not require new releases of the Templating component when we add more helpers in other component.

* Move all helpers to Templating. This does not make that much sense for Form, as then Form has support for Templating (TemplatingRendererEngine) and Templating has support for Form (FormHelper), which is a bit weird. I personally prefer a stacked architecture, where Templating is at the bottom and Form-agnostic, and Form (or any other component) builds upon that.

I'm fine with both approaches. I'll move FormHelper back to FrameworkBundle, and we can decide for a direction in 2.2.

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

by bschussek at 2012-07-31T14:36:30Z

Done.
2012-07-31 16:38:15 +02:00
Bernhard Schussek
b982883a85 [Form] Moved FormHelper back to FrameworkBundle 2012-07-31 16:35:46 +02:00
Fabien Potencier
4b521985f1 merged branch vicb/lenient_generator (PR #5114)
Commits
-------

03bbaaf [Routing] Add an interface for configuring strict_parameters

Discussion
----------

[RFC][Routing] Add an interface for configuring strict_parameters

This is a proposal to fix #4697 (related to #4592).

The main point left to discuss was the name of the interface, which is now `LenientInterface`. We could change the name to anything else is someone has a better idea.

@stof @Tobion what do you think ?

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

by stof at 2012-07-30T16:34:20Z

@vicb I already said I had no idea to name it, and it has not changed. :)
So let's wait for other people to see if they have a better idea

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

by breerly at 2012-07-30T16:38:38Z

Maybe `PermissibleInterface` or `PermissiveInterface`.

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

by Partugal at 2012-07-30T17:00:09Z

`StrictUrlGeneratorInterface`, `StrictParametersInterface` or `StrictInterface`

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

by pborreli at 2012-07-30T17:04:46Z

👍 for `PermissiveInterface`

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

by stof at 2012-07-30T17:07:59Z

yes, because the Router currently can only use this interface to set it to ``not-strict``. It assumes that the url generator is already strict by default (which is probably a bad assumption btw as the base class for the generated generator can be changed)

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

by pborreli at 2012-07-30T17:09:33Z

@stof thx, got it

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

by Partugal at 2012-07-30T17:10:03Z

this interface realize setting Strict by setStrictParameters, and get by getStrictParameters, and imho named it by `Strictable` is more logic

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

by pborreli at 2012-07-30T17:11:07Z

@Partugal let's try to find an english term :)

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

by Partugal at 2012-07-30T17:11:31Z

)

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

by breerly at 2012-07-30T17:15:23Z

@Partugal I like using "able" in interface names because it describes a behavior instead of a noun. This type of naming makes following the Interface Segregation Principle easy to follow. Good work.

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

by vicb at 2012-07-30T18:24:26Z

As explained by @stof I did not consider `StrictInterface` because as of now the interface is used to disabled the strict bevahior (which is enabled by default).

I am not satisfied with `PermissiveInterface` / `LenientInterface` because implementing this interface does not mean that the generator will be permissive but only that the behavior is configurable - yes I did consider `Configurable` but the term is a too vague.

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

by breerly at 2012-07-30T18:35:45Z

I see. Perhaps ```StrictConfigurableInterface``` would do the trick.

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

by Tobion at 2012-07-30T21:02:21Z

I think renaming strict_parameters to `strict_requirements` is the way to go because it determines how requirements are handled when generating a URL. Also we should allow another option:
strict_requirements = true: throw exception for mismatching requirements
strict_requirements = null: return null as URL for mismatching requirements and log it.
strict_requirements = false: return the URL with the given parameters without checking the requirements and don't log it.
(Maybe use constants for these).
The Interface I would then call `ConfigurableRequirementsInterface` or `RequirementsHandlingInterface`.

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

by vicb at 2012-07-31T07:23:24Z

Thanks all for the feeback, this is what is now implemented:

- A `ConfigurableRequirementsInterface` that should be implemented by generators that can be configure not to throw an exception when the parameters do not match the requirements,
- The interface has two methods: `setStrictRequirements()` and `isStrictRequirements()`,
- `setStrictRequirements()` always gets called to configure the generator (whatever the option value is)

Note: The Router option name has not changed (i.e. `strict_parameters`)

Does that fit everyone ?

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

by vicb at 2012-07-31T07:39:22Z

So the option name is now consistent (`strict_requirements`) with the interface. We should sync the change [in the standard edition](https://github.com/symfony/symfony-standard/blob/master/app/config/config.yml#L11) if we agree to merge this.

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

by fabpot at 2012-07-31T07:51:47Z

@vicb you forgot to rename the property in `UrlGenerator` as @stof mentioned above.

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

by vicb at 2012-07-31T07:59:57Z

@fabpot fixed. If the code is ok, I'll squash the commits and open a PR on symfony-standard
2012-07-31 16:16:14 +02:00
Victor Berchet
03bbaaf325 [Routing] Add an interface for configuring strict_parameters 2012-07-31 16:14:37 +02:00
lsmith77
cdfbe72be4 handle inheritance in config:dump-reference when a bundle name is passed to the command 2012-07-31 15:20:04 +02:00
Bilal Amarni
f84f5fd6b5 fixed typo 2012-07-31 16:07:47 +03:00
Fabien Potencier
788e5eb730 [HttpKernel] added a way to override the default response status code when handling an exception (closes #5043) 2012-07-31 10:32:57 +02:00
Bernhard Schussek
cb62d05f8d [Form] [Validator] Fixed issues mentioned in the PR 2012-07-30 16:22:02 +02:00
Bernhard Schussek
2185ca80e2 [Validator] Added entry point "Validation" for more convenient usage outside of Symfony2 2012-07-30 11:41:40 +02:00
Bernhard Schussek
ed8736140f [Form] Moved FormHelper creation to TemplatingExtension 2012-07-30 11:41:40 +02:00
Bernhard Schussek
87ccb6adb9 [Form] Added entry point "Forms" for more convenient usage outside of Symfony 2012-07-30 11:41:38 +02:00
Fabien Potencier
a172a81296 merged branch pborreli/browserkit (PR #5097)
Commits
-------

910b60d [BrowserKit] Added some tests, removed dead code

Discussion
----------

[BrowserKit] Added some tests

Code coverage : 99.68%
2012-07-30 11:17:59 +02:00
Fabien Potencier
cbd03ec4c6 merged branch vicb/resolver_options (PR #5110)
Commits
-------

a47922b [OptionsResolver] Fix Options::has() when the value is null

Discussion
----------

[OptionsResolver] Fix Options::has() when the value is null

`isset()` would have returned `false` when the value is `null`
2012-07-30 10:08:33 +02:00
Victor Berchet
a47922b4bf [OptionsResolver] Fix Options::has() when the value is null 2012-07-30 09:38:43 +02:00
Bernhard Schussek
8070e6997e [Form] Fixed ResolvedFormType to really be replaceable 2012-07-29 19:13:45 +02:00
Fabien Potencier
6b39ebc4f8 merged branch bschussek/httpfoundationextension (PR #5103)
Commits
-------

173b929 [Form] Completely decoupled CoreExtension from HttpFoundation

Discussion
----------

[Form] Completely decoupled CoreExtension from HttpFoundation

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
2012-07-29 16:33:05 +02:00
Bernhard Schussek
173b929219 [Form] Completely decoupled CoreExtension from HttpFoundation 2012-07-29 16:18:04 +02:00
Bernhard Schussek
57ac110e77 [Form] Removed unnecessary method call 2012-07-29 15:49:21 +02:00
Bernhard Schussek
27ab56d8ee [OptionsResolver] Removed LazyOption class and improved performance a tiny bit 2012-07-29 15:25:40 +02:00
Pascal Borreli
910b60de70 [BrowserKit] Added some tests, removed dead code 2012-07-29 12:17:46 +00:00
Fabien Potencier
50652a9717 merged branch pborreli/phpdoctypos (PR #5096)
Commits
-------

6ac8e73 Fixed typos
4c726ea Fixed Phpdoc

Discussion
----------

Fixed some typos
2012-07-29 11:20:51 +02:00
Pascal Borreli
6ac8e7308d Fixed typos 2012-07-28 22:02:29 +00:00
Pascal Borreli
4c726ea64c Fixed Phpdoc 2012-07-28 16:07:17 +00:00
Bernhard Schussek
04cb5bc457 [Form] Removed the ImmutableFormConfig class to save time spent with copying values (+20ms) 2012-07-28 10:59:23 +02:00
Bernhard Schussek
a845a28a76 [Form] Optimized form events to only be created on demand 2012-07-28 08:47:13 +02:00
Fabien Potencier
180f4a66ed merged branch pborreli/filesystem-windows (PR #5088)
Commits
-------

03c3712 [Filesystem] Fixed 2 tests throwing error on windows
3689bb8 [Filesystem] Fixed 3 failing tests on windows

Discussion
----------

[Filesystem] Fixed 5 tests on windows

Fixing 3 test expecting wrong folders :

```
-'C:\Users\pascal\AppData\Local\Temp\\1343425847694\file'
+'C:\Users\pascal\AppData\Local\Temp\1343425847694\file'
```

Fixed 2 tests on Windows caused by symlink function throwing error when first argument is not existent :
```
symlink(): Could not fetch file information(error 2)
```
2012-07-28 08:26:08 +02:00
Fabien Potencier
c56f47141f merged branch Dattaya/framework-bundle/assets-install-command (PR #5084)
Commits
-------

f402a16 [FrameworkBundle] AssetsInstallCommand. Made 'web' as a default folder.

Discussion
----------

[FrameworkBundle] AssetsInstallCommand. Made 'web' as a default folder.

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

>'The target directory (usually "web")'

It is indeed a folder that's usually used to install assets, why not making it as a default value?
2012-07-28 08:22:01 +02:00
Pascal Borreli
03c3712fb3 [Filesystem] Fixed 2 tests throwing error on windows 2012-07-28 02:26:14 +00:00
Pascal Borreli
3689bb8b9d [Filesystem] Fixed 3 failing tests on windows 2012-07-27 21:54:21 +00:00
Yaroslav Kiliba
f402a1643c [FrameworkBundle] AssetsInstallCommand. Made 'web' as a default folder. 2012-07-27 18:49:52 +03:00
Larry Garfield
76815fe664 Allow the targetUrl on a redirect response to be set explicilty. 2012-07-27 09:40:11 -05:00
Pascal Borreli
3e4c9b2824 [Routing] Fixed alteration of $_SERVER 2012-07-27 10:50:12 +00:00
Martin Hasoň
b384c82ea6 [HttpFoundation] Fixed checking IPv6 address without bit-length of the prefix 2012-07-27 11:07:24 +02:00
Fabien Potencier
beb000908c [Finder] fixed various CS issues and added a reference to the relevant PHP bug 2012-07-27 09:35:03 +02:00
Fabien Potencier
7b1d6b806e merged branch alebo/ticket_4922 (PR #4993)
Commits
-------

ae6016c [Finder] Workaround for FilterIterator-FilesystemIterator-rewind issue

Discussion
----------

[Finder] Workaround for the problem with rewind of FilterIterator with inner FilesystemIterator.

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

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

by stof at 2012-07-20T10:28:05Z

Please add some tests

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

by alebo at 2012-07-24T09:50:36Z

Any feedback yet? The new commit includes tests.
2012-07-27 09:24:52 +02:00
Fabien Potencier
87f89706f2 merged branch adrienbrault/patch-2 (PR #5065)
Commits
-------

4d09907 [Serializer] Add a docblock to help type hinting

Discussion
----------

[Serializer] Add a docblock to help type hinting

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-07-27 09:20:54 +02:00
Fabien Potencier
1da896dc7e merged branch diaspar/2.0-pdosessionstorage-issue3255 (PR #5070)
Commits
-------

9e28593 fixed error on oracle db related to clob data. https://github.com/symfony/symfony/issues/3255

Discussion
----------

fixed error on pdosession storage for oracle db. Related to clob data

Did a change on 2.0 branch to fix this error

https://github.com/symfony/symfony/issues/3255

Tested on mysql and Oracle DB.

I also ran a phpunit test before commit:

phpunit tests/Symfony/Tests/Component/HttpFoundation/SessionStorage/PdoSessionStorageTest.php
PHPUnit 3.6.10 by Sebastian Bergmann.

Time: 0 seconds, Memory: 2.75Mb

OK (3 tests, 5 assertions)

Time: 0 seconds, Memory: 2.75Mb
2012-07-27 07:31:54 +02:00
Tim Nagel
6ff9b045c2 Add Luhn validator 2012-07-27 09:26:41 +10:00
Tim Nagel
e2aa79b885 Added CardScheme validator 2012-07-27 09:25:56 +10:00
mauricio lopez
9e285937b9 fixed error on oracle db related to clob data.
https://github.com/symfony/symfony/issues/3255
2012-07-26 11:42:25 -05:00
Bernhard Schussek
9f4178b672 [Validator] Fixed: StaticMethodLoader does not try to invoke methods of interfaces anymore 2012-07-26 16:39:18 +02:00
Fabien Potencier
e1c65fa9c0 merged branch marcw/request-context-params (PR #5059)
Commits
-------

d30943c [FrameworkBundle] Switched to parameters for request context host and scheme

Discussion
----------

[FrameworkBundle] Switched to parameters for request context host and scheme
2012-07-26 16:16:22 +02:00
Fabien Potencier
77ce04d0b1 merged branch bschussek/normalizer-performance (PR #5067)
Commits
-------

d858f7b [OptionsResolver] Optimized previous values of a lazy option not to be evaluated if the second argument is not defined
8a338cb [OptionsResolver] Micro-optimization
e659f0e [OptionsResolver] Improved the performance of normalizers

Discussion
----------

[OptionsResolver] Improved the performance of normalizers

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

Normalizers are now stored in the Options instance only once. Previously, normalizers were stored in Options upon resolving, which meant that they were added a lot of time if the same resolver was used for many different options arrays.

This improvement led to an improvement of 30ms on http://advancedform.gpserver.dk/app_dev.php/taxclasses/1

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

by beberlei at 2012-07-26T13:34:23Z

@bschussek do you have the code for this forms somewhere btw?

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

by bschussek at 2012-07-26T13:54:52Z

@beberlei https://github.com/stof/symfony-standard/tree/twig_forms
2012-07-26 15:55:52 +02:00
Bernhard Schussek
d858f7bdf3 [OptionsResolver] Optimized previous values of a lazy option not to be evaluated if the second argument is not defined 2012-07-26 15:36:09 +02:00
Bernhard Schussek
8a338cb6fa [OptionsResolver] Micro-optimization 2012-07-26 15:32:18 +02:00
Bernhard Schussek
e659f0e39d [OptionsResolver] Improved the performance of normalizers
Normalizers are now stored in the Options instance only once. Previously,
normalizers were stored in Options upon resolving, which meant that
they were added a lot of time if the same resolver was used for many
different options arrays.

This improvement led to an improvement of 30ms on
advancedform.gpserver.dk/app_dev.php/taxclasses/1
2012-07-26 15:21:14 +02:00
Adrien Brault
4d09907362 [Serializer] Add a docblock to help type hinting 2012-07-26 15:58:31 +03:00
marc.weistroff
d30943c2e8 [FrameworkBundle] Switched to parameters for request context host and scheme 2012-07-26 11:12:14 +02:00
Bernhard Schussek
6e59e6b085 [Form] Fixed: setData() is now guaranteed to be invoked before bind() 2012-07-26 10:55:40 +02:00
Bernhard Schussek
ef747ff767 [Form] Fixed exception message in ObjectChoiceList 2012-07-26 08:30:26 +02:00
Fabien Potencier
b122b37be7 [Security] tweaked previous merge 2012-07-26 08:13:41 +02:00
Jonathan Ingram
9030dc5dfc [Security] add docblocks to InteractiveLoginEvent
Close #5053 (was easier to just create a new PR).
2012-07-26 16:07:46 +10:00
Tobias Schultze
4a5dadb520 [Form] raise exception when label for choice cannot be read 2012-07-26 01:10:54 +02:00
Tobias Schultze
a3cbf6bbf6 [Form] add type hint in ChoiceList 2012-07-26 01:10:53 +02:00
Tobias Schultze
805393303c [Form] fix ChoiceList and ObjectChoiceList when choices is a Traversable 2012-07-26 01:10:52 +02:00
Tobias Schultze
6f7ea8dbbe [Form] fix ObjectChoiceList when property path is '0' 2012-07-26 01:05:13 +02:00
Tobias Schultze
8da33eb5bc [Form] fixed phpdoc of ChoiceList 2012-07-26 01:05:12 +02:00
Fabien Potencier
c7bc4791c4 merged branch bschussek/issue5029 (PR #5046)
Commits
-------

2607390 [Form] Fixed SearchAndRenderBlockNode to really ignore empty labels

Discussion
----------

[Form] Fixed SearchAndRenderBlockNode to really ignore empty labels

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5029
Todo: -
2012-07-25 22:54:22 +02:00
Bernhard Schussek
0315d431f4 [Form] Fixed failing UniqueValidatorTest when Doctrine Common 2.2 is loaded 2012-07-25 22:49:37 +02:00
Bernhard Schussek
b4b5408fdc [Form] Fixed failing tests 2012-07-25 22:16:38 +02:00
Fabien Potencier
2ca73f9d7e merged branch pborreli/posix-fix (PR #5047)
Commits
-------

1d6611b [Filesystem] Fixed tests on system without posix

Discussion
----------

[Filesystem] Fixed tests on system without posix

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: master is broken
Fixes the following tickets: None
License of the code: MIT
2012-07-25 21:26:35 +02:00
Bernhard Schussek
9622703302 [Validator] Removed the Size constraint which did not exist in 2.0 2012-07-25 20:30:38 +02:00
Bernhard Schussek
2607390309 [Form] Fixed SearchAndRenderBlockNode to really ignore empty labels 2012-07-25 19:15:43 +02:00
Pascal Borreli
1d6611be50 [Filesystem] Fixed tests on system without posix 2012-07-25 17:04:57 +00:00
Bernhard Schussek
eeb66dd2ef [Form] Renamed the internal FormView variables "types" and "full_block_name" 2012-07-25 17:35:06 +02:00
Bernhard Schussek
6b17640647 [Form] Fixed caching of block names when types of forms with the same unique block ID differ 2012-07-25 17:31:36 +02:00
Bernhard Schussek
2a3235ac22 [Validator] Fixed group sequence support in the XML and YAML drivers 2012-07-25 17:27:01 +02:00
Fabien Potencier
2bc358dbcd merged branch bschussek/issue5029 (PR #5042)
Commits
-------

fb002d8 [Form] Fixed variable passing from outer to inner blocks of the same FormView instance

Discussion
----------

[Form] Fixed variable passing from outer to inner blocks of the same FormView instance

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5029
Todo: -

This PR fixes two bugs.

The first bug is described in #5029. The second parameter to the "form_label" function in Twig, if given, always overwrote whatever label was defined previously.

```
{# null would overwrite whatever is currently set #}
form_label(form, null, { ... })
```

The second bug affected passing variables from outer to inner blocks. In the following example, "label_attr" would not be forwarded to the "form_label" function.

```
form_row(form, { "label_attr": { "class": "my_class" }})
```

Both bugs are fixed now.
2012-07-25 17:21:35 +02:00
Fabien Potencier
b52cbf46d0 merged branch gedrox/patch-1 (PR #5041)
Commits
-------

0ea3769 Fix not recognized "type" option exception

Discussion
----------

[Form] Fixed not recognized "type" option exception

The exception about not recognized "type" option was raised when "date", "datetime", "time" type was guessed by validator type guesser using the date related constraint.

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

by bschussek at 2012-07-25T11:30:23Z

Thanks! 👍
2012-07-25 17:21:08 +02:00
Fabien Potencier
950fff2790 merged branch bschussek/data (PR #5023)
Commits
-------

686bf6b [Form] Made original data of a form and choices accessible in templates

Discussion
----------

[Form] Made original data of a form and choices accessible in templates

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4171
Todo: -

Now you can access the normalized data of a form in the template:
```
form.vars.data
```
You can also access the original data of a choice, for example the entities in an entity type:
```
choice.data
```
2012-07-25 17:18:20 +02:00
Bernhard Schussek
fb002d89ea [Form] Fixed variable passing from outer to inner blocks of the same FormView instance 2012-07-25 13:20:23 +02:00
gedrox
0ea3769664 Fix not recognized "type" option exception
The exception about not recognized "type" option was raised when "date", "datetime", "time" type was guessed by validator type guesser using the date related constraint.
2012-07-25 14:05:22 +03:00
Fabien Potencier
f4570d5e73 merged branch acasademont/use_referer_with_route_name (PR #5037)
Commits
-------

307d99c [Security] Fixed use_referer option not working properly when login_path is a route name

Discussion
----------

[Security] Fixed use_referer option not working properly when login_path...

... is a route name

When use_referer is set to true and the request comes from the login page,
the user should not be redirected to the login form again (the referer) but
to the default_target_path. The problem arises when our login_path option
is not a path but a route name, as the ```getUriForPath()``` method is not
made to create routes from route names.

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/acasademont/symfony.png?branch=master)](http://travis-ci.org/acasademont/symfony)
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -

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

by stloyd at 2012-07-24T16:24:28Z

👍
2012-07-25 11:37:42 +02:00
Fabien Potencier
965fe3258b [HttpFoundation] fixed a PHP Notice (refs #5034) 2012-07-25 09:38:36 +02:00
Fabien Potencier
207124c973 fixed CS 2012-07-25 07:24:06 +02:00
Albert Casademont
307d99c8f6 [Security] Fixed use_referer option not working properly when login_path is a route name
When use_referer is set to true and the request comes from the login page,
the user should not be redirected to the login form again (the referer) but
to the default_target_path. The problem arises when our login_path option
is not a path but a route name, as the ```getUriForPath()``` method is not
made to create routes from route names.
2012-07-24 17:37:00 +02:00
Julien Pauli
286d03b5d2 Fix for #5033 2012-07-24 17:11:14 +02:00
Fabien Potencier
2aaa4ed84e bumped Symfony version to 2.1.0-DEV 2012-07-23 19:27:52 +02:00
Bernhard Schussek
686bf6b664 [Form] Made original data of a form and choices accessible in templates 2012-07-23 19:24:46 +02:00
Fabien Potencier
d81b9f56cb updated VERSION for 2.1.0-BETA4 2012-07-23 19:10:10 +02:00
Fabien Potencier
a5451e48b7 fixed typo 2012-07-23 18:54:03 +02:00
Klein Florian
4b867654c6 [FrameworkBundle] recursively resolve container parameter placeholders
for arrays in router _defaults
2012-07-23 16:44:28 +02:00
Fabien Potencier
8d33ba9fc5 merged 2.0 2012-07-23 16:25:26 +02:00
Fabien Potencier
bceb28ff7a merged branch parhs/2.0 (PR #5005)
Commits
-------

5bfc25e Fixed buildViewBottomUp docs

Discussion
----------

Fixed buildViewBottomUp docs

Fixed documentation
2012-07-23 16:23:36 +02:00
Fabien Potencier
76c1e26272 moved deps in recommend to suggest 2012-07-23 16:23:01 +02:00
Grégoire Pineau
e1f1d3a1f7 Added missing property 2012-07-23 16:09:36 +02:00
Fabien Potencier
f58c27544d merged branch drak/nativefile_savepath (PR #5016)
Commits
-------

ff273af [HttpFoundation][Sessions] Micro-optimization
9bf3cb4 [HttpFoundation][Sessions] Add support for extended save_path for native files save handler

Discussion
----------

[Sessions] Add support for extended save_path for native files save handler

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4908
Todo: -
License of the code: MIT
Documentation PR: -
2012-07-23 15:55:36 +02:00
Drak
ff273af546 [HttpFoundation][Sessions] Micro-optimization 2012-07-23 12:18:38 +01:00
Bilal Amarni
91415b1371 removed unneeded class to compile 2012-07-23 12:27:23 +03:00
Drak
9bf3cb4e97 [HttpFoundation][Sessions] Add support for extended save_path for native files save handler 2012-07-23 09:59:09 +01:00
Fabien Potencier
c20c1d18dc merged branch bschussek/propertypath (PR #5011)
Commits
-------

dd2aa54 [Form] Disabled manual singulars in PropertyPath until the syntax is finalized

Discussion
----------

[Form] Disabled manual singulars in PropertyPath until the syntax is finalized

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
2012-07-22 10:03:04 +02:00
Fabien Potencier
4bafd1d788 [FrameworkBundle] removed temporary XDebug hack as the nesting issue has been resolved now 2012-07-22 10:02:56 +02:00
Bernhard Schussek
dd2aa54e15 [Form] Disabled manual singulars in PropertyPath until the syntax is finalized 2012-07-22 09:58:31 +02:00
Fabien Potencier
214e0554be merged branch bschussek/renderer (PR #5006)
Commits
-------

dc3a680 [Form] Improved FormRenderer API to reduce the size of the function call stack during rendering

Discussion
----------

[Form] Improved FormRenderer API to decrease the function call stack

Bug fix: no
Feature addition: no
Backwards compatibility break: **yes**
Symfony2 tests pass: yes
Fixes the following tickets: #4962, #4973
Todo: -

This PR reduces the function call stack size when rendering by directly calling the methods `renderBlock` and `searchAndRenderBlock` (formerly `renderSection`) and removing the delegating methods `render(Widget|Label|Row|...)`.

It breaks BC in that PHP templates now need to pass the FormView instance to `block` (formerly `renderBlock`). This is necessary, otherwise that function may behave buggy in special circumstances.

Otherwise this PR cleans up API method and parameter names to improve clarity.
2012-07-22 09:50:28 +02:00
Bernhard Schussek
eccc5bd0c6 [Form] Restored BC in AbstractType::getDefaultOptions() and getAllowedOptionValues() 2012-07-22 09:36:58 +02:00
Bernhard Schussek
dc3a680cd3 [Form] Improved FormRenderer API to reduce the size of the function call stack during rendering 2012-07-22 09:29:35 +02:00
Fabien Potencier
1be155ab8c [HttpFoundation] never send a 304 for non-safe HTTP methods 2012-07-21 21:52:19 +02:00
Fabien Potencier
019625d34e merged branch bschussek/options_performance (PR #5004)
Commits
-------

24b764e [Form] Fixed issues mentioned in the PR
9216816 [Form] Turned Twig filters into tests
310f985 [Form] Added a layer of 2.0 BC methods to FormView and updated UPGRADE and CHANGELOG
5984b18 [Form] Precalculated the closure for deciding whether a choice is selected (PHP +30ms, Twig +30ms)
5dc3c39 [Form] Moved the access to templating helpers out of the choice loop for performance reasons (PHP +100ms)
0ef9acb [Form] Moved the method isChoiceSelected() to the ChoiceView class (PHP +150ms)
8b72766 [Form] Tweaked the generation of option tags for performance (PHP +200ms, Twig +50ms)
400c95b [Form] Replace methods in ChoiceView by public properties (PHP +100ms, Twig +400ms)
d072f35 [Form] The properties of FormView are now accessed directly in order to increase performance (PHP +200ms, Twig +150ms)

Discussion
----------

[Form] Made FormView and ChoiceView properties public for performance reasons

Bug fix: no
Feature addition: no
Backwards compatibility break: **yes**
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

This PR changes the access to properties of `FormView` and `ChoiceView` objects from getters to direct property accesses. On [my example form](http://advancedform.gpserver.dk/app_dev.php/taxclasses/1) this improves rendering performance for **300ms** with PHP templates and **550ms** with Twig on my local machine.

Unfortunately, this breaks BC both with 2.0 and with the current master in Form Types and PHP templates. Twig templates are not affected by this change.

2.0:
```
$formView->set('my_var', 'foobar');
$formView->get('my_var');
$formView->getChild('childName');
$formView['childName'];
```

master:
```
$formView->setVar('my_var', 'foobar');
$formView->getVar('my_var');
$formView->get('childName');
$formView['childName'];
```

this PR:
```
$formView->vars['my_var'] = 'foobar';
$formView->vars['my_var'];
$formView->children['childName'];
$formView['childName'];
```

Should we add methods to keep BC with 2.0?

The second part of this PR contains improvements to the rendering of choice fields. These gain another **~500ms** for PHP templates and **80ms** for Twig. These improvements are BC, unless you overwrote the block "choice_widget_options" in your form themes which then needs to be adapted.

**Update:**

The PR now includes a BC layer for 2.0.

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

by stof at 2012-07-21T11:37:41Z

@bschussek couldn't we keep the getters and setters for BC even if the rendering accesses the public properties directly ?

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

by bschussek at 2012-07-21T11:52:33Z

@stof A BC layer for 2.0 is now included. People who upgraded to master already unfortunately need to adapt their code.

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

by sstok at 2012-07-21T12:40:57Z

👍
2012-07-21 19:51:42 +02:00
Bernhard Schussek
24b764e066 [Form] Fixed issues mentioned in the PR 2012-07-21 19:45:31 +02:00
Bernhard Schussek
921681658c [Form] Turned Twig filters into tests 2012-07-21 17:26:50 +02:00
Bernhard Schussek
310f985b99 [Form] Added a layer of 2.0 BC methods to FormView and updated UPGRADE and CHANGELOG 2012-07-21 13:49:32 +02:00
Fabien Potencier
6c256b01b0 merged branch KaipiYann/Fix-DocBlock-attemptAuthentication (PR #4996)
Commits
-------

134cc84 [Security] Fix DocBlock of attemptAuthentication

Discussion
----------

[Security] Fix DocBlock of attemptAuthentication

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-07-21 13:16:18 +02:00
Fabien Potencier
70477b7c95 merged branch Slamdunk/hotfix/late-static-create (PR #4991)
Commits
-------

9dc2011 Late static factory method

Discussion
----------

Late static factory method

When using `Symfony\CS\Finder\DefaultFinder::create()`, we lose all `Symfony\CS\Finder\DefaultFinder::__construct()` properties because main `Finder` does not use late static binding.

This commit resolves the issue.
2012-07-21 13:14:55 +02:00
Fabien Potencier
deb98d9163 merged branch bschussek/setdata_performance (PR #5003)
Commits
-------

d4f4038 [Form] Reduced the number of setData() calls by deferring a Form's initialization (+40ms)

Discussion
----------

[Form] Reduced the number of setData() calls

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

This PR decreases the number of expensive `setData()` calls on `Form` instances by deferring the form's initialization with default data to the first call to a `get*Data()` method. If `setData()` is called manually before invoking `get*Data()`, the initialization with the default data will not take place.

Before:

```
$form = new Form($config); // implicit setData($config->getData());
$form->setData($object); // setData() is now called twice
```

After:

```
$form = new Form($config); // no implicit setData()
$form->getData(); // implicit setData($config->getData())

// or

$form = new Form($config);
$form->setData($object);
$form->getData(); // setData() was called only once
```
2012-07-21 13:12:45 +02:00
Bernhard Schussek
3075fa6b39 [OptionsResolver] Renamed filters to normalizers 2012-07-21 13:02:12 +02:00
Bernhard Schussek
d4f4038f6d [Form] Reduced the number of setData() calls by deferring a Form's initialization (+40ms) 2012-07-21 12:57:35 +02:00
Bernhard Schussek
5984b18a7a [Form] Precalculated the closure for deciding whether a choice is selected (PHP +30ms, Twig +30ms) 2012-07-21 12:56:50 +02:00
Bernhard Schussek
5dc3c39fd2 [Form] Moved the access to templating helpers out of the choice loop for performance reasons (PHP +100ms) 2012-07-21 12:56:50 +02:00
Bernhard Schussek
0ef9acb479 [Form] Moved the method isChoiceSelected() to the ChoiceView class (PHP +150ms) 2012-07-21 12:56:50 +02:00
Bernhard Schussek
8b72766473 [Form] Tweaked the generation of option tags for performance (PHP +200ms, Twig +50ms) 2012-07-21 12:56:50 +02:00
Bernhard Schussek
400c95bb4d [Form] Replace methods in ChoiceView by public properties (PHP +100ms, Twig +400ms) 2012-07-21 12:56:11 +02:00
Bernhard Schussek
d072f35ea0 [Form] The properties of FormView are now accessed directly in order to increase performance (PHP +200ms, Twig +150ms) 2012-07-21 12:56:11 +02:00
ddebree
37bbd0f60a Moved symfony/config from the "recommend" dependency to the "suggest" dependency. Cannot find "recommend" in composer documentation 2012-07-21 13:17:54 +03:00
parhs
5bfc25e6b3 Fixed buildViewBottomUp docs 2012-07-21 00:54:17 +03:00
Alex Bogomazov
ae6016c6fc [Finder] Workaround for FilterIterator-FilesystemIterator-rewind issue 2012-07-20 19:29:53 +03:00
Kaipi Yann
134cc84e99 [Security] Fix DocBlock of attemptAuthentication
Add Response as possible return type of the method because the method AbstractAuthenticationListener::handle() test if $returnValue is an instance of Response (line 148).
2012-07-20 15:46:05 +02:00
Filippo Tessarotto
9dc20116e3 Late static factory method 2012-07-20 11:54:42 +02:00
Fabien Potencier
9f157a1616 merged branch docteurklein/unique-entity-validator-with-custom-repository-method (PR #4979)
Commits
-------

4eb54a0 update CHANGELOG
db9ea09 [Doctrine] [Bridge] fix repositoryMethod test
2a6c222 Add a customRepository option to the uniqueEntity validator

Discussion
----------

[Doctrine] [Bridge] Add a "repositoryMethod" option to the uniqueEntity validator

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

This allows to configure the repository method used to verify uniqueness of entity.
Before, it was always using `findBy`.

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

by fabpot at 2012-07-20T05:35:28Z

Can you add a note in the CHANGELOG?

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

by docteurklein at 2012-07-20T07:17:08Z

@fabpot done.
2012-07-20 11:35:08 +02:00
Klein Florian
4eb54a042d update CHANGELOG 2012-07-20 09:25:13 +02:00
Fabien Potencier
4bde2aac41 merged 2.0 2012-07-20 07:34:13 +02:00
Fabien Potencier
112a51392a merged branch vicb/response/statuscode (PR #4980)
Commits
-------

ed8823c [HttpFoundation] Allow setting an unknown status code without specifying a text

Discussion
----------

[HttpFoundation] Allow setting an unknown status code without specifying...

... a text

fix #4978
2012-07-20 07:30:32 +02:00
Fabien Potencier
c0fc40013a merged branch eko/2.0 (PR #4983)
Commits
-------

16a980b [Validator] Fix bug order for constraint, property, getter and group-sequence-provider in validation.xml

Discussion
----------

[Validator] Fix bug order for constraint, property, getter and group-seq...

Actually, there is a bug that force developers to write validation.xml file with the following nodes order:

- constraint
- property
- getter

So that's not possible to have the following XML (because I need to write my property(ies) first).

```xml
<?xml version="1.0" encoding="UTF-8" ?>
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                    xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">

    <class name="Application\Eko\MyBundle\Entity\MyEntity">
        <getter property="isBar">
            <constraint name="True">
                <option name="message">My error message</option>
            </constraint>
        </getter>

        <property name="foo">
            <constraint name="NotBlank" />
        </property>
    </class>

</constraint-mapping>
```

The XML below result in the following exception:

```
[ERROR 1871] Element '{http://symfony.com/schema/dic/constraint-mapping}property': This element is not expected. Expected is ( {http://symfony.com/schema/dic/constraint-mapping}getter ). (in /var/www/myproject/src/Application/Eko/MyBundle/Resources/config/validation.xml - line 14, column 0)
```

This is due to the sequence element that needs to respect the order given in the schema file.

The choice element is doing the same thing and permit to have a free order of elements so I have replaced the sequence by a choice element.

For more information: http://www.w3.org/TR/xmlschema-0/#ref17
2012-07-20 07:29:27 +02:00
Jordi Boggiano
4f93d1addd [Console] Use proc_open instead of exec to suppress errors when run on windows and stty is not present 2012-07-20 07:25:32 +02:00
Fabien Potencier
503899e26c merged branch Seldaek/rename (PR #4986)
Commits
-------

c81b2ad [Form] Rename UnmodifiableFormConfig to ImmutableFormConfig
274eb9e [EventDispatcher] Rename UnmodifiableEventDispatcher to ImmutableEventDispatcher

Discussion
----------

Rename unmodifiable to immutable

Maybe it's just me, but it sounded really wrong. The EventDispatcher one was added in 2.1 so no BC break. I don't know about the Form one, but I guess it's just used internally anyway.
2012-07-20 07:16:03 +02:00
Fabien Potencier
b201812927 merged branch Fran6co/fix-security-handlers (PR #4985)
Commits
-------

39157a8 [Security] fixes multiple overlapping definitions of DefaultFailureHandler and DefaultSuccessHandler in AbstractFactory

Discussion
----------

[Security] fixes multiple overlapping definitions of DefaultFailureHandler and DefaultSuccessHandler in AbstractFactory

If more than one listener extends AbstractFactory, you'll have multiple calls to createAuthenticationFailureHandler and createAuthenticationSuccessHandler with the same id.

Implicitly it's going to use the one generated by the last factory generating unexpected behavior.

This is related to commits 915704c071 and c6aa392df7
2012-07-20 07:15:13 +02:00
Jordi Boggiano
c81b2ad3e2 [Form] Rename UnmodifiableFormConfig to ImmutableFormConfig 2012-07-20 01:18:42 +02:00
Jordi Boggiano
274eb9ebaf [EventDispatcher] Rename UnmodifiableEventDispatcher to ImmutableEventDispatcher 2012-07-20 01:18:14 +02:00
Francisco Facioni
39157a852d [Security] fixes multiple overlapping definitions of DefaultFailureHandler and DefaultSuccessHandler in AbstractFactory 2012-07-19 19:25:03 -03:00
Tobias Schultze
d85650d29f [Validator] remove return value in TrueValidator 2012-07-19 23:47:59 +03:00
Vincent Composieux
16a980b937 [Validator] Fix bug order for constraint, property, getter and group-sequence-provider in validation.xml 2012-07-19 20:43:09 +02:00
Victor Berchet
ed8823c168 [HttpFoundation] Allow setting an unknown status code without specifying a text 2012-07-19 17:48:12 +02:00
Klein Florian
db9ea095f0 [Doctrine] [Bridge] fix repositoryMethod test 2012-07-19 16:54:35 +02:00
Fabien Potencier
67bf84d7c5 [Routing] fixed typo 2012-07-19 16:39:03 +02:00
Klein Florian
2a6c222c51 Add a customRepository option to the uniqueEntity validator 2012-07-19 16:24:10 +02:00
Fabien Potencier
382f8a5eb9 merged branch Tobion/patch-2 (PR #4968)
Commits
-------

1986e10 [HttpFoundation] optimize makeDisposition

Discussion
----------

[HttpFoundation] optimize makeDisposition
2012-07-19 11:21:09 +02:00
Fabien Potencier
d5463acb23 merged branch cs278/rhel5-invalid-exitcode (PR #4970)
Commits
-------

310c458 [Process] Fixed a problem on RHEL5 where the exit code was incorrect

Discussion
----------

[Process] Fixed a problem on RHEL5 where the exit code was incorrect

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

RHEL5 will intermittently result in an exit code of -1 due to `proc_get_status()` being called after the process has completed but outside of `updateStatus()` which saves the exit code.

See composer/composer#876
2012-07-19 10:06:46 +02:00
Chris Smith
310c458936 [Process] Fixed a problem on RHEL5 where the exit code was incorrect
RHEL5 will intermittently result in an exit code of -1 [1] due to
proc_get_status() being called after the process has completed
but outside of updateStatus() which saves the exit code.

[1]: https://github.com/composer/composer/issues/876
2012-07-18 18:33:32 +01:00
Pascal Borreli
3bb975c153 [WebProfilerBundle] Fixed white pixel in toolbar info 2012-07-18 19:29:43 +02:00
Tobias Schultze
1986e1052a [HttpFoundation] optimize makeDisposition 2012-07-18 18:28:33 +03:00
Artem Lopata (bumz)
89975ef9d6 Added more verbose message for exception when form types have wrong getName method 2012-07-18 12:37:22 +03:00
Fabien Potencier
4ce724936a moved the request data collector to HttpKernel 2012-07-18 10:39:53 +02:00
Fabien Potencier
a7503fb399 added a missing comment 2012-07-18 10:24:35 +02:00
Fabien Potencier
ebea32c40d merged branch guilhermeblanco/patch-9 (PR #4949)
Commits
-------

1f33756 Update master

Discussion
----------

Allow HttpKernel ->render to be called directly

Hi,

I faced this problem in a funny situation.
Working on tests of individual components, I want to be able to test sub-requests. These elements are not mapped directly, relying on `FrameworkBundle` routing internal to achieve its goal.

The nature of my application leads to fully decoupled bundles, being a website responsible to define everything, from app configuration to routing elements. That way, an individual bundle controller don't know the route it should call, leading the test to be harder to do.

Together with this situation, it is also required in my testing scenario to be able to test the real world execution, then being an ESI include (a sub-request). This test then needs to be able to directly call controller to be rendered. That said, `HttpKernel` provides an API that does exactly what is required to achieve my goal, calling `render()` which triggers the sub-request and also accepts options which allows me to test the real world scenarios.
But as soon as you trigger the method, `ProfileListener` intercepts the kernel response to collect profiling information. Under this specific situation, since you called directly `render`, there's no master request, then leading the test to fail with the following PHP warning:

```
Warning: SplObjectStorage::offsetExists() expects parameter 1 to be object, boolean given in /var/www/nde/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/EventListener/ProfilerListener.php line 120
```

To fix that, all that is needed is a check for a possible parent request. That's the purpose of this patch. =)

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

by stof at 2012-07-17T15:11:13Z

This looks good to me, but as said on IRC, a test should be added to avoid regressions
2012-07-18 10:22:46 +02:00
Fabien Potencier
f6815be7f2 [FrameworkBundle] raised the max nesting level for XDebug for tests to pass 2012-07-18 10:19:41 +02:00
Fabien Potencier
e0409f5218 fixed some tests 2012-07-18 10:08:52 +02:00
Fabien Potencier
0598043cef removed unneeded echo 2012-07-18 09:46:34 +02:00
Fabien Potencier
1570db9646 merged branch bschussek/performance (PR #4918)
Commits
-------

1474aa5 [Form] Fixed consideration of Twig's template inheritance and added another performance-improving check
b4ec7f5 Fixed my rubbish English
d11f8b5 [Form] Fixed passing of variables in the FormRenderer
629093e [Form] Extracted common parts of FormHelper and FormExtension into separate classes
216c539 [Form] Implemented a more intelligent caching strategy in FormHelper (PHP +100ms, Twig +100ms)

Discussion
----------

[Form] Merged FormHelper and FormExtension and implemented a better caching strategy

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

This PR extracts common parts of `FormHelper` and `FormExtension` into implementations of the new interfaces `FormRendererInterface` and `FormRendererEngineInterface`. The implemented `AbstractRendererEngine` features a more intelligent caching strategy than the one used before. When this strategy was implemented directly in `FormHelper`, the performance of [this specific, heavy form](http://advancedform.gpserver.dk/app_dev.php/taxclasses/1) could be improved from **2.5** to **2.25 seconds** on my machine for PHP templates.

Due to the abstraction and delegation, the performance gain is not that big anymore, but we still have a performance gain of about **0.1 seconds** for both PHP and Twig in the above example. The second, big improvement of this PR is maintainability - the differences between PHP and Twig templates are now contained in relatively small classes - and extendability (it is very easy now to support different template engines).

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

by stof at 2012-07-14T13:47:19Z

should a similar refactoring be done for the [Twig rendering](https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Extension/FormExtension.php) ?

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

by bschussek at 2012-07-14T13:49:25Z

Yes. I would like to merge the common parts of Twig's FormExtension and PHP's FormHelper into an abstract class. Before that I need to have a [working, heavy Twig Form](https://twitter.com/webmozart/status/224135287377371138) in order to measure whether I don't actually decrease the performance with Twig. Can you help me there?

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

by vicb at 2012-07-16T21:48:24Z

Would it make sense to create a 'renderer' folder in the form component and move related classes there ?

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

by stof at 2012-07-16T22:06:58Z

@vicb It makes sense to keep the Twig renderer in the brisge. This is what the bridge is about. Moving the Twig class to the component would not be consistent. And the PHP renderer is already in the component (but it could make sense to move the helper from FrameworkBundle to the TemplatingExtension of the Form component though)

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

by vicb at 2012-07-16T22:16:50Z

@stof I was only referring to the classes located in the Component/Form folder.

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

by vicb at 2012-07-16T22:27:27Z

Overall I don't really know what to think of this PR. PHP and Twig use a different way to support blocks:

- PHP has one block per file,
- Twig could have many blocks per templates.

I am not sure if this PR is optimal for Twig and improves maintainability ?

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

by stof at 2012-07-16T22:46:11Z

@vicb it avoids duplicating the whole rendering logic for each engine (there is at least a third one in [SmartyBundle](https://github.com/noiselabs/SmartyBundle/blob/master/Extension/FormExtension.php) btw)

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

by bschussek at 2012-07-17T07:16:42Z

@vicb I don't think a renderer subfolder makes sense. The interfaces belong to the main namespace, and then the subfolder would only contain two classes.

Considering maintainability for Twig, I think that this PR in fact increases it. TwigExtension before always had to check the whole type hierarchy, while now the code in AbstractRendererEngine makes sure that this process is speeded up.

Before:
```
load _some_entity_field_label:
    - check _some_entity_field_label
    - check entity_label
    - check choice_label
    - check form_label

load _some_other_entity_field_label
    - check _some_other_entity_field_label
    - check entity_label
    - check choice_label
    - check form_label

a.s.o.
```

After:
```
load _some_entity_field_label:
    - check _some_entity_field_label
    - check entity_label (hits the cache if entity_label was checked before)
    - check choice_label (hits the cache if choice_label was checked before)
    - check form_label

load _some_other_entity_field_label
    - check _some_other_entity_field_label
    - check entity_label (now definitely hits the cache)

a.s.o.
```

Since many fields share the same ancestors in the inheritance tree, this definitely improves performance.

As can also be deducted here, custom block names such as `_some_entity_field_label` are now a major drawback. There is nothing we can cache for them, so they need to be checked for every individual block that we load. Removing this feature surprisingly gains no performance for Twig (I need to investigate why at some point), but it speeds up rendering for **250ms** using the PHP engine on [this example form](advancedform.gpserver.dk/app_dev.php/taxclasses/1), dropping the rendering time from 1.25 to 1 sec on my local machine. I'm not sure what we should do here.

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

by stof at 2012-07-17T07:21:31Z

@bschussek could it be possible to have an implementation checking the custom block and another one skipping it ? This way, the user could disable this feature when he does not need it.

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

by bschussek at 2012-07-17T07:38:34Z

@stof It would be possible to add a switch to `FormRenderer` that controls whether custom blocks are checked or not.

If this switch is disabled by default, we break BC. If this switch is enabled by default, it will be pretty useless. People will start designing away for custom blocks, and once they want to improve performance, they can't turn off the switch anymore because it would require too many changes.

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

by stof at 2012-07-17T08:08:38Z

@fabpot what do you think about it ?

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

by bschussek at 2012-07-17T08:41:43Z

Another option that just came to mind is to remove inheritance checks for anything but _widget and _row. I.e., if we render `entity_widget`, check
```
_id_widget
entity_widget
choice_widget
form_widget
```
But if we render `entity_label`, only check
```
_id_label
form_label
```

This improves PHP Templating for **170ms** and Twig for **20ms**. We gain another **150ms** for PHP Templating and **~15ms** for Twig if we also restrict custom fields (_id_widget) to the _widget and _row suffixes (it's really hard to tweak the renderer for Twig.. I think a lot of its performance bottlenecks lie in Twig itself).

Do you have any data on how often blocks other than _widget and _row are customized for specific types/IDs?

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

by stof at 2012-07-17T09:47:38Z

Well, I think most of the time other blocks are not even customized based on the type :)

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

by Tobion at 2012-07-17T14:32:39Z

From my experience rendering the form components individually is easier and more flexible than customizing by ID or type.
But there are still use cases for customizing like library-like bundles (e.g. Bootstrap).
2012-07-18 08:33:15 +02:00
Fabien Potencier
242a388ea4 merged branch bschussek/optionsresolver (PR #4945)
Commits
-------

610c602 [OptionsResolver] Slightly tweaked the performance of the Options class

Discussion
----------

[OptionsResolver] Slightly tweaked the performance of the Options class

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
2012-07-17 23:06:01 +02:00
Fabien Potencier
34c2bf75e0 merged branch bschussek/phpengine_cache_escape (PR #4942)
Commits
-------

0d0a968 [Templating] Cached the result of escape() in order to improve performance (+470ms)

Discussion
----------

[Templating] Cached the result of escape() in order to improve performance

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

This improvement gains **400ms** of rendering speed on [this particular example page](http://advancedform.gpserver.dk/app_dev.php/taxclasses/1).

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

by lsmith77 at 2012-07-16T17:36:50Z

i guess we don't have to be concerned with increased memory usage here .. if at all we could offer a clear cache method in case someone is f.e. using this to generate tons of messages in a cron job.

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

by henrikbjorn at 2012-07-17T06:39:52Z

The example form is broken.

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

by bschussek at 2012-07-17T07:21:26Z

The source code for the form can be found [here](https://github.com/stof/symfony-standard/blob/twig_forms/src/AdvancedForm/CoreBundle/Form/TaxClassType.php).

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

by henrikbjorn at 2012-07-17T07:28:11Z

But i am guessing this is only for php not twig :P

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

by bschussek at 2012-07-17T07:41:07Z

Obviously..
2012-07-17 22:45:12 +02:00
Fabien Potencier
8754c0c33f merged branch stof/doctrine_2_3 (PR #4941)
Commits
-------

8f99be3 [DoctrineBridge] Fixed the type guesser for doctrine 2.3

Discussion
----------

[DoctrineBridge] Fixed the type guesser for doctrine 2.3

Doctrine 2.3 now uses the drivers moved to Common, so the exception was not catched anymore and was breaking the guessing when a non-entity was used.

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

by craue at 2012-07-16T14:54:30Z

👍

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

by ddeboer at 2012-07-17T20:07:57Z

👍

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

by stof at 2012-07-17T20:17:01Z

@fabpot please merge this as 2.1 is currently broken when you rely on the form guessers for unmapped classes
2012-07-17 22:45:07 +02:00
Fabien Potencier
f52ce61782 merged branch bschussek/issue4125 (PR #4953)
Commits
-------

17ca9b6 [Form] Fixed DoctrineType to use getManagerForClass() if no EM name is given

Discussion
----------

[Form] Fixed DoctrineType to use getManagerForClass() if no EM name is given

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4125
Todo: -

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

by stof at 2012-07-17T08:16:59Z

👍
2012-07-17 11:07:53 +02:00
Bernhard Schussek
17ca9b671a [Form] Fixed DoctrineType to use getManagerForClass() if no EM name is given 2012-07-17 10:16:11 +02:00
Bernhard Schussek
1474aa5fa2 [Form] Fixed consideration of Twig's template inheritance and added another performance-improving check 2012-07-17 09:02:04 +02:00
Jonathan Ingram
764b1dea62 [FrameworkBundle] minor typo in controller action docblock 2012-07-17 15:02:05 +10:00
Guilherme Blanco
1f3375695c Update master 2012-07-17 00:00:12 -03:00
Bernhard Schussek
610c602b06 [OptionsResolver] Slightly tweaked the performance of the Options class 2012-07-16 22:35:31 +02:00
Bernhard Schussek
b4ec7f54eb Fixed my rubbish English 2012-07-16 21:54:46 +02:00
Bernhard Schussek
d11f8b5e9e [Form] Fixed passing of variables in the FormRenderer 2012-07-16 21:39:30 +02:00
Bernhard Schussek
629093ed25 [Form] Extracted common parts of FormHelper and FormExtension into separate classes 2012-07-16 21:39:27 +02:00
Bernhard Schussek
0d0a968800 [Templating] Cached the result of escape() in order to improve performance (+470ms) 2012-07-16 18:29:06 +02:00
Bernhard Schussek
216c539e41 [Form] Implemented a more intelligent caching strategy in FormHelper (PHP +100ms, Twig +100ms) 2012-07-16 18:04:36 +02:00
Christophe Coevoet
8f99be39ab [DoctrineBridge] Fixed the type guesser for doctrine 2.3 2012-07-16 16:48:22 +02:00
Fabien Potencier
151b79a6ce bumped Symfony version to 2.1.0-DEV 2012-07-15 20:27:15 +02:00
Fabien Potencier
c4b5d6d7fe simplified code 2012-07-15 20:06:17 +02:00
Fabien Potencier
613445fd0f updated VERSION to 2.1.0-BETA3 2012-07-15 20:05:02 +02:00
Fabien Potencier
91da592c7c fixed typo (thanks @stof) 2012-07-15 20:03:01 +02:00
Fabien Potencier
8c32a8e936 fixed guessRoute() 2012-07-15 19:49:08 +02:00
Fabien Potencier
8f82e07429 made RequestDataCollector from HttpKernel and FrameworkBundle compatible 2012-07-15 19:07:14 +02:00
Fabien Potencier
dd8a401e68 made the Kernel dep optional in ConfigDataCollector 2012-07-15 19:03:03 +02:00
Fabien Potencier
0875124fee moved the router data collector to HttpKernel 2012-07-15 18:35:25 +02:00
Jordan Alliot
e43a5c7b0d [Security] Changed logger channel for default auth failure handler 2012-07-15 18:55:17 +03:00
Fabien Potencier
26c21c98bf merged branch bamarni/patch-1 (PR #4933)
Commits
-------

b4d1bdf [Form] added a bc break note about the tag alias matching

Discussion
----------

[Form] added a bc break note about the tag alias matching

6489a65960 is a BC break if we were relying on the previous behavior.
2012-07-15 15:43:33 +02:00
Fabien Potencier
b255db5ca0 [WebProfilerBundle] made WebDebugToolbarListener implement EventSubscriberInterface 2012-07-15 15:41:19 +02:00
Bilal Amarni
b4d1bdf9e6 [Form] added a bc break note about the tag alias matching 2012-07-15 16:34:11 +03:00
Fabien Potencier
93cbdfdd62 Revert "merged branch stof/serializable_role (PR #4925)"
This reverts commit b0750f6dcd, reversing
changes made to d09bfe7552.
2012-07-15 14:58:33 +02:00
Fabien Potencier
2644f1c2f5 [WebProfilerBundle] removed remaining request retrieval from the container 2012-07-15 14:45:43 +02:00
Fabien Potencier
b0750f6dcd merged branch stof/serializable_role (PR #4925)
Commits
-------

1f2f866 fixed the serialization of the SwitchUserRole
b55930a [Security] Implemented the Serializable interface in the Role class

Discussion
----------

[Security] Implemented the Serializable interface in the Role class

The Role class is serialized in the session for each role of the user. Implementing the Serializable interface allows to reduce the size of the data.
2012-07-15 14:10:42 +02:00
Fabien Potencier
cd24e6ea8f Revert "raised the minimum version of PHP to 5.3.4 (closes #3856)"
This reverts commit 2dcc44897e.
2012-07-15 12:13:51 +02:00
Fabien Potencier
9841ba4213 [HttpFoundation] removed buffer flushing in Response when on the CLI 2012-07-15 10:55:34 +02:00
Fabien Potencier
80840fcd69 merged branch asm89/default-logout-success-handler (PR #4921)
Commits
-------

df2406f [Security] Add note to changelog about BC break
01b2e39 [Security] Extract default logout success handling logic

Discussion
----------

[Security] Extract default logout success handling logic

Bug fix: no
Feature addition: no
Backwards compatibility break: yes, small one for people using the component
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/asm89/symfony.png?branch=default-logout-success-handler)](http://travis-ci.org/asm89/symfony)
License of the code: MIT

As discussed earlier with @fabpot and @schmittjoh. This PR extracts the default logout success handling logic to a separate class that users can extend.

Note: build status is red, but that is because of a failing performance test in the form component? ..
2012-07-15 10:12:14 +02:00
Fabien Potencier
d7a5449dda [HttpFoundation] tweaked previous merge 2012-07-15 09:31:47 +02:00
Fabien Potencier
4513210276 merged branch pounard/master (PR #4914)
Commits
-------

7d53909 Earlier PHP output buffer flush for non FPM environments

Discussion
----------

Earlier PHP output buffer flush for non FPM environments

In the Response::send() method you are calling the fastcgi_finish_request() in case it exists. This will provide a respectful performance boost when you have significant work being done by listeners acting on kernel terminal events; Sadly you are forgetting people that don't use FPM doing this.

The performance boost for a Vanilla PHP is not much: flushing earlier potentially helps higher layers such as the HTTPd or potential other cache layers: the sooner their buffer gets filled, the sooner they release information to the browser, even if the output buffer is still open. The explicit flush() is supposed to do exactly this.
2012-07-15 09:29:03 +02:00
Fabien Potencier
0713517971 merged branch asm89/form-performance (PR #4923)
Commits
-------

33f29ed [Form] '@group benchmark' for form performance tests

Discussion
----------

[Form] '@group benchmark' for form performance tests

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/asm89/symfony.png?branch=form-performance)](http://travis-ci.org/asm89/symfony)
License of the code: MIT

I think a PR or note about this has been rejected before, but since build statuses on PRs sometimes seem to fail if travis is busy I think moving the form performance tests to `@group benchmark` should be reconsidered.

Edit: even master is currently failing on this
2012-07-15 09:26:15 +02:00
Fabien Potencier
4e5b80661f merged branch danielholmes/validator_inheritdoc (PR #4931)
Commits
-------

07992d3 [Validator] Added inheritDoc phpdoc for validate methods

Discussion
----------

[Validator] Added inheritDoc phpdoc for validate methods

Was instructed by @stof to do this for a PR on comparison validators and noticed none of the validators used inheritDoc.

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: n/a
Todo: I haven't looked around too much, but I assume if none of the validators followed this standard that there would be a fair few other classes not using. Obviously not a big issue though
License of the code: MIT
Documentation PR: n/a
2012-07-15 09:24:18 +02:00
Fabien Potencier
cf146c0c01 merged branch drak/flashbag_default (PR #4926)
Commits
-------

5ae0da0 Update changelogs
ff91b9a [FrameworkBundle] Make FlashBag the default.

Discussion
----------

[2.1][FrameworkBundle] Make FlashBag the default.

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

The difference between `AutoExpireFlashBag` and `FlashBag` is simply that the first will expire flashes regardless of being displayed on the next pageload.  This can result in lost messages. It was created simply for BC with 2.0.

`FlashBag` expires flashes once they are retrieved. This also makes it ESI compatible.

/cc @lsmith77

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

by jalliot at 2012-07-14T18:13:40Z

+1!
You should add it to the changelog and upgrade files though :)
2012-07-15 09:23:39 +02:00
Fabien Potencier
a539858dd3 [Translation] fixed typo 2012-07-15 09:21:44 +02:00
Fabien Potencier
3fff47acff merged branch weaverryan/message-selector-exception (PR #4929)
Commits
-------

480ab14 Further improving the MessageSelector exception

Discussion
----------

Further improving the MessageSelector exception

Hey guys!

The goal is just to give the users a better starting point when they see this exception.

See previous change in #4173 and conversation in #4207

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

Thanks!

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

by stof at 2012-07-14T23:11:17Z

Shouldn't it be done in 2.0 instead ?

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

by weaverryan at 2012-07-15T00:15:42Z

I decided to go against 2.1 when I saw that #4173 was against 2.0. If we do it against 2.0, it'll cause a conflict when 2.0 is merged into master - seemed like too much trouble for such a small change.
2012-07-15 09:20:46 +02:00
Daniel Holmes
07992d352c [Validator] Added inheritDoc phpdoc for validate methods 2012-07-14 17:42:20 -07:00
Ryan Weaver
480ab14a33 Further improving the MessageSelector exception
See previous change in #4173 and conversation in #4207
2012-07-14 18:05:33 -05:00
Drak
5ae0da015d Update changelogs 2012-07-14 22:43:03 +01:00
excelwebzone
c4ead527b3 [Validator] more updated hebrew messages 2012-07-14 14:32:16 -07:00
Drak
ff91b9aed0 [FrameworkBundle] Make FlashBag the default.
This makes the full stack framework ESI compatible.
2012-07-14 18:24:10 +01:00
Fabien Potencier
36d12dde5b merged branch stof/serializer_improvement (PR #4904)
Commits
-------

12bdec3 Moved the NormalizationAwareInterface check to the ChainEncoder
28e137c [Serializer] Added a ChainEncoder and a ChainDecoder

Discussion
----------

[Serializer] Added a ChainEncoder and a ChainDecoder

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/stof/symfony.png?branch=serializer_improvement)](http://travis-ci.org/stof/symfony)
Fixes the following tickets: -
Todo: -

These classes contains the logic previously defined in the Serializer itself to handle the choice of a serializer. This allows reusing it when using only the encoding part of the component, without having to use the Serializer class (which is not as handy to bootstrap when you want to use only encoders and decoders as normalizers come first)

I was wondering if these classes should have adders but I kept the constructor injection only to be consistent with the current code (encoders cannot be registered after the instantiation) and to avoid implementing the SerializerAwareInterface in them (to allow injecting the Serializer in serializer-aware encoders and decoders added later).

Note that this change is fully BC as it only changes the internal implementation of the Serializer.

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

by fabpot at 2012-07-14T11:07:32Z

ping @lsmith77 @Seldaek

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

by Seldaek at 2012-07-14T15:17:42Z

After a quick look, I'd say +1
2012-07-14 18:10:40 +02:00
Fabien Potencier
4dd47ac17b merged branch excelwebzone/validator (PR #4924)
Commits
-------

ddbb26e [Validator] updated hebrew messages

Discussion
----------

[Validator] updated hebrew messages
2012-07-14 18:09:33 +02:00
Christophe Coevoet
1f2f866fff fixed the serialization of the SwitchUserRole 2012-07-14 18:00:37 +02:00
Christophe Coevoet
b55930a45b [Security] Implemented the Serializable interface in the Role class 2012-07-14 17:42:15 +02:00
excelwebzone
ddbb26e5ae [Validator] updated hebrew messages 2012-07-14 08:21:09 -07:00
Alexander
33f29ed174 [Form] '@group benchmark' for form performance tests 2012-07-14 16:20:31 +02:00
Alexander
df2406f286 [Security] Add note to changelog about BC break 2012-07-14 16:07:27 +02:00
Alexander
01b2e3946c [Security] Extract default logout success handling logic 2012-07-14 16:07:08 +02:00
Christoph Schaefer
a80ef6b482 Fixed: The type name specified for the service propel.form.type.model does not match the actual name 2012-07-14 16:45:00 +03:00
Fabien Potencier
28abff8147 merged branch hason/czech_validator_messages (PR #4919)
Commits
-------

42cfd25 [Validator] updated czech messages

Discussion
----------

[Validator] updated czech messages
2012-07-14 15:40:18 +02:00
Martin Hasoň
42cfd259ac [Validator] updated czech messages 2012-07-14 15:37:06 +02:00
Fabien Potencier
11f8cf0520 merged branch Dattaya/form/test-error (PR #4916)
Commits
-------

dbd169f [Form] Error in the SimpleFormTest case.

Discussion
----------

[Form] Error in the SimpleFormTest case.

Symfony2 tests pass: yes

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

by bschussek at 2012-07-14T13:25:28Z

Thanks, looks like a copy paste error. @fabpot 👍
2012-07-14 15:30:15 +02:00
Fabien Potencier
baf990b762 [HttpKernel] fixed the request data collector which always started the session (closes #4915) 2012-07-14 15:04:55 +02:00
Yaroslav Kiliba
dbd169f82e [Form] Error in the SimpleFormTest case. 2012-07-14 16:02:46 +03:00
Pierre Rineau
7d53909d47 Earlier PHP output buffer flush for non FPM environments 2012-07-14 14:47:09 +02:00
Fabien Potencier
dcf933be39 merged branch jalliot/exception-profiler-logs (PR #4912)
Commits
-------

1764574 [TwigBundle] Improved logs display on exception page

Discussion
----------

[TwigBundle] Improved logs display on exception page

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes

* Add the priority level in front of log entries
* Better display of warnings
2012-07-14 14:37:46 +02:00
Mephistofeles
d26f133e6a [Validator] [Resources] fixed polish validator translated messages for polish locale
Added pluralization support and translated new messages.
2012-07-14 14:08:31 +02:00
Jordan Alliot
1764574198 [TwigBundle] Improved logs display on exception page 2012-07-14 13:58:32 +02:00
Fabien Potencier
c99b10804b merged branch stof/form_safeguard (PR #4910)
Commits
-------

6489a65 [Form] Added an exception for invalid type services

Discussion
----------

[Form] Added an exception for invalid type services

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes [![Build Status](https://secure.travis-ci.org/stof/symfony.png?branch=form_safeguard)](http://travis-ci.org/stof/symfony) (Travis fails randomly for the performance test)
Fixes the following tickets: -
Todo: -

Before the introduction of the FormRegistry, the getName() method was
never used for types registered through the DI container. The
FormRegistry now uses the getName() method and missconfigured services
will trigger a notice.
This was reported in FriendsOfSymfony/FOSCommentBundle#234
2012-07-14 13:41:41 +02:00
Christophe Coevoet
6489a65960 [Form] Added an exception for invalid type services
Before the introduction of the FormRegistry, the getName() method was
never used for types registered through the DI container. The
FormRegistry now uses the getName() method and missconfigured services
will trigger a notice.
This was reported in FriendsOfSymfony/FOSCommentBundle#234
2012-07-14 13:04:03 +02:00
Christophe Coevoet
12bdec3cd2 Moved the NormalizationAwareInterface check to the ChainEncoder
This allows nesting a ChainEncoder inside another one without breaking
the check.
2012-07-14 12:15:12 +02:00
Christophe Coevoet
28e137c920 [Serializer] Added a ChainEncoder and a ChainDecoder
These classes contains the logic previously defined in the Serializer
itself to handle the choice of a serializer. This allows reusing it when
using only the encoding part of the component.
2012-07-14 12:15:07 +02:00
Bernhard Schussek
69e5e58629 [Form] Individual rows of CollectionType cannot be styled anymore for performance reasons 2012-07-14 12:10:29 +02:00
Fabien Potencier
cf41bf8776 merged branch hhamon/french_translation_messages (PR #4906)
Commits
-------

b3958af [Validator] [Resources] fixed french validator translated messages for the french locale.

Discussion
----------

[Validator] [Resources] fixed french validator translated messages for the french locale

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4900
2012-07-14 11:53:10 +02:00
Hugo Hamon
b3958af35c [Validator] [Resources] fixed french validator translated messages for the french locale. 2012-07-14 11:14:40 +02:00
Fabien Potencier
4b2230da93 [WebProfilerBundle] injected Request object into the controller instead of getting it from the container 2012-07-14 10:09:51 +02:00
Fabien Potencier
5fb72144da merged branch jalliot/profiler-logs (PR #4902)
Commits
-------

77b4349 [WebProfiler] Improved logger panel

Discussion
----------

[WebProfiler] Improved logger panel

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes

* Add missing priority levels from filter
* Display priority level in front of each log entry
* Add a yellow background for warnings and use the red one for errors and above (previously only errors)
* Display `No logs available for this priority.` when filter is too restrictive
2012-07-14 00:00:47 +02:00
Tobias Schultze
ffd8c1e773 [Form] add thrown exceptions to FormRegistryInterface 2012-07-14 00:14:36 +03:00
Jordan Alliot
77b434996e [WebProfiler] Improved logger panel 2012-07-13 22:51:18 +02:00
Fabien Potencier
b0d7d9e406 merged branch zachbadgett/frameworkbundle-session-file-handler-fix (PR #4901)
Commits
-------

23d8735 Added NativeFileSessionHandler to classes to compile .
12d6ae7 Removed FileSessionHandler from FrameworkExtension to stop compiling a file that does not exist.

Discussion
----------

[FrameworkBundle] Removed FileSessionHandler from FrameworkExtension to stop compiling a file that does not exist.

PR #4899 removed FileSessionHandler which caused a class not found error from FrameworkBundle after the cache was created. This PR will fix it.

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

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

by stof at 2012-07-13T19:12:51Z

you should add the NativeSessionHandler class in the list instead as it replaces it

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

by tystr at 2012-07-13T19:14:29Z

+1

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

by zachbadgett at 2012-07-13T19:15:55Z

Done
2012-07-13 21:31:17 +02:00
Fabien Potencier
a27aeda8f4 merged branch bschussek/performance (PR #4882)
Commits
-------

cd7835d [Form] Cached the form type hierarchy in order to improve performance
2ca753b [Form] Fixed choice list hashing in DoctrineType
2bf4d6c [Form] Fixed FormFactory not to set "data" option if not explicitely given
7149d26 [Form] Removed invalid PHPDoc text

Discussion
----------

[Form] WIP Improved performance of form building

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: **Update the Silex extension**

This PR is work in progress and up for discussion. It increases the performance of FormFactory::createForm() on a specific, heavy-weight form from **0.848** to **0.580** seconds.

Before, the FormFactory had to traverse the hierarchy and calculate the default options of each FormType everytime a form was created of that type.

Now, FormTypes are wrapped within instances of a new class `ResolvedFormType`, which caches the parent type, the type's extensions and its default options.

The updated responsibilities: `FormFactory` is a registry and proxy for `ResolvedFormType` objects, `FormType` specifies how a form can be built on a specific layer of the type hierarchy (e.g. "form", or "date", etc.) and `ResolvedFormType` *does the actual building* across all layers of the hierarchy (by delegating to the parent type, which delegates to its parent type etc.).

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

by schmittjoh at 2012-07-12T18:25:40Z

Maybe ResolvedFormType

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

by jmather at 2012-07-13T02:56:38Z

I really like ResolvedFormType. That's the naming method I took for my tag parser that handes the same conceptual issue.

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

by axelarge at 2012-07-13T05:25:00Z

ResolvedFormType sounds very clear.
This change is great and I desperately hope to see more of this kind

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

by Baachi at 2012-07-13T06:41:26Z

Yes `ResolvedFormType` sounds good :) 👍

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

by fabpot at 2012-07-13T07:11:33Z

I like `ResolvedFormType` as well.

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

by henrikbjorn at 2012-07-13T07:46:48Z

👍 `ResolvedFormType` :shipit:

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

by stof at 2012-07-13T18:01:51Z

This looks good to me
2012-07-13 21:26:31 +02:00
Fabien Potencier
2dcc44897e raised the minimum version of PHP to 5.3.4 (closes #3856)
We've raised the minimum version of PHP because of a PHP
bug before 5.3.4:

https://bugs.php.net/bug.php?id=52083
https://bugs.php.net/bug.php?id=50027
2012-07-13 21:22:46 +02:00
Zach Badgett
23d87353a2 Added NativeFileSessionHandler to classes to compile . 2012-07-13 13:14:31 -06:00
Zach Badgett
12d6ae76a2 Removed FileSessionHandler from FrameworkExtension to stop compiling a file that does not exist. 2012-07-13 13:04:05 -06:00
Bernhard Schussek
cd7835d8d2 [Form] Cached the form type hierarchy in order to improve performance 2012-07-13 20:39:30 +02:00
Fabien Potencier
a798ff100c merged branch drak/nativestorage (PR #4899)
Commits
-------

a351362 [HttpFoundation] Add NativeSessionHandler tests
653821a [HttpFoundation] Remove FileSessionHandler
3456787 Partially revert "[HttpFoundation][Sessions] Refactored tests"
39813a0 Revert "[FrameworkBundle] Refactor session file handler service name and update changelogs"
fbee4cf Restore NativeFileSessionHandler

Discussion
----------

[Session] Restore NativeFileSessionStorage

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

This reverts the removal of the native file handler.
2012-07-13 20:34:02 +02:00
Drak
a351362f19 [HttpFoundation] Add NativeSessionHandler tests 2012-07-13 17:34:14 +01:00
Drak
653821a11b [HttpFoundation] Remove FileSessionHandler
This driver is inferior to native handling
2012-07-13 16:40:50 +01:00
Drak
345678786e Partially revert "[HttpFoundation][Sessions] Refactored tests"
This partially reverts commit 3c8cc0a1a0.
2012-07-13 16:40:43 +01:00
Fabien Potencier
7b0d100e02 merged 2.0 2012-07-13 16:05:38 +02:00
Drak
39813a0a05 Revert "[FrameworkBundle] Refactor session file handler service name and update changelogs"
This partially reverts commit 13a2c82f01.
2012-07-13 14:54:32 +01:00
Drak
fbee4cf700 Restore NativeFileSessionHandler
Partial revert "[HttpFoundation] Removed Native*Handler session save handler classes"

This partially reverts commit b2cc580be7.
2012-07-13 14:52:46 +01:00
Fabien Potencier
f41872b907 [FrameworkBundle] added a way to enable the profiler for the very next request in functional tests (closes #4307) 2012-07-13 15:41:42 +02:00
Fabien Potencier
67b91e562b [HttpKernel] added a way to enable a disable Profiler 2012-07-13 15:39:54 +02:00
Alexander
e97cd61a89 [DoctrineBridge] Fix arguments when registering event listeners on multiple connections
Fixes #4712
2012-07-13 15:19:24 +02:00
Alexander
0bf3c068d7 [DoctrineBridge] Failing testcase for event listeners and multiple connections 2012-07-13 15:05:25 +02:00
Bernhard Schussek
2ca753bc68 [Form] Fixed choice list hashing in DoctrineType 2012-07-13 14:48:51 +02:00
Rui Marinho
8a725f8f25 Updated Spanish translation 2012-07-13 11:51:36 +01:00
Fabien Potencier
498759a2e8 [HttpKernel] fixed HTTP exception headers in ExceptionHandler 2012-07-13 12:14:13 +02:00
Bernhard Schussek
2bf4d6cff4 [Form] Fixed FormFactory not to set "data" option if not explicitely given 2012-07-13 12:12:25 +02:00
Fabien Potencier
3f05e7047f ensured that an exception is always converted to an error response (and that we keep the HTTP status code and headers) 2012-07-13 11:55:51 +02:00
Fabien Potencier
46071f3238 [Security] made sure that we always replace the security access denied exception to an HTTP one 2012-07-13 11:36:57 +02:00
Fabien Potencier
7dc89013eb merged branch jfsimon/issue-4885 (PR #4891)
Commits
-------

3fef3c2 [Console] Fixed output formatter regex.
fea9d09 [Console] Added LG char escaping test.

Discussion
----------

Issue 4885

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4885
2012-07-13 11:28:57 +02:00
Fabien Potencier
295860dfaf [HttpKernel] avoid hidding exceptions set in exception listeners (see the Security ExceptionListener for some examples) 2012-07-13 11:25:52 +02:00
jfsimon
3fef3c2c9d [Console] Fixed output formatter regex. 2012-07-13 11:05:56 +02:00
jfsimon
fea9d0978e [Console] Added LG char escaping test. 2012-07-13 11:05:48 +02:00
Hugo Hamon
e9d799ce2c [Routing] fixed ApacheUrlMatcher and ApachMatcherDumper classes that did not take care of default parameters in urls. 2012-07-13 10:17:40 +02:00
Fabien Potencier
bd18907150 [HttpKernel] moved some mis-placed logic to FlattenException 2012-07-13 09:48:10 +02:00
Fabien Potencier
fdf320d642 [HttpKernel] removed obsolete code (the status code is already taken care of in FlattenExceptiondirectly) 2012-07-13 09:19:21 +02:00
Bernhard Schussek
7149d268b6 [Form] Removed invalid PHPDoc text 2012-07-12 19:41:56 +02:00
Fabien Potencier
7a138f0e20 merged branch bschussek/performance (PR #4881)
Commits
-------

a924dab [OptionsResolver] Made the OptionsResolver clonable
70307e5 [Form] Improved EntityType performance by caching the EntityChoiceList
8298d8c [Form] Improved ChoiceType performance by caching ChoiceList objects

Discussion
----------

[Form] Improved performance of ChoiceType and EntityType

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
2012-07-12 19:18:44 +02:00
Bernhard Schussek
a924dabd57 [OptionsResolver] Made the OptionsResolver clonable 2012-07-12 19:13:45 +02:00
Bernhard Schussek
70307e5648 [Form] Improved EntityType performance by caching the EntityChoiceList 2012-07-12 19:13:41 +02:00
Fabien Potencier
c4f3719a0d merged branch Tobion/patch-2 (PR #4878)
Commits
-------

d83d65a fix another '0' problem

Discussion
----------

fix another '0' problem
2012-07-12 17:57:58 +02:00
Fabien Potencier
b3d1958209 merged branch bschussek/range_count_length (PR #4863)
Commits
-------

a92f80b [Validator] Added Length constraint and deprecated MinLength and MaxLength
83a3f75 [Validator] Deprecated the constraints Min and Max in favor of Range
0cdacee [Validator] Removed MinCount and MaxCount and replaced them by the constraint Count
741c147 [Validator] Renamed deprecated Size constraint to Range

Discussion
----------

[Validator] Reintroduced Range constraint and created Count and Length constraints

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

After @Tobion's comment to #4851, this is the next try to streamline the constraints and reduce duplication of logic. The downside of the current MinLength/MaxLength and MinCount/MaxCount pairs is that they cannot output a fitting error message if a value should have an *exact* length/count. So this PR introduces

* Range (formerly Size) to replace Min/Max
* Count to replace MinCount/MaxCount
* Length to replace MinLength/MaxLength

Feedback is appreciated.

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

by Tobion at 2012-07-11T20:40:08Z

The `choice` constraint also cannot handle `min = max`. Or maybe we don't need these options on choice anymore as we can achieve the same with the new `count` constraint?!

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

by beberlei at 2012-07-12T08:59:44Z

Dude, nobody has time to fix the BC breaks you introduce :-)

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

by TomAdam at 2012-07-12T12:38:49Z

The changes to the `Size` validator yesterday broke my project, and I started rewriting to use `MaxLength / MinLength` validators today, until I spotted this. It would be good if this PR could have a reasonably high priority (whether or not it is accepted) as it will change how I fix my issues. I suspect a lot of people using the master branch will be in the same situation.
2012-07-12 17:54:51 +02:00
Tobias Schultze
d83d65a312 fix another '0' problem 2012-07-12 18:43:06 +03:00
Fabien Potencier
1484ca789d merged branch vlastv/master (PR #4872)
Commits
-------

34abe37 Added mime type for RAR archive, sending from Linux Chrome via nginx

Discussion
----------

Added new mime type for RAR archive

This mime type detected when sending file from Linux Chrome Browser via nginx
2012-07-12 13:33:11 +02:00
Fabien Potencier
06f5f073fd merged branch asm89/fix-default-auth-successhandler-extension (PR #4865)
Commits
-------

5e6c06f [Security] Remove hard dependency on $providerKey for default auth success handler

Discussion
----------

[Security] Remove hard dependency on $providerKey for default auth success handler

Bug fix: yes?
Feature addition: yes?
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/asm89/symfony.png?branch=fix-default-auth-successhandler-extension)](http://travis-ci.org/asm89/symfony)
License of the code: MIT

In 8ffaafa867 a hard dependency was introduced between the default authentication success handling code and the active firewall. This makes sense. However, for people implementing their own success handler this makes it impossible to extend the default class as the `$providerKey` is set in the extension of the security bundle.

This PR makes the dependency a soft one so people can extend the class and use the default definition as a parent for their own service. However it is the responsibility of the developers to set the appropriate `$providerKey` if they want to use the target url saved in the session. Imo this is the right way as the developer should also set the appropriate options for the parent class in the overriding constructor.

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

by stof at 2012-07-11T19:01:12Z

@asm89 this PR need to be rebased according to github

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

by asm89 at 2012-07-11T19:13:09Z

@stof Done :)

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

by asm89 at 2012-07-12T10:07:53Z

@fabpot Done.
2012-07-12 13:32:07 +02:00
Bernhard Schussek
8298d8c260 [Form] Improved ChoiceType performance by caching ChoiceList objects 2012-07-12 12:35:56 +02:00
Alexander
5e6c06fc70 [Security] Remove hard dependency on $providerKey for default auth success handler 2012-07-12 12:03:58 +02:00
Vladislav O. Vlastovskiy
34abe3784d Added mime type for RAR archive, sending from Linux Chrome via nginx 2012-07-12 13:43:50 +04:00
Fabien Potencier
3b400aef78 merged branch craue/patch-23 (PR #4869)
Commits
-------

20ae693 added missing dot

Discussion
----------

added missing dot
2012-07-12 07:08:43 +02:00
Christian Raue
20ae6931fa added missing dot 2012-07-12 03:11:01 +03:00
Christophe Coevoet
ac7875569a [DoctrineBridge] Added an option to choose the subpath for the violation
By default, the UniqueEntityValidator maps the violation on the first
field of the UniqueEntity constraint. The new option allows to control
this behavior if a better mapping is suited.
2012-07-12 00:19:02 +02:00
Fabien Potencier
485c3d975e bumped Symfony version to 2.0.17-DEV 2012-07-11 20:25:42 +02:00
Fabien Potencier
d4b40fb24b merged branch asm89/fix-security-default-authentication-handlers-config (PR #4864)
Commits
-------

f59b052 [Security] Fix the default authentication handlers config definition

Discussion
----------

[Security] Fix the default authentication handlers config definition

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/asm89/symfony.png?branch=fix-security-default-authentication-handlers-config)](http://travis-ci.org/asm89/symfony)
License of the code: MIT

Options should be a collection, when you use the default handler definition as a parent you will get an error that the argument of the constructor is a string and not an array, because for your own service the extension of the security bundle will not replace the arguments.
2012-07-11 20:22:30 +02:00
Alexander
f59b0528f6 [Security] Fix the default authentication handlers config definition 2012-07-11 20:12:59 +02:00
Fabien Potencier
11ae9c9740 updated VERSION for 2.0.16 2012-07-11 19:51:30 +02:00
Bernhard Schussek
a92f80b815 [Validator] Added Length constraint and deprecated MinLength and MaxLength 2012-07-11 19:48:02 +02:00
Bernhard Schussek
83a3f75b2d [Validator] Deprecated the constraints Min and Max in favor of Range 2012-07-11 19:48:02 +02:00
Bernhard Schussek
0cdacee5be [Validator] Removed MinCount and MaxCount and replaced them by the constraint Count 2012-07-11 19:47:53 +02:00
Bernhard Schussek
741c147ce5 [Validator] Renamed deprecated Size constraint to Range 2012-07-11 18:38:44 +02:00
Bernhard Schussek
1fe39962fd [Validator] Improved error messages displayed when the Valid constraint is misused 2012-07-11 18:23:09 +02:00
Bernhard Schussek
c919b81ca9 [Form] Fixed TransformationFailedExceptions to be caught in the model transformers 2012-07-11 16:50:44 +02:00
Bernhard Schussek
f06203a640 [Form] Improved ValidatorTypeGuesser to interpret the constraints True and False 2012-07-11 16:46:06 +02:00
Fabien Potencier
c3b79f1f15 merged branch bschussek/size_deprecation (PR #4851)
Commits
-------

0be602d [Validator] Deprecated the Size constraint
d661837 [Validator] Reverted the changes done to the Size constraint in 3a5e84f4a7
d84b689 [Validator] Added the constraints MinCount and MaxCount
1a732e4 [Validator] Removed the Range constraint as it duplicates functionality given in Min and Max

Discussion
----------

[Validator] Deprecated the Size constraint in favor of MinCount and MaxCount

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

This PR cleans up with the current ambiguity between

* Min
* Max
* MinLength
* MaxLength
* Range
* Size

in the following ways:

* The Range constraint was removed again as it can be completely replaced by Min and Max.
* The Size constraint was reverted to it's 2.0 feature set and deprecated.
* The constraints MinCount and MaxCount were added to make up for the functionality that was added to Size.
2012-07-11 15:50:35 +02:00
Bernhard Schussek
0be602deef [Validator] Deprecated the Size constraint 2012-07-11 15:48:36 +02:00
Alexander
d0e7543613 [Validator] Fix docblocks 2012-07-11 15:00:23 +02:00
Fabien Potencier
a7e2c5f7df [Process] remade ProcessBuilder::setTimeout fluent 2012-07-11 14:45:17 +02:00
Fabien Potencier
b72ca7c6c6 merged branch bschussek/issue4242 (PR #4848)
Commits
-------

b7aae48 [Locale] Fixed error resetting in StubIntlDateFormatter::parse()

Discussion
----------

[Locale] Fixed error resetting in StubIntlDateFormatter::parse()

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4242
Todo: -

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

by bschussek at 2012-07-11T08:00:15Z

ping @eriksencosta, @igorw - is this solved as intended?

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

by eriksencosta at 2012-07-11T11:20:24Z

Yes, thanks!
2012-07-11 14:22:56 +02:00
Fabien Potencier
f83401abd9 [Process] fixed setting the timeout to null 2012-07-11 14:21:05 +02:00
Bernhard Schussek
d661837ec0 [Validator] Reverted the changes done to the Size constraint in 3a5e84f4a7 2012-07-11 11:43:13 +02:00
Bernhard Schussek
d84b689529 [Validator] Added the constraints MinCount and MaxCount 2012-07-11 11:43:13 +02:00
Bernhard Schussek
1a732e4983 [Validator] Removed the Range constraint as it duplicates functionality given in Min and Max 2012-07-11 11:43:13 +02:00
Bernhard Schussek
92abf5aace [Form] Enabled error bubbling from the parts of a date/time field to the main field 2012-07-11 10:34:15 +02:00
Bernhard Schussek
b7aae48a74 [Locale] Fixed error resetting in StubIntlDateFormatter::parse() 2012-07-11 09:56:07 +02:00
Fabien Potencier
f3547d4ff1 merged branch bschussek/testfix (PR #4847)
Commits
-------

7a76dba [Form] Renamed the options "data_timezone" and "user_timezone"
655d645 [Form] Fixed tests failing on systems with timezones other than +01:00

Discussion
----------

[Form] Fixed tests and renamed the options "data_timezone" and "user_timezone"

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

The option names were renamed for better consistency with the terms "model data" or "model format" and "view data" or "view format".
2012-07-11 09:47:34 +02:00
Bernhard Schussek
7a76dbad20 [Form] Renamed the options "data_timezone" and "user_timezone" 2012-07-11 09:44:09 +02:00
Fabien Potencier
50109ebcc2 [Process] re-added the possibility to set the Process timeout to null (to disable it) (closes #4843) 2012-07-11 09:39:53 +02:00
Bernhard Schussek
655d645568 [Form] Fixed tests failing on systems with timezones other than +01:00 2012-07-11 09:34:01 +02:00
Fabien Potencier
75dfc8fe97 merged branch bschussek/issue3162 (PR #4839)
Commits
-------

ded6c03 [Form] DateTimeType now handles RFC 3339 dates as provided by HTML5
7e8b622 [Form] Added the option "format" to DateTimeType
9eeb200 [Form] Changed the default format of DateType to "yyyy-MM-dd" to support HTML 5 out of the box
d621a76 [Form] Improved DateTimeType code

Discussion
----------

[Form] Changed DateType and DateTimeType to support HTML5 by default

Bug fix: no
Feature addition: yes
Backwards compatibility break: yes
Symfony2 tests pass: yes
Fixes the following tickets: #2849, #3162
Todo: -

This PR changes DateType and DateTimeType to support HTML5 by default when setting the option "widget" to "single_text".

Also, the option "format" was added to DateTimeType.

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

by stof at 2012-07-10T15:38:44Z

This loos OK to me

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

by MDrollette at 2012-07-10T16:36:26Z

@stof typo: "looks" #meta-stoffed
2012-07-11 09:09:08 +02:00
Bernhard Schussek
ded6c0305c [Form] DateTimeType now handles RFC 3339 dates as provided by HTML5 2012-07-11 09:06:31 +02:00
Fabien Potencier
a94d41d97b merged branch jonathaningram/override_kernel_name (PR #4846)
Commits
-------

02e0a8f Allow Kernel::$name to be overridden by subclasses

Discussion
----------

Allow Kernel::$name to be overridden by subclasses

Because the name of the kernel is calculated in the constructor,
any child class that had overriden the kernel name, will be
ignored.

By setting the kernel name in the child class, we can avoid having
to execute the regex to calculate the name upon every construction
of a Kernel.

A test (and a kernel fixture) is added to prove that the override
works correctly.

Note: the Kernel API has not been touched, so there should be no
issues with BC.

What do you think?
2012-07-11 08:25:20 +02:00
Jonathan Ingram
02e0a8f232 Allow Kernel::$name to be overridden by subclasses
Because the name of the kernel is calculated in the constructor,
any child class that had overriden the kernel name, will be
ignored.

By setting the kernel name in the child class, we can avoid having
to execute the regex to calculate the name upon every construction
of a Kernel.

A test (and a kernel fixture) is added to prove that the override
works correctly.

Note: the Kernel API has not been touched, so there should be no
issues with BC.
2012-07-11 16:13:02 +10:00
Aharon Perkel
6def8d1dd1 Refactored Filesystem::makePathRelative function to correctly handle more use-cases 2012-07-11 01:22:37 +03:00
Fabien Potencier
064ad6255c [HttpFoundation] allow _method to be set in the query string (closes #4202) 2012-07-10 22:17:24 +02:00
Fabien Potencier
9a2c61780b [ClassLoader] fixed order of interfaces in generated class collection caches (closes #4841) 2012-07-10 20:28:16 +02:00
Bernhard Schussek
7e8b622802 [Form] Added the option "format" to DateTimeType 2012-07-10 17:23:19 +02:00
Fabien Potencier
e83c1a590a [HttpKernel] tweaked a phpdoc 2012-07-10 16:40:07 +02:00
Rafael Dohms
1b08cd1058 values() function did not return the object, this breaking the fluent interface.
Added a `return $this` so that usage of this node works as expected:
    ->enumNode('foo')->values(array('a', 'b'))->end()
2012-07-10 16:14:17 +02:00
Bernhard Schussek
9eeb20044f [Form] Changed the default format of DateType to "yyyy-MM-dd" to support HTML 5 out of the box 2012-07-10 16:10:57 +02:00
Fabien Potencier
b18f6f557b [Console] fixed wrong phpdoc (closes #4394) 2012-07-10 15:28:02 +02:00
Fabien Potencier
6782c78b95 merged branch jfsimon/issue-4752 (PR #4832)
Commits
-------

50cf928 [Console] Removed pointless constant.
14bd5ba [Console] 'formatBlock' helper now escape messages.
aaf4950 [Console] Implemented '<' escaping.
8cf82b7 [Console] Added '<' escaping tests.

Discussion
----------

Issue 4752

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4752

This PR adds possibility to escape `<` chars with `\` to avoid formatting mess.
In addition, `FormatterHelper::formatBlock()` method auto-escapes messages.
2012-07-10 15:25:29 +02:00
Fabien Potencier
884fffa9c0 [Process] fixed setTimeout() to not allow negative timeout values (closes #4647) 2012-07-10 15:21:59 +02:00
Fabien Potencier
80040c6a29 [Process] removed uninteresting tests 2012-07-10 15:19:05 +02:00
Bernhard Schussek
d621a76f28 [Form] Improved DateTimeType code 2012-07-10 15:18:47 +02:00
Fabien Potencier
5f5efaf5c2 merged branch bschussek/issue3387 (PR #4835)
Commits
-------

5b057f8 [Form] Fixed DateType to use "format" for creating the year and day choices

Discussion
----------

[Form] Fixed DateType to use "format" for creating the year and day choices

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #3490
Todo: -
2012-07-10 14:58:28 +02:00
Fabien Potencier
c47bbc129e [HttpKernel] tried to clarify the goal of Bundle::getParent() (closes #4347) 2012-07-10 14:55:30 +02:00
Bernhard Schussek
5b057f89b0 [Form] Fixed DateType to use "format" for creating the year and day choices 2012-07-10 14:53:17 +02:00
jfsimon
50cf9287be [Console] Removed pointless constant. 2012-07-10 14:40:39 +02:00
Fabien Potencier
7a181002d5 [Console] replaced var_export with json_encode for default values when exported as text/xml to make them more readable (closes #4193) 2012-07-10 13:24:16 +02:00
Fabien Potencier
5487a1f076 merged branch ChrisTickner/formbuilder_remove_bug_fix (PR #4826)
Commits
-------

f71e2a8 [Form] FormBuilder Bug Fix: remove() was not properly removing children

Discussion
----------

[Form] FormBuilder Bug Fix: remove() was not properly removing children

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4803
License of the code: MIT

FormBuilder initially sets unresolved children as NULL, until resolved.
 If FormBuilder::remove() is called before that child is resolved, the
if statement turns false, because isset(null) is false, when it should
be true.  Instead, we should check to see if the key exists, and if so,
process and unset it.

Closes #4803

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

by bschussek at 2012-07-10T07:41:55Z

Can you please add a test covering this case?

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

by ChrisTickner at 2012-07-10T09:43:07Z

Sure, added a test case.  It fails before the patch and passes after.

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

by bschussek at 2012-07-10T09:47:06Z

Thanks. Can you please add a comment to the test with the URL of this PR? Also, please squash your commits into one when your done.

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

by ChrisTickner at 2012-07-10T10:02:16Z

Oops, I deleted the remote branch and re-pushed without realizing we'd lose some history on this PR page.  Live and learn I suppose.

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

by bschussek at 2012-07-10T10:18:20Z

Thanks!
2012-07-10 12:18:45 +02:00
Fabien Potencier
ade6448547 merged branch bschussek/issue4102 (PR #4831)
Commits
-------

87fe487 Revert "[Form] Add default validation to TextType field (and related)"

Discussion
----------

Revert "[Form] Add default validation to TextType field (and related)"

This reverts commit 49d2685bff.

Conflicts:

	src/Symfony/Component/Form/Extension/Core/DataTransformer/ValueToStringTransformer.php
	src/Symfony/Component/Form/Extension/Core/Type/TextType.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/ValueToStringTransformerTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/Type/UrlTypeTest.php
2012-07-10 12:01:07 +02:00
jfsimon
14bd5ba37c [Console] 'formatBlock' helper now escape messages. 2012-07-10 12:00:17 +02:00
Chris Tickner
f71e2a8c7a [Form] FormBuilder Bug Fix: remove() was not properly removing children
FormBuilder initially sets unresolved children as NULL, until resolved.
 If FormBuilder::remove() is called before that child is resolved, the
if statement turns false, because isset(null) is false, when it should
be true.  Instead, we should check to see if the key exists, and if so,
process and unset it.

Closes #4803
2012-07-10 06:56:48 -03:00
Bernhard Schussek
87fe4871cd Revert "[Form] Add default validation to TextType field (and related)"
This reverts commit 49d2685bff.

Conflicts:

	src/Symfony/Component/Form/Extension/Core/DataTransformer/ValueToStringTransformer.php
	src/Symfony/Component/Form/Extension/Core/Type/TextType.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/ValueToStringTransformerTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/Type/UrlTypeTest.php
2012-07-10 11:56:29 +02:00
Fabien Potencier
878e86db8a added global variables access in a form theme (closes #3058) 2012-07-10 11:44:08 +02:00
jfsimon
aaf4950d4f [Console] Implemented '<' escaping. 2012-07-10 11:13:16 +02:00
jfsimon
8cf82b7a11 [Console] Added '<' escaping tests. 2012-07-10 11:12:54 +02:00
Fabien Potencier
7f0274462f merged branch SamsonIT/property_path_error (PR #4829)
Commits
-------

6ad4018 [Form] Also display the hint about adder/remover on invalid property access

Discussion
----------

[Form] Also display the hint about adder/remover on invalid property access

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -

This PR follows up #4777. In this case the hint about adders and removers is also added when a property is found, but is not public, a common case.
2012-07-10 10:52:04 +02:00
Fabien Potencier
98e10c6175 merged branch bschussek/optionfix (PR #4830)
Commits
-------

c6cb8b2 [Form] Removed unused option "inline" that was introduced by accident

Discussion
----------

[Form] Removed unused option "inline" that was introduced by accident

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
2012-07-10 10:50:43 +02:00
Bernhard Schussek
c6cb8b2855 [Form] Removed unused option "inline" that was introduced by accident 2012-07-10 10:49:15 +02:00
Bart van den Burg
6ad4018ff5 [Form] Also display the hint about adder/remover on invalid property access 2012-07-10 10:23:34 +02:00
Fabien Potencier
a640a33a24 merged branch mythmakr/3686-min-max-validators-to-ignore-empty-string (PR #4188)
Commits
-------

f30bf36 Min/Max Validators ignore empty string
e9f5f13 Added test Min/Max validators should ignore empty string

Discussion
----------

[Validator] Min/Max validators should ignore empty string

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes ![Build status](https://secure.travis-ci.org/mythmakr/symfony.png?branch=3686-min-max-validators-to-ignore-empty-string)
Fixes the following tickets: #3686
Closed related PR #3687
Todo:
2012-07-10 10:21:58 +02:00
Bernhard Schussek
854daa8f83 [Form] Fixed errors not to be added onto non-synchronized forms 2012-07-10 10:03:06 +02:00
Bernhard Schussek
e8bb834a54 [Form] Fixed data to be written back by PropertyPath if it cannot be handled by reference 2012-07-10 09:38:32 +02:00
Fabien Potencier
9e32d9029f [FrameworkBundle] tweaked previous merge 2012-07-10 08:56:32 +02:00
Fabien Potencier
f2958b3fb6 merged branch merk/routing-bug (PR #4823)
Commits
-------

c061c30 Router#resolveString should return null instead of empty string when $value is null
a1d1a02 Null default value route regression

Discussion
----------

[Router] Null default value route regression

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

---

The commit by @vicb 0555913fbb introduces a regression in the handling of default values that are null, while there are requirements still set for this value.

This is a failing test case and fix for the issue.

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

by merk at 2012-07-10T04:24:40Z

Now contains a fix, tests now pass.
2012-07-10 08:50:31 +02:00
Fabien Potencier
2c6b825068 merged branch zachbadgett/framework_bundle_delegating_engine (PR #4824)
Commits
-------

2fa98e8 [FrameworkBundle] Changed DelegatingEngine::renderResponse to use specified engine's renderResponse

Discussion
----------

[FrameworkBundle] Changed DelegatingEngine::renderResponse to use specified engine's renderResponse

Currently the DelegatingEngine in the FrameworkBundle has a renderResponse method that creates a new response, it should use the engine's renderResponse since EngineInterface requires a renderResponse to be defined and gives more flexibly to change the response object when creating a new templating engine.

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -
2012-07-10 08:42:11 +02:00
Fabien Potencier
4bab36b2c7 merged branch bschussek/issue3899 (PR #4813)
Commits
-------

9c94b48 [Form] Fixed the "data" option to supersede default data set in the model

Discussion
----------

[Form] Fixed the "data" option to supersede default data set in the model

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #3899
Todo: -
2012-07-10 08:22:37 +02:00
Fabien Potencier
feab81117b merged branch bschussek/bind_request (PR #4811)
Commits
-------

7727de7 [Form] Deprecated Form::bindRequest() and replaced it by a PRE_BIND listener

Discussion
----------

[Form] Deprecated Form::bindRequest() and replaced it by a PRE_BIND listener

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

Instead of `bindRequest`, you should now simply call `bind`:

Before:

```
$form->bindRequest($request);
```

After:

```
$form->bind($request);
```
2012-07-10 08:21:54 +02:00
Fabien Potencier
aa007c235f merged branch fixe/patch-4 (PR #4821)
Commits
-------

c4d4d2e Removed extra new line

Discussion
----------

Removed extra new line
2012-07-10 07:48:15 +02:00
Fabien Potencier
1e138ae702 merged branch fixe/patch-5 (PR #4822)
Commits
-------

f5cf28f Updated Portuguese translation

Discussion
----------

Updated Portuguese translation

Based on #4820
2012-07-10 07:47:32 +02:00
Fabien Potencier
3051a82eb7 merged branch eriksencosta/pt-br-translation (PR #4820)
Commits
-------

19cdc8f updated Brazilian Portuguese translation

Discussion
----------

updated Brazilian Portuguese translation
2012-07-10 07:47:15 +02:00
Fabien Potencier
5345b59dd8 merged branch Nanocom/twigbundle_fix_error_message (PR #4818)
Commits
-------

dc4d343 [TwigBundle] Fixed error message

Discussion
----------

[TwigBundle] Fixed error message

Small fix to display the filename that cannot be read in the Twig Lint command.
2012-07-10 07:46:57 +02:00
Fabien Potencier
4da087e0ae merged branch umpirsky/patch-5 (PR #4817)
Commits
-------

ca67e90 Updated Serbian Cyrillic translation.

Discussion
----------

Updated Serbian Cyrillic translation.
2012-07-10 07:46:25 +02:00
Fabien Potencier
9038edc889 merged branch umpirsky/patch-4 (PR #4816)
Commits
-------

5211a01 Updated Serbian Latin translation.

Discussion
----------

Updated Serbian Latin translation.
2012-07-10 07:46:21 +02:00
Fabien Potencier
578d799dc8 merged branch umpirsky/patch-3 (PR #4815)
Commits
-------

55ac686 Serbian Latin translation updated.

Discussion
----------

Serbian Latin translation updated.
2012-07-10 07:45:54 +02:00
Fabien Potencier
ab766dcb3e merged branch umpirsky/patch-2 (PR #4814)
Commits
-------

ec8c023 Serbian Cyrillic translation updated.

Discussion
----------

Serbian Cyrillic translation updated.

Shouldn't source messages be updated in all files in one commit? Also, version is 1.2 in both, en and sr files, but source messages are not.

I would like to be notified whenever translation is changed, maybe we should have some topic on mailing list so all translators can receive notifications once messages are changed.
2012-07-10 07:45:50 +02:00
Zach Badgett
2fa98e8a23 [FrameworkBundle] Changed DelegatingEngine::renderResponse to use specified engine's renderResponse 2012-07-09 22:41:10 -06:00
Tim Nagel
c061c30a9e Router#resolveString should return null instead of empty string when $value is null
Closes #4823
2012-07-10 14:22:39 +10:00
Tim Nagel
a1d1a02b47 Null default value route regression 2012-07-10 13:59:45 +10:00
Larry Garfield
a6d44bdaa7 When serializing a Route, don't serialize the compiled route. 2012-07-09 22:23:40 -05:00
Tiago Ribeiro
f5cf28f308 Updated Portuguese translation 2012-07-10 00:33:19 +01:00
Tiago Ribeiro
c4d4d2e772 Removed extra new line 2012-07-10 01:10:06 +02:00
Eriksen Costa
19cdc8f7da updated Brazilian Portuguese translation 2012-07-09 19:48:33 -03:00
Arnaud Kleinpeter
dc4d3437ce [TwigBundle] Fixed error message 2012-07-09 23:12:46 +02:00
Саша Стаменковић
ca67e90c4a Updated Serbian Cyrillic translation. 2012-07-10 00:08:56 +03:00
Саша Стаменковић
5211a0117f Updated Serbian Latin translation. 2012-07-10 00:04:02 +03:00
Саша Стаменковић
55ac686f6c Serbian Latin translation updated. 2012-07-09 23:42:28 +03:00
Саша Стаменковић
ec8c023143 Serbian Cyrillic translation updated. 2012-07-09 23:42:25 +03:00
Bernhard Schussek
9c94b48eeb [Form] Fixed the "data" option to supersede default data set in the model 2012-07-09 21:04:24 +02:00
Bernhard Schussek
7727de73e5 [Form] Deprecated Form::bindRequest() and replaced it by a PRE_BIND listener 2012-07-09 20:34:45 +02:00
Bernhard Schussek
c0a520792b [Form] Prevented duplicate validation of form constraints 2012-07-09 19:28:39 +02:00
Fabien Potencier
b4c55bdcf4 merged branch bschussek/issue4573 (PR #4808)
Commits
-------

f093caa [Form] Fixed invalid value passed to the constraint violation by the MinLength and MaxLength validators

Discussion
----------

[Form] Fixed invalid value passed to the constraint violation by the MinLength and MaxLength validators

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4573
Todo: -
2012-07-09 18:57:58 +02:00
Bernhard Schussek
f093caa6ac [Form] Fixed invalid value passed to the constraint violation by the MinLength and MaxLength validators 2012-07-09 18:53:54 +02:00