Commit Graph

14705 Commits

Author SHA1 Message Date
Bernhard Schussek 0869720c60 [Form] Changed (Number|Integer)ToLocalizedStringTransformer::reverseTransform() to do rounding 2013-08-01 17:19:11 +02:00
Fabien Potencier 2c7c4a5ea0 merged branch jfsimon/issue-8371 (PR #8451)
This PR was merged into the master branch.

Discussion
----------

[console] makes descriptors use output instead of returning a string

This PR changes `DescriptorInterface::describe($object, array $options = array())` method signature to `describe(OutputInterface $output, $object, array $options = array())` and all subsequent implementations.

It's now possible to use helpers inside descriptors.
That was not easy!

@lyrixx this is all for you
@fabpot I just added one new class

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | yes
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8371

Commits
-------

b9fa52c [Console] made descriptors use output instead of returning a string
2013-07-31 15:46:26 +02:00
Jean-François Simon b9fa52cf0c [Console] made descriptors use output instead of returning a string
[console] made descriptors use output instead of returning a string
[console] updated descriptors usage
[console] fixed descriptors usage & tests
[console] applied advices from github
[Console] applied advices from github

updated changelog
2013-07-31 15:28:38 +02:00
Fabien Potencier 70bbf96498 merged branch fabpot/console-fix (PR #8599)
This PR was merged into the master branch.

Discussion
----------

[FrameworkBundle] fixed regression where the command might have the wrong container if the application is reused several times

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

This fixes a regression introduced in #8242. Before this PR, the commands were always getting the current container registered in the kernel. But as the commands are now registered only once, if the container changes, the commands were not aware of this change. That happens quite frequently in functional tests where the Kernel is booted and shutdown several times in the same process.

Commits
-------

1bd45b3 [FrameworkBundle] fixed regression where the command might have the wrong container if the application is reused several times
2013-07-29 19:51:53 +02:00
Fabien Potencier 1bd45b371e [FrameworkBundle] fixed regression where the command might have the wrong container if the application is reused several times 2013-07-29 19:40:51 +02:00
Fabien Potencier 7786fe44c5 merged branch fabpot/class-not-found-exception (PR #8553)
This PR was merged into the master branch.

Discussion
----------

[Debug] Developer friendly Class Not Found and Undefined Function errors

This is a followup of #8156

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

Here is the original description from #8156:

Per a discussion with @weaverryan and others, I took a crack at enhancing the exception display for class not found errors and undefined function errors. It is not the cleanest solution but this is a work in progress to see whether or not following this path makes sense.

# Class Names

## Class Not Found: Unknown Class (Global Namespace)

```php
<?php
new WhizBangFactory();
```

> Attempted to load class 'WhizBangFactory' from the global namespace in foo.php line 12. Did you forget a use statement for this class?

## Class Not Found: Unknown Class (Full Namespace)

```php
<?php
namespace Foo\Bar;
new WhizBangFactory();
```

> Attempted to load class 'WhizBangFactory' from namespace 'Foo\Bar' in foo.php line 12. Do you need to 'use' it from another namespace?

## Class Not Found: Well Known Class (Global Namespace)

```php
<?php
new Request();
```

> Attempted to load class 'Request' from the global namespace in foo.php line 12. Did you forget a use statement for this class? Perhaps you need to add 'use Symfony\Component\HttpFoundation\Request' at the top of this file?

## Class Not Found: Well Known Class (Full Namespace)

```php
<?php
namespace Foo\Bar;
new Request();
```

> Attempted to load class 'Request' from namespace 'Foo\Bar' in foo.php line 12. Do you need to 'use' it from another namespace? Perhaps you need to add 'use Symfony\Component\HttpFoundation\Request' at the top of this file?

# Functions

## Undefined Function (Global Namespace)

```php
<?php
// example.php:
// namespace Acme\Example;
// function test_namespaced_function()
// {
// }
include "example.php";

test_namespaced_function()
```

> Attempted to call function 'test_namespaced_function' from the global namespace in foo.php line 12. Did you mean to call: '\acme\example\test_namespaced_function'?

## Undefined Function (Full Namespace)

```php
<?php
namespace Foo\Bar\Baz;

// example.php:
// namespace Acme\Example;
// function test_namespaced_function()
// {
// }
include "example.php";

test_namespaced_function()
```

> Attempted to call function 'test_namespaced_function' from namespace 'Foo\Bar\Baz' in foo.php line 12. Did you mean to call: '\acme\example\test_namespaced_function'?

## Undefined Function: Unknown Function (Global Namespace)

```php
<?php
test_namespaced_function()
```

> Attempted to call function 'test_namespaced_function' from the global namespace in foo.php line 12.

## Undefined Function: Unknown Function (Full Namespace)

```php
<?php
namespace Foo\Bar\Baz;

test_namespaced_function()
```

> Attempted to call function 'test_namespaced_function' from namespace 'Foo\Bar\Baz' in foo.php line 12.

Commits
-------

bde67f0 fixed an error message
80e19e2 [Debug] added some missing phpdocs
968764b [Debug] refactored unit tests
cefa1b5 [Debug] moved special fatal error handlers to their own classes
53ab284 [Debug] made Debug find FQCN automatically based on well-known autoloaders
208ca5f [Debug] made guessing of possible class names more flexible
a0b1585 [Debug] fixed CS
6671945 Developer friendly Class Not Found and Undefined Function errors.
2013-07-29 10:15:05 +02:00
Fabien Potencier bde67f0996 fixed an error message 2013-07-28 22:44:44 +02:00
Fabien Potencier 80e19e269a [Debug] added some missing phpdocs 2013-07-28 22:44:14 +02:00
Fabien Potencier aa3e474aed Merge branch '2.3'
* 2.3:
  [Form] fixes empty file-inputs get treated as extra field
  return 0 if there is no valid data
  [DependencyInjection] fixed regression where setting a service to null did not trigger a re-creation of the service when getting it
  [DependencyInjection] fixed #8570
  fixed file permission
  The ignoreAttributes itself should be ignored, too.
  [Tests] Tests on php 5.5 should pass
  [Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes #88546)
2013-07-27 07:01:52 +02:00
Fabien Potencier 9d53905b88 Merge branch '2.2' into 2.3
* 2.2:
  return 0 if there is no valid data
  [Tests] Tests on php 5.5 should pass
  [Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes #88546)
2013-07-27 07:01:40 +02:00
Fabien Potencier 10710cb2e6 merged branch bronze1man/PR-fixed-test-failure (PR #8591)
This PR was merged into the master branch.

Discussion
----------

[templating] fixed test failure introduted from #8585

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

Commits
-------

4b7c3b9 [template] fixed test failure introduted from #8585
2013-07-27 06:49:41 +02:00
bronze1man 4b7c3b9cb2 [template] fixed test failure introduted from #8585 2013-07-27 12:44:48 +08:00
Fabien Potencier de1915f405 merged branch Flask/ticket_8548 (PR #8575)
This PR was squashed before being merged into the 2.3 branch (closes #8575).

Discussion
----------

[Form] fixes empty file-inputs get treated as extra field

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8548, #8566
| License       | MIT

Commits
-------

e5fba3c [Form] fixes empty file-inputs get treated as extra field
2013-07-26 13:48:41 +02:00
Flavian Sierk e5fba3cf83 [Form] fixes empty file-inputs get treated as extra field 2013-07-26 13:48:40 +02:00
Fabien Potencier 3dec4dd2e6 merged branch agiuliano/2.3 (PR #8585)
This PR was submitted for the 2.3 branch but it was merged into the master branch instead (closes #8585).

Discussion
----------

Print form name in form_start function

It'd be useful if form_start() prints the form's name.
This way if you want to test it in your page, you can catch the form by `$crawler->filter('form[name=my_form_name]')`

Commits
-------

221bc15 Print form name in form_start function
2013-07-26 11:50:34 +02:00
Andrea Giuliano ac2a29c989 Print form name in form_start function 2013-07-26 11:50:34 +02:00
Fabien Potencier 63ef3c1901 merged branch dominikzogg/timecollectorfix (PR #8581)
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes #8581).

Discussion
----------

TimeCollector, Notice, if no events

https://github.com/symfony/symfony/issues/8574

Commits
-------

e9da1c0 return 0 if there is no valid data
2013-07-25 19:15:10 +02:00
Dominik Zogg 3553c71d1a return 0 if there is no valid data 2013-07-25 19:15:09 +02:00
Fabien Potencier 364ccd1cb3 merged branch bronze1man/PR-setLazy-parent-2.3 (PR #8573)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] setLazy not work on DefinitionDecorator

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

Commits
-------

970ce2c [DependencyInjection] fixed #8570
2013-07-25 19:13:25 +02:00
Fabien Potencier 7dc211a263 merged branch fabpot/null-services (PR #8582)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] fixed regression where setting a service to null did not trigger a re-creation of the service when getting it (closes #8392)

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

Commits
-------

50d0727 [DependencyInjection] fixed regression where setting a service to null did not trigger a re-creation of the service when getting it
2013-07-25 19:04:05 +02:00
Fabien Potencier 50d0727477 [DependencyInjection] fixed regression where setting a service to null did not trigger a re-creation of the service when getting it 2013-07-25 17:41:27 +02:00
bronze1man 970ce2c413 [DependencyInjection] fixed #8570 2013-07-25 13:55:15 +08:00
Fabien Potencier 2e2a36ca24 fixed file permission 2013-07-24 19:57:25 +02:00
Fabien Potencier ef987f7b2e merged branch derrabus/ignore_attributes_in_redirect_controller (PR #8563)
This PR was merged into the 2.3 branch.

Discussion
----------

[FrameworkBundle] RedirectCotroller: The ignoreAttributes parameter should be ignored

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

As discussed in PR #7590, when pointing a route to FrameworkBundle's `RedirectController` the attribute `ignoreAttributes` is added to the new route's attributes, if specified as array. As @lsmith77 wrote in a comment to that PR, this should not be the intended behavior. A valid workaround is to add `ignoreAttributes` itself to this array.

The problem remained undiscovered by the unit test, as `ignoreAttribues` was not included in the `_route_params` of the faked `Request` object. This PR should fix both, the unit test and the `RedirectController` itself, so the workaround mentioned above is not necessary anymore. Additionally, my fix should not break any routing configuration that is using the workaround.

Commits
-------

dc1fff0 The ignoreAttributes itself should be ignored, too.
2013-07-24 19:43:27 +02:00
Alexander M. Turek dc1fff0fe1 The ignoreAttributes itself should be ignored, too. 2013-07-24 17:20:53 +02:00
Fabien Potencier 9538efaf40 merged branch lyrixx/php55 (PR #8559)
This PR was merged into the 2.2 branch.

Discussion
----------

[Tests] Tests on php 5.5 should pass

Because php 5.5 is stable now

Commits
-------

0086ee3 [Tests] Tests on php 5.5 should pass
2013-07-24 15:01:08 +02:00
Grégoire Pineau 0086ee392b [Tests] Tests on php 5.5 should pass
Because php 5.5 is stable now
2013-07-24 14:55:10 +02:00
Fabien Potencier 968764b531 [Debug] refactored unit tests 2013-07-24 07:37:15 +02:00
Fabien Potencier cefa1b5059 [Debug] moved special fatal error handlers to their own classes 2013-07-24 07:37:12 +02:00
Fabien Potencier 53ab284745 [Debug] made Debug find FQCN automatically based on well-known autoloaders 2013-07-24 07:36:23 +02:00
Fabien Potencier 208ca5f8aa [Debug] made guessing of possible class names more flexible 2013-07-24 05:31:30 +02:00
Fabien Potencier a0b1585d3c [Debug] fixed CS 2013-07-24 05:29:21 +02:00
Beau Simensen 667194574d Developer friendly Class Not Found and Undefined Function errors. 2013-07-23 20:01:09 +02:00
Fabien Potencier ea01eeb3b0 merged branch fabpot/twig-engine-exists (PR #8547)
This PR was merged into the 2.2 branch.

Discussion
----------

[Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes #8546)

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

Commits
-------

ae7fa11 [Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes #88546)
2013-07-23 16:07:56 +02:00
Fabien Potencier ae7fa11c91 [Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes #88546) 2013-07-23 14:30:22 +02:00
Fabien Potencier 1d86ea10ff Merge branch '2.3'
* 2.3:
  [Validator] fixed ConstraintViolation:: incorrect when nested
  handle Optional and Required constraints from XML or YAML sources correctly
  added missing comments to WebTestCase
  Fixed #8455: PhpExecutableFinder::find() does not always return the correct binary
  Added missing files .gitignore
  [DependencyInjection] Fix Container::camelize to convert beginning and ending chars
  [Validator] Fixed groups argument misplace for validateValue method from validator class
  [Form] Fix of "PATCH'ed forms are never valid"
2013-07-21 22:19:01 +02:00
Fabien Potencier b45f18b81d Merge branch '2.2' into 2.3
* 2.2:
  [Validator] fixed ConstraintViolation:: incorrect when nested
  handle Optional and Required constraints from XML or YAML sources correctly
  added missing comments to WebTestCase
  Fixed #8455: PhpExecutableFinder::find() does not always return the correct binary
  [DependencyInjection] Fix Container::camelize to convert beginning and ending chars
  [Validator] Fixed groups argument misplace for validateValue method from validator class

Conflicts:
	src/Symfony/Component/Validator/Tests/Constraints/CollectionTest.php
	src/Symfony/Component/Validator/Tests/GraphWalkerTest.php
2013-07-21 22:18:49 +02:00
Fabien Potencier a67c137278 merged branch venu/ticket_8351#2.2 (PR #8421)
This PR was squashed before being merged into the 2.2 branch (closes #8421).

Discussion
----------

[Validator] fixed ConstraintViolation::$propertyPath incorrect when nested

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

In nested constraints, the property path will be overwritten in the context (as there would be a recursive call to CollectionValidotor when nested). Reason is, in ConstraintValidatorFactory object is loaded from memory if exists and context is initialized with the new context. So, other constraints after the nested constraints PropertyPath would be wrong.

So I think better create a new object for CollectionValidator always.

see this https://gist.github.com/alexkappa/5851274
It shows [name][email] even though the email is not under the name node.

Commits
-------

28e0709 [Validator] fixed ConstraintViolation:: incorrect when nested
2013-07-21 22:10:38 +02:00
Venu 28e070974a [Validator] fixed ConstraintViolation:: incorrect when nested 2013-07-21 22:10:37 +02:00
Fabien Potencier 9d98c417ec merged branch biozshock/patch-form-fix (PR #8362)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] Fix of "PATCH'ed forms are never valid". Fixes #8111

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

Commits
-------

a2b1535 [Form] Fix of "PATCH'ed forms are never valid"
2013-07-21 21:54:59 +02:00
Fabien Potencier ecc2f2b626 merged branch hacfi/2.3_doctrine_compiler_pass (PR #8409)
This PR was submitted for the 2.3 branch but it was merged into the master branch instead (closes #8409).

Discussion
----------

[DoctrineBridge] Only load event managers if tagged event subscribers are found

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes

This PR only wraps the code that adds event subscribers / listeners in the Doctrine compiler pass RegisterEventListenersAndSubscribersPass so it doesn't run if no tagged services are found. So in general it doesn't change anything besides not running a few lines of code if it's not necessary. The reason I want this change is that it will allow DoctrinePHPCRBundle to be installed without Doctrine2 PHPCR ODM (I just want the PHPCR session..I don't need the ODM). This doesn't work currently as it tries to load the entity managers resulting in an error (Error: The service definition "doctrine_phpcr.odm.default_session.event_manager" does not exist.).

Commits
-------

63bc18c [DoctrineBridge] Only load event managers if tagged event subscribers are found
2013-07-21 21:51:05 +02:00
Philipp Wahala 29c34673df Only load event managers if tagged event subscribers are found 2013-07-21 21:51:05 +02:00
Fabien Potencier 441857b67d merged branch xabbuh/issue7575 (PR #7930)
This PR was submitted for the 2.1 branch but it was merged into the 2.2 branch instead (closes #7930).

Discussion
----------

handle Optional and Required constraints from XML or YAML sources correc...

...tly

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #7575
| License       | MIT
| Doc PR        | symfony/symfony-docs#2432

Commits
-------

a93a23a handle Optional and Required constraints from XML or YAML sources correctly
2013-07-21 21:45:38 +02:00
Christian Flothmann 890934d33d handle Optional and Required constraints from XML or YAML sources correctly 2013-07-21 21:45:37 +02:00
Fabien Potencier 9601f611c3 [Security] updated CHANGELOG (refs #8195) 2013-07-21 21:36:38 +02:00
Fabien Potencier 707acd9a9b merged branch joncave/rememberme-hmac (PR #8195)
This PR was submitted for the 2.3 branch but it was merged into the master branch instead (closes #8195).

Discussion
----------

[Security] Use HMAC construction for remember me cookie hashes

[Security] Use HMAC construction for remember me cookie hashes

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| License       | MIT

HMAC is a more secure construction for MACs than the secret suffix method that is currently being used by the remember me cookies, see http://rdist.root.org/2009/10/29/stop-using-unsafe-keyed-hashes-use-hmac/.

Changing the MAC scheme means that current cookies will be invalidated and users will have to login again. Though there are no API BC issues.

Commits
-------

c97e0d0 [Security] Use HMAC construction for remember me cookie hashes
2013-07-21 21:35:20 +02:00
Jon Cave f7bb5de804 Use HMAC construction for remember me cookie hashes 2013-07-21 21:35:20 +02:00
Fabien Potencier 8b3d8c1bae merged branch dosten/ticket_7683 (PR #8303)
This PR was squashed before being merged into the master branch (closes #8303).

Discussion
----------

[HttpFoundation] Add accessors methods to session handlers

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

Commits
-------

460c696 [HttpFoundation] Add accessors methods to session handlers
2013-07-21 21:32:03 +02:00
Diego Saint Esteben 460c696aef [HttpFoundation] Add accessors methods to session handlers 2013-07-21 21:32:03 +02:00
Fabien Potencier 4b383c7695 merged branch WouterJ/issue_8079 (PR #8452)
This PR was squashed before being merged into the master branch (closes #8452).

Discussion
----------

[Console] Make DialogHelper respect interaction settings

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

This is based on @cordoval's #8366, but it tries to not break BC and to be a little more userfriendly.

@stof I can't seem to follow the infinite loop you talked about in #8366 . `DialogHelper::ask` will return the default, which is `null`, that breaks the while loop and it returns the default.

Commits
-------

1cde723 [Console] Make DialogHelper respect interaction settings
2013-07-21 21:29:14 +02:00