Commit Graph

12778 Commits

Author SHA1 Message Date
Fabien Potencier
3931131ebf merged branch drak/bc (PR #6422)
This PR was merged into the master branch.

Commits
-------

7533deb [Form] Prevent trigger of E_USER_DEPRECATED for new API

Discussion
----------

[Form] Prevent trigger of E_USER_DEPRECATED for new API

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 stof at 2012-12-19T13:54:33Z

This is wrong as FormEvent extends DataEvent and so is also an instance.

Thus, DataEvent should never be constructed anymore (Sf2 does not instantiate it asnd there is no reason to dispatch it elsewhere). The BC is for typehints, and so the useful E_USER_DEPRECATED would be when DataEvent is used as typehint (which is not possible to detect AFAIK)

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

by drak at 2012-12-19T14:07:33Z

So in that case I should check specifically for two class names. Remember the intention here is to NOT trigger an error when the NEW class `FormEvent` is used. I'll update the PR.

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

by Tobion at 2012-12-19T14:25:42Z

I like the solution with an overridden constructor more because using the new stuff will not have the performance penalty of calling `get_class` at all.

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

by stof at 2012-12-19T14:52:47Z

@drak and why not simply ``if (!$this instanceof FormEvent)`` ?

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

by drak at 2012-12-19T15:58:28Z

@stof - if that's ok - I was just assuming other classes might have inherited.
@Tobion - the problem is the private name property we have to call parent which will ultimately call the deprecated constructor.

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

by drak at 2012-12-19T15:59:25Z

How about this?

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

by stof at 2012-12-19T16:51:26Z

@drak if your class inherit from DataEvent instead of FormEvent, it is logical to get a deprecation warning

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

by stof at 2012-12-19T16:52:50Z

@drak I think this allows removing some special error catching in a few places in Form tests (and also in the Form class if it was added)

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

by drak at 2012-12-19T17:33:51Z

@stof - yes, the whole idea is, if you inherit from FormEvent, no warning. anything else, gives warning - that's what we want right?

PR squashed and ready from my side.

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

by drak at 2012-12-20T14:00:13Z

ping @fabpot

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

by bschussek at 2012-12-28T15:19:40Z

ðŸ‘
2012-12-28 23:57:58 +01:00
Fabien Potencier
87591482a9 merged branch francoispluchino/form-fix-deprecated-method (PR #6455)
This PR was merged into the master branch.

Commits
-------

16a196a [Form] Fix deprecated call method

Discussion
----------

[Form] Fix deprecated call method

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

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

by stof at 2012-12-21T13:21:50Z

This is wrong as the typehint of the constructor is still typehinting the old interface, and so this method is not available.

But the typehint should be changed to use the new interface anyway

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

by francoispluchino at 2012-12-26T09:11:49Z

@fabpot It's OK for you?
(The failure of the Travis test is caused  by the DateTime Form test only in PHP 5.3.3)

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

by bschussek at 2012-12-28T15:00:51Z

Can you please squash the commits?

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

by francoispluchino at 2012-12-28T15:57:47Z

@bschussek OK, it's done.
2012-12-28 23:56:58 +01:00
Fabien Potencier
598e6ee9ea merged branch tgalopin/patch-2 (PR #6507)
This PR was merged into the master branch.

Commits
-------

828eb90 Fix a tag name typo (</ësh> to </target>)

Discussion
----------

[Validator] Fix a tag name typo (</ësh> to </target>) in validators.sq.xlf

Replace </ësh> by </target> line 139.
2012-12-28 23:55:30 +01:00
Fabien Potencier
636c24e5a0 merged branch tgalopin/patch-1 (PR #6506)
This PR was merged into the master branch.

Commits
-------

d2a1e4e Update src/Symfony/Component/Validator/Resources/translations/validators.it.xlf

Discussion
----------

[Validator] Fix structure error in validators.it.xlf

Fix structure error in validators.it.xlf.

Probably a copy-cut that didn't work correctly.

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

by stof at 2012-12-28T17:04:17Z

I suspect a bad resolution of a merge conflict

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

by tgalopin at 2012-12-28T17:06:17Z

Indeed, probably.
2012-12-28 23:55:06 +01:00
Fabien Potencier
57ac683d35 merged branch fabpot/exception-logging (PR #6503)
This PR was merged into the master branch.

Commits
-------

0a42501 [HttpKernel] tweaked logging in the exception listener
1a6c9b3 [HttpKernel] refactored logging in the exception listener

Discussion
----------

[HttpKernel] refactored logging in the exception listener

* avoid code duplication
* allow easier overloading of the default behavior
2012-12-28 23:54:30 +01:00
Fabien Potencier
16702fcd24 merged branch fabpot/resource-tracking (PR #6501)
This PR was merged into the master branch.

Commits
-------

6cd1fd4 [DependencyInjection] removed hard dependency on the Config component

Discussion
----------

[DependencyInjection] removed hard dependency on the Config component

The Config component is a hard dependency for the loaders (but loaders
themselves are optional); all other classes should not have a hard dep
on Config. The introduction of a new flag allows to remove this
dependency.

This commit also fixes skipped test dependencies.

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

by fabpot at 2012-12-28T09:47:13Z

As there is only one location where we are directly using a class from the Config component (`ContainerBuilder::addObjectResource()`), we can also just test this case and do nothing if the class does not exist instead of adding a flag, but that looks dirty.

```php
public function addObjectResource($object)
{
    if (!class_exists('Symfony\Component\Config\Resource\FileResource')) {
        return $this;
    }

    $parent = new \ReflectionObject($object);
    do {
        $this->addResource(new FileResource($parent->getFileName()));
    } while ($parent = $parent->getParentClass());

    return $this;
}
```

What do you think?
2012-12-28 23:54:18 +01:00
Titouan Galopin
828eb90fa6 Fix a tag name typo (</ësh> to </target>)
Replace </ësh> to </target> line 139.
2012-12-28 18:19:28 +01:00
Fabien Potencier
0a4250122f [HttpKernel] tweaked logging in the exception listener
When there is no logger, we should only log critical errors (this is
more sensible than the current behavior).
2012-12-28 18:08:28 +01:00
Titouan Galopin
d2a1e4ef07 Update src/Symfony/Component/Validator/Resources/translations/validators.it.xlf
Fix structure error in validators.it.xlf
2012-12-28 18:01:45 +01:00
François Pluchino
16a196a6b2 [Form] Fix deprecated call method 2012-12-28 16:54:59 +01:00
Bernhard Schussek
87dcf25434 [Form] Fixed test regression introduced in #6440 2012-12-28 16:06:35 +01:00
Fabien Potencier
48920722f7 Revert "merged branch francisbesset/routing_constant_usage (PR #6449)"
This reverts commit c0e341c618, reversing
changes made to 35f5bca585.
2012-12-28 14:21:48 +01:00
Fabien Potencier
1a6c9b3143 [HttpKernel] refactored logging in the exception listener
* avoid code duplication
 * allow easier overloading of the default behavior
2012-12-28 13:40:07 +01:00
Fabien Potencier
6cd1fd4738 [DependencyInjection] removed hard dependency on the Config component
The Config component is a hard dependency for the loaders (but loaders
themselves are optional); all other classes should not have a hard dep
on Config. The introduction of a new flag allows to remove this
dependency.

This commit also fixes skipped test dependencies.
2012-12-28 11:06:10 +01:00
Fabien Potencier
3cac604352 [DependencyInjection] fixed setting a synthetic service on a frozen container 2012-12-28 10:00:21 +01:00
Lee McDermott
d5948f10a3 Use KernelEvents constants in TraceableEventDispatcher 2012-12-28 05:46:21 +00:00
Fran Moreno
a6704f34f4 [Tests] Fix namespaces 2012-12-27 22:06:37 +01:00
Fabien Potencier
a0ea84bbc3 merged branch havvg/feature/propel1-modelchoice-preferred (PR #6454)
This PR was merged into the 2.1 branch.

Commits
-------

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

Discussion
----------

[Propel1] add preferred_choices option to ModelType

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

Ping @willdurand

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

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

ðŸ‘
2012-12-27 16:10:36 +01:00
Fabien Potencier
c0e341c618 merged branch francisbesset/routing_constant_usage (PR #6449)
This PR was merged into the master branch.

Commits
-------

18daa10 [Routing] Used static to call constant in XmlFileLoader

Discussion
----------

[2.2][Routing] Used static to call constant in XmlFileLoader

It is more complicated to override XmlFileLoader if contants are called with `self`.
This PR replace `self` to `static`.

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

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

by piotrpasich at 2012-12-21T08:17:14Z

+1
2012-12-27 16:08:42 +01:00
Grégoire Pineau
b444a10376 Fixed php doc of GenericEvent::__construct 2012-12-27 09:21:49 +01:00
Fabien Potencier
35f5bca585 [HttpKernel] fixed bundles var initialization 2012-12-27 09:14:47 +01:00
Fabien Potencier
761429e551 [HttpKernel] changed the value of route to the pattern when it is a Route object in the data collector
This allows to have a meaningful information in the WDT when the route
in the Request is not the route name but the route object (like in
Drupal for instance).
2012-12-26 09:59:46 +01:00
Francis Besset
18daa1017c [Routing] Used static to call constant in XmlFileLoader 2012-12-25 12:02:30 +01:00
Fabien Potencier
5096292111 merged branch hpatoio/master (PR #6477)
This PR was merged into the master branch.

Commits
-------

0fa7378 [Validator] Card validation - Italian translations

Discussion
----------

[Validator] Card validation - Italian translations

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: no
2012-12-24 13:42:47 +01:00
Simone Fumagalli
0fa7378939 [Validator] Card validation - Italian translations 2012-12-24 12:04:32 +01:00
excelwebzone
b32c37dfc1 Hebrew validator - added some missing validator keys 2012-12-23 16:10:31 -08:00
Fabien Potencier
e9d0bc24cb Merge branch '2.1'
* 2.1:
  bumped Symfony version to 2.1.7-DEV
  updated VERSION for 2.1.6
  updated CHANGELOG for 2.1.6
  [Form] Fix for `DateTimeToStringTransformer`

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
2012-12-23 19:21:21 +01:00
Fabien Potencier
8fd34e4eae merged branch stloyd/bugfix/tests_form (PR #6440)
This PR was merged into the 2.1 branch.

Commits
-------

8beee64 [Form] Fix for `DateTimeToStringTransformer`

Discussion
----------

[Form] Fix for `DateTimeToStringTransformer`

Closes: #6429

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

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

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

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

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

Ping @fabpot (without this every PR gets false fail results from Travis-CI)
2012-12-23 19:08:33 +01:00
Fabien Potencier
31a7825fe8 [FrameworkBundle] changed data collector templates to use the new namespaced template names 2012-12-23 12:31:08 +01:00
Fabien Potencier
31d21b60bd merged branch ttomor/master (PR #6467)
This PR was merged into the master branch.

Commits
-------

a50e2a4 Albanian translation

Discussion
----------

Albanian translation

Albanian translation of the Validator Component
2012-12-23 12:26:20 +01:00
Fabien Potencier
382e98484b merged branch fabpot/optional-kernel (PR #6465)
This PR was merged into the master branch.

Commits
-------

5e359d3 made the kernel optional in all data collectors

Discussion
----------

made the kernel optional in all data collectors
2012-12-23 12:26:00 +01:00
David Buchmann
bfccd28207 HttpUtils must handle RequestMatcher too 2012-12-23 11:45:18 +01:00
Fabien Potencier
e20b7d9d3c merged branch egeloen/date-time-type (PR #3846)
This PR was merged into the master branch.

Commits
-------

bf9e238 [Form] Add options with_minutes to DateTimeType & TimeType

Discussion
----------

[Form] Add option with_minutes to the DateTimeType & TimeType

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

Hey,

One of my project requires the datetime usage only with hours. I have submit a patch allowing to disable minutes like seconds are disabled.

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

by stloyd at 2012-04-09T16:26:11Z

You should also extend tests for those `Types`

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

by egeloen at 2012-04-09T16:31:51Z

Oups, I have looked at tests but I didn't find it at my first reading. I will do it :)

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

by stloyd at 2012-04-09T16:34:42Z

@egeloen Here you can find tests for Form Types: https://github.com/symfony/symfony/tree/master/src/Symfony/Component/Form/Tests/Extension/Core/Type

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

by egeloen at 2012-04-09T16:42:42Z

@stloyd I have added tests. Can you give me some feedbacks ?

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

by stloyd at 2012-04-09T16:46:33Z

@egeloen I'm not sure if we should allow user to set `with_minutes=false` and `with_seconds=true`. But in overall seems quite ok.

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

by egeloen at 2012-04-09T16:51:37Z

Yes, you're right. But I'm unsure how can I do this following the good way.

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

by inanimatt at 2012-05-03T15:46:02Z

Just make it throw an InvalidConfigurationException.php exception, no? :)

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

by egeloen at 2012-06-09T18:27:41Z

I have updated the PR in order to throw an ``InvalidConfigurationException`` if we enable seconds & disable minutes.

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

by egeloen at 2012-07-09T19:08:11Z

@bschussek I have removed the useless code.

I think I have found an issue about my PR. I have added 3 tests in order to show it. It seems if we disable minutes, the text widget is broken.

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

by stof at 2012-10-13T16:00:43Z

@egeloen can you rebase your PR as it conflicts with master ?

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

by egeloen at 2012-10-13T17:15:22Z

@stof rebase

Like explain previously, my PR is still failling if we disable minutes & use the text widget.

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

by egeloen at 2012-10-13T18:09:03Z

I have fixed the last issue. IMO, the PR can now be merge.

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

by stof at 2012-10-13T18:20:00Z

@bschussek @fabpot ping

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

by egeloen at 2012-10-16T18:13:00Z

@bschussek Do yo think this PR can be merge?

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

by egeloen at 2012-10-30T19:14:00Z

@fabpot is there something missing before merging?

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

by fabpot at 2012-10-31T08:22:55Z

I'm waiting for @bschussek approval.

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

by geoffrey-brier at 2012-11-13T10:49:52Z

I really need the `with_minute => false` enhancement on a project as I don't want to write CSS/JS hacks, could @bschussek approve/disapprove it so that I can make a decision?

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

by henrikbjorn at 2012-11-13T10:52:12Z

@geoffrey-brier you could do you own FieldType that extends the current one and add the option your self.

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

by egeloen at 2012-11-13T13:20:44Z

@bschussek Yes... :) I have updated the PR according to your feedback.

I needed to update the `DateTimeToStringTransformer` because it tries to create a `DateTime` only from the value (with no format). In my case, the `'03'` value is not enougt to create it. So, if the date time creation fails, it then try to create the datetime from the format. I don't know if it is the best approach but it works well.

By the way, why does it first try to create a `DateTime` without format, **then only** try to use the format ?

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

by bschussek at 2012-11-13T14:20:13Z

@egeloen Good question, I think the transformer is a bit flawed there. I'm working on that. The rest of the PR looks good. Thank you!

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

by bschussek at 2012-12-13T18:14:58Z

I fixed the transformer in #6333. Once that is merged into 2.1, and once 2.1 is merged into master after that, you can rebase this PR on master. Then we can merge it.

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

by egeloen at 2012-12-22T14:54:38Z

I have rebased & squashed commits. The PR is ready to merge. ping @fabpot
2012-12-22 22:01:49 +01:00
Fabien Potencier
552185a98a [WebProfilerBundle] fixed wrong class name 2012-12-22 21:58:25 +01:00
Eric GELOEN
bf9e238f75 [Form] Add options with_minutes to DateTimeType & TimeType 2012-12-22 15:51:06 +01:00
ttomor
a50e2a46ec Albanian translation 2012-12-22 15:40:27 +01:00
Fabien Potencier
5e359d3e9d made the kernel optional in all data collectors 2012-12-22 14:27:11 +01:00
Toni Uebernickel
05fca6d80e use preferred_choices in favor of preferred_query 2012-12-21 13:49:48 +01:00
Toni Uebernickel
6855cffb1d add preferred_query option to ModelType
This enables the ModelChoiceList to use 'preferred_choices' of the parent ChoiceType.
2012-12-21 12:21:17 +01:00
Fabien Potencier
6aeb546f31 bumped Symfony version to 2.0.21-DEV 2012-12-21 11:42:51 +01:00
Fabien Potencier
031a09dc00 bumped Symfony version to 2.1.7-DEV 2012-12-21 11:42:20 +01:00
Fabien Potencier
9270c41d91 updated VERSION for 2.1.6 2012-12-21 11:24:53 +01:00
Fabien Potencier
792e602cce updated VERSION for 2.0.21 2012-12-21 11:11:18 +01:00
Fabien Potencier
a5e1c4a657 [TwigBundle] added a compatibility layer for the render tag so that the same code can work in both 2.1 and 2.2
If you want your code to work on both version, use the following syntax:

{% render url('foo') with {}, {'bar': 1} %}

where the empty array is not used in 2.2.
2012-12-21 08:47:46 +01:00
Fabien Potencier
84ec18783e Merge branch '2.1'
* 2.1:
  fixed typo
  [FrameworkBundle] fixed ESI calls
  [FrameworkBundle] fixed ESI calls
  bumped Symfony version to 2.1.6-DEV
  updated VERSION for 2.1.5
  updated CHANGELOG for 2.1.5
  bumped Symfony version to 2.0.21-DEV
  [FrameworkBundle] fixed trusted_proxies configuration for some edge cases
  [FrameworkBundle] fixed XSD for the trusted-proxies setting
  updated VERSION for 2.0.20
  update CONTRIBUTORS for 2.0.20
  updated CHANGELOG for 2.0.20

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/HttpKernel.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php
	src/Symfony/Component/HttpKernel/Kernel.php
2012-12-20 23:18:21 +01:00
Fabien Potencier
bc09ac9eb0 fixed typo 2012-12-20 23:15:41 +01:00
Fabien Potencier
b8e5689363 [FrameworkBundle] fixed ESI calls 2012-12-20 23:13:30 +01:00
Fabien Potencier
ce536cdd5a [FrameworkBundle] fixed ESI calls 2012-12-20 23:10:14 +01:00
Fabien Potencier
3341c8ec43 [FrameworkBundle] restricted to only URIs the first argument of the actions helper 2012-12-20 22:49:33 +01:00
Joseph Bielawski
8beee644a5 [Form] Fix for DateTimeToStringTransformer 2012-12-20 18:52:51 +01:00
Drak
85137778a6 [HttpFoundation] Update docblock for non-working method 2012-12-20 17:23:26 +00:00
Fabien Potencier
06e1de9742 bumped Symfony version to 2.1.6-DEV 2012-12-20 15:53:35 +01:00
Fabien Potencier
1770d3f5ed updated VERSION for 2.1.5 2012-12-20 15:27:50 +01:00
Fabien Potencier
1493f747a2 Merge branch '2.0' into 2.1
* 2.0:
  bumped Symfony version to 2.0.21-DEV
  [FrameworkBundle] fixed trusted_proxies configuration for some edge cases
  [FrameworkBundle] fixed XSD for the trusted-proxies setting
  updated VERSION for 2.0.20
  update CONTRIBUTORS for 2.0.20
  updated CHANGELOG for 2.0.20

Conflicts:
	CONTRIBUTORS.md
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/full.xml
	src/Symfony/Component/HttpKernel/Kernel.php
2012-12-20 15:24:08 +01:00
Fabien Potencier
369e4a645b bumped Symfony version to 2.0.21-DEV 2012-12-20 15:10:43 +01:00
Fabien Potencier
1f281db261 [TwigBundle] fixed PHP notice 2012-12-20 12:01:24 +01:00
Fabien Potencier
6f28fc2414 merged branch stloyd/patch-1 (PR #6434)
This PR was merged into the master branch.

Commits
-------

2a2c468 Update src/Symfony/Component/Form/Extension/Core/DataTransformer/DateTimeToStringTransformer.php

Discussion
----------

[Form] BC change for `preg_match` and old PCRE versions.

Fix `preg_match` in `DateTimeToStringTransformer`  to work with older PCRE.
2012-12-20 10:48:41 +01:00
Joseph Bielawski
5aed0d5505 [FrameworkBundle] Remove test for class removed in commit 64d43c8 2012-12-20 10:34:05 +01:00
Fabien Potencier
4517aebe6f [FrameworkBundle] fixed trusted_proxies configuration for some edge cases 2012-12-20 10:21:38 +01:00
Joseph Bielawski
2a2c46892c Update src/Symfony/Component/Form/Extension/Core/DataTransformer/DateTimeToStringTransformer.php
Fix `preg_match` to work with older PCRE.
2012-12-20 10:02:06 +01:00
Fabien Potencier
0085798dff [FrameworkBundle] fixed XSD for the trusted-proxies setting 2012-12-20 09:52:00 +01:00
Fabien Potencier
16c554bc1f updated VERSION for 2.0.20 2012-12-20 08:51:16 +01:00
Fabien Potencier
d97829e8a8 fixed CS 2012-12-20 08:41:17 +01:00
Fabien Potencier
e1433924f7 merged branch mmenozzi/bsd-fixes (PR #6432)
This PR was merged into the master branch.

Commits
-------

ad6a6c8 [Finder] Re-enable BsdFindAdapter for Darwin shells and fix it

Discussion
----------

[Finder] Re-enable BsdFindAdapter for Darwin shell and fix it

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes (tested both Mac OS X and Debian)
Fixes the following tickets: #6412

----

BSD find command needs "-E" switch to evaluate POSIX regex.
Added the ability to Command to insert bits at a given index.

On some systems (Mac OS X for example) php's function
sys_get_temp_dir() returns a directory that is a symlink.
This causes tests failures because expected paths are different
from path returned by the adapter. So, has been added a realpath.

The building of sorting command has been totally moved on the adapter so
the sorting command for BsdFindAdapter has been fixed.

The building of content filtering command has been moved on the adapter.
In BsdFindAdapter version, -r switch has been replaced with initial grep
that srips out blank lines, this way is compatible with BSD shell.
2012-12-20 08:36:55 +01:00
Fabien Potencier
64d43c806b restricted to only URIs the first argument of the render tag 2012-12-20 08:31:14 +01:00
Fabien Potencier
2c9083a6e0 Merge branch '2.1'
* 2.1:
  [FrameworkBundle] added support for URIs as an argument to HttpKernel::render()
  [FrameworkBundle] restricted the type of controllers that can be executed by InternalController
  [Process] Allow non-blocking start with PhpProcess
  Making it easier to grab the PR template.
  [Locale] fixed a test
  Fixed failing test
  fix double-decoding in the routing system

Conflicts:
	src/Symfony/Component/Process/PhpProcess.php
2012-12-20 08:22:35 +01:00
Fabien Potencier
4bee2e9d3a Merge branch '2.0' into 2.1
* 2.0:
  [FrameworkBundle] added support for URIs as an argument to HttpKernel::render()
  [FrameworkBundle] restricted the type of controllers that can be executed by InternalController
  Making it easier to grab the PR template.
  fix double-decoding in the routing system

Conflicts:
	README.md
	src/Symfony/Bundle/FrameworkBundle/EventListener/RouterListener.php
	src/Symfony/Component/Security/Http/HttpUtils.php
2012-12-20 08:21:29 +01:00
Fabien Potencier
532cc9a0e6 [FrameworkBundle] added support for URIs as an argument to HttpKernel::render() 2012-12-20 08:14:51 +01:00
Fabien Potencier
1f8c501b99 [FrameworkBundle] restricted the type of controllers that can be executed by InternalController 2012-12-20 08:14:45 +01:00
Fabien Potencier
d90e55cbb3 merged branch Tobion/fix-double-encoding (PR #6363)
This PR was merged into the 2.0 branch.

Commits
-------

8b2c17f fix double-decoding in the routing system

Discussion
----------

fix double-decoding in the routing system

@fabpot @vicb This should fix it. You know what ;) Don't want to leak more information.
And the good thing, it's no hack nor does it break BC.
2012-12-20 08:11:40 +01:00
Fabien Potencier
eedafadb58 merged branch lmcd/wdt-token (PR #6431)
This PR was merged into the master branch.

Commits
-------

4663450 Use abbr_class
15c52f5 Show class name of security token in WDT

Discussion
----------

Show class name for security token in WDT

I found this to be really useful when creating custom authentication providers

Example:

![token](https://f.cloud.github.com/assets/363540/23829/2f28c1ac-4a70-11e2-91d4-e3ac27201b4f.png)
2012-12-20 08:05:25 +01:00
Manuele Menozzi
ad6a6c8651 [Finder] Re-enable BsdFindAdapter for Darwin shells and fix it
BSD find command needs "-E" switch to evaluate POSIX regex.
Added the ability to Command to insert bits at a given index.

On some systems (Mac OS X for example) php's function
sys_get_temp_dir() returns a directory that is a symlink.
This causes tests failures because expected paths are different
from path returned by the adapter. So, has been added a realpath.

The building of sorting command has been totally moved on the adapter so
the sorting command for BsdFindAdapter has been fixed.

The building of content filtering command has been moved on the adapter.
In BsdFindAdapter version, -r switch has been replaced with initial grep
that srips out blank lines, this way is compatible with BSD shell.
2012-12-20 07:51:44 +01:00
Lee McDermott
4663450a03 Use abbr_class 2012-12-20 06:35:43 +00:00
Lee McDermott
15c52f507e Show class name of security token in WDT 2012-12-20 06:23:44 +00:00
Drak
7533deb86d [Form] Prevent trigger of E_USER_DEPRECATED for new API 2012-12-19 17:35:01 +00:00
Pierre Tachoire
2cd43da120 [Process] Allow non-blocking start with PhpProcess 2012-12-19 14:27:19 +01:00
Sema
8654cd80fd Fixed missing quote in FormHelper->widget() PHPDoc 2012-12-19 15:09:11 +04:00
Fabien Potencier
6261779ef3 [Finder] disable the BSD find adapter on the Mac as it does not work yet (refs #6412) 2012-12-19 08:39:37 +01:00
Florin Patan
c2acc6c2cb Fixed most of the docblocks/unused namespaces 2012-12-19 08:09:49 +01:00
Fabien Potencier
7bc9caa979 merged branch tvlooy/form_test (PR #6375)
This PR was merged into the master branch.

Commits
-------

cda1621 Move FormInterface too
0544351 Move DeprecationErrorHandler to Test folder so it's not removed when building the zip file
f56a2b9 Fix #6374 move FormBuilderInterface from Tests to Test

Discussion
----------

Fix #6374 move FormBuilderInterface from Tests to Test

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

by fabpot at 2012-12-16T07:47:55Z

Are there any other classes in the tests that might be useful for testing userland forms? ping @bschussek

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

by colinfrei at 2012-12-16T08:24:51Z

The DeprecationErrorHandler will need to be in the Test directory as well, as its handleBC method is used for handling BC code that's not in tests.

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

by colinfrei at 2012-12-16T09:06:51Z

Wanted to make a pull request to tvlooy's branch with the DeprecationErrorHandler stuff, but can't figure out how to do that - the commit is here: ec56379042

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

by stof at 2012-12-16T19:53:59Z

@fabpot The other extending interfaces provided for mocking purpose (as mocking an interface extending ``Traversable`` directly does not work). So we have FormInterface too at least
2012-12-18 13:05:19 +01:00
Bernhard Schussek
19d8510288 [Form] Improved Form::add() and FormBuilder::add() to accept integers as field names 2012-12-18 11:56:22 +01:00
Bernhard Schussek
fb71964adc [Form] Added an alternative signature Form::add($name, $type, $options) 2012-12-18 11:29:26 +01:00
Colin Frei
07316c9aa0 [Validator] catch deprecated methods 2012-12-17 21:38:04 +01:00
Fabien Potencier
92ecff816b [TwigBridge] updated CHANGELOG 2012-12-17 15:01:24 +01:00
Fabien Potencier
2cc51b0823 merged branch fabpot/twig-render (PR #6386)
This PR was merged into the master branch.

Commits
-------

163564b [WebProfilerBundle] replaced yaml_dump by json_encode to make the Web Profiler independent from the YAML component
1c92307 [WebProfilerBundle] fixed exception panel when no exception is thrown
00e08be [WebProfilerBundle] replaced usage of the render tag by the render function (to decouple the bundle from TwigBundle)
0e2418c [TwigBundle] added the HttpKernel extension to the default Twig loaded extensions
f0d9be0 [TwigBridge] added an extension for the HttpKernel component

Discussion
----------

Added an HttpKernelExtension in Twig bridge and used it in the WebProfiler

The first commit introduces a new HttpKernelExtension in the Twig bridge that allows the rendering of a sub-request from a template (the code mostly comes from Silex, and will replace the code there at some point).

The name `render` is probably not the best one as it does not really tell you what it does (the same goes for the `render` tag we have in Symfony2 by the way).

Here is a list of possible names:

 * `render()`
 * `render_request()`
 * `request()`
 * `subrequest()`
 * `include_request()`

I don't really like the last one, but it is (perhaps) consistent with the `include` tag/function in Twig.

This new `render()` function is also a first step towards replacing the `render` tag (with support for ESI, SSI, ...). But it won't happen before we refactor the way it's managed now (a lot of the code is in the FrameworkBundle right now and that prevents Silex or Drupal to reuse it).

The other commits make use of this new extension to make the Web Profiler truly independent from TwigBundle and FrameworkBundle.
2012-12-17 14:59:17 +01:00
Michel Weimerskirch
ab9d033edc [Validator] Added missing Luxembourgish messages 2012-12-17 12:46:04 +01:00
Tom Van Looy
cda162103f Move FormInterface too 2012-12-17 09:01:30 +01:00
Fabien Potencier
163564b009 [WebProfilerBundle] replaced yaml_dump by json_encode to make the Web Profiler independent from the YAML component 2012-12-16 21:43:35 +01:00
Fabien Potencier
1c92307e4c [WebProfilerBundle] fixed exception panel when no exception is thrown 2012-12-16 21:43:35 +01:00
Fabien Potencier
00e08be05b [WebProfilerBundle] replaced usage of the render tag by the render function (to decouple the bundle from TwigBundle) 2012-12-16 21:43:31 +01:00
Fabien Potencier
8df9b7a2de [Config] renamed keepKeys() to normalizeKeys() (refs #6367) 2012-12-16 17:56:50 +01:00
Fabien Potencier
0e2418c505 [TwigBundle] added the HttpKernel extension to the default Twig loaded extensions 2012-12-16 17:47:32 +01:00
Fabien Potencier
f0d9be02f5 [TwigBridge] added an extension for the HttpKernel component 2012-12-16 17:46:42 +01:00
Fabien Potencier
4f0cf08523 merged branch fabpot/config-key-normalization (PR #6367)
This PR was merged into the master branch.

Commits
-------

6efae29 [TwigBundle] fixed configuration to avoid key normalizations for paths and globals (closes #5998)
e31d4f1 [Config] allowed the disabling of key normalization on some array nodes

Discussion
----------

Config key normalization

This is a quick proof-of-concept for a better fix of #6086, where key normalizations can be disabled on specific nodes. The previous patch was not really useful as you were only able to disable key normalization globally for a configuration.

ping @lolautruche

The second commit fixes #5998.

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

by lolautruche at 2012-12-15T15:39:00Z

+1
The approach is neat and much better than my workaround. Gives better control and avoids magic 😃 (even if this *normalization* is still a bit obscure to me).
2012-12-16 16:12:15 +01:00
Fabien Potencier
6efae29f2a [TwigBundle] fixed configuration to avoid key normalizations for paths and globals (closes #5998) 2012-12-16 16:11:31 +01:00
Fabien Potencier
e31d4f19d9 [Config] allowed the disabling of key normalization on some array nodes
This reverts #6086
2012-12-16 16:11:28 +01:00
Fabien Potencier
608972417c merged branch nicam/biggerHitBoxWebProfiler (PR #6385)
This PR was merged into the master branch.

Commits
-------

a498261 [Webprofiler] increased hitboxSize of the close button the webprofiler toolbar. Otherwise it's very hard to close it on a tablet

Discussion
----------

[Webprofiler] increased hitboxSize of the close button the webprofiler

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:

Increased the hitbox Size of the close button on webprofiler, otherwise it's very hard to close it on a tablet. Apple recommends 40x40 pixels for touch stuff

see issue https://github.com/symfony/symfony/issues/6264

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

by nicam at 2012-12-16T13:45:36Z

@stloyd done
2012-12-16 16:02:21 +01:00
Pascal Helfenstein
a4982618fd [Webprofiler] increased hitboxSize of the close button the webprofiler toolbar. Otherwise it's very hard to close it on a tablet 2012-12-16 14:43:26 +01:00
Pascal Helfenstein
a9c27fbe7b [Form] empty_value should not be selectable in choice field if the field is required 2012-12-16 14:02:47 +01:00
Gábor Egyed
7a06ce8258 [WebProfilerBundle] fixed label for attribute 2012-12-16 11:16:08 +01:00
Colin Frei
0544351463 Move DeprecationErrorHandler to Test folder so it's not removed when building the zip file 2012-12-16 10:51:52 +01:00
Tom Van Looy
f56a2b908c Fix #6374 move FormBuilderInterface from Tests to Test 2012-12-16 10:51:52 +01:00
Fabien Potencier
b1f2c2b9e9 tweaked previous merge 2012-12-16 09:41:40 +01:00
Fabien Potencier
cbef9c2837 merged branch dlsniper/profiler-time-search (PR #6113)
This PR was merged into the master branch.

Commits
-------

5a73d55 Added small test to check if time limit works
7f6e99b Fixed MongoDB storage missing time range. Fixed UI not searching properly. Removed unnecessary time query.
3a0ed58 Added ability to search by time when using the profiler

Discussion
----------

[WebProfilerBundle] [HttpKernel][Profiler] Added ability to search by time when using the profiler

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

This PR adds the ability to search in a certain time range for profiles.

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

by fabpot at 2012-12-11T14:36:21Z

Anyone willing to help for the MongoDB support? ping @jmikola

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

by jmikola at 2012-12-11T18:42:00Z

Totally. I'm flying between Turkey and New York tomorrow and if I have wifi on the plane (good chance) I'll check this out. Otherwise, later in the week.

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

by dlsniper at 2012-12-11T22:42:19Z

I could have a look on this matter as well tomorrow but I'm not really sure about my schedule. Any help would be greatly appreciated. Thanks!

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

by jmikola at 2012-12-13T21:56:26Z

@dlsniper: Had no wifi on the plane, but I'm available to work on this now. How can we go about it?

Should I submit a PR against your branch? Then you can accept that and my commit should show up in this PR.

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

by dlsniper at 2012-12-13T22:05:21Z

@jmikola I haven't had too much time either but yes, that would be great.

The change should go here: b631cd989c/src/Symfony/Component/HttpKernel/Profiler/MongoDbProfilerStorage.php (L172) but I clearly lack the skill of making the necessary changes for it.

Thank you very much!

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

by dlsniper at 2012-12-15T21:39:39Z

I've fixed MongoDB driver, adjusted search by time like @jmikola suggested and fixed a UI bug. Can someone please validate this over?

Thanks!

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

by dlsniper at 2012-12-15T21:55:51Z

The tests seem to be failing because of some locale changes not related to these commits. I encounter the same problem on my laptop and I could try and fix it into a different branch but last time I've tried to fix it it was ok on my side and failing on Travis. Any hints for that?
2012-12-16 09:22:52 +01:00
Florin Patan
254d40bca0 Small fix for WPB when there is no menu item 2012-12-15 23:53:39 +02:00
Florin Patan
5a73d5512f Added small test to check if time limit works 2012-12-15 23:45:42 +02:00
Florin Patan
7f6e99bc4d Fixed MongoDB storage missing time range. Fixed UI not searching properly. Removed unnecessary time query. 2012-12-15 23:37:18 +02:00
Florin Patan
3a0ed584df Added ability to search by time when using the profiler 2012-12-15 22:42:20 +02:00
Fabien Potencier
ab64da5671 [Locale] fixed a test 2012-12-15 18:28:15 +01:00
Bernhard Schussek
e713bb4e7e Fixed failing test 2012-12-15 18:20:34 +01:00
Fabien Potencier
f9297c103e merged branch bschussek/bugfix (PR #6371)
This PR was merged into the master branch.

Commits
-------

2f6507b [Form] Fixed failing test

Discussion
----------

[Form] Fixed failing test

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -
2012-12-15 18:13:18 +01:00
Bernhard Schussek
2f6507ba18 [Form] Fixed failing test 2012-12-15 18:04:13 +01:00
Fabien Potencier
1f5b4a1648 [FrameworkBundle] fixed broken tests 2012-12-15 17:50:23 +01:00
Fabien Potencier
0ed2bdde84 Merge branch '2.1'
* 2.1:
  [FrameworkBundle] fixed broken tests
  [FrameworkBundle] Fixed logic under test environment.
  [Session] Added exception to save method
  [Session] Fixed a bug with the TestListener
  Added comment
  [FrameworkBundle] Added tests for trusted_proxies configuration.
  [FrameworkBundle] Added a check on file mime type for CodeHelper::fileExcerpt()
  checked for a potentially missing key
  [FrameworkBundle] used the new method for trusted proxies
  remove realpath call

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php
2012-12-15 17:49:38 +01:00
Fabien Potencier
47a56048f3 [FrameworkBundle] fixed broken tests 2012-12-15 17:47:55 +01:00
Fabien Potencier
aca311e077 Merge branch '2.0' into 2.1
* 2.0:
  Added comment
  [FrameworkBundle] Added tests for trusted_proxies configuration.
  [FrameworkBundle] Added a check on file mime type for CodeHelper::fileExcerpt()
  checked for a potentially missing key
  [FrameworkBundle] used the new method for trusted proxies
  remove realpath call

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php
2012-12-15 17:44:57 +01:00
Fabien Potencier
c0fc33df44 merged branch bamarni/2.0 (PR #6154)
This PR was merged into the 2.0 branch.

Commits
-------

f0743b1 Merge pull request #1 from pylebecq/2.0
555e777 [FrameworkBundle] Added tests for trusted_proxies configuration.
a0e2391 [FrameworkBundle] used the new method for trusted proxies

Discussion
----------

[FrameworkBundle] used the new method for trusted proxies

This makes the framework bundle using the new method from the request class.

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

by fabpot at 2012-12-05T10:38:20Z

As this is a sensitive issue, can you add some tests? Thanks.

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

by bamarni at 2012-12-06T13:00:24Z

Well I don't know why it fails on travis, I can't run the full test suite locally because of a segfault but ```phpunit src/Symfony/Bundle/``` marks all the tests as passing.

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

by fabpot at 2012-12-06T13:08:11Z

But it looks like the failing tests come from what you've changed.

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

by bamarni at 2012-12-06T13:29:33Z

Yes, I'm not saying it's not my fault but I can't reproduce this as locally it tells me they pass, I'll try to fix this this evening.

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

by bamarni at 2012-12-06T17:49:28Z

Apparently it fails only when running the whole testsuite, looking at other travis builds I can see this one on 2.0 : https://travis-ci.org/symfony/symfony/jobs/3495511 which fails in a similar way than here (https://travis-ci.org/symfony/symfony/jobs/3530928). Because of a place trying to access an undefined $_SERVER key : ```PHP Notice:  Undefined index: SCRIPT_NAME ...``` but I can't find where, and the stack trace references some phpunit classes.

I'd be happy if someone could give me some pointers in here as I don't have any clue about how to fix this..

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

by bamarni at 2012-12-06T18:00:57Z

As a consulsion I'd say I can't run the whole testsuite locally (it fails even when I revert my commit), so there is no reliable way for me to fix this, if anyone is up for continuing this feel free.

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

by fabpot at 2012-12-11T09:47:48Z

@bamarni Can you just update this PR with the code change and no tests at all? I will then finish the PR. Thanks.

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

by bamarni at 2012-12-11T16:58:17Z

@fabpot: thanks for helping me out on this, hope you won't run into the same issue!
2012-12-15 17:43:45 +01:00
Drak
54d3f814ec [FrameworkBundle] Fixed logic under test environment. 2012-12-15 15:16:34 +00:00
Fabien Potencier
04d95a5bee [Yaml] tweaked phpdoc (closes #6275) 2012-12-15 14:02:34 +01:00
Fabien Potencier
a709a02538 merged branch fabpot/translation-metadata (PR #6349)
This PR was merged into the master branch.

Commits
-------

320fb6c [Translation] changed the MetadataAwareInterface method signatures
11ff433 [Translation] fixed CS in unit tests
c40db35 [Translation] removed some code that is not done anywhere else in Symfony
63719a0 [Translation] created a new interface to avoid breaking BC
23e9e65 [Translation] fixed name
5607732 [Translation] added Metadata to MessageCatalogue

Discussion
----------

[MessageCatalogue] Add Metadata to MessageCatalogue

rework of #4399

For improving the Gettext tools (PO, MO File Loader/Dumper) we need at least storage for their meta data.

This patch allows for issues below to store and process ie Po Header, Po Header Pluralisation rule.

Open
- [[WIP]: Allow Drupal to use Translate component](https://github.com/symfony/symfony/pull/4249)
- [[2.1][Translator] Symfony translation process & gettext](https://github.com/symfony/symfony/issues/4245)

Closed:
- [[Translation] Po/MoFileLoader parse plurization rules](https://github.com/symfony/symfony/pull/3023)

It has 1 TODO regarding addCatalogue: it now just override old values with new.
2012-12-15 13:49:35 +01:00
Fabien Potencier
c67ddb27b3 merged branch baldurrensch/testlistener_fix (PR #6362)
This PR was merged into the 2.1 branch.

Commits
-------

098b593 [Session] Added exception to save method
6b9ee87 [Session] Fixed a bug with the TestListener

Discussion
----------

[Session] Fixed bug with TestListener

Fixed a bug where an unstarted mock session would be emptied with a save. Here are the steps to reproduce:

Use the test client from Symfony\Bundle\FrameworkBundle\Test\WebTestCase::createClient(), and add something to its session. (I actually had it authenticate against a firewall).
Take the cookies of this first test client and add them to a second test client
Have the second test client request a URL that results in a 404
Since the 404 does not need to start the session, hence when save is called (automatically), the mock session is overwritten with an empty array. This does not happen with the other session handlers.
The added unit test in this PR shows this problem. If this PR gets accepted, will it also get merged into the 2.1.x-dev branch?

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes (The broken test seems to be unrelated to this change)
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -

This is a follow up PR since my original one (https://github.com/symfony/symfony/pull/6342) was against the wrong upstream branch.
2012-12-15 13:27:56 +01:00
Fabien Potencier
1de60c902c merged branch ricardclau/rename_choice_to_oneof (PR #6360)
This PR was merged into the master branch.

Commits
-------

9071676 create oneof constraint and add deprecation messages in choice, also make choice extend new oneOf constraint to avoid duplicate code

Discussion
----------

[Validator] Rename "Choice" to "OneOf"

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #6324
Todo:
License of the code: MIT
Documentation PR: https://github.com/symfony/symfony-docs/issues/2025

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

by bschussek at 2012-12-14T18:20:56Z

Can you let `Choice` and `ChoiceValidator` extend the renamed classes? Then we avoid the code duplication. You can also remove `ChoiceValidatorTest` then.

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

by ricardclau at 2012-12-14T18:26:58Z

For sure! BTW there seems to be a problem with SF2 build when testing BR currency :S maybe it is the new ICU version supported, I guess you are aware of this but just in case!

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

by stof at 2012-12-14T21:14:04Z

the ``Choice`` constraint should trigger a ``E_USER_DEPRECATED`` in its constructor (and calling the parent constructor) as we agreed on this. The PR adding these calls everywhere is not merged yet, but it would avoid missing it when merging the PRs separately

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

by bschussek at 2012-12-14T21:19:45Z

Things missing:

* add a deprecation note to the Validator's CHANGELOG
* add a block in UPGRADE-2.2 under the Validator's "Deprecations" section that explains how to upgrade with a before/after sample
* add `trigger_error()` calls to the constructors of `Choice` and `ChoiceValidator`

See #6180 for more information about how to call `trigger_error()`.

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

by ricardclau at 2012-12-14T22:45:55Z

Sorry I was not aware of the trigger_error() agreement, absolutely +1 on it.

I hope I understood everything properly, if there is something else or some other errors please tell me!

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

by bschussek at 2012-12-15T08:46:51Z

The entry in the CHANGELOG is still missing.

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

by ricardclau at 2012-12-15T09:36:28Z

By the CHANGELOG you mean what I just added right? Hope now it is ok!

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

by bschussek at 2012-12-15T09:45:16Z

Awesome! ðŸ‘
2012-12-15 13:25:28 +01:00
Ricard Clau
9071676f0b create oneof constraint and add deprecation messages in choice, also make choice extend new oneOf constraint to avoid duplicate code 2012-12-15 10:29:01 +01:00
Fabien Potencier
e3cc337b00 merged branch colinfrei/deprecationErrors (PR #6180)
This PR was merged into the master branch.

Commits
-------

6b10550 Merge branch 'master' of github.com:symfony/symfony into deprecationErrors
1d82112 [Form] Fix two cases where deprecated methods were being used
b8cdbdc [Form] Catch deprecation errors that are caused by BC code
ebcb432 [Form] [FrameworkBundle] catch deprecation errors in tests
c21b12e [Form] handle BC use of deprecated stuff in non-test-methods.
fc2be6d [Form] catch deprecated errors in tests
800a032 [Form] replace bindRequest() with bind(), as bindRequest is deprecated
d5b2638 [Form] Trigger errors for deprecated methods in Form Component
f3d6966 [Validator] Stop using deprecated methods
d57ad32 [Form] Catch deprecation errors when using deprecated methods/classes in tests
3241157 [Validator] Trigger errors for deprecations
1f9eb7f return value of handleError
b35de9e Handle errors using a custom error handler
f49704b trigger errors for deprecated methods in HttpFoundation component

Discussion
----------

trigger_error() for deprecations

See also #6173 and #6139.

Started triggering errors in the HttpFoundation component.
It seems as if most of the time the error is just duplicating the text in the @deprecation comment.

Any opinions on if duplicating the text is acceptable, or if fetching the comment text to output the error makes sense?

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

by Seldaek at 2012-12-04T13:39:42Z

IMO it's fine to just duplicate the `@deprecated` note in the message, since anyway this code is meant to be completely deleted, this duplication should not do much harm.

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

by fabpot at 2012-12-06T08:22:21Z

@colinfrei I've merged PR #6173. Do you have time to implement the `trigger_error()` call everywhere? Thanks.

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

by colinfrei at 2012-12-06T08:36:55Z

Yep I'll finish that, probably until the beginning of next week.

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

by bschussek at 2012-12-10T10:15:12Z

Thank you for working on this!

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

by fabpot at 2012-12-12T11:08:53Z

@colinfrei: Is this PR finished? Can I merge it?

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

by colinfrei at 2012-12-12T12:09:19Z

@fabpot not quite - I lost some work due to a computer crash over the weekend. The only thing open is fixing the tests  for the Form Component and catching the cases where the Form Component intentionally uses deprecated stuff.

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

by colinfrei at 2012-12-15T07:32:28Z

@fabpot - finished adding trigger_errors and catching them in Tests and as needed.
Travis is failing, but that seems to be master being broken due to the Finder changes?

I changed a few cases where the code was using deprecated methods which wasn't necessary in my eyes, specifically   1d8211249b, 800a032f07, f3d696636a
2012-12-15 08:53:57 +01:00
Tobias Schultze
9ab5e4f5c7 fix typos in PhpMatcherDumper 2012-12-14 23:50:21 +01:00
Colin Frei
6b105504f4 Merge branch 'master' of github.com:symfony/symfony into deprecationErrors 2012-12-14 23:30:36 +01:00
Pascal Borreli
60eeacd2d1 Fixed typos 2012-12-14 22:27:02 +00:00
Colin Frei
1d8211249b [Form] Fix two cases where deprecated methods were being used 2012-12-14 23:17:14 +01:00
Colin Frei
b8cdbdc69f [Form] Catch deprecation errors that are caused by BC code 2012-12-14 23:16:49 +01:00
Colin Frei
ebcb432f07 [Form] [FrameworkBundle] catch deprecation errors in tests 2012-12-14 23:16:06 +01:00
Tobias Schultze
8b2c17f803 fix double-decoding in the routing system 2012-12-14 23:08:21 +01:00
Pascal Borreli
4a073e60fb [Form] Fixed duplicate case expression 2012-12-14 22:07:21 +00:00
Baldur Rensch
098b593591 [Session] Added exception to save method
A RuntimeException is thrown if there is an attempt to save the session
without it being started, or if it has already been closed.
2012-12-14 13:03:29 -08:00
Fabien Potencier
d13907bdef Merge branch '2.1'
* 2.1:
  [Form] Fixed DateTimeToStringTransformer parsing on PHP < 5.3.8
  [Propel1Bridge] Fix "and => &&" CS in ModelChoiceList
  [HttpKernel] Revise MongoDbProfilerStorage::write() return value
  [Session] Document Mongo|MongoClient argument type instead of "object"
  [HttpKernel] Support MongoClient and Mongo connection classes
  [Session] Support MongoClient and Mongo connection classes
  [Session] Utilize MongoDB::selectCollection()
  [Form] Fixed reverse transformation of values in DateTimeToStringTransformer

Conflicts:
	src/Symfony/Component/HttpFoundation/Session/Storage/Handler/MongoDbSessionHandler.php
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php
2012-12-14 21:34:16 +01:00
Fabien Potencier
f68ae0e57b merged branch hason/config (PR #5875)
This PR was merged into the master branch.

Commits
-------

45aab0f [Config] Added parameter to check prefix in an element or an attribute name in XmlUtils::convertDomElementToArray
7f5a7fd [DependencyInjection] Using class from Config component to loading XML files
d6f0880 [Validator] Added dependency to Config component to loading XML files
34471a6 [Routing] Using class from Config component to loading XML files
fa8b0d8 [Config] Added a utils class for XML manipulations

Discussion
----------

[Config] Added a utils class for XML manipulations

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

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

by fabpot at 2012-12-14T13:59:59Z

Looks good to me. Can you rebase on master as there is a conflict right now? Thanks.

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

by hason at 2012-12-14T14:44:11Z

Done.
2012-12-14 21:11:29 +01:00
Fabien Potencier
1017f34001 merged branch pierredup/hinclude (PR #5993)
This PR was merged into the master branch.

Commits
-------

74a8fcf [FrameworkBundle] Added support for default templates per render tag

Discussion
----------

[FrameworkBundle] Added support for default templates per render tag

This commit allows you to specify default templates per render tag when using hinclude.

E.G:
The following will use the specific default template for the render:
```` {% render "AcmeDemoBundle:Controller:action" with {}, {"standalone" : "js", "default" : "AcmeDemoBundle:Default:content.html.twig"} %}````

or if you don't want to use a template for the default content but just a string, you can do the following
```` {% render "AcmeDemoBundle:Controller:action" with {}, {"standalone" : "js", "default" : "Loading..."} %}````

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Fixes the following tickets: #3356
Todo: -
Documentation

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

by fabpot at 2012-12-14T12:25:40Z

Looks good to me. Can you add a note in the CHANGELOG of the component and send a PR on symfony/symfony-docs about this new feature? Thanks.

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

by pierredup at 2012-12-14T14:30:00Z

@fabpot done, documentation PR symfony/symfony-docs#2021
2012-12-14 21:10:00 +01:00
Fabien Potencier
63f1f873ff merged branch rubenrua/master (PR #6361)
This PR was merged into the master branch.

Commits
-------

4c833ac Added Galician translation

Discussion
----------

[Form] [Validator] added Galician translation

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-12-14 21:02:05 +01:00
Fabien Potencier
42adb7ade1 merged branch fabstei/update_slovak_translation (PR #6358)
This PR was merged into the master branch.

Commits
-------

8729ff8 [Validator] Updated Slovak translations (collections and cards)

Discussion
----------

[Validator] Updated Slovak translations (collections and cards)
2012-12-14 21:01:34 +01:00
Fabien Potencier
49dc8b0bf8 merged branch efeencheung/master (PR #6356)
This PR was merged into the master branch.

Commits
-------

d7db2c3 Add two zh_CN thans-unit in validators

Discussion
----------

Add 2 zh_CN thans-unit in validators

I 've added 2 zh_CN thans-unit in validators, Please review it
2012-12-14 21:01:18 +01:00
Baldur Rensch
6b9ee87b62 [Session] Fixed a bug with the TestListener
When the session is not started, the test listener would still save the
session causing the session data to be emptied.
2012-12-14 11:26:41 -08:00
rubenrua
4c833ac80e Added Galician translation 2012-12-14 19:44:04 +01:00
Bernhard Schussek
ad29df5efd [Form] Fixed DateTimeToStringTransformer parsing on PHP < 5.3.8 2012-12-14 19:18:27 +01:00
Fabian Steiner
8729ff886c [Validator] Updated Slovak translations (collections and cards) 2012-12-14 17:01:37 +01:00
efeen
d7db2c387a Add two zh_CN thans-unit in validators 2012-12-14 23:14:32 +08:00
Martin Hasoň
45aab0f1e0 [Config] Added parameter to check prefix in an element or an attribute name in XmlUtils::convertDomElementToArray 2012-12-14 15:34:03 +01:00
Martin Hasoň
7f5a7fd432 [DependencyInjection] Using class from Config component to loading XML files 2012-12-14 15:34:01 +01:00
Martin Hasoň
d6f08809dd [Validator] Added dependency to Config component to loading XML files 2012-12-14 15:33:59 +01:00
Martin Hasoň
34471a636a [Routing] Using class from Config component to loading XML files 2012-12-14 15:33:56 +01:00
Martin Hasoň
fa8b0d82f1 [Config] Added a utils class for XML manipulations 2012-12-14 15:29:59 +01:00
Pierre du Plessis
74a8fcf013 [FrameworkBundle] Added support for default templates per render tag 2012-12-14 16:02:08 +02:00
Fabien Potencier
c0507aae90 [Console] added support for ICU data version 50 2012-12-14 14:57:19 +01:00
Fabien Potencier
320fb6cedf [Translation] changed the MetadataAwareInterface method signatures 2012-12-14 14:10:50 +01:00
Fabien Potencier
11ff4330c5 [Translation] fixed CS in unit tests 2012-12-14 14:07:36 +01:00
Fabien Potencier
c40db35c91 [Translation] removed some code that is not done anywhere else in Symfony 2012-12-14 14:04:54 +01:00
Fabien Potencier
63719a0a19 [Translation] created a new interface to avoid breaking BC 2012-12-14 13:44:07 +01:00
Fabien Potencier
23e9e65c00 [Translation] fixed name 2012-12-14 13:44:05 +01:00
Clemens Tolboom
5607732a66 [Translation] added Metadata to MessageCatalogue 2012-12-14 13:34:43 +01:00
Fabien Potencier
1e0a9d0ea7 merged branch robinduval/validator-translation (PR #6347)
This PR was merged into the master branch.

Commits
-------

7511a50 [Validator] Card validation - French translations

Discussion
----------

[Validator] Card validation - French translations
2012-12-14 12:57:57 +01:00
robinduval
7511a500ce [Validator] Card validation - French translations 2012-12-14 12:35:25 +01:00
Francis Besset
d3f5f3a44f Added comment 2012-12-14 12:28:48 +01:00
Pierre-Yves LEBECQ
555e777b0c [FrameworkBundle] Added tests for trusted_proxies configuration. 2012-12-14 12:05:15 +01:00
Francis Besset
773d818d6b [FrameworkBundle] Added a check on file mime type for CodeHelper::fileExcerpt() 2012-12-14 11:53:52 +01:00
Tobias Schultze
efa6c91139 [Routing] add missing phpdoc return 2012-12-14 11:40:56 +01:00
Fabien Potencier
008dc8f1ce [Console] tweaked the select() method in the dialog helper to be more consistent with other method in the same class 2012-12-14 10:43:16 +01:00
Serge Smertin
692b0f41ae [Console] added select() method for DialogHelper 2012-12-14 08:36:07 +01:00
Fabien Potencier
a482aa0640 [WebProfilerBundle] made a small optimization 2012-12-14 08:20:45 +01:00
Fabien Potencier
c6bd807726 merged branch jmikola/2.1-mongoclient (PR #6338)
This PR was merged into the 2.1 branch.

Commits
-------

f24e3d7 [HttpKernel] Revise MongoDbProfilerStorage::write() return value
78c5273 [Session] Document Mongo|MongoClient argument type instead of "object"
de19a81 [HttpKernel] Support MongoClient and Mongo connection classes
b28af77 [Session] Support MongoClient and Mongo connection classes
20e93bf [Session] Utilize MongoDB::selectCollection()

Discussion
----------

[2.1] Support PHP MongoDB driver 1.3.0+ in profiler/session classes

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

I don't believe this is a BC break, but just to confirm:  the MongoDbSessionHandler constructor signature changed, as I removed the `Mongo` type hint.

Bug fix entails allowing MongoClient to be used by default if the new driver is available, since the original Mongo class is deprecated. I also removed the assumption about `MongoCollection::update()`'s return value, since it may be a status array now.

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

by jmikola at 2012-12-13T22:04:47Z

Lots of test failures, but they appear to be unrelated.
2012-12-14 08:19:02 +01:00
Colin Frei
c21b12e896 [Form] handle BC use of deprecated stuff in non-test-methods. 2012-12-14 07:33:36 +01:00
Colin Frei
fc2be6ddc8 [Form] catch deprecated errors in tests 2012-12-14 07:31:09 +01:00
Colin Frei
800a032f07 [Form] replace bindRequest() with bind(), as bindRequest is deprecated 2012-12-14 07:29:01 +01:00
Igor Wiedler
a5530c5d54 [Propel1Bridge] Fix "and => &&" CS in ModelChoiceList 2012-12-13 23:51:22 +01:00
Alex Carol
632f57d862 Corrected typo in catalan translation 2012-12-13 23:08:14 +01:00
Jeremy Mikola
f24e3d79ea [HttpKernel] Revise MongoDbProfilerStorage::write() return value
This should be functionally equivalent, but will be more robust if update() ever returns a falsey value.
2012-12-13 16:41:47 -05:00
Jeremy Mikola
78c5273913 [Session] Document Mongo|MongoClient argument type instead of "object" 2012-12-13 16:21:49 -05:00
Jeremy Mikola
de19a81107 [HttpKernel] Support MongoClient and Mongo connection classes
MongoClient defaults its write concern to w=1 (i.e. "safe" writes), which means update() may return an array instead of boolean true. Check for this before returning from write().
2012-12-13 16:20:39 -05:00
Jeremy Mikola
b28af77101 [Session] Support MongoClient and Mongo connection classes
This provides compatibility with pre-1.3.0 and newer PHP MongoDB drivers.
2012-12-13 15:48:37 -05:00
Jeremy Mikola
20e93bf1a4 [Session] Utilize MongoDB::selectCollection() 2012-12-13 15:46:59 -05:00
Fabien Potencier
b43d7bf66b [Translation] fixed a unit test 2012-12-13 21:23:16 +01:00
Fabien Potencier
59d62b0aa2 merged branch umpirsky/rename-qt-loader (PR #6335)
This PR was merged into the master branch.

Commits
-------

74a06f8 QtTranslationsLoader class renamed to QtFileLoader.

Discussion
----------

[Translation] QtTranslationsLoader class renamed to QtFileLoader.

QtTranslationsLoader class renamed to QtFileLoader. QtTranslationsLoader is deprecated and will be removed in 2.3.

Fixes #6332.
2012-12-13 21:22:50 +01:00
Fabien Potencier
2447757a4e merged branch bschussek/datetimetostringtransformer (PR #6333)
This PR was merged into the 2.1 branch.

Commits
-------

b20c5ca [Form] Fixed reverse transformation of values in DateTimeToStringTransformer

Discussion
----------

[Form] Fixed reverse transformation of values in DateTimeToStringTransformer

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

The parts not given in the format are reset to the corresponding values of
the UNIX base timestamp. For example, when parsing with the format "Y-m-d",
parsing

    "2012-05-18"

now results in the date

    "2012-05-18 00:00:00 UTC"

instead of

    "2012-05-18 12:58:27 UTC"

as before, where the time part corresponded to the local server time.

Another example: When parsing with the format "H:i:s", parsing

    "12:58:27"

now results in

    "1970-01-01 12:58:27 UTC"

instead of

    "2012-12-13 12:58:27 UTC"

as before, where again the date part corresponded to the local server time.

This behavior is now consistent with DateTimeToArrayTransformer and
DateTimeToLocalizedStringTransformer.
2012-12-13 21:21:50 +01:00
Fabien Potencier
5a8534a5db merged branch umpirsky/fix-issue-5797 (PR #6331)
This PR was merged into the master branch.

Commits
-------

2196810 Added QtTranslationsLoader tests.
201818b Fixed #5797.

Discussion
----------

[Translation] Fixed #5797.

This should fix issue #5797.

What I did is prevented `Translator` to throw `NotFoundResourceException` if resource is not found and there are fallback locales to process. This happens for locales like `en_GB`, `fr_FR`...

I also tested this fix against real application which uses Validation component without full stack framework and I was able to use `en_GB` locale without any errors only after this fix.
2012-12-13 21:21:21 +01:00
umpirsky
74a06f84b6 QtTranslationsLoader class renamed to QtFileLoader. 2012-12-13 20:15:36 +01:00
Tobias Schultze
1997e2e978 fix phpdoc of UrlGeneratorInterface that missed some exceptions and improve language of exception message 2012-12-13 20:13:12 +01:00
Tobias Schultze
f0415ed3d1 [Routing] made reference type fully BC and improved phpdoc considerably 2012-12-13 20:13:11 +01:00
Tobias Schultze
7db07d91aa [Routing] added tests for generating relative paths and network paths 2012-12-13 20:13:10 +01:00
Tobias Schultze
75f59ebe01 [Routing] add support for path-relative and scheme-relative URL generation 2012-12-13 20:13:09 +01:00
umpirsky
219681092c Added QtTranslationsLoader tests. 2012-12-13 19:47:04 +01:00
Bernhard Schussek
b20c5ca2ef [Form] Fixed reverse transformation of values in DateTimeToStringTransformer
The parts not given in the format are reset to the corresponding values of
the UNIX base timestamp. For example, when parsing with the format "Y-m-d",
parsing

    "2012-05-18"

now results in the date

    "2012-05-18 00:00:00 UTC"

instead of

    "2012-05-18 12:58:27 UTC"

as before, where the time part corresponded to the local server time.

Another example: When parsing with the format "H:i:s", parsing

    "12:58:27"

now results in

    "1970-01-01 12:58:27 UTC"

instead of

    "2012-12-13 12:58:27 UTC"

as before, where again the date part corresponded to the local server time.

This behavior is now consistent with DateTimeToArrayTransformer and
DateTimeToLocalizedStringTransformer.
2012-12-13 19:30:06 +01:00
Fabien Potencier
4c3edc276a Merge branch '2.1'
* 2.1:
  [Console] Add support for parsing terminal width/height on localized windows, fixes #5742
  [Form] Fixed treatment of countables and traversables in Form::isEmpty()
  refactor ControllerNameParser
  [Form] Fixed FileType not to throw an exception when bound empty
  - Test undefined index #
  Maintain array structure
  Check if key # is defined in $value
  Update src/Symfony/Component/Validator/Resources/translations/validators.pl.xlf
2012-12-13 19:25:06 +01:00
umpirsky
201818bd4b Fixed #5797. 2012-12-13 18:48:40 +01:00
Jordi Boggiano
d2231d8cd8 [Console] Add support for parsing terminal width/height on localized windows, fixes #5742 2012-12-13 18:42:00 +01:00
Fabien Potencier
99a66c97d5 merged branch vicb/kernel/stripcomments (PR #6328)
This PR was merged into the master branch.

Commits
-------

aab60e3 [HttpKernel] fix public Kernel::stripComments()

Discussion
----------

[HttpKernel] fix public Kernel::stripComments()

Needs fix as the method is public.

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

by fabpot at 2012-12-13T17:01:52Z

Can you explain what you mean by "Needs fix as the method is public."?

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

by vicb at 2012-12-13T17:15:05Z

@fabpot One can argue that the fix could not be reached if the method was private.
2012-12-13 18:31:33 +01:00
Fabien Potencier
548dc64639 merged branch fabpot/webprofiler-refactor (PR #6323)
This PR was merged into the master branch.

Commits
-------

142cffb fixed unit tests
fc444f1 fixed support for Twig loaders when they do not extend Twig_ExistsLoaderInterface
f005649 [WebProfilerBundle] decoupled the bundle from TwigBundle
35d63df removed the dependency on the container for exception handling

Discussion
----------

Webprofiler refactor

This PR removes two hard dependencies from WebProfilerBundle:

 * The dependency on the DIC;
 * The dependency on TwigBundle.

It also removes the dependency on the DIC in the exception controller from TwigBundle for more consistency.
2012-12-13 18:14:33 +01:00
Fabien Potencier
142cffbc4f fixed unit tests 2012-12-13 17:59:38 +01:00
Victor Berchet
aab60e33a9 [HttpKernel] fix public Kernel::stripComments() 2012-12-13 17:56:02 +01:00
Fabien Potencier
fc444f1a55 fixed support for Twig loaders when they do not extend Twig_ExistsLoaderInterface 2012-12-13 17:11:26 +01:00
Fabien Potencier
21f8f8c62d merged branch bschussek/issue6246 (PR #6322)
This PR was merged into the master branch.

Commits
-------

81bdab8 [Validator] Fixed: Arrays are validated recursively by default

Discussion
----------

[Validator] Arrays are validated recursively now by default

Bug fix: yes
Feature addition: yes?
Backwards compatibility break: yes
Symfony2 tests pass: yes
Fixes the following tickets: #6246
Todo: -
License of the code: MIT
Documentation PR: -
2012-12-13 16:20:40 +01:00
Fabien Potencier
f005649315 [WebProfilerBundle] decoupled the bundle from TwigBundle 2012-12-13 16:01:47 +01:00
Fabien Potencier
35d63df044 removed the dependency on the container for exception handling 2012-12-13 15:49:45 +01:00
Bernhard Schussek
81bdab8b44 [Validator] Fixed: Arrays are validated recursively by default 2012-12-13 15:47:07 +01:00
Fabien Potencier
2f4ac5e3d1 bumped min version of Twig to 1.11.0 2012-12-13 15:33:46 +01:00
Bernhard Schussek
03b880fed0 [Form] Fixed treatment of countables and traversables in Form::isEmpty() 2012-12-13 15:18:14 +01:00
Tobias Schultze
35e19c76c3 refactor ControllerNameParser 2012-12-13 15:04:21 +01:00
Fabien Potencier
81fc922f16 merged branch vmattila/master (PR #6320)
This PR was merged into the master branch.

Commits
-------

77ffdad Finnish Validator translations updated.

Discussion
----------

Finnish Validator translations updated.

This PR contains an updated Validator translation file for Finnish language.
2012-12-13 15:01:33 +01:00
Ville Mattila
77ffdad558 Finnish Validator translations updated. 2012-12-13 15:51:31 +02:00
Bernhard Schussek
21a59ca04c [Form] Fixed FileType not to throw an exception when bound empty 2012-12-13 14:33:06 +01:00
Tobias Schultze
c2dc758146 [Translation] fix typo in changelog 2012-12-13 13:24:44 +01:00
Fabien Potencier
142d3389ef merged branch fabpot/translator-loaders (PR #6308)
This PR was merged into the master branch.

Commits
-------

34d0c6b [Translation] uniformized the way exception are thrown in LoaderInterface::load()

Discussion
----------

[Translation] uniformized the way exception are thrown in LoaderInterface::load()

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

by fabpot at 2012-12-12T19:44:36Z

followup for #6301 (cc @umpirsky)

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

by umpirsky at 2012-12-12T19:59:05Z

Does this means that we will catch this exception in `Translator` in order to fix #5797?
If yes, maybe we should add new `TranslationResourceNotFoundException` or something similar?

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

by fabpot at 2012-12-13T10:01:23Z

I've created two new exception classes: `NotFoundResourceException` for when the resource does not exist and `InvalidResourceException` when a problem occurs when loading the resource. That should give us everything we need to fix #5797.

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

by umpirsky at 2012-12-13T10:05:08Z

Perfect, thanks.

I'll give it a try later today.

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

by umpirsky at 2012-12-13T11:58:37Z

@fabpot Will you merge or I should fork your branch?
2012-12-13 13:00:54 +01:00
Fabien Potencier
75636a00da [WebProfilerBundle] added missing exclusion in phpunit.xml.dist 2012-12-13 11:03:59 +01:00
Fabien Potencier
34d0c6b640 [Translation] uniformized the way exception are thrown in LoaderInterface::load() 2012-12-13 11:00:37 +01:00
Fabien Potencier
b4e7ff241f merged branch hason/czech_validator (PR #6316)
This PR was merged into the master branch.

Commits
-------

eb2c293 Updated czech translations

Discussion
----------

Updated czech translations
2012-12-13 10:50:36 +01:00
Martin Hasoň
eb2c293728 Updated czech translations 2012-12-13 10:09:16 +01:00
Haritz
fc6290695a Update basque translation
Update translations in lines 195 and 203
2012-12-13 09:23:48 +01:00
Fabien Potencier
ea5929c991 merged branch alsar/slovenian-translation (PR #6311)
This PR was merged into the master branch.

Commits
-------

29595d1 added slovenian translations

Discussion
----------

[Validator] Added Slovenian translations for card validation
2012-12-12 22:15:28 +01:00
Fabien Potencier
d040e91bf1 merged branch meigwilym/master (PR #6310)
This PR was merged into the master branch.

Commits
-------

6c6bf53 first translation to Welsh

Discussion
----------

[Validator][Resources] added new Welsh translation file

Added a Welsh (cy) version of src/Symfony/Component/Validator/Resources/translations/validators.en.xlf
2012-12-12 22:14:35 +01:00
alsar
29595d1a71 added slovenian translations 2012-12-12 22:05:51 +01:00
Mei Gwilym
6c6bf53b46 first translation to Welsh 2012-12-12 20:52:11 +00:00
Eugene Leonovich
3d736ee3e9 [Validator] Update Russian validation messages 2012-12-12 21:03:17 +01:00
Fabien Potencier
9d2efd3071 merged branch dlsniper/ro-translations (PR #6307)
This PR was merged into the master branch.

Commits
-------

58f9d00 Updated Romanian translations

Discussion
----------

Updated Romanian translations

Added Romanian translation for card validation
2012-12-12 20:46:36 +01:00
Florin Patan
58f9d0042d Updated Romanian translations 2012-12-12 21:31:29 +02:00
Fabien Potencier
6b5a9525c1 merged branch umpirsky/issue-5797 (PR #6301)
This PR was merged into the master branch.

Commits
-------

a1fb945 CS fixes.
ac58681 Fix loaders to check if resource exists.

Discussion
----------

[Translation] Fix loaders to check if resource exists.

This was mentioned in #5797.

The problem is that some translation loaders throw exception when translation resource is not found, some produce warnings and some ignore this and return empty catalog.

After this fix, all of them will throw exception in such case. But still, some of them will throw `RuntimeException` and some `InvalidArgumentException` which is not perfect, but still one step in right direction.
2012-12-12 20:08:05 +01:00
Fabien Potencier
b29491cd60 merged branch umpirsky/clean-finder-test (PR #6305)
This PR was merged into the master branch.

Commits
-------

57e70a7 Small cleanup in Finder tests.

Discussion
----------

[Finder] Small cleanup in tests.
2012-12-12 20:03:58 +01:00
Fabien Potencier
a45fb93010 merged branch hizai/master (PR #6303)
This PR was merged into the master branch.

Commits
-------

af3e314 Updated basque translations

Discussion
----------

Updated basque translations
2012-12-12 20:01:44 +01:00
umpirsky
57e70a78d0 Small cleanup in Finder tests. 2012-12-12 19:55:22 +01:00
Andreia Bohner
655fd6ef4c Update Portuguese validation messages 2012-12-12 16:43:57 -02:00
Eduardo Gulias Davis
b4e894a07d - Test undefined index # 2012-12-12 18:17:16 +01:00
Harry Walter
b73b87d571 Maintain array structure 2012-12-12 18:17:16 +01:00
Harry Walter
eac14b5ef2 Check if key # is defined in $value
If # is undefined in $value use set the attribute value as $value
2012-12-12 18:17:16 +01:00
Haritz
af3e3149d1 Updated basque translations 2012-12-12 18:09:02 +01:00
Fabien Potencier
2da97c1a2f fixed CS 2012-12-12 17:59:52 +01:00
Fabien Potencier
acc10a1518 merged branch istaveren/ticket_5288 (PR #6109)
This PR was merged into the master branch.

Commits
-------

12a890f Issue 5288 fix

Discussion
----------

Issue #5288 fix

I only have the test failing on

php -v
5.4.6-1ubuntu1

ICU version 4.8.1.1

Test results

1) Symfony\Component\Locale\Tests\Stub\StubLocaleTest::testGetCurrenciesData
    Failed asserting that two strings are equal.
    --- Expected
    +++ Actual
    @@ @@
    -'BR$'
    +'R$'

It looks like the check $this->isSameAsIcuVersion('4.8') on line is to strict.
It was added here https://github.com/symfony/symfony/commit/90d6dc37 but I don't how to test the fix on icu version 4.8.0.x

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5288
Todo: Check older version of the ICU lib are still working. Because I could not test that.
2012-12-12 17:59:16 +01:00
Colin Frei
d5b2638ff4 [Form] Trigger errors for deprecated methods in Form Component 2012-12-12 17:43:13 +01:00
umpirsky
a1fb94510f CS fixes. 2012-12-12 17:37:31 +01:00
umpirsky
ac58681ae4 Fix loaders to check if resource exists. 2012-12-12 17:37:30 +01:00
Fabien Potencier
3140a589d2 merged branch bertzzie/indo-translation-57-58 (PR #6296)
This PR was merged into the master branch.

Commits
-------

082e8b9 [Validation] Added more Indonesian translation.

Discussion
----------

[Validation] Added more Indonesian translation.

- Added Indonesian translation for translation unit no. 57 and 58.

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

by bertzzie at 2012-12-12T16:16:09Z

This is to add some more translation I missed from the pull request before, here:

https://github.com/symfony/symfony/pull/6289#issuecomment-11291990

Thanks.
2012-12-12 17:35:00 +01:00
Fabien Potencier
067a83c757 merged branch Spea/german-translation (PR #6300)
This PR was merged into the master branch.

Commits
-------

00422dc [Validator] Card validation - German translation

Discussion
----------

[Validator] Card validation - German translation
2012-12-12 17:33:21 +01:00
Fabien Potencier
775b1e36dd merged branch empire/patch-card-validation (PR #6299)
This PR was merged into the master branch.

Commits
-------

ada0875 Added farsi translation for card valdiation

Discussion
----------

[Validator] Added farsi translation for card valdiation
2012-12-12 17:31:29 +01:00
Hossein Zolfi (Ocean)
ada08753e1 Added farsi translation for card valdiation 2012-12-12 19:56:56 +03:30
Martin Parsiegla
00422dc009 [Validator] Card validation - German translation 2012-12-12 17:26:14 +01:00
Alex Xandra Albert Sim
082e8b96fa [Validation] Added more Indonesian translation.
- Added Indonesian translation for translation unit no. 57 and 58.
2012-12-12 23:14:18 +07:00
Fabien Potencier
7bce9b0f28 merged branch sineld/master (PR #6294)
This PR was merged into the master branch.

Commits
-------

d52f8f7 Turkish Language File Translated

Discussion
----------

Turkish Language File Translated
2012-12-12 16:53:09 +01:00
Sinan Eldem
d52f8f781a Turkish Language File Translated 2012-12-12 17:41:33 +02:00
Fabien Potencier
7d8458f2d2 merged branch agarfors/master (PR #6292)
This PR was merged into the master branch.

Commits
-------

ab58c7f [Validator] Card validation - Norwegian translation unit 54-48

Discussion
----------

[Validator] Card validation - Norwegian translation unit 54-58
2012-12-12 16:38:13 +01:00
Ã…smund Garfors
ab58c7fc84 [Validator] Card validation - Norwegian translation unit 54-48 2012-12-12 16:07:02 +01:00
Fabien Potencier
57f1f065ff merged branch pierredup/validator_translations (PR #6291)
This PR was merged into the master branch.

Commits
-------

34df35d Added validation messages for  Afrikaans

Discussion
----------

[Validator] Validation messages - Afrikaans translatios
2012-12-12 15:58:01 +01:00
Fabien Potencier
f7ce6c7152 merged branch agarfors/master (PR #6290)
This PR was merged into the master branch.

Commits
-------

402cfde [Validator] Card validation - Norwegian translations

Discussion
----------

[Validator] Card validation - Norwegian translations

Noregian nynorsk translation
2012-12-12 15:57:32 +01:00
Fabien Potencier
1f0b28326e merged branch bertzzie/validation-indo-translation (PR #6289)
This PR was merged into the master branch.

Commits
-------

08f2631 [Validation] Improve Indonesian translation.

Discussion
----------

[Validation] Improve Indonesian translation.

- Improve some translation's grammar.
- Added translation unit no. 49 - 56.
2012-12-12 15:57:12 +01:00
Fabien Potencier
aac361c65b merged branch 1ed/patch-2 (PR #6288)
This PR was merged into the master branch.

Commits
-------

89181a8 [Validator] added Hungarian translations for card validation

Discussion
----------

[Validator] added Hungarian translations for card validation
2012-12-12 15:55:48 +01:00
Fabien Potencier
f6c8538e44 merged branch jordillonch/master (PR #6286)
This PR was merged into the master branch.

Commits
-------

5cc4390 Updated catalan translations for validators

Discussion
----------

Updated catalan translations for validators
2012-12-12 15:55:25 +01:00
Fabien Potencier
e6bae7bbe0 merged branch bobdenotter/master (PR #6284)
This PR was merged into the master branch.

Commits
-------

075c4cb [Validator] Card validation - Dutch translations

Discussion
----------

[Validator] Card validation - Dutch translations
2012-12-12 15:54:55 +01:00
Fabien Potencier
b8c04abafd merged branch stewe/translations-it (PR #6283)
This PR was merged into the master branch.

Commits
-------

b2ff4d8 [Validator] Card validation - Italian translations

Discussion
----------

[Validator] Card validation - Italian translations

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: n/a
Todo: n/a
License of the code: MIT
Documentation PR: n/a
2012-12-12 15:54:34 +01:00
Fabien Potencier
f66e6b8f6f merged branch iambrosi/validation-translations-1 (PR #6282)
This PR was merged into the master branch.

Commits
-------

3a6372d Updated spanish translations for validators

Discussion
----------

Updated spanish translations for validators

Added translations for credit card related messages
2012-12-12 15:54:12 +01:00
Pierre du Plessis
34df35dc37 Added validation messages for Afrikaans 2012-12-12 16:41:36 +02:00
Ã…smund Garfors
402cfde4bb [Validator] Card validation - Norwegian translations 2012-12-12 15:38:03 +01:00
Gábor Egyed
89181a84a2 [Validator] added Hungarian translations for card validation 2012-12-12 15:36:59 +01:00
Stefano Sala
b2ff4d886d [Validator] Card validation - Italian translations 2012-12-12 15:27:04 +01:00
Alex Xandra Albert Sim
08f26318d3 [Validation] Improve Indonesian translation.
- Improve some translation's grammar.
- Added translation unit no. 49 - 56.
2012-12-12 21:26:22 +07:00
Jordi Llonch
5cc4390fa2 Updated catalan translations for validators 2012-12-12 15:24:50 +01:00
Bob den Otter
075c4cb5aa [Validator] Card validation - Dutch translations 2012-12-12 15:12:50 +01:00
Ismael Ambrosi
3a6372df4e Updated spanish translations for validators
Added translations for credit card related messages
2012-12-12 12:07:26 -02:00
Tiago Brito
c9e842c092 Update validators.pt.xlf to to Portuguese
Translating new validation (57 and 58) messages to Portuguese language
2012-12-12 13:58:55 +00:00
Joseph Bielawski
ed132970dd [Validator] Card validation - Polish translations 2012-12-12 14:39:42 +01:00
Joseph Bielawski
6a9a8c024e Update src/Symfony/Component/Validator/Resources/translations/validators.pl.xlf
Fixed polish translation
2012-12-12 14:03:58 +01:00
umpirsky
d789e5ab44 Serbian translation for card scheme constraint message. 2012-12-12 13:18:02 +01:00
umpirsky
76d653f448 Serbian translation for Luhn constraint message. 2012-12-12 13:11:42 +01:00
Fabien Potencier
8feda90139 merged branch asm89/yaml-inline (PR #6277)
This PR was merged into the master branch.

Commits
-------

2f07966 [Yaml] Add test showing that dates before 01 Jan 1970 are correctly parsed

Discussion
----------

[Yaml] Add test showing that dates before 01 Jan 1970 are correctly parsed

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

Adds a test related to issue #6275, showing that the Yaml inline parsing supports ISO 8601 dates before 1980.
2012-12-12 12:39:44 +01:00
Fabien Potencier
6eba7abb2c [WebProfilerBundle] fixed composer.json and added missing PHPUnit configuration 2012-12-12 12:39:13 +01:00
Fabien Potencier
e553e65047 moved the Twig CodeExtension from the bundle to the bridge 2012-12-12 12:26:16 +01:00
Alexander
2f07966677 [Yaml] Add test showing that dates before 01 Jan 1970 are correctly parsed 2012-12-12 11:54:56 +01:00
Bilal Amarni
26b8b47221 checked for a potentially missing key
The 'function' key isn't always available in the trace. This was
causing me a notice.
2012-12-12 10:42:27 +01:00
Tobias Schultze
e803f4663c made schemes and methods available in XmlFileLoader
it uses an attribute list instead of multiple scheme/method elements that I also experimented with
2012-12-12 09:48:09 +01:00
Rafał Wrzeszcz
c331ccd500 Added XHTML content type to ESI defaults. 2012-12-12 00:08:01 +01:00
Tobias Schultze
d374e70f7e made schemes and methods available in YamlFileLoader 2012-12-11 19:46:37 +01:00
Tobias Schultze
2834e7ef21 added scheme and method setter in RouteCollection 2012-12-11 19:40:18 +01:00
Tobias Schultze
10183ded68 make scheme and method requirements first-class citizen in Route 2012-12-11 19:40:17 +01:00
Fabien Potencier
18c520a5e8 merged branch Tobion/loaders (PR #6172)
This PR was merged into the master branch.

Commits
-------

237bbd0 fixed and refactored YamlFileLoader in the same sense as the XmlFileLoader
392d785 removed covers annotation from loader tests and unneeded use statements
45987eb added tests for the previous XmlFileLoader fixes
b20d6a7 ensure id, pattern and resource are specified
8361b5a refactor the XMlFileLoader
83fc5ff fix namespace handling in xml loader; it could not handle prefixes
1a60a3c make resource and key attributes required in xsd
02e01b9 improve exception messages in xml loader
51fbffe remove unneeded cast
358e9c4 fix some phpdoc

Discussion
----------

[Routing] improve loaders

BC break: no

Main points:
- fixed Xml loader that could not handle namespace prefixes but is valid xml
- fixed Yaml loader where some nonsesense configs were not validated correctly like an imported resource with a pattern key.

Added tests for all. Some refactoring + a few tweaks like better exception messages and more consistency between Xml loader and yaml loader. See also commits.

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

by Tobion at 2012-12-07T18:16:08Z

@fabpot this is ready

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

by Tobion at 2012-12-11T17:30:10Z

@fabpot rebased. Please don't squash to one big commit where one does not see what changed why.

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

by fabpot at 2012-12-11T17:32:40Z

I only squash when most commits are CS fixes and feedback.

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

by Tobion at 2012-12-11T17:37:49Z

Well, you squashed #6022 so it's not possible to revert a specific deprecation.
2012-12-11 18:46:52 +01:00
Tobias Schultze
237bbd0578 fixed and refactored YamlFileLoader in the same sense as the XmlFileLoader
some nonsesense configs were not validated correctly like an imported resource with a pattern key. added tests for such things too.
2012-12-11 18:26:19 +01:00
Tobias Schultze
392d785d91 removed covers annotation from loader tests and unneeded use statements 2012-12-11 18:03:52 +01:00
Tobias Schultze
45987eb2b7 added tests for the previous XmlFileLoader fixes 2012-12-11 18:03:51 +01:00
Tobias Schultze
b20d6a7960 ensure id, pattern and resource are specified
the yaml loader also requires the pattern to be given, so the xml loader should do the same
2012-12-11 18:03:50 +01:00
Tobias Schultze
8361b5a58b refactor the XMlFileLoader 2012-12-11 18:03:49 +01:00
Bilal Amarni
a0e2391063 [FrameworkBundle] used the new method for trusted proxies 2012-12-11 17:56:21 +01:00
Fabien Potencier
2578f1ef58 merged branch stloyd/feature/form-labels (PR #6262)
This PR was merged into the master branch.

Commits
-------

d5426f0 [Form] Add tests to prove that label is not rendered when is marked as false
120547c [Form][TwigBridge] Don't set label attributes if is marked as not to be rendered [Form][FrameworkBundle] Add option to disable rendering of label for fields
36e4556 [Form] Option for not displaying a label by setting label to false. [Form] Fixed formatting & translation ..

Discussion
----------

[Form] Added option for not displaying a form-label by setting label to false

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

@fabpot @BenjaminBeck: I was just not sure what to do with "table based" forms, so I left `<td></td>` rendered when there is no label, because I'm not sure that we can hide it easily.

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

by XWB at 2012-12-11T09:30:14Z

ðŸ‘
2012-12-11 17:55:20 +01:00
Tobias Schultze
83fc5ff72f fix namespace handling in xml loader; it could not handle prefixes 2012-12-11 17:52:57 +01:00
Tobias Schultze
1a60a3ceb5 make resource and key attributes required in xsd 2012-12-11 17:52:56 +01:00
Tobias Schultze
02e01b9798 improve exception messages in xml loader 2012-12-11 17:52:55 +01:00
Tobias Schultze
51fbffec26 remove unneeded cast 2012-12-11 17:52:53 +01:00
Tobias Schultze
358e9c47b9 fix some phpdoc 2012-12-11 17:52:53 +01:00
Victor Berchet
70a69d4874 [Routing] fix typo 2012-12-11 17:22:27 +01:00
Fabien Potencier
7200703089 fixed CS 2012-12-11 15:06:57 +01:00
Fabien Potencier
8bbc64d3ec merged branch robqu/patch-progressbar (PR #6266)
This PR was merged into the master branch.

Commits
-------

ea74610 jumping progress bar fix for windows & unix
6a0ee27 [Console] fixed progress bar jumping

Discussion
----------

[Console] fixed progress bar jumping for windows & unix env

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

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

by pborreli at 2012-12-11T13:58:25Z

Good implementation but could you please check http://symfony.com/doc/current/contributing/code/standards.html
2012-12-11 15:05:51 +01:00
Robert Queck
ea74610723 jumping progress bar fix for windows & unix 2012-12-11 14:31:22 +01:00
Fabien Potencier
51bcb6e7ee merged branch Tobion/collection-api (PR #6022)
This PR was squashed before being merged into the master branch (closes #6022).

Commits
-------

8c7a169 [Routing] clean up of RouteCollection API

Discussion
----------

[Routing] clean up of RouteCollection API

BC break: only the internal behavior of addPrefix()
Deprecations:
- some params of addCollection and addPrefix that still work but should not be used anymore
- getPrefix (you cannot rely on it how my added test shows that failed previously but was fixed with https://github.com/symfony/symfony/pull/6120/files#L5L109
and it's also useless since we dont have a tree anymore)

Reasoning see commits and changelog.

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

by Tobion at 2012-12-06T19:15:53Z

@fabpot this is finished and rebased. I switched from `addConfigs` to addDefaults(), addRequirements(), and addOptions() as you suggested. I also deprecated getPrefix(). Reasoning see above and in the changelog.
2012-12-11 14:02:38 +01:00
Tobias Schultze
8c7a169a4a [Routing] clean up of RouteCollection API 2012-12-11 14:02:38 +01:00
Fabien Potencier
7464833ece [Filesystem] added a missing CHANGELOG item and fixed some CS 2012-12-11 13:58:05 +01:00
Fabien Potencier
b3c58e7b90 merged branch mylen/master (PR #6014)
This PR was squashed before being merged into the master branch (closes #6014).

Commits
-------

2b13760 [Filesystem] [mirror] added "delete" option

Discussion
----------

[Filesystem] [mirror] added "delete" option

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: symfony/symfony-docs#123

I added a "delete" option to the mirror function. If set to true, then
files present in target dir and not in origin dir will be removed.

Added also unit test for these feature.

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

by pborreli at 2012-11-16T00:58:19Z

Symfony2 code standard use lowercase `true` and `false`

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

by mylen at 2012-11-16T20:25:19Z

I have problem to believe that the last commit (merging two if together) was to blame for the segfault on  travis...
when I run the unit testing on my machine, I get:

I'm using PHP 5.4.7 by the way...

Time: 2 seconds, Memory: 3.25Mb

OK, but incomplete or skipped tests!
Tests: 80, Assertions: 106, Skipped: 14.

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

by pborreli at 2012-11-16T20:38:40Z

Can you fix end-of-lines ?

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

by mylen at 2012-11-16T20:52:37Z

I put UNIX line feed and UTF8 charset

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

by mylen at 2012-11-16T20:53:59Z

Sorry, I add to clone the symfony repo with github and did small editing using pspad, I forgot to setup charset and line feed...
2012-12-11 13:55:45 +01:00
Alexandre Melard
2b13760e90 [Filesystem] [mirror] added "delete" option 2012-12-11 13:55:45 +01:00
Fabien Potencier
e42ab1da2c merged branch Burgov/patch-2 (PR #6263)
This PR was merged into the 2.0 branch.

Commits
-------

e6bb156 remove realpath call

Discussion
----------

[HttpKernel] remove realpath call

I'm trying to create an executable phar archive from a Symfony application, but when I run the phar, it fails to find any commands because of this php bug/feature:

https://bugs.php.net/bug.php?id=52769

After this change, my archive works just like a normal app/console call
2012-12-11 11:51:02 +01:00
Fabien Potencier
fdb11be242 fixed CS 2012-12-11 11:49:22 +01:00
Fabien Potencier
3c010db2cb Merge branch '2.1'
* 2.1:
  fixed CS
  fixed CS
  [Security] fixed path info encoding (closes #6040, closes #5695)
  [HttpFoundation] added some tests for the previous merge and removed dead code (closes #6037)
  Improved Cache-Control header when no-cache is sent
  removed unneeded comment
  Fix to allow null values in labels array
  fix date in changelog
  removed the Travis icon (as this is not stable enough -- many false positive, closes #6186)
  Revert "merged branch gajdaw/finder_splfileinfo_fpassthu (PR #4751)" (closes #6224)
  Fixed a typo
  Fixed: HeaderBag::parseCacheControl() not parsing quoted zero correctly
  [Form] Fix const inside an anonymous function
  [Config] Loader::import must return imported data
  [DoctrineBridge] Fixed caching in DoctrineType when "choices" or "preferred_choices" is passed
  [Form] Fixed the default value of "format" in DateType to DateType::DEFAULT_FORMAT if "widget" is not "single_text"
  [HttpFoundation] fixed a small regression

Conflicts:
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php
2012-12-11 11:41:51 +01:00
Fabien Potencier
7f3be5c49d fixed CS 2012-12-11 11:40:22 +01:00
Fabien Potencier
d2885adffe Merge branch '2.0' into 2.1
* 2.0:
  fixed CS
  removed the Travis icon (as this is not stable enough -- many false positive, closes #6186)
  [Config] Loader::import must return imported data
  [HttpFoundation] fixed a small regression

Conflicts:
	README.md
	src/Symfony/Bridge/Twig/Extension/FormExtension.php
	src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/attributes.html.php
	src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/form_widget.html.php
	src/Symfony/Bundle/FrameworkBundle/Templating/Helper/FormHelper.php
	src/Symfony/Component/Form/Form.php
	src/Symfony/Component/HttpFoundation/Request.php
	src/Symfony/Component/HttpFoundation/SessionStorage/PdoSessionStorage.php
	tests/Symfony/Tests/Bridge/Doctrine/Logger/DbalLoggerTest.php
2012-12-11 11:33:11 +01:00
Fabien Potencier
a7cd5f54ef fixed CS 2012-12-11 11:27:06 +01:00
Bart van den Burg
e6bb156f48 remove realpath call
I'm trying to create an executable phar archive from a Symfony application, but when I run the phar, it fails to find any commands because of this php bug/feature:

https://bugs.php.net/bug.php?id=52769

After this change, my archive works just like a normal app/console call
2012-12-11 11:18:21 +01:00
Fabien Potencier
f25750e378 merged branch symfony/deprecated (PR #6232)
This PR was squashed before being merged into the master branch (closes #6232).

Commits
-------

7428bf9 [WebProfilerBundle] Some eye candy for deprecated calls

Discussion
----------

[WebProfilerBundle] Some eye candy for deprecated calls

![Ohhh](https://lh4.googleusercontent.com/-T9DKsHWf4YU/UMIRqT0g_II/AAAAAAAAJ84/tRDRP8IMwRM/s840/stack.jpg).

@fabpot is [`|raw`](https://github.com/symfony/symfony/pull/new/deprecated#L0R117) a twig defect ?

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

by Baachi at 2012-12-08T09:12:12Z

Really nice ðŸ‘

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

by vicb at 2012-12-11T10:00:24Z

should be ready now
2012-12-11 11:14:29 +01:00
Victor Berchet
7428bf9aa4 [WebProfilerBundle] Some eye candy for deprecated calls 2012-12-11 11:14:29 +01:00
Fabien Potencier
d6a402a283 [Security] fixed path info encoding (closes #6040, closes #5695) 2012-12-11 10:40:23 +01:00
Fabien Potencier
47dfb9cb6a [HttpFoundation] added some tests for the previous merge and removed dead code (closes #6037) 2012-12-11 10:29:13 +01:00
Florin Patan
1ab492394c Improved Cache-Control header when no-cache is sent 2012-12-11 10:22:17 +01:00
Fabien Potencier
de44087bfd merged branch bamarni/display-errors (PR #6259)
This PR was merged into the master branch.

Commits
-------

5d98fb1 [HttpKernel] ExceptionHandler is actually displaying PHP errors

Discussion
----------

[HttpKernel] ExceptionHandler is actually displaying all PHP errors

So there is no need to set display_errors to true in that case.

Partially fixes #6254.
2012-12-11 10:05:21 +01:00
Fabien Potencier
fe194cb03f merged branch hason/tests_2_2 (PR #6202)
This PR was merged into the master branch.

Commits
-------

abe244f [TwigBundle] Fixed tests on windows

Discussion
----------

[TwigBundle] Fixed tests on windows
2012-12-11 09:58:49 +01:00
Joseph Bielawski
d5426f0a76 [Form] Add tests to prove that label is not rendered when is marked as false 2012-12-11 09:55:44 +01:00
Fabien Potencier
e3ef9368df [FrameworkBundle] tweaked previous merge 2012-12-11 09:31:58 +01:00
Fabien Potencier
57b8447ae1 merged branch dantleech/twig_loader_pass (PR #6171)
This PR was merged into the master branch.

Commits
-------

f48b22a Added configuration pass that adds Twig Loaders

Discussion
----------

[Twig] [DI Pass] Added configuration pass that adds Twig Loaders

Bug fix: [no]
Feature addition: [yes]
Backwards compatibility break: [no]
Symfony2 tests pass: [yes]
Todo: Documentation?
License of the code: MIT

- Defined new Chain loader service with symfony Filesystem loader added
  by default.
- Added compiler class which picks up any services tagged "twig.loader"
- If there are any instances of "twig.loader" the "twig.loader" alias is
  set to the Twig_Loader_Chain service ID instead of the filesystem
  loader.

I think I still like the explicitness of the other pull request, but I defer to your judgment :) This is certainly much easier for the developer.

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

by dantleech at 2012-12-03T08:31:08Z

Will update the PR later today / tomorrow

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

by dantleech at 2012-12-03T18:19:09Z

ok, updated. I throw a `Symfony\Component\DependencyInjection\Exception\LogicException` if there are no loaders -- not sure if that is the best thing to do, or if that is the best exception.

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

by fabpot at 2012-12-05T15:28:24Z

Looks good to me. Can you add a note in the CHANGELOG about this new possibility and update the documentation accordingly? Thanks.

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

by dantleech at 2012-12-05T17:50:37Z

ok. updated change log and changed both count() comparisons to be strict. @fabpot which documentation should I update? or should I add `cookbook/templating/registering_multiple_loaders.rst`?

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

by stof at 2012-12-05T20:07:37Z

@dantleech at least the DIC tags reference need to be updated to mention the new tag. I'm not sure a dedicated article is needed for it (but @weaverryan will decide if it is worth it)

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

by dantleech at 2012-12-06T17:57:20Z

Made a PR for documentation: https://github.com/symfony/symfony-docs/pull/2005

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

by dantleech at 2012-12-07T16:44:00Z

ok. have updated the correct CHANGELOG and squashed to one commit
2012-12-11 09:30:20 +01:00
Joseph Bielawski
120547c8bc [Form][TwigBridge] Don't set label attributes if is marked as not to be rendered
[Form][FrameworkBundle] Add option to disable rendering of label for fields
2012-12-11 09:29:21 +01:00
BenjaminBeck
36e4556805 [Form] Option for not displaying a label by setting label to false.
[Form] Fixed formatting & translation ..
2012-12-11 09:21:58 +01:00
Fabien Potencier
f853fc3906 removed unneeded comment 2012-12-11 09:06:32 +01:00
kaywalker
4e909bd016 Fix to allow null values in labels array 2012-12-11 09:06:04 +01:00
Bilal Amarni
5d98fb1248 [HttpKernel] ExceptionHandler is actually displaying PHP errors
Since even fatal errors are catched and turned into exceptions by
ErrorHandler, all PHP errors can nicely be displayed by
ExceptionHandler. There is no need to set display_errors to true
anymore then.

Partially fixes #6254 on github.
2012-12-10 18:52:47 +01:00
Fabien Potencier
1ec59f174e merged branch vicb/finder-adapters (PR #6253)
This PR was squashed before being merged into the master branch (closes #6253).

Commits
-------

e62b5f7 [Finder] cleanup, fixes, improvements

Discussion
----------

[Finder] cleanup, fixes, improvements
2012-12-10 14:52:40 +01:00
Victor Berchet
e62b5f78af [Finder] cleanup, fixes, improvements 2012-12-10 14:52:39 +01:00
Fabien Potencier
d665584de9 merged branch hason/patch-1 (PR #6222)
This PR was merged into the master branch.

Commits
-------

e458600 [DependencyInjection] Add deleted argument in Extension::processConfiguration

Discussion
----------

[DependencyInjection] Add deleted argument in Extension::processConfigur...

...ation
2012-12-10 13:48:09 +01:00
Fabien Potencier
a1734ddf72 Revert "merged branch gajdaw/finder_splfileinfo_fpassthu (PR #4751)" (closes #6224)
This reverts commit 5608c0c3ee, reversing
changes made to 38c30b71bd.

Conflicts:
	src/Symfony/Component/Finder/SplFileInfo.php
2012-12-10 13:46:54 +01:00
Fabien Potencier
0e2370e65e merged branch Tobion/patch-1 (PR #6237)
This PR was merged into the master branch.

Commits
-------

76e5bce no need to set the compiled route to null when cloning

Discussion
----------

[Routing] no need to set the compiled route to null when cloning

The compiled reference can be reused when cloning. When the route is changed, the compiled reference is set to null anyway. So if you just clone the route, this improves performance as it does not need to recompile.
2012-12-10 13:43:10 +01:00
Denis Gorbachev
9cf1d142b2 Fixed a typo 2012-12-10 13:42:21 +01:00
Patrick Allaert
9e4681963d Fixed: HeaderBag::parseCacheControl() not parsing quoted zero correctly
When having a Cache-Control header like:

    max-age="0"

isset($match[2]) is true but $match[2] containing: "0", it is evaluated
as false and 'true' will be set to "max-age" entry instead of "0".
2012-12-10 13:41:09 +01:00
Fabien Potencier
d63a317b21 merged branch vicb/finder (PR #6249)
This PR was merged into the master branch.

Commits
-------

cc0be8e [Finder] fluid, calling in() not required after append()

Discussion
----------

[Finder] fluid, calling in() not required after append()
2012-12-10 13:39:22 +01:00
Victor Berchet
cc0be8edf2 [Finder] fluid, calling in() not required after append() 2012-12-10 09:52:01 +01:00
Fran Moreno
a37e5e323b [Form] Fix const inside an anonymous function 2012-12-09 23:59:18 +01:00
Tobias Schultze
76e5bce801 no need to set the compiled route to null when cloning 2012-12-07 22:24:45 +01:00
dantleech
f48b22a44e Added configuration pass that adds Twig Loaders
- Added compiler class which picks up any services tagged "twig.loader"
- If there is one loader registered we set the alias to this loader
- If there is more than one we set the alias to a chain loader and all
  the loaders to it
- If there is no loaders we throw an Exception
2012-12-07 17:39:55 +01:00
Fabien Potencier
74c8b0150a merged branch bschussek/issue6141_2 (PR #6217)
This PR was merged into the 2.1 branch.

Commits
-------

6e7e08f [Form] Fixed the default value of "format" in DateType to DateType::DEFAULT_FORMAT if "widget" is not "single_text"

Discussion
----------

[Form] Fixed the "format" option in DateType

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

This PR fixes a regression introduced in #4839. To quote that PR:

> This PR changes DateType and DateTimeType to support HTML5 by default when setting the option "widget" to "single_text".

In reality, the "format" option now defaults to the HTML5 format always, not just when "widget" is "single_text". This is fixed here.

The second commit in this PR removes special characters between select/text fields. What, with German locale, was

```
<day input>.<month input>.<year input>
```

before is now

```
<day input><month input><year input>
```

This is the way date fields are represented on the majority of websites. If you *need* separators, you can have them by setting the "format" option to a custom value:

```php
$builder->add('myDate', 'date', array(
    'format' => 'dd.MM.yyyy',
));
```

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

by fabpot at 2012-12-07T08:52:21Z

The second commit should probably be done on master and it changes the behavior.

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

by bschussek at 2012-12-07T12:23:22Z

Ok, I removed the second commit now and removed the entries from the CHANGELOG.
2012-12-07 14:34:54 +01:00
Martin Hasoň
8bb3208ab8 [Config] Loader::import must return imported data 2012-12-07 14:24:02 +01:00
Bernhard Schussek
ca5d9acb19 [DoctrineBridge] Fixed caching in DoctrineType when "choices" or "preferred_choices" is passed 2012-12-07 13:39:00 +01:00
Bernhard Schussek
6e7e08f8c4 [Form] Fixed the default value of "format" in DateType to DateType::DEFAULT_FORMAT if "widget" is not "single_text" 2012-12-07 13:22:37 +01:00
Martin Hasoň
e4586007dc [DependencyInjection] Add deleted argument in Extension::processConfiguration 2012-12-07 11:34:49 +01:00
Fabien Potencier
79b4ca686e merged branch lsmith77/pre_process_app_config (PR #5566)
This PR was merged into the master branch.

Commits
-------

d7a1154 make it possible for bundles extensions to prepend settings into the application configuration of any Bundle

Discussion
----------

[2.2] add possibility for bundles extensions to prepend the app configs

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

As can be seen in the patch the extensions that should prepend the configuration are enabled automatically if they implement ``PrependExtensionInterface``.

Just as an example, here an extension, which checks if SonataAdminBundle is available and if not disables integration with it in several Bundles. It also sets some default settings for ``document_class`` and ``default_document_manager_name``:
```
diff --git a/DependencyInjection/SymfonyCmfCoreExtension.php b/DependencyInjection/SymfonyCmfCoreExtension.php
index 9f92410..c0a8dbb 100644
--- a/DependencyInjection/SymfonyCmfCoreExtension.php
+++ b/DependencyInjection/SymfonyCmfCoreExtension.php
@@ -3,11 +3,12 @@
 namespace Symfony\Cmf\Bundle\CoreBundle\DependencyInjection;

 use Symfony\Component\HttpKernel\DependencyInjection\Extension;
+use Symfony\Component\\DependencyInjection\PrependExtensionInterface;
 use Symfony\Component\DependencyInjection\ContainerBuilder;
 use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
 use Symfony\Component\Config\FileLocator;

-class SymfonyCmfCoreExtension extends Extension
+class SymfonyCmfCoreExtension extends Extension implements PrependExtensionInterface
 {
     public function load(array $configs, ContainerBuilder $container)
     {
@@ -15,4 +16,45 @@ class SymfonyCmfCoreExtension extends Extension
         $loader->load('config.xml');
         $loader->load('services.xml');
     }
+
+    public function prepend(ContainerBuilder $container)
+    {
+        $bundles = $container->getParameter('kernel.bundles');
+        if (!isset($bundles['SonataDoctrinePHPCRAdminBundle'])) {
+            // disable SonataDoctrinePHPCRAdminBundle admin support in Bundles
+            $config = array('use_sonata_admin' => false);
+            foreach ($container->getExtensions() as $name => $extension) {
+                switch ($name) {
+                    case 'symfony_cmf_menu':
+                    case 'symfony_cmf_routing_extra':
+                    case 'symfony_cmf_simple_cms':
+                        $container->prependExtensionConfig($name, $config);
+                        break;
+                }
+            }
+        }
+
+        // process the configuration of SymfonyCmfCoreExtension
+        $configs = $container->getExtensionConfig($this->getAlias());
+        $config = $this->processConfiguration(new Configuration(), $configs);
+        // add the default configs to various Bundles
+        foreach ($container->getExtensions() as $name => $extension) {
+            switch ($name) {
+                case 'symfony_cmf_content':
+                case 'symfony_cmf_simple_cms':
+                    $container->prependExtensionConfig($name, $config);
+                    break;
+                }
+        }
+    }
 }
```

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

by stof at 2012-09-21T21:10:00Z

I think you are giving too much power to bundles here: a bundle becomes able to modify all the config defined explicitly by the user if it wants to do it.

I think it would be safer to give them the possibility to load an additional config file which would be prepended (so that user-defined config would still win). Giving the ability to load files means passing the loader used by the kernel, and it should then be called before calling the load method on the kernel itself (to respect the order of loaded files)

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

by lsmith77 at 2012-09-22T05:50:08Z

Not sure how a config file helps solve anything. I mean they can load as many config files as they want already. The key is being able to automatically apply configuration to multiple Bundles as well as enabling/disabling features based on if certain Bundles are registered.

BTW the end result in my examples is also prepended, so that user config wins. However yes this would be up to the person implementing the Bundle. We could however provide a dedicated method for prepending in addition to or instead of ``setExtensionConfig``.

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

by stof at 2012-09-22T11:40:29Z

@lsmith77 If you can load a file with the main loader, this file can provide some app-level configuration (be it for your own bundle or others).
And your code example is indeed prepending. But imagine what would occur when someone uses this feature without knowing well how the component works: he will likely call ``setExtensionConfig`` in a first implementation, thus dropping all userland config for the bundle. Your setup does not only allow to make a file win over the userland config but makes it even easier to remove the userland config.

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

by lsmith77 at 2012-09-22T18:11:29Z

but i dont get how that would help. the point is to be able for one bundle to configure other bundles before the load as this is obviously alot cleaner than trying to do the same via a compiler pass. so imho this is what is needed to encourage decoupled bundles. otherwise for example CMS or other reuseable and extensible apps will be forced to always put everything in one bundle.

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

by stof at 2012-09-22T19:23:45Z

@lsmith77 I agree about the feature, not about the way to implement it. If you allow bundles to load a file as it it were some app-level config, they would become able to provide some config for other bundles (and you could load several files depending of which bundles are enabled), but without allowing bundles to remove the userland config.

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

by lsmith77 at 2012-09-22T19:50:19Z

sorry but i dont understand what you suggest. more over i dont see the problem. its already possible to seriously break stuff with compiler passes which cannot be easily enabled/disabled. this is just convenience. if it doesnt work because of some obscure combo then simply dont use it for the app since it needs to be explicitly enabled in the kernel.

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

by lsmith77 at 2012-09-24T09:25:10Z

@stof thought about your comments, are you suggesting for a Bundle to be able to generate a config file that is prepended? in that case the current behavior would already be that if we change ``setExtensionConfig`` to just be a ``prependExtensionConfig`` .. however i am not sure if we really need this limitation since as i point out this would still by far be less dangerous than compiler passes and also i expect this to be used mainly by open source applications on top of Symfony2 rather than standard bundles.

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

by lsmith77 at 2012-10-13T13:28:29Z

@lolautruche i also think this is relevant for you guys. this way you could start preconfiguring 3rd party bundles as part of your main ezPublish bundle.

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

by lolautruche at 2012-10-13T13:57:09Z

While I suspect a nice feature, the implementation looks obscure to me...

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

by lsmith77 at 2012-10-13T17:43:02Z

The implementation of the example extension or the implementation of the actual changes proposed in this PR?

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

by lolautruche at 2012-10-13T17:46:57Z

The example, sorry 😃

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

by lsmith77 at 2012-10-13T17:50:38Z

The example was fairly quickly hacked together. The basic thing you need to do is fetch the config for the bundle you want to change, manipulate the config (usually by appending an array to the array of configs so that you dont affect explicit configuration) and then set it again.

As I explained to @stof it would alternative/additionally be possible to support a method that pushes a config array to the top of the array of config stack. Such a method might make the necessary code simpler.

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

by stof at 2012-10-13T21:39:07Z

@fabpot what do you think about it ?

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

by jrobeson at 2012-10-20T15:45:18Z

I've been porting much of an existing framework over to use more symfony components and bundles. I think that this might help some of the problems i've been having. I would really appreciate some better examples as how to one would use it  (same for the cmf router, but that's another story).

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

by lsmith77 at 2012-10-21T07:28:52Z

not really sure what other examples i could give. the process is quite simple:
1) determine what configuration options to add to other Bundles

for example with the following code I determine that SonataAdmin for PHPCR is not installed (which means i should disable using it in other Bundles):
```
$bundles = $container->getParameter('kernel.bundles');
if (!isset($bundles['SonataDoctrinePHPCRAdminBundle'])) {
```

alternatively I could simply already process the configuration and then pick all or some of these configuration options:
```
$configs = $container->getExtensionConfig($this->getAlias());
$config = $this->processConfiguration(new Configuration(), $configs);
```

2) then add these configuration to what other Bundles I feel should get these options

usually I will add these to the top of the config array stack. this means that if the user would manually set the same setting in most cases the user setting will override what the pre-processor set.
```
$container->unshiftExtensionConfig($name, array('use_sonata_admin' => false));
```

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

by lsmith77 at 2012-10-24T12:52:38Z

added ``ContainerBuilder::unshiftExtensionConfig`` since this is the usual use case. with this method added it could be discussed if ``ContainerBuilder::setExtensionConfig`` is still needed or not.

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

by lsmith77 at 2012-11-24T14:48:44Z

I spoke to @fabpot today and he said that since this patch just allows you to set defaults and not really "process" the actual configuration I shouldn't call it "preProcess" so I renamed it to "prepend".

Furthermore as its just prepending @fabpot said there isnt really a need to require manually enabling it, so here is a patch to auto-enable the prepending logic:
```
diff --git a/src/Symfony/Component/HttpKernel/Kernel.php b/src/Symfony/Component/HttpKernel/Kernel.php
index b890fbf..7374b87 100644
--- a/src/Symfony/Component/HttpKernel/Kernel.php
+++ b/src/Symfony/Component/HttpKernel/Kernel.php
@@ -701,8 +701,8 @@ abstract class Kernel implements KernelInterface, TerminableInterface
      */
     protected function prependExtensionConfigs(ContainerBuilder $container)
     {
-        foreach ($this->getPrependingExtensions() as $name) {
-            $extension = $container->getExtension($name);
+        foreach ($this->bundles as $bundle) {
+            $extension = $bundle->getContainerExtension();
             if ($extension instanceof PrependExtensionInterface) {
                 $extension->prepend($container);
             }
@@ -710,16 +710,6 @@ abstract class Kernel implements KernelInterface, TerminableInterface
     }

     /**
-     * Returns the ordered list of extensions that may prepend extension configurations.
-     *
-     * @return array
-     */
-    protected function getPrependingExtensions()
-    {
-        return array();
-    }
-
-    /**
      * Gets a new ContainerBuilder instance used to build the service container.
      *
      * @return ContainerBuilder
```

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

by lsmith77 at 2012-11-25T19:31:01Z

ok .. i pondered the code some more and now i have enabled registering of the prepending extensions by default, since its now quite easy to just override the ``prependExtensionConfigs()`` method since there is almost no logic in there anymore.

@fabpot i am not 100% sure with the naming yet ..

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

by lsmith77 at 2012-12-05T14:03:43Z

@fabpot if you are ok with the PR as it is now, i can do the rebase so you can merge this?

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

by lsmith77 at 2012-12-05T18:30:29Z

@fabpot all good now? then i will squash the commits ..

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

by lsmith77 at 2012-12-05T18:34:50Z

actually looking at the full change set again i am no longer sure if it makes sense to have ``PrependExtensionInterface`` in the DI rather than the HttpKernel.

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

by lsmith77 at 2012-12-07T09:21:14Z

@fabpot all good now?

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

by fabpot at 2012-12-07T09:37:52Z

The code looks good to me now. There are two remaining task before merging:

* Is it something we need to add somewhere in the documentation?
* Can you add a note in the DI component CHANGELOG?

Thanks.

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

by lsmith77 at 2012-12-07T09:49:17Z

i have added a changelog entry and squashed the commits.
i will also work on a documentation entry, i guess i will make it a cookbook entry. not sure if it should be included in http://symfony.com/doc/2.0/cookbook/bundles/extension.html .. but imho it would better be a separate entry.
2012-12-07 11:04:59 +01:00
Lukas Kahwe Smith
d7a1154154 make it possible for bundles extensions to prepend settings into the application configuration of any Bundle 2012-12-07 10:45:48 +01:00
Fabien Potencier
aad8136cd1 [HttpFoundation] fixed a small regression 2012-12-07 10:39:50 +01:00
Fabien Potencier
6e45f1cd78 Merge branch '2.1'
* 2.1:
  [HttpFoundation] changed UploadedFile::move() to use move_uploaded_file() when possible (closes #5878, closes #6185)
  [HttpFoundation] added a check for the host header value
  [DoctrineBridge] Improved performance of the EntityType when used with the "query_builder" option
  [DoctrineBridge] Improved exception message
  [DoctrineBridge] Fixed: Exception is thrown if the entity class is not known to Doctrine
  Removed useless branch alias for dev-master in composer.json

Conflicts:
	composer.json
	src/Symfony/Bridge/Doctrine/composer.json
	src/Symfony/Bridge/Monolog/composer.json
	src/Symfony/Bridge/Propel1/composer.json
	src/Symfony/Bridge/Swiftmailer/composer.json
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Bundle/SecurityBundle/composer.json
	src/Symfony/Bundle/TwigBundle/composer.json
	src/Symfony/Bundle/WebProfilerBundle/composer.json
	src/Symfony/Component/BrowserKit/composer.json
	src/Symfony/Component/ClassLoader/composer.json
	src/Symfony/Component/Config/composer.json
	src/Symfony/Component/Console/composer.json
	src/Symfony/Component/CssSelector/composer.json
	src/Symfony/Component/DependencyInjection/composer.json
	src/Symfony/Component/DomCrawler/composer.json
	src/Symfony/Component/EventDispatcher/composer.json
	src/Symfony/Component/Filesystem/composer.json
	src/Symfony/Component/Finder/composer.json
	src/Symfony/Component/Form/composer.json
	src/Symfony/Component/HttpFoundation/composer.json
	src/Symfony/Component/HttpKernel/composer.json
	src/Symfony/Component/Locale/composer.json
	src/Symfony/Component/OptionsResolver/composer.json
	src/Symfony/Component/Process/composer.json
	src/Symfony/Component/Routing/composer.json
	src/Symfony/Component/Security/composer.json
	src/Symfony/Component/Serializer/composer.json
	src/Symfony/Component/Templating/composer.json
	src/Symfony/Component/Translation/composer.json
	src/Symfony/Component/Validator/composer.json
	src/Symfony/Component/Yaml/composer.json
2012-12-07 10:33:24 +01:00
Fabien Potencier
864cc8598f Merge branch '2.0' into 2.1
* 2.0:
  [HttpFoundation] changed UploadedFile::move() to use move_uploaded_file() when possible (closes #5878, closes #6185)
  [HttpFoundation] added a check for the host header value

Conflicts:
	src/Symfony/Component/HttpFoundation/File/File.php
	src/Symfony/Component/HttpFoundation/Request.php
	src/Symfony/Component/HttpFoundation/Tests/RequestTest.php
2012-12-07 10:29:55 +01:00
Fabien Potencier
447ff915df [HttpFoundation] changed UploadedFile::move() to use move_uploaded_file() when possible (closes #5878, closes #6185) 2012-12-07 10:25:55 +01:00
Fabien Potencier
e277258e91 merged branch fabpot/host-check (PR #6209)
This PR was merged into the 2.0 branch.

Commits
-------

0489799 [HttpFoundation] added a check for the host header value

Discussion
----------

[HttpFoundation] added a check for the host header value

alternative for #3865
2012-12-07 10:18:13 +01:00
Fabien Potencier
048979993e [HttpFoundation] added a check for the host header value 2012-12-07 10:14:56 +01:00
Victor Berchet
459a09fbdf [WebProfilerBundle] "View all" is "View last 10" 2012-12-07 10:03:28 +01:00
Colin Frei
f3d696636a [Validator] Stop using deprecated methods 2012-12-06 21:41:54 +01:00
Colin Frei
d57ad32ea8 [Form] Catch deprecation errors when using deprecated methods/classes in tests 2012-12-06 21:24:00 +01:00
Colin Frei
3241157114 [Validator] Trigger errors for deprecations 2012-12-06 21:23:28 +01:00
Fabien Potencier
0c6e145c0d merged branch vicb/httputils (PR #6005)
This PR was squashed before being merged into the master branch (closes #6005).

Commits
-------

577ee80 [HttpFoundation] Move IP check methods to a HttpUtils class for reuse

Discussion
----------

[HttpFoundation] Move IP check methods to a HttpUtils class for reuse

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

by vicb at 2012-11-13T18:05:18Z

Thanks @stof ! (didn't get my copy paste error as PHP allow calling non static method w/o a warning).

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

by GromNaN at 2012-11-17T23:19:29Z

Having an `Utils` class with mixed functions doesn't seem to be a good practice. I think the class should be called something like `Symfony\Component\HttpFoundation\IpAddress`.

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

by vicb at 2012-11-27T09:37:20Z

@fabpot could this be merged if `HttpUtils` is renamed to `IpUtils` ?

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

by fabpot at 2012-12-06T13:35:28Z

Renaming the class to `IpUtils` is indeed a good idea.

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

by vicb at 2012-12-06T14:07:59Z

ready !

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

by fabpot at 2012-12-06T14:39:19Z

Can you add an entry in the CHANGELOG?

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

by vicb at 2012-12-06T14:53:09Z

done, thanks for the reminder !
2012-12-06 16:23:16 +01:00
Victor Berchet
577ee80003 [HttpFoundation] Move IP check methods to a HttpUtils class for reuse 2012-12-06 16:23:16 +01:00
Fabien Potencier
6be1d29a3d merged branch bschussek/issue6141 (PR #6206)
This PR was merged into the 2.1 branch.

Commits
-------

b604eb7 [DoctrineBridge] Improved performance of the EntityType when used with the "query_builder" option
db2ee54 [DoctrineBridge] Improved exception message
99321cb [DoctrineBridge] Fixed: Exception is thrown if the entity class is not known to Doctrine

Discussion
----------

[DoctrineBridge] fixed caching when EntityType is used with the "query_builder" option

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -
2012-12-06 15:43:13 +01:00
Fabien Potencier
9de5ffadf6 merged branch vicb/di/ext (PR #6207)
This PR was squashed before being merged into the master branch (closes #6207).

Commits
-------

57e9d28 [DI] Add a base class for extension

Discussion
----------

[DI] Add a base class for extension

depends on #6148

@fabpot should we change `addClassesToCompile` & the likes (thinking of traits).

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

by fabpot at 2012-12-06T13:05:05Z

Can you rebase?

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

by fabpot at 2012-12-06T13:06:43Z

hmmm, now that I see the result, I'm not sure it is worth it as the Extension class in the DI component depends on the Config one.

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

by vicb at 2012-12-06T13:23:29Z

No pb, I can remove it, should I remove the `ContainerBuilder` altogether ?

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

by fabpot at 2012-12-06T13:37:18Z

I would keep everything that is strictly in the DI namespace in the DI extension class and everything else in the HttpKernel class as it is now.

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

by vicb at 2012-12-06T13:38:59Z

But this change is **great** if you need the DI without the full stack.

What about my other comment ?

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

by fabpot at 2012-12-06T13:55:30Z

Which other comment? This one? "should I remove the ContainerBuilder altogether?" In which case, I don't understand what it means.

What about adding 2 classes in the DI component: the base one and another one with the dependency on the config component? Is it overkill?

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

by vicb at 2012-12-06T14:06:43Z

> "should I remove the ContainerBuilder altogether?"

I mean that the **widely used** (ie loaders) `ContainerBuilder` also depends on Config - that was kind of a joke !

I was refering to my first comment here

> should we change addClassesToCompile & the likes (thinking of traits).

Overkill I don't know but useless for sure: the `ExtensionInterface` depends on `ContainerBuilder` which depends on `Config`.
2012-12-06 15:41:33 +01:00
Victor Berchet
57e9d28795 [DI] Add a base class for extension 2012-12-06 15:41:32 +01:00
Mario A. Alvarez Garcia
cf630690be Fixed copy/paste mistake 2012-12-06 08:14:56 -05:00
Fabien Potencier
8968bd0e03 merged branch asm89/enhance-processbuilder (PR #5853)
This PR was squashed before being merged into the master branch (closes #5853).

Commits
-------

63b0059 [Process] Add ability to reset arguments on ProcessBuilder

Discussion
----------

[Process] Add ability to reset arguments on ProcessBuilder

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

This PR adds the ability to "reset" the arguments set on a `ProcessBuilder`. This allows the builder to be re-used without having to set things like custom environment variables, current working directory etc again.
2012-12-06 14:11:58 +01:00
Alexander
63b00598fe [Process] Add ability to reset arguments on ProcessBuilder 2012-12-06 14:11:57 +01:00
Fabien Potencier
9072951fce merged branch leevigraham/failure_path (PR #5860)
This PR was squashed before being merged into the master branch (closes #5860).

Commits
-------

d0057d0 Added failure_path_parameter to mirror target_path_parameter

Discussion
----------

Added failure_path_parameter to mirror target_path_parameter

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

Enable login failure redirect path can be assigned in a form field just like target path.

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

by stof at 2012-10-29T09:40:17Z

Please also open a PR to the doc repo to document this new feature

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

by leevigraham at 2012-10-29T09:56:29Z

@stof @fabpot Done.
2012-12-06 14:11:06 +01:00
Leevi Graham
d0057d0e64 Added failure_path_parameter to mirror target_path_parameter 2012-12-06 14:11:05 +01:00
Fabien Potencier
64b76ba1b4 merged branch vicb/sfcc (PR #6148)
This PR was merged into the master branch.

Commits
-------

7f16c1f [HttpKernel] Add DI extension configs as ressources when possible

Discussion
----------

[HttpKernel] Add DI extension configs as ressources when possible

/cc @rdohms @richardmiller

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

by vicb at 2012-11-30T11:57:48Z

btw @fabpot what about having a base class for `Extension` in the DI ? Would make it easier to re-use it when using standalone components, Di and (the suggested) Config as the greatest part of the class is not HttpKernel specific.

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

by fabpot at 2012-12-06T08:47:28Z

@vicb your suggestion makes sense.

Can you also explain the goal of this PR?

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

by vicb at 2012-12-06T09:01:58Z

The goal of this PR is to avoid having to sfcc when you modify a DI extension configuration. I think @rdohms got trapped.

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

by vicb at 2012-12-06T09:08:08Z

see https://twitter.com/rdohms/status/274059267428978688

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

by stof at 2012-12-06T09:20:54Z

I thought about it several times but never took time to implement it. It is annoying to have to clear the cache when you modify a default value in the Configuration class. So +1
2012-12-06 14:04:11 +01:00
Bernhard Schussek
b604eb7b52 [DoctrineBridge] Improved performance of the EntityType when used with the "query_builder" option 2012-12-06 13:37:46 +01:00
Bernhard Schussek
db2ee54bda [DoctrineBridge] Improved exception message 2012-12-06 13:35:16 +01:00
Bernhard Schussek
99321cbe24 [DoctrineBridge] Fixed: Exception is thrown if the entity class is not known to Doctrine 2012-12-06 13:35:16 +01:00
Mario A. Alvarez Garcia
d902e9d839 [FrameworkBundle] Added hostnamePattern to the router:debug command 2012-12-06 06:57:32 -05:00
Martin Hasoň
10e5f3b3df Removed useless branch alias for dev-master in composer.json 2012-12-06 11:00:55 +01:00
Fabien Potencier
aee033699b fixed CS 2012-12-06 09:58:41 +01:00
Fabien Potencier
ee346bbc22 merged branch KingCrunch/feature/static-template-cache (PR #6083)
This PR was squashed before being merged into the master branch (closes #6083).

Commits
-------

6236c18 [FrameworkBundle] Added caching to TemplateController

Discussion
----------

[FrameworkBundle] Added caching to TemplateController

Because the main purpose for the `TemplateController` seems to be to render static pages like "disclaimer" and such, it seems useful to allow caching.

    imprint:
        pattern: /imprint
        defaults:
            _controller: SymfonyFrameworkBundle:Template:template
            template: "::pages/imprint.html.twig"
            maxAge: 86400

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

by pierredup at 2012-11-21T20:24:53Z

IMHO I think the caching should be allowed to be set optionally

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

by KingCrunch at 2012-11-21T20:38:54Z

I wrote it this way, because I assume, that it will cover more use-cases, than the other way round, but you are right, that this will change the current behaviour. Would like to hear other opinions, because I don't think one uses this action for anything else than fully-static content (means: The current behaviour doesn't feel very useful to me).

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

by pierredup at 2012-11-21T20:48:19Z

I totally agree, but I would then suggest keep the caching on by default, but have the option to turn it off if necessary

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

by pierredup at 2012-11-21T20:52:01Z

Actually I think to have caching permanently enabled for static content would probably be the best scenario, but I like to think in terms of flexibility and specific user requirements. It would be great to get some opinions from others on this

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

by KingCrunch at 2012-11-23T21:12:45Z

I thought about it and I come to the conclusion, that it is probably a not so good idea to enable caching by default, because ... well, it's not possible to disable it again. I guess something like this

    {{ render '@AcmeBundle:ArticleController:latest' with {count: 1} }}

may be not so uncommon as I suggested in the first commit.

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

by fabpot at 2012-12-03T22:18:51Z

Can you make a PR for the docs? (symfony/symfony-docs). Thanks.
2012-12-06 09:57:25 +01:00
Sebastian Krebs
6236c1835c [FrameworkBundle] Added caching to TemplateController 2012-12-06 09:57:24 +01:00
Martin Hasoň
abe244f0c9 [TwigBundle] Fixed tests on windows 2012-12-06 09:55:04 +01:00
Fabien Potencier
e75c7e20ce merged branch colinfrei/deprecatedErrorHandling (PR #6173)
This PR was squashed before being merged into the master branch (closes #6173).

Commits
-------

4878ec0 [HttpKernel] [WebProfilerBundle] Better handling of deprecated methods

Discussion
----------

[HttpKernel] [WebProfilerBundle] Better handling of deprecated methods

Bug fix: no
Feature addition: yes
Backwards compatibility break: yes, if you were expecting E_USER_DEPRECATED or E_DEPRECATED to throw an exception
Symfony2 tests pass: yes
Fixes the following tickets: #6139 partly, I'd go through and add the actual trigger_error() calls in another (or possibly one per component) PR
Todo: call trigger_error()
License of the code: MIT
Documentation PR: -

I added the deprecation count with the Exception icon in the Profiler Toolbar, and changed the color of it to be yellow for deprecations and red for exceptions (was yellow for exceptions).

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

by fabpot at 2012-12-03T09:43:09Z

Adding trigger_error calls should be done in one PR to ease the merging. thanks.
2012-12-06 09:10:08 +01:00
Colin Frei
4878ec08e6 [HttpKernel] [WebProfilerBundle] Better handling of deprecated methods 2012-12-06 09:09:04 +01:00
Fabien Potencier
869be1df6d Merge branch '2.1'
* 2.1:
  [Locale] fixed tests
  [Config] Fixed tests on Windows
  [TwigBundle] Fixed tests
  [Security] Move DigestDataTest.php inside the Security component
  Fixed DefaultValue for session.auto_start in NodeDefinition
  Fix namespace of Validator and BrowserKit Tests

Conflicts:
	src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php
	src/Symfony/Bundle/TwigBundle/Tests/TwigEngineTest.php
2012-12-06 08:52:34 +01:00
Fabien Potencier
889bd2ee62 Merge branch '2.0' into 2.1
* 2.0:
  [Locale] fixed tests
  [Config] Fixed tests on Windows
  [TwigBundle] Fixed tests

Conflicts:
	phpunit.xml.dist
	src/Symfony/Bundle/TwigBundle/Tests/TwigEngineTest.php
	src/Symfony/Component/Locale/Tests/Stub/StubIntlDateFormatterTest.php
	src/Symfony/Component/Locale/Tests/Stub/StubNumberFormatterTest.php
2012-12-06 08:51:00 +01:00
Fabien Potencier
bf6d9be27d merged branch willdurand/woodspire-master (PR #6199)
This PR was merged into the master branch.

Commits
-------

a3a832c Fix CS in the whole Propel1 bridge
86ab4b3 Add typehint to isInteger(), fix tests
a26a690 remove useless ColumnMap
ffd8759 fix some formatting issue
6fb9536 fix indentation problem
e5e3341 oups. It seems that here, we need \PDO
36d6c40 fix indentation problem
6f8cd9d Removed the PropelColumnTypes.php copy
8125163 removed the TODO mention. Will keep the Propel code here so it can work with older version of Propel
0e4419b I found the error in my latest commit. This pass the test suite.
cf8a6c0 Fix my code and also fix the test suite.
737b596 Merge remote-tracking branch 'upstream/master'
972e503 Fix problem when 1 column identifier in propel is a string.

Discussion
----------

Fix ModelChoiceList problem with string key

Replaces #6150

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

by willdurand at 2012-12-05T20:51:44Z

Note that 5f54ed1 is a "CS fix" commit. I don't want to open a PR just for that. Let me know if I should to remove it.

Also, I'm 👠on this PR. Review has been made already, so it seems mergeable.
2012-12-06 08:43:02 +01:00
William DURAND
a3a832c2c1 Fix CS in the whole Propel1 bridge 2012-12-05 22:12:14 +01:00
William DURAND
86ab4b345a Add typehint to isInteger(), fix tests 2012-12-05 21:47:05 +01:00
William DURAND
a26a6904d8 remove useless ColumnMap 2012-12-05 21:46:02 +01:00
woodspire
ffd87591e1 fix some formatting issue 2012-12-05 15:30:04 -05:00
Fabien Potencier
344496f9f7 merged branch Tobion/collection-flat (PR #6120)
This PR was merged into the master branch.

Commits
-------

51223c0 added upgrade instructions
50e6259 adjusted tests
98f3ca8 [Routing] removed tree structure from RouteCollection

Discussion
----------

[Routing] removed tree structure from RouteCollection

BC break: yes (see below)
Deprecations: RouteCollection::getParent(); RouteCollection::getRoot()
tests pass: yes

The reason for this is so quite simple. The RouteCollection has been designed as a tree structure, but it cannot at all be used as one. There is no getter for a sub-collection at all. So you cannot access a sub-collection after you added it to the tree with `addCollection(new RouteCollection())`. In contrast to the form component, e.g. `$form->get('child')->get('grandchild')`.
So you can see the RouteCollection cannot be used as a tree and it should not, as the same can be achieved with a flat array!
Using a flat array removes all the need for recursive traversal and makes the code much faster, much lighter, less memory (big problem in CMS with many routes) and less error-prone.

BC break: there is only a BC break if somebody used the PHP API for defining RouteCollection and also added a Route to a collection after it has been added to another collection.
So
```
$rootCollection = new RouteCollection();
$subCollection = new RouteCollection();
$rootCollection->addCollection($subCollection);
$subCollection->add('foo', new Route('/foo'));
```
must be updated to the following (otherwise the 'foo' Route is not imported to the rootCollection)
```
$rootCollection = new RouteCollection();
$subCollection = new RouteCollection();
$subCollection->add('foo', new Route('/foo'));
$rootCollection->addCollection($subCollection);
```

Also one must call addCollection from the bottom to the top. So the correct sequence is the following (and not the reverse)
```
$childCollection->->addCollection($grandchildCollection);
$rootCollection->addCollection($childCollection);
```

Remeber, this is only needed when using PHP for defining routes and calling methods in a special order. There is no change required when using XML or YAML for definitions. Also, I'm pretty sure that neither the CMF, nor Drupal routing, nor Silex is relying on the tree stuff. So they should also still work.

cc @fabpot @crell @dbu

One more thing: RouteCollection wasn't an appropriate name for a tree anyway as a collection of routes (that it now is) is definitely not a tree.
Yet another point: The XML declaration of routes uses the `<import>` element, which is excatly what the new implementation of addCollection without the need of a tree does. So this is now also more analogous.

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

by Koc at 2012-11-26T17:34:15Z

What benefit of this?

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

by Tobion at 2012-11-26T17:56:53Z

@Koc Why did you not simply wait for the description? ^^

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

by dbu at 2012-11-26T18:33:09Z

i love PR that remove more code than they add whithout removing functionality.

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

by Crell at 2012-11-26T18:49:52Z

There's an issue somewhere in Drupal where we're trying to use addCollection() as a shorthand for iterating over one collection and calling add() on the other for each item.  We can't do that, however, because the subcollections are not flattened properly when reading back and our current dumper can't cope with that.  So this change would not harm Drupal at all, and would mean I don't have fix a bug in our dumper. :-)  I cannot speak for any other projects, of course.

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

by Tobion at 2012-11-27T19:06:34Z

Ok, this is ready.
2012-12-05 16:37:03 +01:00
JeÌroÌ‚me Vieilledent
5e8d401008 Implemented possibility to skip key normalization in config processing 2012-12-05 15:02:11 +01:00
woodspire
6fb953645f fix indentation problem 2012-12-05 08:39:27 -05:00
woodspire
e5e3341a6d oups. It seems that here, we need \PDO 2012-12-05 08:37:06 -05:00
woodspire
36d6c40bb1 fix indentation problem 2012-12-05 08:35:28 -05:00
Fabien Potencier
559fa8c214 merged branch Koc/critical-errors-logging (PR #5863)
This PR was merged into the master branch.

Commits
-------

acfc750 #2042 initial implementation of fatal error handler

Discussion
----------

Display traces for fatal errors

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: looks like yes
Fixes the following tickets: #2042 (partly)
License of the code: MIT

Output looks like on screen http://easycaptures.com/fs/uploaded/737/1191436899.png . I've added one line to css to prevent displaying standard xdebug trace http://easycaptures.com/fs/uploaded/737/5939488074.png

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

by Koc at 2012-11-08T21:55:41Z

So, community please advice me, how can I trigger `KernelEvents::EXCEPTION` event in `ErrorHandler` or `ExceptionHandler`? Or should I provide other event for this?

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

by stof at 2012-11-08T22:03:23Z

@Koc Don't. the exception handler is there to be the safe guard when developing, and does not depend on the kernel (which would be required to trigger the event). If you were triggering the listener again, it would mean that any exception thrown in a listener would lead to a loop.
And if it is for the fatal error handling, you simply cannot be sure the kernel is still available (and even less in a wokring state) at this point.

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

by Koc at 2012-11-08T22:06:31Z

But how can I notify logger (which will send me mail or just log this situation)?

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

by fabpot at 2012-11-09T07:33:41Z

The error handler is only registered when in debug mode in the Kernel and can be triggered very early in the handling of a request (even before we have access to the dispatcher or anything else). So, the current PR looks fine to me (apart from the typo and the lack of unit tests).

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

by Koc at 2012-11-09T09:13:03Z

> The error handler is only registered when in debug mode

Ooh! I haven't see that before. But the goal - be notified about errors by email or log-file. Like now exceptions with traces from site emails to me.

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

by fabpot at 2012-11-09T09:20:54Z

I think there are two goals. The first one being to have nice pages in the development environment when a fatal error occurs. And this PR addresses that feature quite nicely. The second can be addressed in another PR.

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

by henrikbjorn at 2012-11-14T11:50:22Z

I have some questions about the ErrorHandler. Is there a reason for it only to be registered in an debug environment (which prod is not). Would assume that if i enable the ErrorHandler in productions aswell Monolog would log thoose instead of them just vanishing?

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

by Koc at 2012-11-14T12:01:50Z

I am thinking about it too. But as Fabien says it will another PR

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

by GromNaN at 2012-11-18T10:38:09Z

You should add a memory reserve to be able to handle "Out of memory" errors.
An example is here :
513d628966/lib/Raven/ErrorHandler.php (L91)
513d628966/lib/Raven/ErrorHandler.php (L62)

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

by fabpot at 2012-11-28T11:35:21Z

@Koc can you finish this PR (probably by integrating the memory reserve as explained by @GromNaN)?

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

by Koc at 2012-11-28T11:46:12Z

of course, on this weekend

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

by Koc at 2012-12-02T17:44:44Z

@fabpot done
2012-12-05 11:50:34 +01:00
woodspire
6f8cd9daf0 Removed the PropelColumnTypes.php copy
Using the Propel class instead, like in Column class
2012-12-04 13:58:20 -05:00
woodspire
8125163395 removed the TODO mention. Will keep the Propel code here so it can work with older version of Propel 2012-12-04 13:53:37 -05:00
Felix Labrecque
0e4419ba67 I found the error in my latest commit. This pass the test suite. 2012-12-04 10:48:16 -05:00
Felix Labrecque
cf8a6c00f3 Fix my code and also fix the test suite. 2012-12-04 10:43:26 -05:00
Felix Labrecque
737b596cec Merge remote-tracking branch 'upstream/master' 2012-12-04 10:37:06 -05:00
Martin Hasoň
acf1f86611 [TwigBundle] Fixed tests 2012-12-04 14:39:39 +01:00
Fran Moreno
d03281b400 [Security] Move DigestDataTest.php inside the Security component 2012-12-04 01:15:08 +01:00
jamogon
760aee0c1a Update src/Symfony/Bridge/Propel1/Form/EventListener/TranslationCollectionFormListener.php
Remove duplicated semicolon
2012-12-03 23:30:58 +01:00
Fabien Potencier
8af010aad6 [Routing] added a warning about UrlMatcher::getAttributes() 2012-12-03 23:11:37 +01:00
Fabien Potencier
d378cab54e merged branch Crell/split-urlmatcher (PR #6100)
This PR was squashed before being merged into the master branch (closes #6100).

Commits
-------

0e3671b [WiP] Split urlmatcher for easier overriding

Discussion
----------

[WiP] Split urlmatcher for easier overriding

Based on discussion in https://github.com/symfony-cmf/Routing/pull/30, this PR splits the matchCollection() method of UrlMatcher into two methods.  The reason is to allow Symfony CMF and Drupal to override just one of them, while leaving the actual meat of the class intact.

Additionally, it switches $routes from private to protected for the same reason: It makes it possible for us to extend the class cleanly.

Marking as WIP in case further discussion in CMF suggests other/different changes, but review and a conceptual go/no-go would be appreciated now.

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

by dbu at 2012-11-25T12:57:46Z

i think this variant really just extracts part of the logic into a separate method whithout changing any behaviour or concept. it would help a lot for the cmf to have it this way so we can extend and tweak the logic. is this now good or anybody has more input?

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

by dbu at 2012-11-27T19:42:04Z

sorry for being pushy about this one, but we need to know if this change is ok or not, if we need to improve something. if there is some problem we did not think of, we have to find different solutions for the cmf/drupal matchers.

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

by fabpot at 2012-11-28T14:29:10Z

`PhpMatcherDumper` should probably also be updated to call the new `getAttributes()` method; but that won't be possible as the Route is not accessible when using this dumper. Adding a feature that can only be used by the standard `UrlMatcher` and not by the other matchers does not sound good to me.

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

by dbu at 2012-11-28T17:18:09Z

in the context of the cmf, our problem is that we have too many routes to hold in memory. i think the dumper is not of interest for that use case - @Crell correct me please if i am wrong. if we need any caching we would need to write our own dumper probably. but currently we just extend the UrlMatcher

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

by Crell at 2012-11-30T05:47:39Z

Correct. In both the CMF case and Drupal case we have our own dumpers, because the current ones don't work for us anyway.  (1000 routes and all that. :-) )  This isn't a new public method.  It's just a small refactor of UrlMatcher itself to make it easier to extend.  If you're using a dumped PhpMatcher, I don't know why you'd be using something like NestedMatcher in the first place.
2012-12-03 23:07:55 +01:00
Larry Garfield
0e3671bbe7 [WiP] Split urlmatcher for easier overriding 2012-12-03 23:07:55 +01:00
Fran Moreno
2ed30e702f Fixed DefaultValue for session.auto_start in NodeDefinition
This is just for consistency with the node type (Boolean)
2012-12-03 23:02:45 +01:00
Fabien Potencier
abda671d9b merged branch Tobion/patch-5 (PR #6176)
This PR was merged into the master branch.

Commits
-------

918bad6 fix phpdoc in ExecutionContextInterface

Discussion
----------

fix phpdoc in ExecutionContextInterface
2012-12-03 23:01:57 +01:00
Igor Wiedler
c70bd034a4 Allow any callable to be passed to Command::setCode 2012-12-03 23:00:56 +01:00
Fabien Potencier
b5ba075623 merged branch Tobion/getPropertyPath (PR #6178)
This PR was merged into the master branch.

Commits
-------

3d0c70e made ExecutionContext more consistent

Discussion
----------

[Validator] made ExecutionContext more consistent

BC break: no

The default should be an empty string instead of null because
1. a string is expected according to phpdoc
2. its more consistent with `validate($value, $groups = null, $subPath = '', $traverse = false, $deep = false)` and `validateValue($value, $constraints, $groups = null, $subPath = '')` that both have `''` as default for subPath

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

by bschussek at 2012-12-03T21:14:49Z

ðŸ‘
2012-12-03 22:49:59 +01:00
Colin Frei
1f9eb7f292 return value of handleError 2012-12-03 22:04:34 +01:00
Colin Frei
b35de9e15b Handle errors using a custom error handler
Without the custom handler, assertions after the first failure wouldn't be executed. This catches E_USER_DEPRECATED errors and passes everything else on to the phpunit error handler.
2012-12-03 21:43:03 +01:00
Colin Frei
f49704b14f trigger errors for deprecated methods in HttpFoundation component 2012-12-03 20:49:11 +01:00
Tobias Schultze
3d0c70e434 made ExecutionContext more consistent 2012-12-03 19:34:26 +01:00
Fran Moreno
faeecf81ce Fix namespace of Validator and BrowserKit Tests 2012-12-03 16:25:15 +01:00
Fabien Potencier
0e9157a6df fixed previous merge 2012-12-03 14:56:49 +01:00
Fabien Potencier
b22da6ef5d Merge branch '2.1'
* 2.1:
  [TwigBundle] Moved the registration of the app global to the environment
  needs to use simpleContent in xsd to allow empty elements
  bumped Symfony version to 2.1.5-DEV
  bumped Symfony version to 2.0.19-DEV
  removed wrong routing xsd statement `mixed="true"`
  removed unused attribute from routing.xsd
  [HttpFoundation] added a small comment about the meaning of Request::hasSession() as this is a recurrent question (refs #4541)
  updated VERSION for 2.1.4
  updated CHANGELOG for 2.1.4
  updated VERSION for 2.0.19
  update CONTRIBUTORS for 2.0.19
  updated CHANGELOG for 2.0.19

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Routing/Loader/schema/routing/routing-1.0.xsd
2012-12-03 14:31:00 +01:00
Fabien Potencier
a6e08b18de Merge branch '2.0' into 2.1
* 2.0:
  [TwigBundle] Moved the registration of the app global to the environment
  needs to use simpleContent in xsd to allow empty elements
  bumped Symfony version to 2.0.19-DEV
  removed wrong routing xsd statement `mixed="true"`
  removed unused attribute from routing.xsd
  updated VERSION for 2.0.19
  update CONTRIBUTORS for 2.0.19
  updated CHANGELOG for 2.0.19

Conflicts:
	CONTRIBUTORS.md
	src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml
	src/Symfony/Bundle/TwigBundle/TwigEngine.php
	src/Symfony/Component/HttpKernel/Kernel.php
2012-12-03 14:28:41 +01:00
Christophe Coevoet
ae3d531737 [TwigBundle] Moved the registration of the app global to the environment
This makes the app global variable available also when accessing the Twig
environment directly instead of using the TwigEngine.

Conflicts:
	src/Symfony/Bridge/Twig/CHANGELOG.md
	src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml
	src/Symfony/Bundle/TwigBundle/TwigEngine.php
2012-12-03 14:25:44 +01:00
Tobias Schultze
918bad6b85 fix phpdoc in ExecutionContextInterface 2012-12-03 14:13:44 +01:00
Jan Kramer
109bb7be0a Fixed form validation
Swapped arguments $groups and $subPath in ExecutionContext::validate and ExecutionContext::validateValue, so they match their interface signatures again.
2012-12-03 13:36:15 +01:00
Tobias Schultze
eec788571f needs to use simpleContent in xsd to allow empty elements 2012-12-03 13:35:11 +01:00
Fabien Potencier
90e910f5ab merged branch Tobion/patch-2 (PR #6166)
This PR was merged into the 2.0 branch.

Commits
-------

57edf56 removed wrong routing xsd statement `mixed="true"`

Discussion
----------

removed wrong routing xsd statement `mixed="true"`

mixed="true" means that the element could contain both text and other elements, e.g.
`<requirement key="_locale">text <subelement /></requirement>`
But this wrong and such a definition would not even validate against the scheme as the xsd does not define which elements would be expected inside.
2012-12-02 19:02:32 +01:00
Fabien Potencier
afdd08b3ef merged branch Tobion/patch-1 (PR #6164)
This PR was merged into the 2.0 branch.

Commits
-------

d5623b4 removed unused attribute from routing.xsd

Discussion
----------

removed unused attribute from routing.xsd
2012-12-02 19:02:05 +01:00
Fabien Potencier
a82f3ed134 bumped Symfony version to 2.1.5-DEV 2012-12-02 19:01:07 +01:00
Fabien Potencier
3495fa61ab bumped Symfony version to 2.0.19-DEV 2012-12-02 18:59:42 +01:00
Konstantin.Myakshin
acfc750a48 #2042 initial implementation of fatal error handler 2012-12-02 19:36:35 +02:00
Fabien Potencier
cc53fc25b5 merged branch Tobion/routing-loaders (PR #6165)
This PR was merged into the master branch.

Commits
-------

20dbe47 added annotation
c73cb8a add default for pattern for clarity
ddd8918 make id attribute required
62536e5 refactor to an xsd:group
451dcdc it should be possible to define the defaults, req. and options in any order, just like in YAML

Discussion
----------

improve routing xml scheme

bc break: no

Main points:
- the xml scheme only allowed defaults, requirements and options in this specific order. but the XmlFileLoader does not have the restriction and the YAML definions does not have such an restriction either. this is now fixed. so you can use
```
<requirement key="_locale">en</requirement>
<default key="_controller">Foo</default>
```
Before it had the be first all defaults, then all requirements, then all options.
- make id attribute required

For more changes see commits.
2012-12-02 15:14:10 +01:00
Fabien Potencier
150a138936 merged branch TerjeBr/persistent-token-provider (PR #6149)
This PR was merged into the master branch.

Commits
-------

373be62 Bugfix for creating cookie on loginSuccess in AbstractRememberMeServices

Discussion
----------

Bugfix for creating cookie on loginSuccess in AbstractRememberMeServices

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

By a mistake setting of new cookies did not work for other RememberMe services than PersistentTokenBasedRememberMeServices

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

by TerjeBr at 2012-12-01T17:28:08Z

Ping.  Any feedback on this?
2012-12-02 15:11:29 +01:00
Tobias Schultze
20dbe47223 added annotation 2012-12-02 01:30:09 +01:00
Tobias Schultze
57edf568a2 removed wrong routing xsd statement mixed="true"
mixed="true" means that the element could contain both text and other elements, e.g.
`<requirement key="_locale">text <subelement /></requirement>`
But this wrong and such a definition would not even validate against the scheme as the xsd does not define which elements would be expected inside.
2012-12-01 22:40:50 +01:00
Tobias Schultze
c73cb8a1be add default for pattern for clarity 2012-12-01 22:22:36 +01:00
Tobias Schultze
ddd8918512 make id attribute required 2012-12-01 22:22:35 +01:00
Tobias Schultze
62536e5bec refactor to an xsd:group 2012-12-01 22:22:16 +01:00
Tobias Schultze
451dcdcb63 it should be possible to define the defaults, req. and options in any order, just like in YAML 2012-12-01 22:22:11 +01:00
Tobias Schultze
d5623b46d8 removed unused attribute from routing.xsd 2012-12-01 22:16:05 +01:00
Victor Berchet
bad50ac501 [HttpFoundation] Request::getRealMethod() now returns UPPERCASE 2012-11-30 23:41:06 +01:00
Fabien Potencier
7b234db668 [HttpFoundation] added a small comment about the meaning of Request::hasSession() as this is a recurrent question (refs #4541) 2012-11-30 13:53:14 +01:00
Felix Labrecque
972e503fa8 Fix problem when 1 column identifier in propel is a string.
The ModelChoiceList thinks it can be used as the index of the ChoiceList, when it can only be used if it is an integer.
2012-11-29 10:30:50 -05:00
Terje Bråten
373be626ae Bugfix for creating cookie on loginSuccess in AbstractRememberMeServices 2012-11-29 16:28:59 +01:00
Victor Berchet
7f16c1f5bc [HttpKernel] Add DI extension configs as ressources when possible 2012-11-29 14:58:56 +01:00
Fabien Potencier
936abe1752 updated VERSION for 2.1.4 2012-11-29 12:56:19 +01:00
Fabien Potencier
cdb3eccd5b updated VERSION for 2.0.19 2012-11-29 12:36:26 +01:00
Fabien Potencier
50a62da114 Merge branch '2.1'
* 2.1:
  [HttpFoundation] reverted variable rename
2012-11-29 12:32:58 +01:00
Fabien Potencier
d50f9d7431 Merge branch '2.0' into 2.1
* 2.0:
  [HttpFoundation] reverted variable rename

Conflicts:
	src/Symfony/Component/HttpFoundation/Request.php
2012-11-29 12:32:44 +01:00
Fabien Potencier
9ce892cf43 [HttpFoundation] reverted variable rename 2012-11-29 12:31:26 +01:00
Fabien Potencier
995219f39b Merge branch '2.1'
* 2.1:
  replaced magic strings by proper constants
  refactored tests for Request
  fixed the logic in Request::isSecure() (if the information comes from a source that we trust, don't check other ones)
  added a way to configure the X-Forwarded-XXX header names and a way to disable trusting them
  fixed algorithm used to determine the trusted client IP
  removed the non-standard Client-IP HTTP header

Conflicts:
	src/Symfony/Component/HttpFoundation/Tests/RequestTest.php
2012-11-29 12:29:12 +01:00
Fabien Potencier
6c67476ef0 Merge branch '2.0' into 2.1
* 2.0:
  replaced magic strings by proper constants
  refactored tests for Request
  fixed the logic in Request::isSecure() (if the information comes from a source that we trust, don't check other ones)
  added a way to configure the X-Forwarded-XXX header names and a way to disable trusting them
  fixed algorithm used to determine the trusted client IP
  removed the non-standard Client-IP HTTP header

Conflicts:
	src/Symfony/Component/HttpFoundation/Request.php
	src/Symfony/Component/HttpFoundation/Tests/RequestTest.php
2012-11-29 12:27:48 +01:00
Fabien Potencier
e5536f0fe1 replaced magic strings by proper constants 2012-11-29 12:23:09 +01:00
Fabien Potencier
6a3ba52858 fixed the logic in Request::isSecure() (if the information comes from a source that we trust, don't check other ones) 2012-11-29 12:23:09 +01:00
Fabien Potencier
67e12f3ecb added a way to configure the X-Forwarded-XXX header names and a way to disable trusting them 2012-11-29 12:23:09 +01:00
Fabien Potencier
b45873a3f6 fixed algorithm used to determine the trusted client IP 2012-11-29 12:23:09 +01:00
Fabien Potencier
254b11062e removed the non-standard Client-IP HTTP header 2012-11-29 12:23:09 +01:00
Fabien Potencier
18495e7b3c Merge branch '2.1'
* 2.1: (29 commits)
  [DependencyInjection] fixed composer.json
  [Validator] Fix typos in validators.ru.xlf
  Edited some minor grammar and style errors in russian validation file
  Updated Bulgarian translation
  [Form] improve error message with a "hasser" hint for PropertyAccessDeniedException
  [Form] Updated checks for the ICU version from 4.5+ to 4.7+ due to test failures with ICU 4.6
  [Form] simplified a test from previous merge
  Update src/Symfony/Component/Form/Extension/Core/Type/FileType.php
  fixed CS
  Xliff with other node than source or target are ignored
  small fix of #5984 when the container param is not set
  Filesystem Component mirror symlinked directory fix
  [Process][Tests] fixed chainedCommandsOutput tests
  fixed CS
  Use better default ports in urlRedirectAction
  Add tests for urlRedirectAction
  info about session namespace
  fix upgrade info about locale
  Update src/Symfony/Component/DomCrawler/Tests/FormTest.php
  Update src/Symfony/Component/DomCrawler/Form.php
  ...
2012-11-29 11:32:45 +01:00
Fabien Potencier
922c2015f6 Merge branch '2.0' into 2.1
* 2.0:
  [DependencyInjection] fixed composer.json
  [Form] Updated checks for the ICU version from 4.5+ to 4.7+ due to test failures with ICU 4.6
  fixed CS
  small fix of #5984 when the container param is not set
  fixed CS
  Use better default ports in urlRedirectAction
  Add tests for urlRedirectAction
  Update src/Symfony/Component/DomCrawler/Tests/FormTest.php
  Update src/Symfony/Component/DomCrawler/Form.php
  [Security] remove escape charters from username provided by Digest DigestAuthenticationListener
  [Security] added test extra for digest authentication
  fixed CS
  [Security] Fixed digest authentication
  [Security] Fixed digest authentication
  [SecurityBundle] Convert Http method to uppercase in the config
  Use Norm Data instead of Data

Conflicts:
	src/Symfony/Bridge/Doctrine/Form/EventListener/MergeCollectionListener.php
	src/Symfony/Bundle/FrameworkBundle/Controller/RedirectController.php
	src/Symfony/Component/DependencyInjection/composer.json
2012-11-29 11:32:18 +01:00
Fabien Potencier
7fce02c818 merged branch nomack84/issue6135 (PR #6136)
This PR was merged into the master branch.

Commits
-------

c8e65a2 [FrameworkBundle][Routing] Resolve placeholders in hostnamePattern rules

Discussion
----------

[FrameworkBundle][Routing] Resolve placeholders in hostnamePattern rules

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

Currently the placeholders in the `hostname_pattern` rule are not resolved, so that's why this PR is it for.

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

by nomack84 at 2012-11-28T14:18:02Z

@fabpot Could you please merge this? I really need this fix to be solve.
Thanks!
2012-11-28 17:24:04 +01:00
Fabien Potencier
aacfe74f18 merged branch fabpot/http-method-override (PR #6143)
This PR was merged into the master branch.

Commits
-------

0a380cf [HttpFoundation] disabled Request _method feature by default (should now be explicitely enabled via a call to enableHttpMethodOverride())

Discussion
----------

[HttpFoundation] disabled Request _method feature by default

It should now be explicitely enabled via a call to enableHttpMethodOverride())
2012-11-28 17:23:21 +01:00
Fabien Potencier
0a380cfdbf [HttpFoundation] disabled Request _method feature by default (should now be explicitely enabled via a call to enableHttpMethodOverride()) 2012-11-28 15:06:57 +01:00
Fabien Potencier
13b47b6591 merged branch marcw/twig-chain-loader (PR #6131)
This PR was merged into the master branch.

Commits
-------

431d593 [TwigBundle] Renames twig.loader to twig.loader.filesystem.

Discussion
----------

[TwigBundle] Renames twig.loader to twig.loader.filesystem.

In the previous form of twig's service definitions, it was impossible to
use a chain loader correctly because the TwigBundle was registering paths
on the twig.loader service. This patch fixes that by creating a
twig.loader.filesystem definition and an alias twig.loader that points
to twig.loader.filesystem by default.

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

by marcw at 2012-11-27T21:05:53Z

Failed build seems unrelated to this PR.
2012-11-28 12:33:18 +01:00
Tobias Schultze
828c95d750 [Routing] removed restriction of route names 2012-11-28 12:31:05 +01:00
Mario A. Alvarez Garcia
c8e65a28e9 [FrameworkBundle][Routing] Resolve placeholders in hostnamePattern rules 2012-11-27 17:22:45 -05:00
marc.weistroff
431d593d59 [TwigBundle] Renames twig.loader to twig.loader.filesystem.
In the previous form of twig's service definitions, it was impossible to
use a chain loader correctly because the TwigBundle was registering paths
on the twig.loader service. This patch fixes that by creating a
twig.loader.filesystem definition and an alias twig.loader that points
to twig.loader.filesystem by default.
2012-11-27 14:37:15 -05:00
Tobias Schultze
51223c05ff added upgrade instructions 2012-11-27 20:03:51 +01:00
Fabien Potencier
fc89d6b643 [DependencyInjection] fixed composer.json 2012-11-27 09:54:37 +01:00
Tobias Schultze
50e625962c adjusted tests 2012-11-26 18:35:14 +01:00
Tobias Schultze
98f3ca8395 [Routing] removed tree structure from RouteCollection 2012-11-26 18:28:37 +01:00
Eugene Leonovich
31c32c551f [Validator] Fix typos in validators.ru.xlf 2012-11-25 22:04:02 +01:00
Andrey Esaulov
7f5c4198ba Edited some minor grammar and style errors in russian validation file 2012-11-25 12:00:35 +01:00
Fabien Potencier
96da146b9d merged branch bicpi/add_hasser_hint (PR #6110)
This PR was merged into the 2.1 branch.

Commits
-------

06ee53b [Form] improve error message with a "hasser" hint for PropertyAccessDeniedException

Discussion
----------

[Form] improve error msg w/ a "hasser" hint for PropertyAccessDeniedException

"Hasser" support was added under the 2.1 branch of the Form component

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: no, but fails exactly the same as without this fix
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: symfony/symfony-docs#1958
2012-11-25 11:54:09 +01:00
Roumen Damianoff
7cba683f04 Updated Bulgarian translation
Added Bulgarian translation for form component.
Updated Bulgarian translation for validator messages.
2012-11-25 01:16:21 +02:00
Philipp Rieber
06ee53b73e [Form] improve error message with a "hasser" hint for PropertyAccessDeniedException
Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: no, but fails exactly the same as without this fix
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: symfony/symfony-docs#1958
2012-11-24 15:59:58 +01:00
Iwan van Staveren
12a890f7cb Issue 5288 fix 2012-11-24 15:42:58 +01:00
Bernhard Schussek
24c653045d [Validator] Added instructions on integrating the latest Validator changes to the UPGRADE file 2012-11-24 13:30:10 +01:00
Fabien Potencier
ee90986c9f merged branch bschussek/drupal-validator (PR #6096)
This PR was merged into the master branch.

Commits
-------

1858b96 [Form] Adapted FormValidator to latest changes in the Validator
1f752e8 [DoctrineBridge] Adapted UniqueValidator to latest changes in the Validator
efe42cb [Validator] Refactored the GraphWalker into an implementation of the Visitor design pattern.

Discussion
----------

[Validator] Refactored the Validator for use in Drupal

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

Drupal wants to use the Symfony Validator component in their next version. I was talking to @fago recently about the changes that we'd need to make and implemented these changes in this PR. I don't want to rush this, but the deadline is tight, since Drupal feature freeze is on December 1st and @fago needs at least a couple of days to integrate the Validator into Drupal.

This PR introduces two significant changes:

* Interfaces were created for all classes that constitute the Validator's API. This is were the PR breaks BC, because `ConstraintValidatorInterface::initialize()` is now type hinted against `ExecutionContextInterface` instead of `ExecutionContext`.

* The graph walker was refactored into an implementation of the Visitor pattern. This way, the validator was decoupled from the structure of the metadata (class → properties and getter methods) and makes it possible to implement a different metadata structure, as is required by the Drupal Entity API.

As a consequence of the API change, custom validation code is now much easier to write, because `ValidatorInterface` and `ExecutionContextInterface` share the following set of methods:

```php
interface ValidatorInterface
{
    public function validate($value, $groups = null, $traverse = false, $deep = false);
    public function validateValue($value, $constraints, $groups = null);
    public function getMetadataFor($value);
}

interface ExecutionContextInterface
{
    public function validate($value, $subPath = '', $groups = null, $traverse = false, $deep = false);
    public function validateValue($value, $constraints, $subPath = '', $groups = null);
    public function getMetadataFor($value);
}
```

No more juggling with property paths, no more fiddling with the graph walker. Just call on the execution context what you'd call on the validator and you're done.

There are two controversial things to discuss and decide (cc @fabpot):

* I moved the `@api` tags of all implementations to the respective interfaces. Is this ok?
* I would like to deprecate `ValidatorInterface::getMetadataFactory()` (tagged as `@api`) in favor of the added `ValidatorInterface::getMetadataFor()`, which offers the exact same functionality, but with a different API and better encapsulation, which makes it easier to maintain for us. We can tag `getMetadataFor()` as `@api`, as I don't expect it to change. Can we do this or should we leave the old method in?

I would like to decide the major issues of this PR until **Sunday November 25th** in order to give @fago enough room for his implementation.

Let me hear your thoughts.
2012-11-24 13:18:53 +01:00
Fabien Potencier
d5ff2388cb merged branch TerjeBr/persistent-token-provider (PR #6055)
This PR was merged into the master branch.

Commits
-------

d1b5093 Try to make sure cookies get deleted from the TokenProvider when no longer in use

Discussion
----------

Delete cookies from the TokenProvider that is no longer in use

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

When the user logs in, or login fails for some reason, the old "remember me" cookie should be deleted from the TokenProvider if you are using the PersistentTokenBasedRememberMeServices.

As the code is now, the token is only deleted on logout.

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

by TerjeBr at 2012-11-20T13:45:54Z

So, anything else that needs to be done before this is merged?

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

by TerjeBr at 2012-11-21T10:30:53Z

Ok, I have corrected the typo in the comment and squashed the commit.

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

by schmittjoh at 2012-11-21T10:36:29Z

btw, ``canceled`` (more American) and ``cancelled`` (more British) are both
correct English forms.

On Wed, Nov 21, 2012 at 11:30 AM, Terje Bråten <notifications@github.com>wrote:

> Ok, I have corrected the typo in the comment and squashed the commit.
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/symfony/symfony/pull/6055#issuecomment-10592112>.
>
>

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

by schmittjoh at 2012-11-21T10:40:24Z

As a side-note have you verified that this does not break the cookie theft protection?

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

by TerjeBr at 2012-11-21T10:51:10Z

Yes, cookie theft protection is still there and is functioning well.

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

by TerjeBr at 2012-11-21T11:14:04Z

I am using this together with the DoctrineTokenProvider in issue #6057 in my own project and done some extensive testing on it.

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

by TerjeBr at 2012-11-23T10:30:34Z

Is this ready to be merged now?
2012-11-24 13:14:48 +01:00
Fabien Potencier
c8ebc1e74b merged branch sli-systems/dc-1 (PR #6080)
This PR was squashed before being merged into the master branch (closes #6080).

Commits
-------

e477a2e Handle case of static controller method and controllers using magic __call() method

Discussion
----------

Handle case of static controller method and controllers using magic __call() method

Improve collecting controller details for edge cases where:
- controller is array, but contains class name and static method
- method doesn't exist, but is handled by magic __call() method

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

by fabpot at 2012-11-21T08:12:08Z

Can you add some unit tests?

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

by sli-systems at 2012-11-21T22:19:17Z

@pierredup
I disagree with the your comment about is_callable() only working with objects. The PHP docs state that the first  argument is a callable, so it can be a string, array, closure, and perhaps more.

The test I added also shows that the code works as is :)

I've thought about your suggestion of adding reflection to look up the location of __call(). However, I think this doesn't really  add a lot and only complicates matters. Also, as you can see in the new test, there is also __callStatic() to consider.

The fact that file/line are n/a is  correct, because the most typical case will be that __call() and __callStatic() will delegate to some other method that might not even be in the same class/file (a subclass I would expect), IMHO.

@fabpot
Good catch  about the '/'. I hope the test is complete enough. Looks more like an exercise on PHP callables than anything else, tho ;)

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

by pierredup at 2012-11-22T04:56:18Z

True that ````is_callable```` takes any callable argument, except in the one specific case where you have a ````__call()```` method, and pass an array with the first paramater as a string.

Take the following example:

    class Controller {
        public function __call($method, $arguments) {}
    }

    $controller = array('Controller', 'action');

    var_dump(is_callable($controller));

Here ````is_callable($controller)```` will actually return ````false````, where if you have ````$controller = array(new Controller, 'action');```` it would return true.

Of course if you have a ````__callStatic```` method, then it would always return true.

Your tests doesn't seem to cover this use case

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

by sli-systems at 2012-11-22T20:27:05Z

Hmm, maybe. I have to admin that I do not know about this case. OTOH, if is_callable returns false is it really callable then? I would think this more of a PHP bug then?

I think I might have come across this case during coding, but then dismissed it because in that case FilterControllerEvent failed already before the data collector code is reached.

In FilterControllerEvent there is a check on is_callable and a LogicException is thrown if $controller is not callable.

So, is FilterControllerEvent wrong  too then?

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

by pierredup at 2012-11-22T20:41:14Z

One would think that if is_callable returns false, then the controller isn't callable, but in the case I mentioned above, the controller is in fact callable. I also thought it was a bug with php, but the php-internals don't seem to think so.

The problem is, if you specify the class as a string, php looks for a static method, even if you have a __call method, it won't be registered.

I will have a look at the FilterControllerEvent to see if this use case applies there as well.

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

by sli-systems at 2012-11-22T20:50:32Z

Rather strange - if that is the case then using is_callable seems pretty pointless and the only way would be to try to execute the controller to find out if it is, in fact, callable...

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

by pierredup at 2012-11-22T20:51:07Z

Okay so it actually seems that the case above isn't callable after all. If the controller is specified as a string, then a static method need to exist. Hence why it works with __callStatic. Only when an instance of the class is specified, will it handle the __call method.

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

by sli-systems at 2012-11-22T20:57:55Z

So the tests are sufficient then?

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

by pierredup at 2012-11-22T20:59:22Z

Yes it is.
This happens when you just assume something without actually testing it :)

Sorry for the hassle
2012-11-24 13:13:43 +01:00
DerManoMann
e477a2ea46 Handle case of static controller method and controllers using magic __call() method 2012-11-24 13:13:43 +01:00
Fabien Potencier
1c0ba78833 [Form] simplified a test from previous merge 2012-11-24 13:04:10 +01:00
Bernhard Schussek
1858b96b7d [Form] Adapted FormValidator to latest changes in the Validator 2012-11-24 13:00:33 +01:00
Bernhard Schussek
1f752e866e [DoctrineBridge] Adapted UniqueValidator to latest changes in the Validator 2012-11-24 13:00:33 +01:00
Bernhard Schussek
efe42cbb1f [Validator] Refactored the GraphWalker into an implementation of the Visitor design pattern.
With this refactoring comes a decoupling of the validator from the structure of
the underlying metadata. This way it is possible for Drupal to use the validator
for validating their Entity API by using their own metadata layer, which is not
modeled as classes and properties/getter methods.
2012-11-24 13:00:28 +01:00
Stepan Tanasiychuk
2fe04e1378 Update src/Symfony/Component/Form/Extension/Core/Type/FileType.php 2012-11-24 12:59:05 +01:00
Fabien Potencier
eb0a60e1a0 merged branch armetiz/patch-9 (PR #6021)
This PR was merged into the 2.1 branch.

Commits
-------

82334d2 Force loader to be null or a EntityLoaderInterface

Discussion
----------

Force loader to be null or a EntityLoaderInterface
2012-11-24 12:54:39 +01:00
Fabien Potencier
6831a3d1c5 merged branch sterrien/patch-1 (PR #5842)
This PR was merged into the 2.0 branch.

Commits
-------

2d9a6fc Use Norm Data instead of Data

Discussion
----------

[Form] Use Norm Data instead of App Data

This listener is triggered when normalized data are binded.

We have to use $event->getForm()->getNormData() instead of $event->getForm()->getData().

I have made a new FormType having 'entity' as parent and having a NormTransformer. I encountered a problem in MergeCollectionListener when the request is binded.

My commit fix it.
2012-11-24 12:53:16 +01:00
Fabien Potencier
deb740b6ed merged branch bamarni/preloaded-extension (PR #5479)
This PR was merged into the 2.1 branch.

Commits
-------

84635bd [Form] allowed no type guesser to be registered

Discussion
----------

[Form] made the factory builder pass null when no type guesser registered

reopened #5422 against 2.1 as it's a bug fix

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

by stof at 2012-10-13T21:23:34Z

@fabpot anything left for this PR ?

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

by fabpot at 2012-10-14T09:41:29Z

@bamarni Can you add some unit tests and also update the FormExtensionInterface interface phpdoc as `getTypeGuesser` can now return `null`? Thanks. ping @bschussek

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

by bamarni at 2012-10-14T17:10:27Z

I've added a few tests covering this.

@fabpot : the phpdoc is already correct, it currently can return null, this only occurs with this convenient class.

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

by bschussek at 2012-10-16T07:43:41Z

This PR breaks FormFactory::createBuilderForProperty(), which expects a guesser to be present. Can you check the component for other uses of the guesser and add a null-check there?

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

by bamarni at 2012-10-16T10:57:54Z

I cannot find other places than the factory (searching for 'getTypeGuesser').

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

by bschussek at 2012-11-08T16:58:37Z

You should also adapt `FormRegistry::getTypeGuesser()` not to build a `FormTypeGuesserChain` if the array of guessers is empty. In that case it will return now `null` (adapt the doc block). We also need a different was of checking if the type guessers have already been parsed in FormRegistry. Otherwise the first if condition in `FormRegistry::getTypeGuesser()` will never become false. You could for example initialize the property `$guesser` to `false` and only set it to `null` after the first run of `getTypeGuesser()`.

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

by bamarni at 2012-11-08T18:40:00Z

good catch I had missed it! I've applied your suggestion in the latest commit. Do you see anything else before I squash?

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

by bschussek at 2012-11-08T18:45:15Z

A test for `FormRegistry::getTypeGuesser()` would of course be awesome.

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

by bamarni at 2012-11-08T18:52:13Z

Then it was already awesome! (see https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Form/Tests/FormRegistryTest.php#L252)

I've also added one for the null case if it's what you meant.
2012-11-24 12:52:59 +01:00
Fabien Potencier
acec6599eb merged branch Tobion/patch-1 (PR #5104)
This PR was merged into the master branch.

Commits
-------

e2a50ef [OptionsResolver] fix normalizer without corresponding option
5a53821 [OptionsResolver] fix removing normalizers

Discussion
----------

OptionsResolver: normalizer fix

setNormalizer() -> replace() -> all() would generate an error.

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

by bschussek at 2012-07-29T16:09:20Z

Thank you for the fix! Could you please add a test case?

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

by Tobion at 2012-07-30T15:42:26Z

There is another problem: setNormalizer() (without setting an option) -> all()
I suggest to simply ignore normalizers that have no corresponding option. Do you agree?

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

by Tobion at 2012-07-30T16:19:24Z

On the other hand, one could argue that a normalizer without option should also work like this:
```
$this->options->setNormalizer('foo', function (Options $options) {
        return '';
});
$this->assertEquals(array('foo' => ''), $this->options->all());
```

But when having a normalizer that wants a previous value as param, it does not work (because there is none).

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

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

@Tobion according to github, this need to be rebased

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

by bschussek at 2012-07-30T19:16:48Z

I guess setNormalizer() should check whether the option is set and fail otherwise. The second possibility, as you say, is to ignore them in all(). I'd prefer whatever is more efficient.

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

by bschussek at 2012-07-30T19:17:27Z

But setting a normalizer without setting an option, and having that option appear in the final options, does not make sense if you ask me.

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

by Tobion at 2012-07-30T21:23:46Z

Well it could make sense. If you want to override/normalize an option to a given value however it has been overloaded by others or just not overloaded at all. This is what normalizers do. I think its more consistent than the other solutions.
Raising exception in setNormalizer would make the Class dependent on the order you call the methods, e.g. `setNormalizer(); set()` would not work. But the other way round would be ok.
Ignoring some normalizers in `all` would be strange because they are there but not applied under some circumstances.

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

by Tobion at 2012-07-30T21:42:40Z

Added the fix. If you disagree tell me.

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

by bschussek at 2012-08-04T09:30:18Z

> Raising exception in setNormalizer would make the Class dependent on the order you call the methods, e.g. `setNormalizer(); set()` would not work. But the other way round would be ok.

I think this would be a better solution. I dislike if the normalizer magically adds an option that does not exist. This could hide implementation error, e.g. when a refactoring removes an option, but the normalizer is forgotten. Can you throw an exception in this case?

Should we find use cases that rely on this to work, we can soften the behavior and remove the exception.

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

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

Well, that would also make it impossible to set a normalizer for on optional option in OptionsResolver.
So `setOptional` + `setNormalizers` would throw an exception which sounds counter-intuitive. Are you sure about that?

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

by Tobion at 2012-08-17T11:47:58Z

ping @bschussek

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

by Tobion at 2012-10-07T22:31:44Z

@bschussek ping

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

by stof at 2012-10-13T18:04:30Z

@bschussek ping

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

by Tobion at 2012-11-08T09:55:15Z

@bschussek please let's get this finished.
2012-11-24 12:52:13 +01:00
Fabien Potencier
c20efc7c78 fixed CS 2012-11-24 12:10:50 +01:00
Larry Garfield
b930066168 Add Route::hasOption() and Route::hasRequirement() methods. 2012-11-23 04:39:55 -06:00
Xavier HAUSHERR
bbeff543cd Xliff with other node than source or target are ignored 2012-11-21 16:37:42 +01:00
Tobias Schultze
29bfa13ff0 small fix of #5984 when the container param is not set
this can happen when the config for the router is unset, but this method
does not need to depend on routing. reading an unset config would raise an exception.
2012-11-21 15:35:19 +01:00
Terje Bråten
d1b5093aa8 Try to make sure cookies get deleted from the TokenProvider when no longer in use 2012-11-21 11:24:30 +01:00
Fabien Potencier
5aa6788298 tweaked previous merge 2012-11-21 09:43:39 +01:00
Jeremy David
6ff0dc6734 Added ability to set controller result in the kernel.view event 2012-11-21 09:43:22 +01:00
Victor Berchet
94426b94f4 "Updated" the changelog according to stof feedback 2012-11-21 08:34:44 +01:00
Malaney J. Hill
f211b198c7 Filesystem Component mirror symlinked directory fix 2012-11-20 14:21:32 +01:00
Tugdual Saunier
0f4d8af6cf [Process][Tests] fixed chainedCommandsOutput tests
for OS where echo does not support -n option (like MacOS X)
2012-11-19 21:53:52 +01:00
Fabien Potencier
85be887e59 fixed CS 2012-11-19 21:00:36 +01:00
Fabien Potencier
ebd5e9286c merged branch flojon/patch-3 (PR #5984)
This PR was merged into the 2.0 branch.

Commits
-------

64b54dc Use better default ports in urlRedirectAction
64216f2 Add tests for urlRedirectAction

Discussion
----------

Default to current port in urlRedirectAction

I was a bit surprised when I used urlRedirectAction from a non-standard port (8000) it redirected me to port 80. I would argue that the default should be to use the current port instead. This is a simple patch to change that. This should only break in the case someone is relying on the current default to redirect from a non-standard port to the standard port, which should be a really rare case...

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

by Tobion at 2012-11-11T20:29:54Z

The idea is right but the implementation not. Seems this patch is not as "simple" as you said.
When you're on HTTPS and want to redirect to $scheme = HTTP, then it still uses the current HTTPS port which is wrong.

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

by flojon at 2012-11-11T20:36:47Z

Ah, I see the problem. So I guess the correct behavior would be to use the current port if staying with the same scheme or go to standard port if switching scheme. Unless the user has specified a port which will always override...

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

by Tobion at 2012-11-11T20:42:18Z

That would be the best solution that is currently possible but not the best solution that should be possible.
Because if you switch scheme but the other scheme does not use the standard port, it still doesn't work.
Ideally the Request class had an option that allows to define the ports symfony should use for HTTP and HTTPS.
This logic is in RequestContext, but it's not used here.

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

by flojon at 2012-11-11T21:32:55Z

Bummer, I forgot to check if the current port is a standard port...

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

by Tobion at 2012-11-11T21:35:13Z

add some tests

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

by flojon at 2012-11-11T23:28:18Z

Added tests and fixed my previous error

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

by flojon at 2012-11-15T18:25:12Z

@Tobion is there anything else I needed for this?

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

by fabpot at 2012-11-19T12:56:04Z

To be consistent with how we manage HTTP ports elsewhere, I'd rather use the values of the `request_listener.http_port` and `request_listener.https_port`:

```php
        if (null === $httpPort) {
            $httpPort = $this->container->getParameter('request_listener.http_port');
        }

        if (null === $httpsPort) {
            $httpsPort = $this->container->getParameter('request_listener.https_port');
        }
```

This is done in the `security.authentication.retry_entry_point` service and for the `router_listener` listener.

The parameter name is probably not the best one, but that could be changed then in master.

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

by flojon at 2012-11-19T13:49:18Z

@fabpot But then you would need to set that parameter manually right? It wouldn't automatically redirect you to the same port, which was what I wanted to achieve...

Could this be the right order of preference:
If a value was specified in the route use that.
Otherwise use the current port
unless switching scheme then use the parameter value

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

by fabpot at 2012-11-19T13:52:17Z

Your order of preference looks good to me.

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

by flojon at 2012-11-19T19:13:19Z

Man this was more involved than I thought... :)
Changed the logic to use the parameters when not using the current port. Also tried clean up the tests a little bit... Enjoy!
2012-11-19 20:59:22 +01:00
Jonas FlodeÌn
64b54dc587 Use better default ports in urlRedirectAction 2012-11-19 20:08:12 +01:00
Jonas FlodeÌn
64216f25a5 Add tests for urlRedirectAction 2012-11-19 20:04:16 +01:00
Fabien Potencier
12b8ae24f6 merged branch nomack84/fixed_docblocks (PR #6067)
This PR was merged into the master branch.

Commits
-------

c78b46f Fixed docblocks

Discussion
----------

Fixed docblocks
2012-11-19 17:08:44 +01:00
Mario A. Alvarez Garcia
c78b46fc73 Fixed docblocks 2012-11-19 10:05:18 -05:00
Tobias Schultze
e39b70949e [Routing] initialize the Route properties
They should normally be initialized anyway in the constructor. But when extending the Route (like in CMF) and using an ORM/ODM to persist them in the DB, the constructor is not called. Then a new property that is not saved like hostnamePattern stays null which in turn makes the RouteCompiler fails as it expects '' instead of null.
2012-11-19 15:19:02 +01:00
Fabien Potencier
54ffd9ebfd merged branch sstok/fix_digest_authentication (PR #5874)
This PR was merged into the 2.0 branch.

Commits
-------

f2cbea3 [Security] remove escape charters from username provided by Digest DigestAuthenticationListener
80f6992 [Security] added test extra for digest authentication
d66b03c fixed CS
694697d [Security] Fixed digest authentication
c067586 [Security] Fixed digest authentication

Discussion
----------

Fix digest authentication

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: -
Replaces: #5485

This adds the missing fixes.

My only concerns is the ```\"``` removing.
```\"``` is only needed for the HTTP transport, but keeping them would require to also store the username with the escapes as well.

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

by fabpot at 2012-10-30T11:25:28Z

The digest authentication mechanism is not that widespread due to its limitation. And the transport is not HTTP, I think we are talking about very few cases.

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

by sstok at 2012-10-30T12:49:14Z

Apache seems to remove (ignore) escape characters.

```c
if (auth_line[0] == '=') {
            auth_line++;
            while (apr_isspace(auth_line[0])) {
                auth_line++;
            }

            vv = 0;
            if (auth_line[0] == '\"') {         /* quoted string */
                auth_line++;
                while (auth_line[0] != '\"' && auth_line[0] != '\0') {
                    if (auth_line[0] == '\\' && auth_line[1] != '\0') {
                        auth_line++;            /* escaped char */
                    }
                    value[vv++] = *auth_line++;
                }
                if (auth_line[0] != '\0') {
                    auth_line++;
                }
            }
            else {                               /* token */
                while (auth_line[0] != ',' && auth_line[0] != '\0'
                       && !apr_isspace(auth_line[0])) {
                    value[vv++] = *auth_line++;
                }
            }
            value[vv] = '\0';
        }
```

But would this change be a BC break for people already using quotes but without a comma and thus they never hit this bug?

The change it self is minimum, just calling ```str_replace('\\\\', '\\', str_replace('\\"', '"', $value))``` when getting the username.

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

by fabpot at 2012-11-13T13:00:12Z

@sstok Doing the same as Apache seems the best option here (just document the BC break).

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

by sstok at 2012-11-15T16:05:00Z

Hopefully I did this correct, but the needed escapes seem correctly removed.
`\"` is changed to `"` `\\` is changed to `\`
`\'` it kept as it is, as this needs no correcting.

@Vincent-Simonin Can you verify please.

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

by Vincent-Simonin at 2012-11-19T09:28:18Z

Authentication didn't work with this configuration :

```
providers:
    in_memory:
        name: in_memory
        users:
            te"st: { password: test, roles: [ 'ROLE_USER' ] }
```

`te"st` was set in authentication form's user field.

(Must we also escape `"` in configuration file ?)

Tests were performed with nginx.

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

by sstok at 2012-11-19T09:33:34Z

Yes. YAML escapes using an duplicate quote, like SQL.

```yaml
providers:
    in_memory:
        name: in_memory
        users:
            "te""st": { password: test, roles: [ 'ROLE_USER' ] }
```
2012-11-19 14:04:22 +01:00
Fabien Potencier
6e8115a276 merged branch raziel057/COMPONENT_Form (PR #5888)
This PR was squashed before being merged into the master branch (closes #5888).

Commits
-------

2379d86 CS Fixes - Replaced "array of type" by "Type[]" in PHPDoc block

Discussion
----------

CS Fixes - Replaced "array of type" by "Type[]" in PHPDoc block

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: no (but tests doesn't pass on master too). See Travis.
License of the code: MIT
Documentation PR: Not Applicable
Status: Finished

To improve support of the eclipse PDT pluggin (for autocompletion), I propose to change the array notation in PHPDoc blocks to match the phpDocumentor notation for "array of type".

Modifications are made for the following components:
- BrowserKit
- ClassLoader
- Config
- Console
- CssSelector
- DependencyInjection
- DomCrawler
- EventDispatcher (no changes)
- Filesystem (no changes)
- Finder
- Form
- HttpFoundation
- HttpKernel
- Locale
- OptionResolver (no changes)
- Process (no changes)
- Routing (no changes)
- Serializer (no changes)
- Templating
- Translation
- Validator
- Yaml (no changes)
- Security
- Stopwatch (no changes)

See Proposal https://github.com/symfony/symfony/pull/5852

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

by pborreli at 2012-11-01T15:19:27Z

will you make a PR for each component ? why not only one PR with one commit for each component instead ?

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

by raziel057 at 2012-11-01T15:32:39Z

Ok, I'm going try to do it.

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

by raziel057 at 2012-11-01T16:12:56Z

I would like to rename my branch from COMPONENT_Form to changes-phpdoc (as all modifications would be commited in only one branch), so I tried to execute the following command but I have an error.

git remote rename COMPONENT_Form changes-phpdoc
error: Could not rename config section 'remote.COMPONENT_Form' to 'remote.changes-phpdoc'

Do you know how to do it?

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

by pborreli at 2012-11-01T16:14:26Z

don't rename it, you will have to close and make another PR which is useless here, just edit the title.

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

by stof at 2012-11-01T16:16:17Z

and ``git remote rename`` is about renaming a remote repo, not a branch

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

by raziel057 at 2012-11-03T11:36:02Z

Is it normal that all my commit are duplicated? I would like just update my master and merge with my branch.

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

by fabpot at 2012-11-06T10:22:55Z

@raziel057 Can you rebase on master? That should fix your problem.

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

by fabpot at 2012-11-09T13:28:53Z

@raziel057 Can you finish this PR?

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

by Tobion at 2012-11-09T13:34:45Z

I'll do it for the routing component this evening because I know it by heart. ^^

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

by raziel057 at 2012-11-09T15:06:26Z

@Tobion ok Thanks!

@fabpot Yes, I will try to finish it this week end.

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

by raziel057 at 2012-11-11T13:04:07Z

@Tobion Did you already change PHPDoc in the Routing component?

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

by Tobion at 2012-11-11T15:21:18Z

@raziel057 Yes I'm working on it.

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

by Tobion at 2012-11-12T15:16:31Z

@raziel057 Done. See #5994
2012-11-19 13:58:52 +01:00
Thomas Lallement
2379d86241 CS Fixes - Replaced "array of type" by "Type[]" in PHPDoc block 2012-11-19 13:58:52 +01:00
Fabien Potencier
bfeb6e78b7 merged branch vicb/security-config (PR #6017)
This PR was merged into the 2.0 branch.

Commits
-------

32dc31e [SecurityBundle] Convert Http method to uppercase in the config

Discussion
----------

[SecurityBundle] Convert Http method to uppercase in the config

This is not striclty required as method names would be converted to uppercase by the matcher after #5988.

However I think it is better to always use uppercase for http method names.

The config UT has also been improved as part of this PR.

This is good to propagate to 2.1 & 2.2 also.
2012-11-19 13:43:56 +01:00
Benoît Bourgeois
b0e468f9ba Update src/Symfony/Component/DomCrawler/Form.php 2012-11-19 13:39:22 +01:00
Fabien Potencier
270e530d97 fixed typo 2012-11-19 13:33:12 +01:00
Fabien Potencier
077bd35f7b merged branch Tobion/routing-pcre (PR #6064)
This PR was merged into the master branch.

Commits
-------

824a0f3 [Routing] compatibility with older PCRE (pre 8)

Discussion
----------

[Routing] compatibility with older PCRE (pre 8)

#6062 for master
2012-11-19 13:32:30 +01:00
Fabien Potencier
cec11fa08a Merge branch '2.1'
* 2.1:
  [Routing] made it compatible with older PCRE version (pre 8)
  tiny refactoring for consistency
  fixed docblock return type
  Added HttpCache\Store::generateContentDigest() + changed visibility

Conflicts:
	src/Symfony/Component/Routing/Matcher/Dumper/ApacheMatcherDumper.php
	src/Symfony/Component/Routing/Matcher/Dumper/PhpMatcherDumper.php
	src/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher1.php
	src/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher2.php
	src/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher3.php
	src/Symfony/Component/Routing/Tests/RouteCompilerTest.php
2012-11-19 13:32:16 +01:00
Tobias Schultze
824a0f3ef6 [Routing] compatibility with older PCRE (pre 8) 2012-11-19 13:02:22 +01:00
Fabien Potencier
8f33f2ea86 merged branch Tobion/routing-centos (PR #6062)
This PR was merged into the 2.1 branch.

Commits
-------

1daefa5 [Routing] made it compatible with older PCRE version (pre 8)

Discussion
----------

[Routing] compatibility with older PCRE version (pre 8)

fixes #4093

Ok I changed my mind about this issue.
1. I figured more people are affected than I thought and CentOS is stubborn.
2. Symfony still uses the old regex style `?P<param>` in several other components. So also doing so in the routing makes it more consistent.
3. Even if it's definitely not good to use an over 6 year old PCRE version with a recent PHP version, we can still try to provide the best experience. It doesn't mean we support outdated software stacks of custom PHP compilations as we won't and cannot specifically test against it.

@fabpot: I will do a seperate PR on master when you merged this because the code changed alot in master so it cannot easily be merged I guess. I will also convert the symfony requirement for PCRE in the requirements check to a recommendation.
2012-11-19 11:35:29 +01:00
Fabien Potencier
4860e7510b merged branch Tobion/patch-5 (PR #6061)
This PR was merged into the master branch.

Commits
-------

1b41ed0 removed unused variable

Discussion
----------

removed unused variable
2012-11-19 11:35:07 +01:00
Tobias Schultze
1daefa5f4b [Routing] made it compatible with older PCRE version (pre 8) 2012-11-19 10:25:59 +01:00
Tobias Schultze
1b41ed0a79 removed unused variable 2012-11-19 10:05:27 +01:00
Fabien Potencier
b358748340 merged branch DenisGorbachev/patch-1 (PR #6046)
This PR was merged into the master branch.

Commits
-------

acbb393 Renamed variable for consistency

Discussion
----------

[SecurityBundle] Renamed variable for consistency

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-11-19 08:44:16 +01:00
Fabien Potencier
7e88eccfb6 merged branch Tobion/is_object_instance_of (PR #6051)
This PR was merged into the master branch.

Commits
-------

966e7d6 [DI] removed unneeded is_object() calls

Discussion
----------

[DI] removed unneeded is_object() calls

I searched through all of symfony for occurences of the coding style `(is_object($value) && $value instanceof Object)` with a regex like `is_object\(\$[a-zA-z0-9]+\) && \$[a-zA-z0-9]+ instanceof `.
The `is_object` calls are not needed in this case. Only the DI component made such duplicate checks.
2012-11-19 08:41:20 +01:00
Tobias Schultze
acf8a70420 [Routing] fix Route recompilation when hostname changed 2012-11-19 01:12:13 +01:00
Tobias Schultze
966e7d6d12 [DI] removed unneeded is_object() calls 2012-11-18 21:27:35 +01:00
Tobias Schultze
ea2bb09d55 tiny refactoring for consistency 2012-11-18 18:36:28 +01:00
Denis Gorbachev
acbb39312c Renamed variable for consistency 2012-11-18 14:58:38 +04:00
Fabien Potencier
00d132a6d3 merged branch lanthaler/master (PR #6030)
This PR was squashed before being merged into the master branch (closes #6030).

Commits
-------

749dac1 Improve docBlock

Discussion
----------

Improve docBlock

This is just a minor change documenting the return type of `SerializerInterface::deserialize()`.
2012-11-17 18:07:16 +01:00
Markus Lanthaler
749dac1e38 Improve docBlock 2012-11-17 18:07:16 +01:00
Fabien Potencier
9c6497f3ea merged branch nomack84/fixed_docblocks (PR #6033)
This PR was merged into the master branch.

Commits
-------

644de74 Fix docblock in Doctrine Bridge

Discussion
----------

Fix docblocks in Doctrine Bridge
2012-11-17 18:06:24 +01:00
Tobias Schultze
38802ea32c remove logic that could not be triggered anyway
the regex by the compiler is always valid. even if it was invalid like '' it wasn't caught by the exception and would have given a php notice.
2012-11-17 16:58:52 +01:00
Pascal Borreli
f7ea68f70c [Routing] Fixed undefined variable + typo 2012-11-17 14:39:14 +00:00
Mario A. Alvarez Garcia
644de740c4 Fix docblock in Doctrine Bridge 2012-11-16 12:36:52 -05:00
Eriksen Costa
0b088ec939 fixed docblock return type 2012-11-16 14:51:07 -02:00
Fabien Potencier
4ad1e14056 merged branch ruian/patch-2 (PR #6028)
This PR was merged into the master branch.

Commits
-------

83b37ff [DependencyInjection] Return self for add...

Discussion
----------

[DependencyInjection] Return self for add...

Bug fix: no
Forget fix: yes
Feature addition: no
Symfony2 tests pass: yes
License of the code: MIT

Return self instance when call an ADD something method.

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

by pborreli at 2012-11-16T13:24:45Z

Please fix PHPDoc accordingly

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

by ruian at 2012-11-16T13:38:41Z

@pborreli done.
2012-11-16 15:58:29 +01:00
Fabien Potencier
68ae207002 merged branch egeloen/password-type (PR #6007)
This PR was merged into the master branch.

Commits
-------

97f6a1b [Form] Update password type trimming to false

Discussion
----------

[Form] Update password trimming to false by default

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

Hey!

Today, I realize that the password type is by default trimmed. IMHO, this is not the expected behavior. By default, the password type should not trim the input value.

Regards

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

by nomack84 at 2012-11-13T19:16:29Z

ðŸ‘

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

by mvrhov at 2012-11-13T19:57:29Z

IMHO password and username fields should be trimmed. whitespace at the beginning and at the end of those fields are not wanted. At least I don't want to deal with a user support where WS on those fields is not trimmed.

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

by egeloen at 2012-11-13T20:08:08Z

@mvrhov I agree with you about username fields and other "text" fields but in case of a password field, if the end user specifies white space at the begin/end of his password, it should not be trimmed. It should simply let it as it is. I open this PR due to two customers who reports me this behavior.

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

by clemherreman at 2012-11-14T10:06:15Z

@mvrhov I agree, username shouldn't be trimmed, however password are kind of special. They should be used *"as is"*, as lots of users have wicked passwords.

Moreover, usually the password is asked twice, so if there are spaces, they are most likely wanted by the end user.

So ðŸ‘

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

by clemherreman at 2012-11-14T10:07:27Z

Also Travis status on this PR is **failed** because of an error when downloading the deps.

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

by geoffrey-brier at 2012-11-14T10:34:56Z

ðŸ‘

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

by bschussek at 2012-11-14T15:01:43Z

Could you please add a test case to PasswordTypeTest?

Please also reference this PR in the test

(= add the comment `// https://github.com/symfony/symfony/pull/6007` before the test)

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

by egeloen at 2012-11-14T15:10:36Z

@bschussek I have updated the PR.

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

by bschussek at 2012-11-14T15:24:34Z

Thanks! Could you please squash the commits?

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

by egeloen at 2012-11-14T15:30:11Z

@bschussek Done.

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

by stloyd at 2012-11-14T15:39:47Z

Should this be noted in `UPGRADE` file ? (as this is change of actually BC break =))

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

by egeloen at 2012-11-15T22:59:45Z

@stloyd Where can I put it? In the [UPGRADE-2.2](https://github.com/symfony/symfony/blob/master/UPGRADE-2.2.md) file?

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

by stloyd at 2012-11-15T23:02:51Z

@egeloen IMO yes, according this will go to `master` (which is actual _dev_ branch for `2.2`)

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

by egeloen at 2012-11-16T13:54:04Z

@fabpot I have removed the comment & added an entry in the `UPGRADE-2.2` file.
2012-11-16 15:57:52 +01:00
Eric GELOEN
97f6a1b4d9 [Form] Update password type trimming to false 2012-11-16 14:51:56 +01:00
Julien 'ruian' Galenski
83b37ffb4d [DependencyInjection] Return self for add...
Bug fix: no
Feature addition: no
Backwards compatibility break: yes
Symfony2 tests pass: yes
License of the code: MIT

Return self instance when call an ADD something method.
2012-11-16 14:35:03 +01:00
Fabien Potencier
e3f8d2db33 merged branch Tobion/collection-hostname (PR #6018)
This PR was squashed before being merged into the master branch (closes #6018).

Commits
-------

6334343 [Routing] removed getHostnamePattern from RouteCollection

Discussion
----------

[Routing] removed getHostnamePattern from RouteCollection

this method is not useful and can introduce inconsistencies when a sub-route has a different hostname, which already has a getter for the hostname
2012-11-15 19:30:36 +01:00
Tobias Schultze
6334343cda [Routing] removed getHostnamePattern from RouteCollection 2012-11-15 19:30:36 +01:00
Sebastiaan Stok
f2cbea3b30 [Security] remove escape charters from username provided by Digest DigestAuthenticationListener 2012-11-15 16:54:04 +01:00
Thomas Tourlourat
82334d2640 Force loader to be null or a EntityLoaderInterface 2012-11-15 16:44:00 +01:00
Vincent Simonin
694697dd91 [Security] Fixed digest authentication
Digest authentication fail if digest parameters contains `=` character or `, ` string.

* Support escaped characters
2012-11-15 16:42:02 +01:00
Vincent Simonin
c067586368 [Security] Fixed digest authentication
Digest authentication fail if digest parameters contains `=` character or `, ` string.
2012-11-15 16:42:01 +01:00
JeÌroÌ‚me Vieilledent
d2920c94a1 Added HttpCache\Store::generateContentDigest() + changed visibility 2012-11-15 14:23:00 +01:00
Victor Berchet
32dc31eceb [SecurityBundle] Convert Http method to uppercase in the config 2012-11-15 08:13:39 +01:00
Fabien Potencier
225e3e53d4 merged branch vicb/acceptheaderfix (PR #6003)
This PR was merged into the master branch.

Commits
-------

f4b630d [HttpFoundation] fix #6002

Discussion
----------

[HttpFoundation] fix #6002

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

by fabpot at 2012-11-13T17:02:45Z

Can you add a test?

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

by Tobion at 2012-11-13T17:04:23Z

hehe see #6004 there is also a test

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

by vicb at 2012-11-13T17:05:06Z

There is a test in the original PR, no need for 6004.

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

by vicb at 2012-11-13T17:05:20Z

Which is why is was failing btw

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

by Tobion at 2012-11-13T17:06:36Z

The test in 6002 did not fail for me without your patch.

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

by fabpot at 2012-11-14T12:47:46Z

@Tobion @vicb What do we do? Just revert #6002 or merge this PR?

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

by vicb at 2012-11-14T13:25:51Z

Merge. Go go go :)

----- Reply message -----
De : "Fabien Potencier" <notifications@github.com>
Pour : "symfony/symfony" <symfony@noreply.github.com>
Cc : "Victor Berchet" <victor@suumit.com>
Objet : [symfony] [HttpFoundation] fix #6002 (#6003)
Date : mer., nov. 14, 2012 13:47
@Tobion @vicb What do we do? Just revert #6002 or merge this PR?

&mdash;

Reply to this email directly or view it on GitHub.

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

by Tobion at 2012-11-14T13:31:22Z

@vicb can you explain what it fixes? As I said, your test does not cover something that would fail without the patch. So I don't see the bug.

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

by vicb at 2012-11-14T15:30:55Z

@Tobion php.net states: The `current()` function simply returns the value of the array element that's currently being pointed to by the internal pointer and `reset()` returns the value of the first array element.

I have no clue what the "element that's currently being pointed to by the internal pointer" in this method so `reset()` is probably what you want.

Validated ?

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

by Tobion at 2012-11-14T16:12:03Z

I agree `reset()` is more explicit here. But `current()` should work just as well in this case because the array pointer can only be at the first item when calling the method. Anyway, this is good to merge. I just hoped there was a unit test that ensures this on my machine. This is why I added the test in my patch. Maybe Fabien can just merge the second commit on #6004

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

by vicb at 2012-11-14T16:20:57Z

As explained in #6004, there is already a test from my first PR that made Travis go red.
2012-11-14 17:48:15 +01:00
Fabien Potencier
2c346cba07 merged branch fabpot/images (PR #6006)
This PR was merged into the master branch.

Commits
-------

9f1cd84 moved most static assets directly into the templates

Discussion
----------

moved most static assets directly into the templates

This has been done for several reasons:

 * for consistency with the way we already manage the WDT and the
   profiler icons;
 * it makes the Exception independent from the location of the assets
   (and from the asset() function)
 * this is the second step to make the WebProfiler useable outside the
   full-stack framework

see dbcd171dd3

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

by stof at 2012-11-13T17:52:39Z

the images blue_picto_more and blue_picto_less are also used in DoctrineBundle (and probably in JMSDebuggingBundle but I haven't checked). Could you submit a PR inlining the images too before removing them ?

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

by fabpot at 2012-11-13T18:02:18Z

Any image useful for other bundles should not be deleted. So, if DoctrineBundle is using the blue_pico_* images, I'm going to revert their deletion.

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

by schmittjoh at 2012-11-13T18:07:02Z

I'm using them in two bundles, JMSDebuggingBundle and JMSJobQueueBundle (same for the exception related templates).

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

by dlsniper at 2012-11-13T22:22:29Z

Wouldn't it be better to have the encoded icons in a separate CSS file as different classes/background images?

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

by fabpot at 2012-11-14T11:28:24Z

ok, I've reverted the removal of the images that might be useful in third-party bundles.
2012-11-14 13:48:11 +01:00
Fabien Potencier
9f1cd84844 moved most static assets directly into the templates
This has been done for several reasons:

 * for consistency with the way we already manage the WDT and the
   profiler icons;
 * it makes the Exception independent from the location of the assets
   (and from the asset() function)
 * this is the second step to make the WebProfiler useable outside the
   full-stack framework

see dbcd171dd3
2012-11-14 12:26:15 +01:00
Tobias Schultze
c865220267 [Routing] fix missing hostname serialization in Route 2012-11-14 00:25:56 +01:00
Victor Berchet
f4b630d1e0 [HttpFoundation] fix #6002 2012-11-13 17:57:35 +01:00
Fabien Potencier
7bfe13c912 merged branch vicb/acceptheader (PR #6002)
This PR was merged into the master branch.

Commits
-------

395c004 [HttpFoundation] Fix AcceptHeader

Discussion
----------

[HttpFoundation] Fix AcceptHeader

The important lines are:

```php
<?php
-        return !empty($this->items) ? current($this->items) : null;
+        return !empty($this->items) ? $this->items[0] : null;
```

(and the corresponding test).

The commit has some code re-org to make reading tests easier (providers defined close the the corresponding test). This might be personal preferences only, let me know if it should be reverted.
2012-11-13 17:35:27 +01:00
Fabien Potencier
ecb963be27 Merge branch '2.1'
* 2.1:
  fixed comment. The parent ACL is not accessed in this method.
  [HttpFoundation] Make host & methods really case insensitive in the RequestMacther
  [Validator] fixed Ukrainian language code (closes #5972)
  Fixed case of php function
2012-11-13 17:29:48 +01:00
Fabien Potencier
2d488b79f2 Merge branch '2.0' into 2.1
* 2.0:
  fixed comment. The parent ACL is not accessed in this method.
  [HttpFoundation] Make host & methods really case insensitive in the RequestMacther
  [Validator] fixed Ukrainian language code (closes #5972)
  Fixed case of php function

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Resources/translations/validators.uk.xliff
	src/Symfony/Component/HttpFoundation/RequestMatcher.php
2012-11-13 17:29:06 +01:00
Victor Berchet
395c00487c [HttpFoundation] Fix AcceptHeader 2012-11-13 17:18:54 +01:00
Fabien Potencier
b126664406 Merge branch '2.1'
* 2.1: (24 commits)
  forced Travis to use source to workaround their not-up-to-date Composer on PHP 5.3.3
  [Routing] removed irrelevant string cast in Route
  Fixed typo
  Make YamlFileLoader and XmlFileLoader file loading extensible
  [HttpKernel] fix typo
  Fixed singularization of "prices"
  [Form] Removed an exception that prevented valid formats from being passed, e.g. "h" for the hour, "L" for the month etc.
  [HttpKernel] fixed Client when using StreamedResponses (closes #5370)
  fixed PDO session handler for Oracle (closes #5829)
  [HttpFoundation] fixed PDO session handler for Oracle (closes #5829)
  [Locale] removed a check that is done too early (and it is done twice anyways)
  Update src/Symfony/Component/Validator/Resources/translations/validators.fa.xlf
  Adding new localized strings for farsi validation.
  [HttpFoundation] moved the HTTP protocol check from StreamedResponse to Response (closes #5937)
  [Form] Fixed forms not to be marked invalid if their children are already marked invalid
  [Form] Excluded some tests in NumberToLocalizedStringTransformerTest which fail on ICU 4.4, but work on ICU 4.8
  added missing tests from previous merge
  [Form] Fixed NumberToLocalizedStringTransformer to accept both comma and dot as decimal separator, if possible
  Fix export-ignore on Windows
  Show correct class name InputArgument in error message
  ...

Conflicts:
	.travis.yml
	src/Symfony/Component/Form/Extension/Core/DataTransformer/NumberToLocalizedStringTransformer.php
2012-11-13 15:08:04 +01:00
Fabien Potencier
83de4c2b02 merged branch fabpot/public-resources (PR #6000)
This PR was merged into the master branch.

Commits
-------

0159358 refactored CSS, images, templates included in the built-in bundles
812b9b1 replace _ in stylesheets (ids and classes) by - (should be consistent across the whole framework now)
983b2b5 uniformized styles
e0aab40 renamed sf-exceptionreset to sf-reset

Discussion
----------

Public resources refactoring

The first 3 commits are just cosmetic ones.

The last one refactors CSS, images, and templates included in the built-in bundles. Right now, everything is tied to the exception pages, but the code can be used standalone.

So, the goal is to make things more decoupled and more reusable across different bundles. That way, a bundle can provide pages that look like the other ones in Symfony without the need to duplicate code.

See the associated PR for the distribution bundle to see an example.

If you want to have a look at the last commit (not sure if it is worth it), you probably want to append ?w=1 to the URL to avoid too much whitespace noise.

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

by pborreli at 2012-11-13T09:38:00Z

congrats ! #6000

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

by fabpot at 2012-11-13T09:38:39Z

A simple usage example:

```jinja
{% extends "TwigBundle::layout.html.twig" %}

{% block body %}
    <div class="block">
        FOOBAR
    </div>
{% endblock %}
```
2012-11-13 14:20:12 +01:00
Fabien Potencier
d45a76b316 merged branch Inori/consistent-util-classes (PR #5879)
This PR was squashed before being merged into the master branch (closes #5879).

Commits
-------

07bd5c6 Make non-instantiable utils classes consistent with each other

Discussion
----------

Make non-instantiable utils classes consistent with each other

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

As per discussion in #5875 turned out that we don't have a consistent way to define non-instantiatable classes.

I don't like `final` as it removes flexibility with no visible gain.
I don't like `abstract` since it's not specifically clear what is meant by that. Is this class not complete? Should it be extended?
2012-11-13 13:58:15 +01:00
Roman Marintsenko
07bd5c6306 Make non-instantiable utils classes consistent with each other 2012-11-13 13:58:14 +01:00
Fabien Potencier
cb00411fc8 merged branch Jola/comment-fix (PR #5992)
This PR was merged into the 2.0 branch.

Commits
-------

b3a8efd fixed comment. The parent ACL is not accessed in this method.

Discussion
----------

fixed comment. The parent ACL is not accessed in this method.

Just fixed a comment on PermissionGrantingStrategy.
hasSufficientPermissions() is not accessing the parent ACL. That's done in isGranted().
2012-11-13 13:50:22 +01:00
Fabien Potencier
15fd24e46d merged branch Tobion/routing-phpdoc (PR #5994)
This PR was merged into the master branch.

Commits
-------

50e41d2 one space too much
5d9a36f small fix and enhancement
1e1cb13 [Routing] added more phpdoc and  replaced 'array of type' by 'Type[]'

Discussion
----------

[Routing] added more phpdoc and  replaced 'array of type' by 'Type[]'

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

by Tobion at 2012-11-12T17:03:01Z

@fabpot you should squash with your great merging tool ;)
2012-11-13 13:49:27 +01:00
Fabien Potencier
0159358a08 refactored CSS, images, templates included in the built-in bundles
The goal is to make things more decoupled and more reusable across
different bundles.

There will be a PR for the distribution bundle too to simplify the code
based on this PR.
2012-11-13 10:20:48 +01:00
Fabien Potencier
812b9b1724 replace _ in stylesheets (ids and classes) by - (should be consistent across the whole framework now) 2012-11-12 18:32:01 +01:00
Fabien Potencier
983b2b5e2a uniformized styles 2012-11-12 18:19:16 +01:00
Fabien Potencier
e0aab4075f renamed sf-exceptionreset to sf-reset 2012-11-12 18:19:16 +01:00
Fabien Potencier
ff9051d19f [TwigBundle] fixed typo 2012-11-12 18:18:57 +01:00
Tobias Schultze
50e41d2c5c one space too much 2012-11-12 18:02:08 +01:00
Tobias Schultze
5d9a36fe42 small fix and enhancement 2012-11-12 18:00:02 +01:00
Tobias Schultze
7569ee2964 [Routing] removed irrelevant string cast in Route
Even if the passed key is an integer, casting to string won't make any difference in array keys (it remains an int key).
2012-11-12 17:54:27 +01:00
Tobias Schultze
1e1cb13faf [Routing] added more phpdoc and replaced 'array of type' by 'Type[]' 2012-11-12 16:14:50 +01:00
Fabien Potencier
226743f8cf merged branch fabpot/code-helpers (PR #5986)
This PR was merged into the master branch.

Commits
-------

56fe8d1 duplicated the code helper code to the Twig bundle

Discussion
----------

moved code helper code to the Twig bundle

These helpers are very specific and are only used in TwigBundle for the
profiler and the exception templates.

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

by schmittjoh at 2012-11-12T09:12:56Z

Is there a reason for this BC break other than a cosmetical tweak?

If not strictly necessary, I'd like to see these kind of changes being scheduled for 3.0.

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

by fabpot at 2012-11-12T09:29:35Z

Of course, I don't want to make this change without a reason and indeed, I forgot to mention the why of this change. Let me explain.

I've been working on the integration of the Symfony web profiler into other OSS that use HttpKernel like Silex and Drupal for quite some time now. That's why I developed the new namespace feature in Twig, that's why I've refactored the web profiler to only use Twig and not the templating component. One of the last step is this PR, which reduces the number of dependencies to be able to use the WebProfiler bundle.

So, this change is not cosmetic, but one more step towards the goal of making the web profiler more reusable.

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

by schmittjoh at 2012-11-12T13:22:28Z

I see, makes sense. How about duplicating the code for now?

After looking through the history, it doesn't seem like it changes often
(the last real code change was a year ago). So, it should not be much more
maintenance effort, and we could keep BC here.

On Mon, Nov 12, 2012 at 10:29 AM, Fabien Potencier <notifications@github.com
> wrote:

> Of course, I don't want to make this change without a reason and indeed, I
> forgot to mention the why of this change. Let me explain.
>
> I've been working on the integration of the Symfony web profiler into
> other OSS that use HttpKernel like Silex and Drupal for quite some time
> now. That's why I developed the new namespace feature in Twig, that's why
> I've refactored the web profiler to only use Twig and not the templating
> component. One of the last step is this PR, which reduces the number of
> dependencies to be able to use the WebProfiler bundle.
>
> So, this change is not cosmetic, but one more step towards the goal of
> making the web profiler more reusable.
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/symfony/symfony/pull/5986#issuecomment-10281201>.
>
>

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

by fabpot at 2012-11-12T13:32:33Z

Of course, that's a possibility. But what for? I doubt that people are using this code. Are you using this code somewhere?

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

by schmittjoh at 2012-11-12T13:37:24Z

Yes, I believe that I'm using it both in JMSDebuggingBundle, and
JMSJobQueueBundle as both are rendering exception stack traces at some
point.

On Mon, Nov 12, 2012 at 2:32 PM, Fabien Potencier
<notifications@github.com>wrote:

> Of course, that's a possibility. But what for? I doubt that people are
> using this code. Are you using this code somewhere?
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/symfony/symfony/pull/5986#issuecomment-10287353>.
>
>

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

by fabpot at 2012-11-12T14:11:50Z

ok, fair enough. The code is now in the framework bundle as well.
2012-11-12 15:15:24 +01:00
Fabien Potencier
56fe8d1ffd duplicated the code helper code to the Twig bundle
The code has been duplicated and not moved for BC reasons.

This code has been duplicated in the Twig bundle to be able to decouple
the web profiler and the exception templates.
2012-11-12 15:07:56 +01:00
Jörn Lang
b3a8efd6cd fixed comment. The parent ACL is not accessed in this method. 2012-11-12 15:01:47 +01:00
Jacob Dreesen
3881649477 Fixed typo
Fixed a small typo in the docblock
2012-11-12 14:58:31 +01:00
Fabien Potencier
966053069d [HttpKernel] fixed some unit tests 2012-11-12 14:30:42 +01:00
Victor Berchet
e12bd123be [HttpFoundation] Make host & methods really case insensitive in the RequestMacther
and backport changes from 2.2
2012-11-12 13:39:12 +01:00
Tobias Schultze
e120a7acba fix API of RouteCollection 2012-11-12 13:06:49 +01:00
Tobias Schultze
26e56842dc some type fixes 2012-11-12 11:54:32 +01:00
Tobias Schultze
514e27a511 [Routing] fix PhpMatcherDumper that returned numeric-indexed params that are returned besides named placeholders by preg_match 2012-11-12 11:54:32 +01:00
Tobias Schultze
7ed3013a5b switch to array_replace instead of array_merge
we don't need the logic to merge numeric keys, as we don't have them. I could also improve the genrated code by PhpMatcherDumper a little by saving a function call.
2012-11-12 11:54:29 +01:00
Tobias Schultze
94ec653818 removed irrelevant string case in XmlFileLoader
getAttribute() always returns a string
2012-11-12 11:35:46 +01:00
Tobias Schultze
9ffe3de642 synchronize the fixtures in different formats and fix default for numeric requirement 2012-11-12 11:35:46 +01:00
Arnaud Le Blanc
6cd34570d7 fixed CS 2012-11-12 11:35:46 +01:00
Arnaud Le Blanc
8366b8ab27 [Routing] fixed validity check for hostname params in UrlGenerator 2012-11-12 11:35:18 +01:00
Arnaud Le Blanc
a8ce6210b3 [Routing] added support for hostname in the apache matcher dumper 2012-11-12 11:35:18 +01:00
Fabien Potencier
562174a822 [Routing] fixed indentation of dumped collections 2012-11-12 11:14:25 +01:00
Fabien Potencier
1489021552 fixed CS 2012-11-12 11:14:25 +01:00
Fabien Potencier
a270458d40 [Routing] added some more unit tests 2012-11-12 11:14:25 +01:00
Fabien Potencier
153fcf2596 [Routing] added some unit tests for the PHP loader 2012-11-12 11:14:25 +01:00
Fabien Potencier
68da6ad292 [Routing] added support for hostname in the XML loader 2012-11-12 11:14:25 +01:00
Fabien Potencier
3dfca47bcd [Routing] added some unit tests for the YAML loader 2012-11-12 11:14:24 +01:00
Fabien Potencier
92f9c1561b [Routing] changed CompiledRoute signature to be more consistent 2012-11-12 11:14:24 +01:00
Fabien Potencier
d91e5a26a2 [Routing] fixed Route annotation for hostname (should be hostname_pattern instead of hostnamePattern) 2012-11-12 11:14:24 +01:00
Fabien Potencier
62de881ddb [Routing] clarified a variable content 2012-11-12 11:14:24 +01:00
Fabien Potencier
11b4378238 [Routing] added hostname support in UrlMatcher 2012-11-12 11:14:24 +01:00
Fabien Potencier
fc015d5227 [Routing] fixed route generation with a hostname pattern when the hostname is the same as the current one (no need to force the generated URL to be absolute) 2012-11-12 11:14:24 +01:00
Arnaud Le Blanc
462999d2d2 [Routing] display hostname pattern in router:debug output 2012-11-12 11:14:24 +01:00
Arnaud Le Blanc
805806a1e8 [Routing] added hostname matching support to UrlGenerator 2012-11-12 11:14:24 +01:00
Arnaud Le Blanc
7a15e006e6 [Routing] added hostname matching support to AnnotationClassLoader 2012-11-12 11:14:24 +01:00
Arnaud Le Blanc
cab450c94e [Routing] added hostname matching support to YamlFileLoader 2012-11-12 11:14:24 +01:00
Arnaud Le Blanc
85d11af880 [Routing] added hostname matching support to PhpMatcherDumper 2012-11-12 11:14:24 +01:00
Arnaud Le Blanc
402359ba9d [Routing] added hostname matching support to RouteCompiler 2012-11-12 11:14:24 +01:00
Arnaud Le Blanc
add3658001 [Routing] added hostname matching support to Route and RouteCollection 2012-11-12 11:14:24 +01:00
Arnaud Le Blanc
23feb37a98 [Routing] added hostname matching support to CompiledRoute 2012-11-12 11:14:24 +01:00
Fabien Potencier
f4c05e3fe8 merged branch samuelwilliams/formDoc (PR #5928)
This PR was squashed before being merged into the master branch (closes #5928).

Commits
-------

6a033f3 setData method also accepts objects. Doc should reflect this.

Discussion
----------

setData method also accepts objects. Doc should reflect this.

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: NA
Todo: None
License of the code: MIT
Documentation PR: None
2012-11-12 10:51:00 +01:00
Sam Williams
6a033f3724 setData method also accepts objects. Doc should reflect this. 2012-11-12 10:50:59 +01:00
Fabien Potencier
8c244e3677 [Routing] updated CHANGELOG 2012-11-12 10:49:09 +01:00
Fabien Potencier
b0994603bb merged branch lyrixx/routing-annot-default-values (PR #5904)
This PR was squashed before being merged into the master branch (closes #5904).

Commits
-------

84adcb1 [2.2][Routing] Added support for default attributes with default values of method params

Discussion
----------

[2.2][Routing] Added support for default attributes with default values of method params

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

With this patch, you can configure your default values likes this:

``` php
/**
 * @Route("/hi/{name}", name="hi")
 */
public function hiAction($name = "Bob")
{
    return new Response($name);
}
```

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

by Tobion at 2012-11-03T23:15:32Z

I'm unsure. How does one know if that param defines a default value or a requirement? It's too vague.

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

by lyrixx at 2012-11-03T23:35:27Z

It's only a default value, not a requirement.
It's just a shortcut to avoid  `defaults={"name"="bob"}`

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

by Tobion at 2012-11-03T23:43:51Z

Yes, but its not clear. It could also be a shortcut to `requirements={"name"="bob"}`, which has totally different meaning. So it's not self-explanatory.
-1 for me.

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

by lyrixx at 2012-11-03T23:48:21Z

it is the default php behavior. It's a default value for a variable...

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

by stof at 2012-11-04T00:22:58Z

@Tobion using the default value of the method to set a requirement does not make any sense. I don't see why someone would expect this behavior

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

by fabpot at 2012-11-06T10:12:05Z

@lyrixx Can you add some unit tests?

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

by Tobion at 2012-11-06T10:28:42Z

Oh I misunderstood the PR. I thought this makes the `name` param default to `hi`. `@Route("/hi/{name}", name="hi")`. But it's just the name of the route. Your example was easy to misinterpret as you used `name` everywhere.

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

by fabpot at 2012-11-10T08:33:13Z

@lyrixx Can you finish this PR?

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

by lyrixx at 2012-11-10T13:16:34Z

@fabpot Yes i will as soon as possible.

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

by lyrixx at 2012-11-10T18:34:07Z

I rebase and amend my commit. (I changed doc in commit message to be less confusing)

I will try to add tests.
But for now, `AnnotationClassLoader::load` is not really tested, and `AnnotationClassLoader::addRoute` is absolutely not tested. So I think I should add tests for these methods ? And then add tests for my patch.
I will try tomorrow.

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

by lyrixx at 2012-11-11T18:23:41Z

@fabpot I added new tests. I tried to made very atomic commits.
2012-11-12 10:46:50 +01:00
Grégoire Pineau
84adcb1c3e [2.2][Routing] Added support for default attributes with default values of method params 2012-11-12 10:46:49 +01:00
Fabien Potencier
dcef601ad4 merged branch dlsniper/stopwatch (PR #5966)
This PR was merged into the master branch.

Commits
-------

bdf0334 Fixed the lap method. Added upgrade notes. Some CS fixes

Discussion
----------

Fixed the lap method. Added upgrade notes. Some CS fixes

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 adds some type-hinting to the Stopwatch components.
I've also split the Section class to its own file, I know it's not a must as per coding standards used by Symfony but it complies with most of the other classes in the framework.
I've updated the UPGRADE-2.2.md file as well.

There's a bug fix which I'm not sure it if should have been done in this branch or not.

Let me know if I should make this PR against an older version of the framework.

Thanks.
2012-11-12 10:43:44 +01:00
Fabien Potencier
a0887224bb merged branch arnaud-lb/apache-dumper (PR #5792)
This PR was merged into the master branch.

Commits
-------

c7a8f7a [Routing] fixed possible parameters conflict in apache url matcher

Discussion
----------

[Routing] fixed possible parameters conflict in apache url matcher

Bug fix: yes
Feature addition: no
Backwards compatibility break: no (as long as rewrite rules are generated after upgrading)
Symfony2 tests pass: yes

- This fixes a conflict in route parameters:

  The rewrite rules currently pass route informations through environment variables:

  `_ROUTING_DEFAULT_x`: passes the default value of parameter x
  `_ROUTING__allow_x`: passes the information that method x was allowed for this route
  `_ROUTING_x`: passes the value of parameter x

  The problem is that naming a route parameter `DEFAULT_*` or `_allow_*` would not behave as expected.

  I fixed this by namespacing all environment variables; e.g. parameters are in `_ROUTING_param_*`, defaults in `_ROUTING_default_*`, etc.

- The PR fixes a second issue: sometimes the variables are prefixed with multiple REDIRECT_. This PR handles this case by ignoring them all.

- This also improves performance a little:

  Matching a route with two parameters and two default parameters 100K times: (`$_SERVER` was copied from a real request, so with many non `_ROUTING_` variables)
  master: 6.6s
  this branch: 4.7s

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

by fabpot at 2012-10-27T13:37:24Z

Any news on this PR? Is it mergeable?

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

by arnaud-lb at 2012-10-27T14:50:08Z

There is an issue with default parameter values, I can't find how to fix that in a simple way. Before this PR, default values are never used (if a parameter is an optional not present in the url, the parameter's value is the empty string); after this PR, when a parameter is present and empty (e.g. a requirement like `.*`), its value is set to its default value.

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

by Tobion at 2012-10-29T01:36:08Z

The problem is, it's not consistent with the default php matcher. So one cannot safely exchange it with the apache matcher because it behaves differently under some (special) circumstances.

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

by fabpot at 2012-11-05T08:05:54Z

We need to move forward as I want to merge the hostname support in the routing ASAP to have plenty of time for feedback before the 2.2 release.

Does it sound reasonable to merge this PR as is an open a ticket about the remaining issue (which should not occur that often anyways)?

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

by arnaud-lb at 2012-11-05T09:22:02Z

@fabpot it sounds reasonable to me. Also, I've the hostname support branch is currently rebased so that it can be merged without this one.

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

by Tobion at 2012-11-11T21:50:20Z

Btw, does the ApacheMatcherDumper handle the _scheme requirement? It doesn't look like it. This would be another bug.
Anyway, we can probably merge this PR and open new issues for the remaining bugs.
2012-11-12 10:36:54 +01:00
Fabien Potencier
0876a19b53 merged branch dbu/make-baseurl-configurable (PR #5983)
This PR was merged into the master branch.

Commits
-------

d0e5ef1 [FrameworkBundle] move change note to changelog of FrameworkBundle instead of master UPGRADE-2.2
e77ecc9 [FrameworkBundle] switch to parameter for base url to make it configurable for tests and cli as done for host and scheme in d30943c2e8

Discussion
----------

[FrameworkBundle] switch to parameter for base url

This will make it configurable the same way we have it for host and scheme done for 2.1 in d30943c2e8

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: (no new test breakage)
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: (none yet. if this is merged, i will happily PR against doc if somebody can point me to the right place)

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

by dbu at 2012-11-11T18:44:33Z

doc will go here once its merged: http://symfony.com/doc/current/cookbook/console/generating_urls.html

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

by dbu at 2012-11-11T20:12:41Z

ok, moved to the FrameworkBundle changelog

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

by Tobion at 2012-11-11T20:34:28Z

unfortunately is naming is so wrong in many places of the Request class and the routing.
`base_url` is just an example. It's not an "URL" at all. It's a path only.

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

by dbu at 2012-11-12T07:47:55Z

@Tobion i saw that, but i chose to be consistent with the method name of RequestContext even if it is a wrong name.
2012-11-12 10:31:26 +01:00
Fabien Potencier
99ee736b2b merged branch vicb/httpkernel/tests (PR #5985)
This PR was merged into the master branch.

Commits
-------

e32ca2b [HttpKernel] Fix Symfony2 full framework tests

Discussion
----------

[HttpKernel] Fix Symfony2 full framework tests

Fix the path when the full framework is used

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

by fabpot at 2012-11-12T09:08:06Z

When is it broken?

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

by vicb at 2012-11-12T09:18:01Z

now, https://travis-ci.org/symfony/symfony/jobs/3159326
2012-11-12 10:30:29 +01:00
Victor Berchet
e32ca2b827 [HttpKernel] Fix Symfony2 full framework tests 2012-11-12 09:34:19 +01:00
David Buchmann
d0e5ef1355 [FrameworkBundle] move change note to changelog of FrameworkBundle instead of master UPGRADE-2.2 2012-11-11 21:12:12 +01:00
David Buchmann
e77ecc95de [FrameworkBundle] switch to parameter for base url to make it configurable for tests and cli as done for host and scheme in d30943c2e8 2012-11-11 19:27:43 +01:00
Victor Berchet
2972f3142c [HttpKernel] Changlog update - document a BC break 2012-11-11 18:39:27 +01:00
Igor Wiedler
c659e7858a Make YamlFileLoader and XmlFileLoader file loading extensible
By changing visibility to protected it becomes possible to extend the
loader and cache file contents. phpBB needs this.
2012-11-11 12:59:36 +01:00
Fabien Potencier
b337655feb merged branch vicb/stopwatch (PR #5970)
This PR was squashed before being merged into the master branch (closes #5970).

Commits
-------

d0433b6 [Stopwatch] Get the "real size" used & minor tweaks

Discussion
----------

[Stopwatch] Get the "real size" used & minor tweaks

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

by vicb at 2012-11-11T09:45:50Z

@fabpot @maoueh thanks for your feedback, integrated.
2012-11-11 11:18:42 +01:00
Victor Berchet
d0433b69aa [Stopwatch] Get the "real size" used & minor tweaks 2012-11-11 11:18:42 +01:00
Victor Berchet
f9e8465d1b [HttpKernel] Changelog update 2012-11-11 11:07:37 +01:00
Florin Patan
02315a0b91 Removed duplicate line 2012-11-11 01:16:13 +02:00
Florin Patan
bdf0334434 Fixed the lap method. Added upgrade notes. Some CS fixes 2012-11-10 22:20:20 +02:00
Fabien Potencier
262049b412 merged branch vicb/fmwkrouter (PR #5971)
This PR was merged into the master branch.

Commits
-------

fc300ec [FrameworkBundle] Router class tweak

Discussion
----------

[FrameworkBundle] Router class tweak
2012-11-10 19:58:38 +01:00
Fabien Potencier
228c9e6613 merged branch vicb/memory (PR #5973)
This PR was merged into the master branch.

Commits
-------

4c0c588 [MemoryDataCollector] Stop being optimistic about memory usage

Discussion
----------

[MemoryDataCollector] Stop being optimistic about memory usage

Take into account the memory used in the kernel.terminate listeners
2012-11-10 19:56:21 +01:00
Fabien Potencier
15a5868ab4 [Validator] fixed Ukrainian language code (closes #5972) 2012-11-10 19:51:50 +01:00
Fabien Potencier
c184613dcd fixed typo 2012-11-10 19:43:32 +01:00
Fabien Potencier
061421b3b5 fixed typo 2012-11-10 19:41:36 +01:00
Victor Berchet
4c0c588a68 [MemoryDataCollector] Stop being optimistic about memory usage
Take into account the memory used in the kernel.terminate listeners
2012-11-10 17:53:14 +01:00
Victor Berchet
fc300ecda1 [FrameworkBundle] Router class tweak 2012-11-10 17:18:12 +01:00
Tobias Schultze
8e6224840e [HttpKernel] fix typo 2012-11-10 11:47:17 +01:00
Fabien Potencier
e621b6f169 fixed wrong merge 2012-11-10 09:21:13 +01:00
Fabien Potencier
2a156cf9f4 merged branch fabpot/tests-in-components (PR #5958)
This PR was merged into the master branch.

Commits
-------

b27b749 made usage of Composer autoloader for subtree-split unit tests

Discussion
----------

made usage of Composer autoloader for subtree-split unit tests

This PR also normalizes the way components are tested.

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

by stof at 2012-11-09T23:14:22Z

ðŸ‘
2012-11-10 09:20:22 +01:00
Fabien Potencier
5bdf8cbaf9 merged branch fabpot/client-streamed-response (PR #5961)
This PR was merged into the 2.1 branch.

Commits
-------

84b760b [HttpKernel] fixed Client when using StreamedResponses (closes #5370)

Discussion
----------

[HttpKernel] fixed Client when using StreamedResponses (closes #5370)
2012-11-10 09:18:00 +01:00
pvanliefland
92849480d3 Fixed singularization of "prices" 2012-11-10 09:15:15 +01:00
Fabien Potencier
a288521204 displayed the full event listener names to avoid name collisions (closes #5019) 2012-11-09 17:27:53 +01:00
Bernhard Schussek
0f75586248 [Form] Removed an exception that prevented valid formats from being passed, e.g. "h" for the hour, "L" for the month etc. 2012-11-09 17:22:53 +01:00
Fabien Potencier
84b760b923 [HttpKernel] fixed Client when using StreamedResponses (closes #5370) 2012-11-09 16:49:48 +01:00
Fabien Potencier
ae61d354c9 merged branch fabpot/response-protocol (PR #5954)
This PR was merged into the 2.1 branch.

Commits
-------

e34fb41 [HttpFoundation] moved the HTTP protocol check from StreamedResponse to Response (closes #5937)

Discussion
----------

[HttpFoundation] moved the HTTP protocol check from StreamedResponse to Response (closes #5937)
2012-11-09 15:00:29 +01:00
matt foster
c2a8a0b8bd [HttpFoundation] fixed PDO session handler for Oracle (closes #5829) 2012-11-09 14:44:15 +01:00
Fabien Potencier
b27b749025 made usage of Composer autoloader for subtree-split unit tests 2012-11-09 14:10:06 +01:00
Fabien Potencier
a30383d12c [Locale] removed a check that is done too early (and it is done twice anyways) 2012-11-09 13:55:40 +01:00
Bilal Amarni
84635bda7f [Form] allowed no type guesser to be registered 2012-11-09 13:51:19 +01:00
Pascal Borreli
235250e192 Fixed case of php function 2012-11-09 10:41:41 +00:00
Fabien Potencier
6b54a51963 moved the Stopwatch classes to their own component 2012-11-09 10:08:25 +01:00
Fabien Potencier
dd23f6c418 merged branch gajdaw/gitattributes-windows (PR #5938)
This PR was merged into the 2.1 branch.

Commits
-------

646a714 Fix export-ignore on Windows

Discussion
----------

Fix export-ignore on Windows

Rules:

    Tests/ export-ignore

don't work on Windows. My proposition is:

    /Tests export-ignore
2012-11-09 09:52:51 +01:00
Hossein Zolfi
275f0946c2 Update src/Symfony/Component/Validator/Resources/translations/validators.fa.xlf
Adding missed localized string.
2012-11-09 09:49:39 +01:00
Hossein Zolfi (Ocean)
8377146ded Adding new localized strings for farsi validation. 2012-11-09 09:49:39 +01:00
Fabien Potencier
e34fb4172c [HttpFoundation] moved the HTTP protocol check from StreamedResponse to Response (closes #5937) 2012-11-09 08:57:59 +01:00
Fabien Potencier
178a73633c merged branch bschussek/issue4359 (PR #5947)
This PR was merged into the 2.1 branch.

Commits
-------

4909bc3 [Form] Fixed forms not to be marked invalid if their children are already marked invalid

Discussion
----------

[Form] Fixed forms not to be marked invalid if their children are already marked invalid

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

This PR prevents unsynchronized forms from being marked invalid if any of their children is also unsynchronized (and thus also marked invalid). Displaying an invalid message twice does not help the user and, if used in conjunction with error bubbling, may lead to duplicate errors (see #4359).
2012-11-09 07:55:23 +01:00
Fabien Potencier
c290776b45 merged branch fabpot/stopwatch (PR #5944)
This PR was merged into the master branch.

Commits
-------

380cf4f [HttpKernel] added memory information in the Stopwatch

Discussion
----------

[HttpKernel] added memory information in the Stopwatch
2012-11-09 07:37:03 +01:00
Fabien Potencier
380cf4f5ec [HttpKernel] added memory information in the Stopwatch 2012-11-09 07:36:10 +01:00
sun
d231b8f16e [ClassLoader] Make ApcClassLoader properly decorate ClassLoader. 2012-11-09 03:26:39 +01:00
Bernhard Schussek
4909bc34b3 [Form] Fixed forms not to be marked invalid if their children are already marked invalid 2012-11-08 19:36:31 +01:00
Fabien Potencier
3d6ca62744 Merge branch '2.0' into 2.1
* 2.0:
  [Form] Excluded some tests in NumberToLocalizedStringTransformerTest which fail on ICU 4.4, but work on ICU 4.8
2012-11-08 18:38:21 +01:00
Fabien Potencier
9c38e768d9 added missing tests from previous merge 2012-11-08 18:03:02 +01:00
Fabien Potencier
e425f6cf9a Merge branch '2.0' into 2.1
* 2.0:
  [Form] Fixed NumberToLocalizedStringTransformer to accept both comma and dot as decimal separator, if possible
  Show correct class name InputArgument in error message
  shows correct class name InputOption in error message
  The exception message should say which field is not mapped
  [HttpFoundation] Fix name sanitization after perfoming move
  Add check to Store::unlock to ensure file exists

Conflicts:
	src/Symfony/Bridge/Doctrine/Validator/Constraints/UniqueEntityValidator.php
	src/Symfony/Component/HttpFoundation/File/UploadedFile.php
	tests/Symfony/Tests/Component/Console/Input/InputArgumentTest.php
	tests/Symfony/Tests/Component/Console/Input/InputOptionTest.php
	tests/Symfony/Tests/Component/Form/Extension/Core/DataTransformer/NumberToLocalizedStringTransformerTest.php
	tests/Symfony/Tests/Component/HttpFoundation/File/FileTest.php
	tests/Symfony/Tests/Component/HttpKernel/HttpCache/StoreTest.php
2012-11-08 18:02:05 +01:00
Bernhard Schussek
c16d6bf611 [Form] Fixed NumberToLocalizedStringTransformer to throw an exception if numbers contain illegal characters 2012-11-08 17:14:44 +01:00
Bernhard Schussek
dc80385070 [Form] Fixed NumberToLocalizedStringTransformer to accept both comma and dot as decimal separator, if possible 2012-11-08 15:53:08 +01:00
WÅ‚odzimierz Gajda
646a714ded Fix export-ignore on Windows 2012-11-08 10:51:48 +01:00
Fabien Potencier
f307ef7637 [Security] updated CHANGELOG 2012-11-08 09:10:55 +01:00
Fabien Potencier
224d6b7925 Merge branch '2.1'
* 2.1:
  [FrameworkBundle] Router skip defaults resolution for arrays

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Routing/Router.php
2012-11-07 07:48:28 +01:00
Jeremy Mikola
ded3a8301a [HttpFoundation] Document MongoDbSessionHandler changes 2012-11-06 14:55:32 -05:00
Antoine Hérault
208e134945 [FrameworkBundle] Router skip defaults resolution for arrays 2012-11-06 16:30:03 +01:00
Fabien Potencier
4f1547a811 merged branch fabpot/subscribers (PR #5919)
This PR was merged into the master branch.

Commits
-------

af87c2b changed the Firewall to be a proper subscriber
02bd359 changed the remember-me listener to be a proper subscriber

Discussion
----------

Changed some security classes to implement the EventSubscriberInterface interface

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

by fabpot at 2012-11-06T10:11:28Z

That could also be done in 2.1. What do you think?
2012-11-06 15:23:29 +01:00
Fabien Potencier
c2b70116c2 fixed typo 2012-11-06 12:11:11 +01:00
Fabien Potencier
f3acc069cd merged branch nicoschwartz/translation_transchoice_float_support (PR #5890)
This PR was merged into the master branch.

Commits
-------

55a0fef Float support added for transchoice in the Translation Component

Discussion
----------

Float support added for transchoice in the Translation Component

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

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

by pborreli at 2012-11-01T23:22:50Z

👠nice PR
2012-11-06 11:13:36 +01:00
Fabien Potencier
af87c2b00b changed the Firewall to be a proper subscriber 2012-11-06 11:06:32 +01:00
Fabien Potencier
02bd35905e changed the remember-me listener to be a proper subscriber 2012-11-06 11:02:24 +01:00
Jeremy Mikola
1d3ecd373f Revise Mongo session storage
* Default to _id for storing session ID
 * Use MongoDate instead of MongoTimestamp (BC break)
 * Rename default field names ("sess_" is redundant)
 * "justOne" is redundant for session removal
 * Assert true return values in method tests
 * Add note about TTL collections for gc()
 * Don't set identifier in upsert (invalid behavior)
2012-11-06 10:46:54 +01:00
Fabien Potencier
f32395af69 merged branch fabpot/401-status-code (PR #5882)
This PR was merged into the master branch.

Commits
-------

e193590 [Security] removed the 401 error custom status message

Discussion
----------

[Security] removed the 401 error custom status message

see fabpot/Silex#496

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

by pborreli at 2012-10-31T17:29:24Z

@fabpot please fix the test suite, if you don't know how to do it, read http://symfony.com/doc/current/contributing/code/tests.html, thx 😸
2012-11-06 09:23:46 +01:00
Fabien Potencier
e67893984c merged branch alias-mac/ticket_5897 (PR #5907)
This PR was merged into the master branch.

Commits
-------

73bb47b [Console] Fix #5897 - Console component require Shell component

Discussion
----------

[Console] Fix #5897 - Console component require Shell component

When setting the process isolation of a shell to true:
`setProcessIsolation(true)` throw a `\RuntimeException` if the Process component isn't available.

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

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

by alias-mac at 2012-11-04T17:07:59Z

I noticed that there is no Unit Testing for the Shell class. Shall I create one with the test for this fix/bug request?

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

by alias-mac at 2012-11-06T01:58:40Z

Updated based on @stof comments.

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

by alias-mac at 2012-11-06T02:11:20Z

The travis-ci build failure as nothing to do with the code. See:
https://travis-ci.org/#!/symfony/symfony/jobs/3076345
2012-11-06 09:19:04 +01:00
Fabien Potencier
e19359060f [Security] removed the 401 error custom status message 2012-11-06 09:15:19 +01:00
Filipe Guerra
73bb47b6c5 [Console] Fix #5897 - Console component require Shell component
When setting the process isolation of a shell to true:
`setProcessIsolation(true)` throw a `\RuntimeException` if the Process component isn't available.
2012-11-06 02:56:20 +01:00
Pablo Godel
9aec4c8d04 Show correct class name InputArgument in error message 2012-11-05 14:52:03 -05:00
Fabien Potencier
53fad04f3e merged branch jfsimon/accept-header-parsing (PR #5841)
This PR was squashed before being merged into the master branch (closes #5841).

Commits
-------

6b601bd [http-foudation] Better accept header parsing

Discussion
----------

[http-foudation] Better accept header parsing

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

**Quality:**
The special `q` item attribute represents its quality. I had to make some choices:
*  if I set `q` attribute, it's assigned to quality property, but not to attributes
*  the `__toString()` method only render `q` attribute if quality is less than 1

**BC break:**
The return of `Request::splitHttpAcceptHeader()` has changed. It's result was an array of qualities indexed by an accept value, it now returns an array of `AcceptHeaderItem` indexed by its value.

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

by jfsimon at 2012-10-26T08:35:55Z

As dicussed in https://github.com/symfony/symfony/pull/5711.

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

by Seldaek at 2012-10-27T10:35:49Z

Maybe you can pull 5e8a5267f6 into your branch (for some reason I can't send a PR to your repo, it doesn't show up in github's repo selector.. looks like they don't like projects with too many forks). It allows you to use usort() which hopefully is faster than your merge sort, though I did not bench it. I also added tests to confirm the functionality.

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

by Seldaek at 2012-10-27T10:40:27Z

Sorry please check 376dd93c56 instead, I missed a few tests in the RequestTest class.

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

by jfsimon at 2012-10-29T16:26:03Z

@fabpot do you think the introduced BC break is acceptable?

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

by fabpot at 2012-10-29T16:37:06Z

@jfsimon Are all getAccept*() method BC?

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

by jfsimon at 2012-10-29T16:39:26Z

@fabpot nope, just `Request::splitHttpAcceptHeader()`

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

by jfsimon at 2012-10-29T16:43:18Z

@fabpot I think missunderstood... only `Request::splitHttpAcceptHeader()` breaks BC.

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

by fabpot at 2012-10-29T16:53:22Z

So, a BC break on just splitHttpAcceptHeader is possible... but should be documented properly. Another option would be to deprecate the current method (and keep it as is), and just use the new version everywhere. Sounds better as it won"t introduce any BC breaks.

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

by jfsimon at 2012-10-29T16:55:57Z

@fabpot Okay, I'll update this PR according to your second option.

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

by jfsimon at 2012-10-29T20:14:46Z

@fabpot done.

As you can see here: https://github.com/symfony/symfony/pull/5841/files#L5L1029 value returned by `Request::splitHttpAcceptHeader()` is not **exactly** the same as before because all attributes are present (not only those before the `q` one).

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

by fabpot at 2012-10-30T06:16:23Z

The last thing missing before I can merge is a PR to update the documentation (should probably be just a note somewhere with the example you have in the UPGRADE file).

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

by jfsimon at 2012-10-30T07:07:08Z

@fabpot I could add this example here: http://symfony.com/doc/current/components/http_foundation/introduction.html#request after `Accessing the session`, what do you think?

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

by fabpot at 2012-10-30T07:14:10Z

Yes, looks good to me.
2012-11-05 12:25:18 +01:00
Jean-François Simon
6b601bd9a6 [http-foudation] Better accept header parsing 2012-11-05 12:25:18 +01:00
Fabien Potencier
275cf8cf00 removed unused use statements 2012-11-04 09:30:21 +01:00
Fabien Potencier
21cb792607 Merge branch '2.1'
* 2.1:
  removed unused use statements
  [Form] Adapted HTML5 format in DateTimeType as response to a closed ICU ticket
  [2.1][HttpFoundation] Fixed Php doc in Request::get
  bumped Symfony version to 2.1.4-DEV
  updated VERSION for 2.1.3
  update CONTRIBUTORS for 2.1.3
  updated CHANGELOG for 2.1.3
  merged branch jakzal/yamlDoubleQuotesDumperFix (PR #4320)

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
2012-11-04 09:29:56 +01:00
Fabien Potencier
3d99374014 removed unused use statements 2012-11-04 09:29:19 +01:00
Pablo Godel
762649f5c3 shows correct class name InputOption in error message 2012-11-03 23:51:02 -04:00
Fabien Potencier
313e4e5fd6 merged branch lyrixx/fix-request-get (PR #5894)
This PR was merged into the 2.1 branch.

Commits
-------

b9f6cac [2.1][HttpFoundation] Fixed Php doc in Request::get

Discussion
----------

[2.1][HttpFoundation] Fixed Php doc in Request::get

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

According to php code, `Request::get` method does not seek in cookies.

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

by pborreli at 2012-11-02T11:02:26Z

your PR is full of reSquest typo :)

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

by lyrixx at 2012-11-02T11:25:31Z

@pborreli Fixed
2012-11-02 19:00:55 +01:00
Bernhard Schussek
a0af8bfb5b [Form] Adapted HTML5 format in DateTimeType as response to a closed ICU ticket 2012-11-02 14:54:19 +01:00
Grégoire Pineau
b9f6cac033 [2.1][HttpFoundation] Fixed Php doc in Request::get 2012-11-02 12:13:22 +01:00
Nicolas Schwartz
55a0fef233 Float support added for transchoice in the Translation Component 2012-11-01 23:19:52 +01:00
Samy Dindane
b5506777ea [Finder] Fix the BSD adapter 2012-11-01 15:42:22 +01:00
Jean-François Simon
24012743b8 [Finder] Added bsd adapter (need tests). 2012-10-30 20:49:01 +01:00
Fabien Potencier
297e00afb4 bumped Symfony version to 2.1.4-DEV 2012-10-30 10:44:33 +01:00
Fabien Potencier
fd36aa0605 updated VERSION for 2.1.3 2012-10-30 09:14:14 +01:00
Fabien Potencier
f61457d82b [Finder] updated CHANGELOG 2012-10-30 07:06:51 +01:00
Jean-François Simon
4e21bf273d [Finder] Added path & notPath support to gnu find adapter. 2012-10-29 19:57:16 +01:00
Jean-François Simon
6258d1203b [Finder] Fixed expression classes. 2012-10-29 19:56:47 +01:00
Jean-François Simon
5c6dbebf04 [Finder] Fixed tests. 2012-10-29 19:55:27 +01:00
WÅ‚odzimierz Gajda
c36dfc16e6 [Component][Finder] ->path(), ->notPath() methods (with basic tests) 2012-10-29 18:19:41 +01:00
Fabien Potencier
2a23dbdeb6 [HttpKernel] fixed some broken tests 2012-10-29 18:07:35 +01:00
Ben Ramsey
4e826c7486 [HttpKernel] added some more HTTP exceptions 2012-10-29 17:11:00 +01:00
Fabien Potencier
c4c5d3c02d merged branch jakzal/yamlDoubleQuotesDumperFix (PR #4320)
Commits
-------

b631073 [Yaml] Fixed double quotes escaping in Dumper.

Discussion
----------

[Yaml] Fixed double quotes escaping in Dumper

Issue #4308 is caused by Dumper::escapeWithDoubleQuotes() which uses [str_replace()](http://php.net/str_replace).

From the php docs:

> Because str_replace() replaces left to right, it might replace a previously inserted value when doing multiple replacements.

We should be very careful in deciding about the order of elements in $escapees array. I'd really appreciate if someone reviewed my fix. Tests say I didn't break anything but I'm not sure what percentage of Yaml specification is covered by tests.

Bug fix: yes
Feature addition: no
Backwards compatibility break: not that I know
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/jakzal/symfony.png?branch=yamlDoubleQuotesDumperFix)](http://travis-ci.org/jakzal/symfony)
Fixes the following tickets: #4308

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

by travisbot at 2012-05-18T08:53:51Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1364279) (merged 5192722c into a04acc89).

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

by travisbot at 2012-05-18T23:19:49Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1371539) (merged ecaa1aab into fc3c609b).

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

by dinamic at 2012-05-19T07:35:21Z

Something is really wrong with this method. You can see clearly that multiple characters would fail proper escaping.

Here's an example:
```
$value = '\\\\"some value\n \"some quoted string\" and \'some single quotes one\'"';
var_dump(Escaper::escapeWithDoubleQuotes($value));
string(72) ""\\\"some value\n \\some quoted string\\ and 'some single quotes one'\"""
```

To begin with the backslash - in the initial value you have 2 (escaped ones), that after escaping should result in 4, not in 1 (escaped). I guess this behavior has to be verified with the importer, but imho it does not seem right.

Does anyone know why this escaping wasn't done using a regular expression in first place?

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

by clemens-tolboom at 2012-05-19T10:18:58Z

Searching for https://duckduckgo.com/?q=what+is+\xc2\x85 the table on http://stackoverflow.com/questions/6609895/efficiently-replace-bad-characters is interesting enough to decide we need way more documentation on this file.

\xc2\x85 seems to be triple dot (ellipses)
\xe2\x80\xa9 seems to be paragraph separator see http://drupal.org/node/914360#comment-3468550

Conflicts:
	src/Symfony/Component/Yaml/Escaper.php
2012-10-29 12:15:41 +01:00
Fabien Potencier
7322696378 merged branch niklasf/binary-file-response (PR #4546)
This PR was merged into the master branch.

Commits
-------

2f7bbbf [HttpFoundation] Added BinaryFileResponse.

Discussion
----------

[2.2] [HttpFoundation] Added BinaryFileResponse.

Another stab at #3602, based on @stealth35's code at https://gist.github.com/1472230.

- Move things around a little, clean things up, looking how it has been done in StreamedResponse.
- Add tests.
- Make functions chainable.
- Add a flag whether or not to trust the X-Sendfile-Type header.

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

by Partugal at 2012-06-10T19:56:43Z

What about support X-Accel-Redirect (nginx)?

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

by niklasf at 2012-06-10T20:41:10Z

@Partugal: So we support X-Sendfile-Type to pick the X-Sendfile header. What else would be needed to support X-Accel-Redirect (which we should definitely do)?

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

by Partugal at 2012-06-10T21:29:41Z

@niklasf Because nginx not use full file path, this need X-Accel-Mapping header (http://rack.rubyforge.org/doc/Rack/Sendfile.html)

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

by niklasf at 2012-06-10T22:45:38Z

@Partugal: Alright. Doing such a substitution now. Also added a test for that.

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

by stealth35 at 2012-06-11T07:47:35Z

I think the MIME should be base on the extensions map, for an example with `xlsx` that send an `application/zip` or a `xlsx` file MIME is `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`

Client to server : Reverve MIME => libmagic
Server to client : MIME => MIME map

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

by niklasf at 2012-06-11T14:40:00Z

@partugal: Thanks! Also added tests. Any e-mail you want to have in your credits?

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

by niklasf at 2012-06-11T14:41:39Z

@stealth35: Yeah ... makes sense. How would I get that information?

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

by stealth35 at 2012-06-11T14:47:36Z

use the `Symfony\Component\HttpFoundation\File\Mimetype\MimeTypeExtensionGuesser` it's the same map as Apache
and if the extension don't exists use `$this->getMimeType` and finaly `application/octet-stream`

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

by Partugal at 2012-06-11T15:46:41Z

@niklasf Thanks you for your work
If needed you may use linniksa@gmail.com

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

by niklasf at 2012-06-14T10:58:19Z

@stealth35: Sorry. I have to ask again.
 - So the first step would be using the map in `MimeTypeExtensionGuesser`? I don't see how I can access that, because the `guess()` method it has, is for guessing extensions from mime types, not the reverse.
 - Then, by `$this->getMimeType` you mean the getMimeType() method of the file? Sounds good.
 - `application/octet-stream` as the fallback. Alright.

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

by stealth35 at 2012-06-14T11:00:33Z

Yeah sorry `MimeTypeExtensionGuesser` is for getting an extension with the Mime, forget about this, i'll take care aboute all MIME intégration later

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

by niklasf at 2012-06-14T13:12:22Z

@stealth35: Awesome. Thanks a lot.

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

by jalliot at 2012-08-07T20:53:54Z

@niklasf You should backport the changes from 532334d23d and 3f51bc0a3d

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

by niklasf at 2012-08-07T21:07:10Z

@jalliot Thanks. Fixed.
2012-10-29 11:57:31 +01:00
Fabien Potencier
0f5af869c8 merged branch jfsimon/issue-5851 (PR #5859)
This PR was merged into the master branch.

Commits
-------

2817a47 [Finder] Fixed filename containing space bug in gnu adapter.
9bf7cb0 [Finder] Added filename containing space to tests.

Discussion
----------

[Finder] Fixed filename containing space bug in gnu find adapter.

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

`GNU find` adapter now uses `cut` instead of `awk`.
2012-10-29 09:27:03 +01:00
Jean-François Simon
2817a47367 [Finder] Fixed filename containing space bug in gnu adapter. 2012-10-29 08:03:45 +01:00
Jean-François Simon
9bf7cb0941 [Finder] Added filename containing space to tests. 2012-10-29 07:51:09 +01:00
Pascal Borreli
a7ce6be3f8 Fixed typos 2012-10-28 23:25:34 +00:00
Miha Vrhovnik
6b42c8cc04 The exception message should say which field is not mapped 2012-10-28 23:16:09 +01:00
Fabien Potencier
9681973676 merged branch acasademont/tweak_userform_security_listener (PR #5824)
This PR was merged into the master branch.

Commits
-------

3e58893 [Security] Tweak UsernamePasswordFormAuthenticationListener

Discussion
----------

[Security] Tweak UsernamePasswordFormAuthenticationListener

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/acasademont/symfony.png)](http://travis-ci.org/acasademont/symfony)
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -

Improvements:

- Do not check twice for the ```only_post``` condition. The condition in the ```attemptAuthentication``` method is useless as this method will never be called if the previous ```requiresAuthentication``` call returns false.
- If the expected request is ```only_post```, check only the POST variables for the username and password parameters. Otherwise, query params and attributes are checked before.
- Use POST instead of post for correctness
2012-10-28 10:19:54 +01:00
Fabien Potencier
1f1beb1ceb [Security] fixed tests when OpenSSL is not installed 2012-10-28 09:01:53 +01:00
Fabien Potencier
d21584ec68 merged branch fabpot/prng (PR #4763)
This PR was merged into the master branch.

Commits
-------

aecc9b1 fixed tests when OpenSsl is not enabled in PHP, renamed a missnamed test, added missing license doc blocks
ca567b5 fixed CS
5cdf696 added a SecureRandomInterface
234f725 rename String to StringUtils
5849855 moved the secure random dep for remember me as a constructor argument
248703f renamed Prng to SecureRandom
c0c8972 simplified the Prng code
e5dc7af moved the secure random class from JMSSecurityExtraBundle to Symfony (closes #3595)

Discussion
----------

[2.2][Security] Add a PRNG (closes #3595)

As per #3595, I have moved the secure random class from JMSSecurityExtraBundle to Symfony.

It has more impact than I expected ;)

As you will see, the implementation has been refactored a bit. The most notable change is that Doctrine support has been moved to the bridge with the addition of a proper Doctrine seed provider (Doctrine is not a special case anymore).

The Doctrine configuration has been moved to the DoctrineBundle: doctrine/DoctrineBundle#91

schmittjoh/JMSSecurityExtraBundle#65 removes the code that has been moved.

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

by Seldaek at 2012-07-05T13:26:01Z

I'm all for more security features, and both the String class & the Prng class for wrapping openssl make a lot of sense IMO, but I fail to see the use of the rest.

If we just want a seed to have a fallback in case openssl is missing, I'd rather have a secret in the config.yml than a million classes to store the same secret in the DB. Maybe I'm missing something though? /cc @schmittjoh

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

by schmittjoh at 2012-07-05T16:32:10Z

Having the configuration in different places (SecurityBundle & DoctrineBundle) feels a bit weird. I would prefer an approach similar to ACL, or the user provider/firewall section with factories. The latter being a bit more work to implement and the former potentially asking for complaints about too tight coupling to Doctrine.

Regarding testing, we probably need to move the disableOpenSsl method to the SecureRandom class in order to allow OpenSSL to be disabled for testing and we also need to change the byte generation algorithm to produce the same output for the same starting seed. I agree that it does not make sense to introduce an interface for SecureRandom as only the seed providers should be replaced.

As for the seed itself, it is constantly updated and does not stay the same as in the beginning. Thus, we need a provider that we can write to, and not only read from. I'm also not sure about using OpenSSL on Windows as I have read enough resources which claimed that the entropy on Windows is not always good (including OpenSSL docs). Always using the custom seed provider at least always ensured proper entropy even if OpenSSL's speed issues have been fixed in newer PHP versions.

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

by stof at 2012-07-05T16:44:24Z

@schmittjoh everything is in SecurityBundle now as it does not use a database anymore

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

by stof at 2012-07-05T16:44:59Z

and there is no seed provider anymore either

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

by schmittjoh at 2012-07-05T16:53:39Z

Not having a seed provider is not such a good idea, but having a file-based seed provider is.

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

by Seldaek at 2012-07-05T17:01:18Z

@schmittjoh why would you need to replace the seed provider? Don't you think that people serious about security to the point that they would want a stronger seed provider would enable openssl instead?

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

by stof at 2012-07-05T17:06:50Z

Well, what I meant is that there is no interchangeable provider anymore. The Prng class uses the file directly.

And btw, I think the Prng class should be mockable for tests, so it should either have an interface or not be final (I vote for adding an interface)

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

by jalliot at 2012-07-09T18:46:12Z

@fabpot @schmittjoh What about using more fallbacks for `openssl_random_pseudo_bytes` like in @Seldaek's post ["Unpredictable hashes for humans"](http://seld.be/notes/unpredictable-hashes-for-humans)?
Trying `mcrypt_create_iv` first might also be faster.

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

by Seldaek at 2012-07-10T08:52:46Z

@jalliot I think mcrypt should be after if you make it use /dev/urandom, not 100% sure but openssl is probably higher quality than urandom.

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

by schmittjoh at 2012-07-10T09:12:07Z

The fallback algorithm that I added should be enough (it passes the
statistical randomness tests).

On Tue, Jul 10, 2012 at 10:52 AM, Jordi Boggiano <
reply@reply.github.com
> wrote:

> @jalliot I think mcrypt should be after if you make it use /dev/urandom,
> not 100% sure but openssl is probably higher quality than urandom.
>
> ---
> Reply to this email directly or view it on GitHub:
> https://github.com/symfony/symfony/pull/4763#issuecomment-6870145
>

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

by stof at 2012-10-13T17:20:06Z

@fabpot please send a PR to the doc so that this can be merged 😃

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

by stof at 2012-10-13T17:22:08Z

hmm, actually, some comments have not been taken into account yet so it is not ready to be merged

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

by stof at 2012-10-27T07:14:43Z

you forgot the SecureRandom file

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

by fabpot at 2012-10-27T08:49:54Z

I think I've addressed all the comments. If everyone agree with the current implementation, I'm going to start updating the documentation.

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

by fabpot at 2012-10-27T10:51:15Z

I've fixed the remaining CS issues.

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

by fabpot at 2012-10-28T07:00:31Z

Documentation is here: symfony/symfony-docs#1858
2012-10-28 08:10:00 +01:00
Fabien Potencier
aecc9b12a3 fixed tests when OpenSsl is not enabled in PHP, renamed a missnamed test, added missing license doc blocks 2012-10-28 08:06:38 +01:00
Fabien Potencier
ca567b5109 fixed CS 2012-10-28 08:06:38 +01:00
Fabien Potencier
5cdf696bde added a SecureRandomInterface 2012-10-28 08:06:38 +01:00
Fabien Potencier
234f7255bb rename String to StringUtils 2012-10-28 08:06:37 +01:00
Fabien Potencier
5849855eb9 moved the secure random dep for remember me as a constructor argument 2012-10-28 08:06:37 +01:00
Fabien Potencier
248703f6d8 renamed Prng to SecureRandom 2012-10-28 08:06:33 +01:00
Fabien Potencier
c0c89724b0 simplified the Prng code 2012-10-28 08:03:05 +01:00
Fabien Potencier
e5dc7afe90 moved the secure random class from JMSSecurityExtraBundle to Symfony (closes #3595) 2012-10-28 08:03:00 +01:00
Fabien Potencier
eb05fb0a5f merged branch raziel057/patch-2 (PR #5847)
This PR was squashed before being merged into the master branch (closes #5847).

Commits
-------

00d2823 Improve comments in ProfilerController

Discussion
----------

Improve comments in ProfilerController

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

by raziel057 at 2012-10-27T21:55:17Z

It's fixed.
2012-10-28 07:05:50 +01:00
Thomas Lallement
00d282324c Improve comments in ProfilerController 2012-10-28 07:05:50 +01:00
Fabien Potencier
7ddedabdae [Propel1] fixed CHANGELOG 2012-10-27 21:41:12 +02:00
Fabien Potencier
107e1f1f6d merged branch kufi/master (PR #5032)
This PR was squashed before being merged into the master branch (closes #5032).

Commits
-------

afba15f [2.2] Translatable field type for Propel i18n columns

Discussion
----------

[2.2] Translatable field type for Propel i18n columns

A field type which allows to automatically generate the correct fields for propels i18n behavior.

Usage example:

     $builder->add('pageI18ns', 'translatable_collection', array(
            'i18n_class' => '\foo\barBundle\Model\PageI18n',
            'languages' => array('de', 'fr'),
            'label' => 'Translations',
            'columns' => array(
                'title' => array(
                    'label' => 'Custom title',
                ),
                'description' => array(
                    'type' => 'textarea'
                )
            )
        ));

With this configuration the field automatically generates the correct fields for the title and description column for the given languages.

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

by stof at 2012-07-24T14:37:27Z

tests are also missing

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

by kufi at 2012-07-27T08:50:05Z

Ok. Moved the Listeners into own classes. Changed the names of the types. Fixed the TranslationCollectionType which now is a Subclass of AbstractType and has the parent collection.

Edit:
The syntax changed slighty for the form:

    $builder->add('pageI18ns', new \Symfony\Bridge\Propel1\Form\Type\TranslationCollectionType(), array(
            'languages' => array('de', 'fr', 'en'),
            'label' => 'Translations',
            'options' => array(
                'data_class' => 'foo\bar\Modell\PageI18n',
                'columns' => array(
                    'title' => array(
                        'label' => 'Custom title',
                    ),
                    'description' => array(
                        'type' => 'textarea'
                    )
                )
            )
        ));

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

by stof at 2012-07-27T08:55:07Z

tests are still missing, and you have some CS issue (which can probably all be fixed by running the [PHP-CS-Fixer](http://cs.sensiolabs.org/) on your classes)

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

by sindro88 at 2012-08-13T13:27:46Z

I followed step by step the implementation but the form type return an error "Could not load type propel1_translation".

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

by kufi at 2012-08-14T06:21:40Z

Could you try again. The problem was that the type propel1_translation_collection relied on a registered form type propel1_translation. I removed this one and replaced it with the actual form class.

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

by sindro88 at 2012-08-14T06:35:33Z

I replaced with the class and now it work, thank you so much!

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

by fabpot at 2012-09-18T16:53:21Z

ping @willdurand

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

by stof at 2012-10-13T17:56:16Z

@willdurand ping

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

by willdurand at 2012-10-23T12:03:22Z

There are a few comments by @stloyd to fix, but I'm 👠on this PR.

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

by fabpot at 2012-10-23T13:18:59Z

@kufi Can you add a note in the CHANGELOG of the Propel bridge before I merge this PR? Thanks.

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

by kufi at 2012-10-23T13:32:31Z

@fabpot Sure. Does this belong to Version 2.1.0 or the upcoming 2.2.0?

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

by fabpot at 2012-10-23T13:59:04Z

2.2
2012-10-27 21:40:56 +02:00
Patrick Kaufmann
afba15f263 [2.2] Translatable field type for Propel i18n columns 2012-10-27 21:40:54 +02:00
Fabien Potencier
a2a60c194b merged branch helios-ag/patch (PR #5496)
This PR was squashed before being merged into the 2.0 branch (closes #5496).

Commits
-------

9872d26 [HttpFoundation] Fix name sanitization after perfoming move

Discussion
----------

[HttpFoundation] Fix name sanitization after perfoming move

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

Further work on #2577, fixes name sanitization, after moving file name with new name with non latin characters in the beginning.

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

by stloyd at 2012-09-12T09:52:05Z

You must revert chmod changes.

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

by helios-ag at 2012-09-12T14:30:36Z

@stloyd fixed

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

by stof at 2012-10-13T21:12:43Z

@fabpot what is the status of this PR ?
2012-10-27 21:28:00 +02:00
Al Ganiev
9872d26c9c [HttpFoundation] Fix name sanitization after perfoming move 2012-10-27 21:28:00 +02:00
Fabien Potencier
4cefb62f0a updated CHANGELOG 2012-10-27 18:57:10 +02:00
Fabien Potencier
e44141162e merged branch merk/card-scheme-validator (PR #5072)
This PR was merged into the master branch.

Commits
-------

e2aa79b Added CardScheme validator

Discussion
----------

[2.2] [Validator] Added CardScheme validator

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

CardScheme separated into its own PR from #4734 as requested by @fabpot

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

by fabpot at 2012-10-05T17:08:24Z

As far I understand the discussion on #4734, a few people seemed to be concerned about the usefulness of adding such a validator in Symfony core. Anyone wanting to give his point of view? Personally, I'm -0 on merging this.

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

by merk at 2012-10-05T22:27:05Z

There are circumstances where such logic is required, and it could be desired by the programmer to filter out valid cards for a payment gateway before sending a request.

However, this is already included in JMSPaymentBundle if people don't think it should be in core.
2012-10-27 18:56:40 +02:00
Fabien Potencier
ef26a2185e [Process] added unit tests, phpdoc, and reorganized methods from previous merge 2012-10-27 18:54:34 +02:00
Fabien Potencier
41cb44bdac merged branch boombatower/process-status-5453 (PR #5455)
This PR was squashed before being merged into the master branch (closes #5455).

Commits
-------

7ea2f76 [process] expose the process status.

Discussion
----------

[process] expose the process status.

Pull request for issue #5453.

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

by pborreli at 2012-09-07T07:30:01Z

ðŸ‘

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

by drak at 2012-09-21T18:53:14Z

This PR is missing the patch header in the description https://github.com/symfony/symfony-docs/blob/master/contributing/code/patches.rst#make-a-pull-request

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

by stof at 2012-10-13T21:25:04Z

@boombatower can you update the PR according to my comments and add some tests ?
2012-10-27 18:47:38 +02:00
boombatower
7ea2f76266 [process] expose the process status. 2012-10-27 18:47:38 +02:00
Fabien Potencier
d4c011d56d merged branch dirkaholic/master (PR #5638)
This PR was squashed before being merged into the master branch (closes #5638).

Commits
-------

98b68c2 [2.2][Console] Add possibility to add new input options to console application

Discussion
----------

[2.2][Console] Add possibility to add new input options to console application

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

At the moment it is not possible to overwrite the input arguments of a console application to not have the default ones. Adding is possible with:

$cli->getDefinition()->addOption(new InputOption('--custom', '-c', InputOption::VALUE_NONE, 'Use custom option.'));

Also added some simple tests for adding a custom HelperSet.

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

by dirkaholic at 2012-10-04T06:29:57Z

OK, is a bit inconsistent with what it's done with the helper set then, where you can use both ways. New PR for the tests is the referenced one.

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

by stof at 2012-10-04T18:57:42Z

@dirkaholic Can you rebase your branch (it conflicts with master) and squash your commit together ?

http://symfony.com/doc/current/contributing/code/patches.html#rework-your-patch may help you if you don't know how to do it

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

by dirkaholic at 2012-10-04T19:53:09Z

Done.

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

by stof at 2012-10-04T21:40:53Z

@dirkaholic the rebase worked fine but you have not squashed the commits together.

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

by dirkaholic at 2012-10-05T05:35:30Z

What do you mean ? Only the setDefinition function plus test is left here. The rest was already merged with https://github.com/symfony/symfony/issues/5668

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

by stof at 2012-10-05T10:48:53Z

@dirkaholic Squashing is about making the PR use only 1 commit instead of 2 (the second one changing only some whitespaces, which is not what its message says). But @fabpot told me that he improved his merging tool and so he can squash it when merging so it is OK.
2012-10-27 18:40:54 +02:00
Dirk Pahl
98b68c29ce [2.2][Console] Add possibility to add new input options to console application 2012-10-27 18:40:53 +02:00
Fabien Potencier
bdb5275da1 merged branch daum/master (PR #5601)
This PR was squashed before being merged into the master branch (closes #5601).

Commits
-------

7914d95 [HttpFoundation] UploadedFile: Added ability to the original extension of the file uploaded

Discussion
----------

[HttpFoundation] UploadedFile: Added ability to the original extension of the file uploaded

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

`$file->getExtension()` on uploaded files always will return blank as the temp file names do not have an extension. This adds `$file->getClientOriginalExtension()` which returns the extension based off the original file name. It also includes a test to check this function.

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

by daum at 2012-09-25T21:54:00Z

@stof just pushed updated doc block and spacing fix.

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

by stof at 2012-10-13T21:47:17Z

@fabpot anything missing to merge it ?
2012-10-27 18:37:40 +02:00
Matt Daum
7914d957f0 [HttpFoundation] UploadedFile: Added ability to the original extension of the file uploaded 2012-10-27 18:37:39 +02:00
Fabien Potencier
649872be85 merged branch jonathaningram/issue_5375 (PR #5376)
This PR was merged into the 2.0 branch.

Commits
-------

a094f7e Add check to Store::unlock to ensure file exists

Discussion
----------

[2.0] [HttpKernel] Add check to Store::unlock to ensure file exists

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

I was seeing this error in my logs when using an `AppCache`:

```
Error 2: /var/www/beta.example.com/shared/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpCache/Store.php line 92: unlink(/var/www/beta.example.com/releases/20120827020525/app/cache/beta/http_cache/md/c2/88/66a911b5266a57bdd55131a47895b8861dfd.lck): No such file or directory
```

It was only occurring when the `http_cache` file was being primed (i.e. first load).

I've added a simple check to ensure that the file is a valid file before trying to unlink. I also added a missing `@return` docblock. Note: I've chosen to return `false` if the file does not exist as this seems to be the behaviour of the `purge` method.

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

by jonathaningram at 2012-08-29T06:46:52Z

@henrikbjorn done and rebased. Thanks.

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

by jonathaningram at 2012-09-17T22:38:47Z

@henrikbjorn any news on this one? It's currently not possible to use the HTTP Cache without the first request failing.

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

by jonathaningram at 2012-09-25T01:28:38Z

ping @fabpot sorry to keep pushing this, but any chance you could take a look at this?
2012-10-27 18:34:13 +02:00
Fabien Potencier
da1b635d87 merged branch msonnabaum/httpcache_store_locking_fixes (PR #5381)
This PR was squashed before being merged into the master branch (closes #5381).

Commits
-------

0f3126f Added lockExists to Store interface, fixed locking bugs, added tests.

Discussion
----------

Added lockExists to Store interface, fixed locking bugs, added tests.

While working on Drupal's HttpCache implementation, I discovered that the base HttpCache class does an is_file to check for a lock, which assumes a file-based cache is being used. This seems like a mistake since the rest of the Store interface is easily swappable. I added a lockExists method so that this is properly abstracted.

I also noticed there were no tests for the change I made, so I added some very basic locking tests. While adding those I found that the existing lock method is a bit broken. This line here:

```php
<?php

if (false !== $lock = @fopen($path = $this->getPath($this->getCacheKey($request).'.lck'), 'x')) {
```

will return false if the file couldn't be written for any reason, but the rest of the method assumes that if $lock == false, the lock exists already. So if the file couldnt be written due to the parent directory not existing, $path will be returned as if it exists, which is clearly not the desired behavior.

I changed this to return false if the file couldnt be written and doesn't exist, $path if it exists, and true if the lock was created. It still doesn't feel great to have bool|string return values, but that's the best I could come up with atm. I also added a check for the parent directory that creates it if it doesn't exist. The new tests fail without it.

I also broke out that code a bit as it was very difficult to read.

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

by henrikbjorn at 2012-08-30T09:11:16Z

Symfony have a editorconfig file which set the correct indentation settings. http://editorconfig.org/

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

by msonnabaum at 2012-08-30T13:00:20Z

Updated based on stof's feedback.

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

by msonnabaum at 2012-08-30T13:21:40Z

Fixed based on code style feedback.

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

by jonathaningram at 2012-09-05T12:29:47Z

@msonnabaum, this seems to be distantly related to my recent PR too: #5376.

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

by stof at 2012-10-13T20:35:55Z

@fabpot anything left to merge this ?

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

by catch56 at 2012-10-23T16:42:10Z

This looks great to me, Couldn't find anything to complain about.
2012-10-27 18:31:07 +02:00
Mark Sonnabaum
0f3126f397 Added lockExists to Store interface, fixed locking bugs, added tests. 2012-10-27 18:31:06 +02:00
Fabien Potencier
7b998d9b2d Merge branch '2.1'
* 2.1:
  [ClassLoader] fixed unbracketed namespaces (closes #5747)
  slight refactoring in UrlMatcher
  [Form] Created test for DoctrineOrmTypeGuesser see #5790
  [Form] Fixed DoctrineOrmTypeGuesser to guess the "required" option for to-one associations
2012-10-27 17:59:37 +02:00
Fabien Potencier
43aa20fcb6 Merge branch '2.0' into 2.1
* 2.0:
  [ClassLoader] fixed unbracketed namespaces (closes #5747)

Conflicts:
	src/Symfony/Component/ClassLoader/ClassCollectionLoader.php
	tests/Symfony/Tests/Component/ClassLoader/ClassCollectionLoaderTest.php
2012-10-27 17:59:21 +02:00
Fabien Potencier
6f15c4780f [ClassLoader] fixed unbracketed namespaces (closes #5747) 2012-10-27 17:55:46 +02:00
Fabien Potencier
7adee1aeb2 [ClassLoader] added some tests for previous merge 2012-10-27 17:07:38 +02:00
Fabien Potencier
537760f058 merged branch bamarni/classcollectionloader-globalnamespace (PR #5120)
This PR was merged into the master branch.

Commits
-------

adeadfb fixed comment striping on global namespace classes

Discussion
----------

[ClassCollectionLoader] fixed comment striping on global namespace classes

previously #4792, I've removed the multiple blank lines removal not to break heredocs.

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

by stof at 2012-10-13T18:04:56Z

@fabpot is there anything left to merge this ?

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

by bamarni at 2012-10-14T11:47:23Z

I've added a space when faking a namespace, so that it stils works without the tokenizer (if #5747 gets merged)
2012-10-27 17:04:59 +02:00
Fabien Potencier
d7a02b5433 [Process] fixed previous merge 2012-10-27 15:48:18 +02:00
Fabien Potencier
453ff1af76 [Process] updated the CHANGELOG 2012-10-27 15:46:00 +02:00
Fabien Potencier
a6b2aa714b merged branch romainneutron/ProcessIncrementalOutput (PR #5546)
This PR was merged into the master branch.

Commits
-------

b89e413 [Process] Add output / error output incremental getters

Discussion
----------

[2.2][Process] Add output / error output incremental getters

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

Travis fails ; tests are ok on my local clone but upstream symfony master is currently broken

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

by stof at 2012-10-13T21:20:47Z

@romainneutron is there anything left before merging ? And please open a PR to the documentation to document the new feature
2012-10-27 15:43:43 +02:00
Fabien Potencier
c7ef309e2a merged branch eventhorizonpl/100ptc_component_httpfundation_p10 (PR #5757)
This PR was merged into the master branch.

Commits
-------

85d39aa session class tests

Discussion
----------

session class tests

Hi,

This patch adds some Session class tests.

Best regards,
Michal

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

by lsmith77 at 2012-10-19T17:04:29Z

can you close and reopen this PR to retriggered the travis build?
2012-10-27 15:38:48 +02:00
Fabien Potencier
31db547a40 merged branch eventhorizonpl/100ptc_component_httpfundation_p9 (PR #5756)
This PR was merged into the master branch.

Commits
-------

99aa37c tests for Request class

Discussion
----------

tests for Request class

Hi,

This patch adds some tests for Request class.

Best regards,
Michal

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

by lsmith77 at 2012-10-19T17:04:33Z

can you close and reopen this PR to retriggered the travis build?
2012-10-27 15:38:10 +02:00
Fabien Potencier
e3ceb56b48 merged branch Burgov/doctrine_orm_type_guesser_tests (PR #5793)
This PR was merged into the 2.1 branch.

Commits
-------

5d2525b [Form] Created test for DoctrineOrmTypeGuesser see #5790
b844d6b [Form] Fixed DoctrineOrmTypeGuesser to guess the "required" option for to-one associations

Discussion
----------

[Form] Doctrine orm type guesser tests

This PR adds tests to https://github.com/symfony/symfony/pull/5790

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

by Tobion at 2012-10-20T10:53:56Z

Using real test entities would be better IMO. Using mocks ties it pretty much to the implementation.

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

by sstok at 2012-10-21T10:38:53Z

@Tobion thats true, but Doctrine Class meta data takes quite some coding to set-up.
For instance you need the EntityManager to get even get the meta data set!

So you'd end having more code to set-up then your actually testing.

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

by Burgov at 2012-10-21T12:58:58Z

I wasn't sure whether do use a test entity manager, or do it the way I finally did it.

@sstok true, it's quite some work to set it up, but on the other hand there's the base OrmTestCase class which does it for you, so it'd actually mean I'd only have to create one entity for all the cases: https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Doctrine/Tests/DoctrineOrmTestCase.php

@Tobion on the other hand I tend to use a test EM only when I actually need to test persisting and loading, while this test case here is so isolated that I didn't really feel it would be necessary.

I'd like to know which method is preferred though, I'll change it if necessary, and other tests can be added to test the rest of this specific class
2012-10-27 15:36:11 +02:00
Fabien Potencier
15731a982e merged branch jfcixmedia/2.1 (PR #5838)
This PR was squashed before being merged into the master branch (closes #5838).

Commits
-------

201f3e6 [Form] Fixed cannot unset string offsets in CsrfValidationListener

Discussion
----------

[Form] Fixed cannot unset string offsets in CsrfValidationListener

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

A php fatal error is happening when someone rewrite the entire form data for an object with a single input.
```
Fatal error: Cannot unset string offsets in vendor/symfony/symfony/src/Symfony/Component/Form/Extension/Csrf/EventListener/CsrfValidationListener.php on line 72
```

Example:

```html
<form action="/app_dev.php/post/create" method="post" >
    <div id="posttype">
        <div>
            <label for="posttype_name" class="required">Name</label>
            <input type="text" id="posttype_name" name="posttype[name]" required="required" maxlength="255" />
        </div>
        <div>
            <label for="posttype_text" class="required">Text</label>
            <textarea id="posttype_text" name="posttype[text]" required="required"></textarea>
        </div>
        <input type="hidden" id="posttype__token" name="posttype[_token]" value="83a1617c694fbdea43c2527f1a55c7419ce82a42" /></div>
        <p>
            <button type="submit">Create</button>
        </p>
</form>
```

If someone alters the html to add a simple input at the bottom of the form like this one:
```html
<input type="text" id="posttype" name="posttype" value="test123" />
```

The result will be a php fatal error.

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

by bschussek at 2012-10-26T09:49:05Z

Thank you for the pull request! Could you please reference the pull request in the test?

```php
// https://github.com/symfony/symfony/pull/5838
public function testStringFormData()
{
    ...
```

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

by jfcixmedia at 2012-10-26T10:21:29Z

@bschussek  Added, thanks.
2012-10-27 15:29:28 +02:00
jfcixmedia
201f3e6489 [Form] Fixed cannot unset string offsets in CsrfValidationListener 2012-10-27 15:29:27 +02:00
Tobias Schultze
7447ef7171 slight refactoring in UrlMatcher 2012-10-26 12:26:42 +03:00
Simon Terrien
2d9a6fcc19 Use Norm Data instead of Data
This listener is triggered when normalized data are binded.

We have to use $event->getForm()->getNormData() instead of $event->getForm()->getData().
2012-10-26 12:03:13 +03:00
Fabien Potencier
bde2e26b69 [Form] updated CHANGELOG 2012-10-25 15:43:31 +02:00
Fabien Potencier
3138332152 [Form] tweaked previous merge 2012-10-25 15:42:46 +02:00
Fabien Potencier
13319da017 merged branch Dattaya/form/trim_listener (PR #4115)
This PR was squashed before being merged into the master branch (closes #4115).

Commits
-------

878dd91 [2.2] [Form] Trim listener, unicode whitespace characters.

Discussion
----------

[2.2] [Form] Trim listener, unicode whitespace characters.

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

I have some questions. ZERO WIDTH SPACE (200B) doesn't belong to White_Space but it's invisible and treated as white space by the html4.1 spec - http://www.w3.org/TR/html4/struct/text.html#h-9.1
Same question for
* U+202F	NARROW NO-BREAK SPACE
* U+FEFF	ZERO WIDTH NO-BREAK SPACE

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

by Dattaya at 2012-04-26T09:49:25Z

It seems to me that the check `mb_check_encoding($data, 'UTF-8')` is unnecessary. For non utf8 characters `preg_replace` returns `null` if `u` flag is set.
From http://www.pcre.org/pcre.txt:
>When you set the PCRE_UTF8 flag, the byte strings  passed  as  patterns
       and subjects are (by default) checked for validity on entry to the rel-
       evant functions.
...
>If an invalid UTF-8 string is passed to PCRE, an error return is given.

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

by Dattaya at 2012-07-27T06:52:58Z

Forgot to mention that `Cc` property includes more characters than needed (`0009-000D` and `0085`) but I think control characters shouldn't appear in a form field anyway.

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

by stof at 2012-10-13T16:47:47Z

@Dattaya ping
2012-10-25 15:40:56 +02:00
Yaroslav Kiliba
878dd91d37 [2.2] [Form] Trim listener, unicode whitespace characters. 2012-10-25 15:40:54 +02:00
Fabien Potencier
38b1ab68a3 Merge branch '2.1'
* 2.1:
  bumped Symfony version to 2.0.19-DEV
  updated VERSION for 2.0.18
  update CONTRIBUTORS for 2.0.18
  updated CHANGELOG for 2.0.18
  updated vendors for 2.0.18
  Remove § about prototype_name customization in 2.0
  fix option name
  Add to DateFormats 'D M d H:i:s Y T' (closes #5830)
2012-10-25 15:12:09 +02:00
Fabien Potencier
1277e6746b Merge branch '2.0' into 2.1
* 2.0:
  bumped Symfony version to 2.0.19-DEV
  updated VERSION for 2.0.18
  update CONTRIBUTORS for 2.0.18
  updated CHANGELOG for 2.0.18
  updated vendors for 2.0.18
  Add to DateFormats 'D M d H:i:s Y T' (closes #5830)

Conflicts:
	CONTRIBUTORS.md
	src/Symfony/Component/HttpKernel/Kernel.php
	tests/Symfony/Tests/Bridge/Monolog/Processor/WebProcessorTest.php
	vendors.php
2012-10-25 15:11:50 +02:00
Fabien Potencier
887207402b bumped Symfony version to 2.0.19-DEV 2012-10-25 15:09:46 +02:00
Christophe Coevoet
bd37f246e6 [Locale] Implement the lenient isser in the StubIntlFormatter 2012-10-25 14:24:18 +02:00
Fabien Potencier
03fbb485e0 updated VERSION for 2.0.18 2012-10-25 10:56:58 +02:00
Xavier REN
20898e53a6 Add to DateFormats 'D M d H:i:s Y T' (closes #5830)
DateFormat seen on the web
2012-10-25 09:07:48 +02:00
Fabien Potencier
67d9253127 Merge branch '2.1'
* 2.1:
  added missing use statment (closes #5825)
  Code cleanup
  [WebProfilerBundle] Fixed the use of nested macros
  Removed unused use statements.
  Nsdocblocks
  [ConfigDumpReference] avoid notice for variable nodes
  fixed fallback locale
  UniqueValidatorTest, Change message on assertions
  Documented removed _form_is_choice_group function

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpReferenceCommand.php
	src/Symfony/Bundle/WebProfilerBundle/Profiler/TemplateManager.php
2012-10-24 17:41:27 +02:00
Fabien Potencier
94f5f49894 merged branch bamarni/patch-10 (PR #5783)
This PR was merged into the 2.1 branch.

Commits
-------

3553276 [ConfigDumpReference] avoid notice for variable nodes

Discussion
----------

[ConfigDumpReference] avoid notice for variable nodes

When a variable node has an array as default value, a notice occurs later on because of an "array to string conversion", which is turned to an exception in debug mode (mandatory in order to run this command).
2012-10-24 17:35:37 +02:00
Fabien Potencier
20bb205f53 merged branch umpirsky/patch-1 (PR #5798)
This PR was merged into the master branch.

Commits
-------

40341bb Changed MoneyType::$patterns visibility.
c88fe94 Changed getPattern visibility

Discussion
----------

Changed getPattern visibility

It should be possible to override this method.

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

by Inori at 2012-10-22T19:25:37Z

Probably makes sense to also change visibility of [MoneyType::$patterns](c88fe94707/src/Symfony/Component/Form/Extension/Core/Type/MoneyType.php (L23))

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

by umpirsky at 2012-10-22T20:49:09Z

@Inori Fixed, thanks.
2012-10-24 17:32:38 +02:00
Fabien Potencier
562d3516fd merged branch nomack84/code_cleanup (PR #5818)
This PR was merged into the 2.1 branch.

Commits
-------

f06432b Code cleanup

Discussion
----------

Code cleanup

Not sure at the end if this good or not. If it is useless, just close it.
2012-10-24 17:12:48 +02:00
Stano Turza
11ba41bb17 added missing use statment (closes #5825) 2012-10-24 17:10:37 +02:00
Albert Casademont
3e58893d0f [Security] Tweak UsernamePasswordFormAuthenticationListener
- Do not check twice for the only_post condition
- If the expected request is only_post, check only the post variables for the username and password parameters
2012-10-23 11:27:38 +02:00
Sasa Stamenkovic
40341bbb2f Changed MoneyType::$patterns visibility. 2012-10-22 22:46:47 +02:00
Fabien Potencier
28482f8216 merged branch stof/timeline_panel (PR #5801)
This PR was merged into the 2.1 branch.

Commits
-------

039bdfd [WebProfilerBundle] Fixed the use of nested macros

Discussion
----------

[WebProfilerBundle] Fixed the use of nested macros

Closes #5800

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

by stof at 2012-10-22T20:03:10Z

@fabpot ping. this regression is quite annoying as I like the profiler
2012-10-22 22:20:01 +02:00
Mario A. Alvarez Garcia
f06432bc73 Code cleanup 2012-10-22 10:37:12 -04:00
Christophe Coevoet
039bdfd7e7 [WebProfilerBundle] Fixed the use of nested macros
Closes #5800
2012-10-21 20:33:40 +02:00
Jordi Boggiano
94f3ba5236 [Console] Read input in raw mode to avoid processing escape sequences 2012-10-21 17:09:07 +02:00
Саша Стаменковић
c88fe94707 Changed getPattern visibility
It should be possible to override this method.
2012-10-21 15:41:00 +03:00
Bart van den Burg
5d2525b082 [Form] Created test for DoctrineOrmTypeGuesser
see #5790
2012-10-20 12:37:21 +02:00
umpirsky
82dfd30f4e Removed unused use statements. 2012-10-20 09:11:36 +02:00
Drak
788cc2c7ef Nsdocblocks 2012-10-20 09:10:30 +02:00
Arnaud Le Blanc
c7a8f7af62 [Routing] fixed possible parameters conflict in apache url matcher 2012-10-20 00:39:25 +02:00
Bernhard Schussek
b844d6be09 [Form] Fixed DoctrineOrmTypeGuesser to guess the "required" option for to-one associations 2012-10-19 19:36:52 +02:00
Bilal Amarni
3553276af2 [ConfigDumpReference] avoid notice for variable nodes 2012-10-19 15:53:01 +03:00
Philipp Kräutli
965734e857 fixed fallback locale 2012-10-19 13:24:34 +02:00
Fabien Potencier
390f36a86b merged branch acasademont/locale_request_collector (PR #5769)
This PR was merged into the master branch.

Commits
-------

20f19bf Add the Request locale to the RequestDataCollector

Discussion
----------

[HttpKernel] Add the Request locale to the RequestDataCollector

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

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

by acasademont at 2012-10-17T09:01:32Z

Seems like some Twig tests are failing in the master branch
2012-10-19 13:22:50 +02:00
Fabien Potencier
ab1a434eba merged branch eventhorizonpl/100ptc_component_httpfundation_p12 (PR #5773)
This PR was merged into the master branch.

Commits
-------

5b3ed82 MetadataBag test

Discussion
----------

MetadataBag test

Hi,

This patch adds MetadataBag test.

Best regards,
Michal
2012-10-19 13:22:05 +02:00
Gilles Gauthier
602a5eb3f4 UniqueValidatorTest, Change message on assertions 2012-10-19 13:20:42 +02:00
Fabien Potencier
388cbff022 merged branch arnaud-lb/routing-php-dumper-simplification (PR #5734)
This PR was merged into the master branch.

Commits
-------

e54d749 [Routing] Simplified php matcher dumper (and optimized generated matcher)

Discussion
----------

[Routing] Simplified php matcher dumper (and optimized generated matcher)

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

This simplifies the php matcher dumper by allowing the dumper to re-organize routes in the dumper's own structure.

As a result, dumping is made a little simpler. This is also helps much for my hostname-based routes PR #3378.

Reorganizing routes also allows to find more optimization opportunities:

Currently the dumper wraps some collections of routes in a `if (0 === strpos($pathinfo, '/someprefix')` if the collection has user-defined prefix, and if it contains more than one direct child Route. This can miss many optimization opportunities.

The PR changes this by building a prefix tree of routes based on the static prefix extracted from routes' patterns. Then every leave having a prefix and more than one child (route or collection) will be wrapped in a `if` statement.

Example:

```
// No explicit prefix is specified
@Route("/cafe")
@Route("/cacao")
@Route("/coca")
```

is compiled like this:

```
if (url starts with /c) {
    if (url starts with /ca) {
        // test route "/cafe"
        // test route "/cacao"
    }
    // test route "/coca"
}
```

Some tests have many white space changes, much more easier to review [here](https://github.com/symfony/symfony/pull/5734/files?w=1)

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

by Tobion at 2012-10-13T02:27:54Z

I'm not sure if adding these specific classes just for dumping is the best implementation because they duplicate some logic and this optimization should also work out-of-the-box with the standard RouteCollection etc.
What I have in mind is a new method in RouteCollection like `RouteCollection::optimizeTree` that returns a new RouteCollection with the Routes that includes these optimization you do here. So there would probably be no need for the new classes.

It think it requires some changes in RouteCollection like the handling of prefix that must start with a slash currently, which is too restrictive. But it should be possible.

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

by arnaud-lb at 2012-10-13T12:52:32Z

@Tobion

> I'm not sure if adding these specific classes just for dumping is the best implementation because they duplicate some logic and this optimization should also work out-of-the-box with the standard RouteCollection etc.

I think RouteCollection and DumperCollection do not share the same concerns; and RouteCollection does things that don't allow to reorganize routes freely. For instance when adding a collection to a RouteCollection this changes all the child routes' prefix, requirements, options, etc. When setting a collection's prefix, this prepends the prefix to every child route's pattern, etc.

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

by arnaud-lb at 2012-10-15T08:50:23Z

squashed the CS commits

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

by arnaud-lb at 2012-10-15T13:50:16Z

@fabpot @Tobion this PR is ready to be merged if everyone agrees

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

by Tobion at 2012-10-16T18:10:36Z

When the above is fixed, I think it's good to be merged.

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

by arnaud-lb at 2012-10-17T08:40:20Z

Fixed; thanks @Tobion @stof for your reviews

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

by Tobion at 2012-10-19T03:30:10Z

@arnaud-lb could you please test whether your PR fixes #5780 as a side-effect?
I can image that it's fixed because you use `$route->compile()->getStaticPrefix();` for prefix optimization.
If it's fixed please add a test case. If not, that's fine, and we need to fix it in another PR.
2012-10-19 07:56:40 +02:00
Fabien Potencier
88ea842c5e Merge branch '2.1'
* 2.1: (28 commits)
  Delete use of CreationExeption
  [Form] Fixed error message in PropertyPath to not advice to use a non-existing feature
  [Form] Fixed creation of multiple money fields with different currencies
  [Form] Fixed setting the "data" option to an object in "choice" and "entity" type
  Fixed Serbian plural translations.
  Fixed IPv6 Check in RequestMatcher
  Fix typo
  change what I think is a typo
  [Console] Fix error when mode is not in PATH
  [WebProfilerBundle] fixed macro usage (to be forward compatible with Twig 2.x)
  Change monolog require-dev to use the branch alias instead of dev-master
  [FrameworkBundle] partially reverted previous merge
  [2.1] Added missing error return codes in commands
  Made the router lazy when setting the context
  [WebProfilerBundle] fixed typos
  Fix incorrect variable in FileProfilerStorage
  UnitTest fix
  UnitTest fix
  added a unit test
  fixed #5384
  ...
2012-10-18 23:16:19 +02:00
Fabien Potencier
82a6694c85 Merge branch '2.0' into 2.1
* 2.0:
  [Form] Fixed creation of multiple money fields with different currencies
  Fixed IPv6 Check in RequestMatcher
  fixed DomCrwaler/Form to handle <button> when submitted

Conflicts:
	tests/Symfony/Tests/Component/DomCrawler/FormTest.php
	tests/Symfony/Tests/Component/Form/Extension/Core/Type/MoneyTypeTest.php
2012-10-18 23:16:01 +02:00
Erik Saunier
051327ea03 Delete use of CreationExeption
CreationException not used
2012-10-18 21:44:44 +02:00
Fabien Potencier
a01ede2f4d merged branch bschussek/issue5388 (PR #5778)
This PR was merged into the 2.1 branch.

Commits
-------

bda29b3 [Form] Fixed error message in PropertyPath to not advice to use a non-existing feature

Discussion
----------

[Form] Fixed error message in PropertyPath to not advice to use a non-existing feature

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5388
Todo: -
License of the code: MIT
Documentation PR: -
2012-10-18 21:42:42 +02:00
Bernhard Schussek
bda29b335e [Form] Fixed error message in PropertyPath to not advice to use a non-existing feature 2012-10-18 19:52:59 +02:00
Bernhard Schussek
bf3e358697 [Form] Fixed creation of multiple money fields with different currencies 2012-10-18 19:17:20 +02:00
Bernhard Schussek
8f81f078e0 [Form] Fixed setting the "data" option to an object in "choice" and "entity" type 2012-10-18 18:50:25 +02:00
Michal Piotrowski
5b3ed826a8 MetadataBag test 2012-10-17 22:23:03 +02:00
Fabien Potencier
6b12fc0330 [TwigBundle] fixed unit tests 2012-10-17 15:58:03 +02:00
Fabien Potencier
3c65f6dee2 [TwigBundle] fixed unit tests 2012-10-17 15:22:39 +02:00
Albert Casademont
20f19bfd84 Add the Request locale to the RequestDataCollector 2012-10-17 10:50:16 +02:00
Thomas Adam
6a0ee27de1 [Console] fixed progress bar jumping 2012-10-17 09:31:31 +02:00
Arnaud Le Blanc
e54d749d05 [Routing] Simplified php matcher dumper (and optimized generated matcher) 2012-10-16 20:50:15 +02:00
umpirsky
53c43bf647 Fixed Serbian plural translations. 2012-10-16 16:15:39 +02:00
Yohan Giarelli
959c1dfa4b Fixed IPv6 Check in RequestMatcher
Added a fallback check for ipv6 support even if sockets extension is not available
2012-10-16 13:28:16 +02:00
Fabien Potencier
d8f6021fc1 merged branch romainneutron/ConsoleHiddenQuestion (PR #5731)
This PR was merged into the master branch.

Commits
-------

aefa495 Move `hiddeninput.exe` to Resources/bin
c0f8a63 Fix CS and typos
26c35e0 Skip askHiddenResponse test on windows
e2eaf5a Update Changelog, add Readme note about hidden input third party
ac01d5d Fix tests and CS
e396edb [Console] Add DialogHelper::askHiddenResponse method

Discussion
----------

[Console] Add DialogHelper::askHiddenResponse method

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

It adds a method to `DialogHelper` to ask a question and hide the response. It's pretty cool when working with passwords.

This code is more than largely inspired by Composer, see [ConsoleIO.php at line 140](https://github.com/composer/composer/blob/master/src/Composer/IO/ConsoleIO.php#L140)

 You will notice that this PR embeds a Windows Executable binary for windows support. This windows binary is provided by @Seldaek (see https://github.com/Seldaek/hidden-input)
This dependency is not yet available via composer.

If this is a problem to embed this file, we can think of other way to provide this support (make a package from HiddenInput and add composer recommandation for example).

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

by stof at 2012-10-11T17:20:11Z

The link to the hiddeninput source code should be added in the readme.
And you should also update the changelog.

Btw, adding composer for hiddeninput does not make sense. Compsoer is about installing PHP code, not about downloading the source of a C++ program.

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

by romainneutron at 2012-10-11T17:22:58Z

This proposition comes from a discussion I had with Jordi , nothing more :)

Romain

On 11 oct. 2012, at 19:20, Christophe Coevoet <notifications@github.com>
wrote:

The link to the hiddeninput source code should be added in the readme.
And you should also update the changelog.

Btw, adding composer for hiddeninput does not make sense. Compsoer is about
installing PHP code, not about downloading the source of a C++ program.

—
Reply to this email directly or view it on
GitHub<https://github.com/symfony/symfony/pull/5731#issuecomment-9349736>.

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

by romainneutron at 2012-10-12T07:33:00Z

Changelog updated, Readme note added, CS fixed

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

by stof at 2012-10-13T22:09:24Z

the missing point is now the PR to the doc for this new feature

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

by romainneutron at 2012-10-16T00:33:59Z

@stof documentation added

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

by romainneutron at 2012-10-16T09:10:35Z

@fabpot what you asked is now fixed
2012-10-16 11:19:25 +02:00
Grégoire Paris
689788b974 change what I think is a typo 2012-10-16 11:15:59 +02:00
Romain Neutron
aefa49595b Move hiddeninput.exe to Resources/bin 2012-10-16 11:08:11 +02:00
Romain Neutron
c0f8a63e61 Fix CS and typos 2012-10-16 11:04:58 +02:00
Bart van den Burg
34b60f7558 [FrameworkBundle] more verbose output about service tags in container:debug command and display all tag attributes as columns in normal container:debug output 2012-10-16 11:01:37 +02:00
Richard Miller
2a9805eec1 [FrameworkBundle] Adding a option to debug services by tag 2012-10-16 10:40:21 +02:00
Michal Piotrowski
85d39aab50 session class tests 2012-10-15 19:57:42 +02:00
Michal Piotrowski
99aa37ce59 tests for Request class
tests for Request class p2
2012-10-15 18:46:16 +02:00
Jordi Boggiano
cf1e02d9ae [Console] Fix error when mode is not in PATH 2012-10-15 17:06:42 +02:00
Romain Neutron
26c35e0ffe Skip askHiddenResponse test on windows 2012-10-15 15:32:25 +02:00
Romain Neutron
e2eaf5a6d5 Update Changelog, add Readme note about hidden input third party 2012-10-15 15:32:20 +02:00
Fabien Potencier
8731cc30ff [WebProfilerBundle] fixed macro usage (to be forward compatible with Twig 2.x) 2012-10-15 09:28:03 +02:00
Bilal Amarni
adeadfbbc8 fixed comment striping on global namespace classes 2012-10-14 13:45:05 +02:00
Fabien Potencier
0fc0fb3b9c merged branch hason/crawler (PR #5407)
This PR was merged into the master branch.

Commits
-------

c902966 [DomCrawler] Added ability to set file as raw path to file field

Discussion
----------

[2.2][DomCrawler] Added ability to set file as raw path to file field

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

For description see #4674 (https://github.com/symfony/symfony/issues/4674#issuecomment-7811505)

Related PRs:

https://github.com/Behat/MinkBrowserKitDriver/pull/1
https://github.com/Behat/MinkGoutteDriver/pull/7
https://github.com/fabpot/Goutte/pull/77

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

by stof at 2012-10-13T21:53:27Z

@fabpot anything missing here ?
2012-10-14 11:36:44 +02:00
Fabien Potencier
dc519847fe [FrameworkBundle] partially reverted previous merge 2012-10-14 11:21:53 +02:00
Fabien Potencier
98070d50af merged branch hason/return_code (PR #5586)
This PR was squashed before being merged into the 2.1 branch (closes #5586).

Commits
-------

6b66bc3 [2.1] Added missing error return codes in commands

Discussion
----------

[2.1] Added missing error return codes in commands

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

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

by fabpot at 2012-09-24T12:10:47Z

Exit code values are standardized and some values have some well-defined meaning. Have a look here for more info: https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Process/Process.php#L67
2012-10-14 11:21:26 +02:00
Martin Hasoň
6b66bc3226 [2.1] Added missing error return codes in commands 2012-10-14 11:21:26 +02:00
Fabien Potencier
eb176467e8 merged branch stof/twig_global (PR #5741)
This PR was merged into the master branch.

Commits
-------

b31ae34 [WebProfilerBundle] Remove the now unneeded BC var and fixed a typo
d07ce03 [TwigBundle] Moved the registration of the app global to the environment

Discussion
----------

[TwigBundle] Moved the registration of the app global to the environment

This makes the app global variable available also when accessing the Twig
environment directly instead of using the TwigEngine.
2012-10-14 11:19:55 +02:00
Fabien Potencier
49fa1965d5 merged branch gnugat/i5669-console-list-in-help-command (PR #5725)
This PR was squashed before being merged into the master branch (closes #5725).

Commits
-------

d6be69a [i5669][Console] Adding a note about the list command in the help command

Discussion
----------

[i5669][Console] Adding a note about the list command in the help command

In order to fix the issue #5669.

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

by gnugat at 2012-10-11T09:45:45Z

This PR is ready for a first code review.

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

by stof at 2012-10-13T22:25:15Z

@fabpot ðŸ‘
2012-10-14 11:18:34 +02:00
Loic Chardonnet
d6be69acc5 [i5669][Console] Adding a note about the list command in the help command 2012-10-14 11:18:34 +02:00
Fabien Potencier
77a6eb6a62 merged branch szicsu/ContainerExceptionHandling-FIX (PR #5693)
This PR was merged into the 2.1 branch.

Commits
-------

9d8f689 UnitTest fix
02b0b39 UnitTest fix
a4f3ea9 [2.1][DependencyInjection] Incomplete error handling in the container

Discussion
----------

[2.1][DependencyInjection] Incomplete error handling in the container

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

The Container::get method, error handling has been handled incompletely because the created wrong service was not removed from the container.

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

by stof at 2012-10-13T23:12:11Z

@fabpot anything missig in this PR ? It looks ready to be merged to me.
2012-10-14 11:16:36 +02:00
Fabien Potencier
db4824bfe1 merged branch marfillaster/help-inheritance (PR #5676)
This PR was merged into the master branch.

Commits
-------

63b480e [Console] fixed #5316

Discussion
----------

[Console] [Enhancement] fixes #5316

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

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

by marfillaster at 2012-10-05T02:14:55Z

I simplified the change. And the reason why tests for text help do not need changes is because in CommandTest, the commands are executed first which also merges app definition  before invoking asText or asXml  . While in ApplicationTest, commands are never run therefore app definition is not being merged.

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

by stof at 2012-10-13T23:13:52Z

@fabpot This looks ready to me. Anything left ?
2012-10-14 11:13:59 +02:00
Christophe Coevoet
e0a3fc19a4 Made the router lazy when setting the context
Initializing the matcher and the generator to set the context does not make
sense as it is set anyway when building them. This avoids initializing
them in the RouterListener if you never actually use them (for instance
because you use the apache matcher).
2012-10-14 10:27:44 +02:00
Danny Berger
3d2a7db61e Fix a few namespaces to match file system. 2012-10-13 13:20:28 -06:00
Fabien Potencier
875e0e2686 [WebProfilerBundle] fixed some tests 2012-10-13 20:51:02 +02:00
Fabien Potencier
56a159568b moved the traceable controller resolver from the framework bundle to the HttpKernel component (using composition now) 2012-10-13 20:49:27 +02:00
Fabien Potencier
d0fe87aac5 [HttpKernel] removed test that is not needed anymore 2012-10-13 20:34:40 +02:00
Fabien Potencier
95c4812d5c [WebProfilerBundle] fixed tests 2012-10-13 19:58:24 +02:00
Christian Raue
d427522a45 [Validator] fixed German translation, see #5675 2012-10-13 19:27:35 +03:00
Christophe Coevoet
b31ae34eb3 [WebProfilerBundle] Remove the now unneeded BC var and fixed a typo 2012-10-13 17:20:07 +02:00
Christophe Coevoet
d07ce03d6f [TwigBundle] Moved the registration of the app global to the environment
This makes the app global variable available also when accessing the Twig
environment directly instead of using the TwigEngine.
2012-10-13 17:19:49 +02:00
Fabien Potencier
289e71dbe9 [WebProfilerBundle] fixed typo 2012-10-13 16:00:17 +02:00
Fabien Potencier
a3b3c287cd [WebProfileBundle] remove dependency on the DIC
The controllers are not relying on the DIC anymore and only Twig
is used for rendering (instead of the Templating component).

The Exception controller has not been updated yet as it relies on many
external dependencies (and other bundles).
2012-10-13 15:57:41 +02:00
Fabien Potencier
dfc53b0c19 [WebProfilerBundle] removed dependency on the templating component 2012-10-13 12:53:34 +02:00
Fabien Potencier
c682f67df6 [HttpKernel] unified the way the traceable event dispatcher injects information into the profiler (closes #5733) 2012-10-13 12:32:02 +02:00
Fabien Potencier
ee7597576c [WebProfilerBundle] fixed typos 2012-10-13 12:22:02 +02:00
Tim Nagel
e7a4f71e4c Fix incorrect variable in FileProfilerStorage 2012-10-13 12:04:30 +02:00
Fabien Potencier
ee461cb566 merged branch pborreli/console-progress-precision (PR #5735)
This PR was merged into the master branch.

Commits
-------

61be89d [Console] [ProgressHelper] better percentage precision

Discussion
----------

[Console] [ProgressHelper] better percentage precision

With this code :
```php
$progress = new ProgressHelper();
$progress->start($output, 50);
$progress->display();
$progress->advance();
$progress->advance();
$progress->advance();
$progress->advance();
$progress->advance();
$progress->advance();
```
The output was :
```
  0/50 [>---------------------------]   0% // float(0)
  1/50 [>---------------------------]   0% // float(0)
  2/50 [>---------------------------]   0% // float(0)
  3/50 [==>-------------------------]  10% // float(0.1)
  4/50 [==>-------------------------]  10% // float(0.1)
  5/50 [==>-------------------------]  10% // float(0.1)
  6/50 [==>-------------------------]  10% // float(0.1)
```
With this PR :
```
  0/50 [>---------------------------]   0% // float(0)
  1/50 [>---------------------------]   2% // float(0.02)
  2/50 [=>--------------------------]   4% // float(0.04)
  3/50 [=>--------------------------]   6% // float(0.06)
  4/50 [==>-------------------------]   8% // float(0.08)
  5/50 [==>-------------------------]  10% // float(0.1)
  6/50 [===>------------------------]  12% // float(0.12)
```
Tests are included.

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

by sstok at 2012-10-13T09:22:22Z

ðŸ‘
2012-10-13 12:03:43 +02:00
Fabien Potencier
267412f0d6 [WebProfilerBundle] avoid the usage of the global app variable 2012-10-13 12:02:09 +02:00
Fabien Potencier
c65632246d [WebProfilerBundle] changed all includes to use the new Twig's notation 2012-10-13 12:02:06 +02:00
Fabien Potencier
dbcd171dd3 [WebProfilerBundle] moved all static assets directly into the templates
This has been done for several reasons:

 * for consistency with the way we already manage the WDT icons;
 * it makes the WebProfiler independant from the location of the assets (and from the asset() function)
 * this is the very first step to make the WebProfiler useable outside the full-stack framework (more commits soon)

There is still one asset() call though, which will be removed later on.
2012-10-13 10:49:57 +02:00
Pascal Borreli
61be89ddda [Console] [ProgressHelper] better percentage precision 2012-10-12 23:09:38 +00:00
Romain Neutron
ac01d5d752 Fix tests and CS 2012-10-12 09:30:41 +02:00
Romain Neutron
e396edbdc8 [Console] Add DialogHelper::askHiddenResponse method 2012-10-12 09:27:21 +02:00
Tamas Szijarto
9d8f689e7c UnitTest fix
- no return value
2012-10-11 18:34:49 +02:00
Tamas Szijarto
02b0b398df UnitTest fix
Check that the e-service initialized
2012-10-11 18:31:20 +02:00
Bilal Amarni
77fd70bc9d added a unit test 2012-10-11 15:44:22 +02:00
Bilal Amarni
b925b44c87 fixed #5384 2012-10-11 15:44:22 +02:00
Fabien Potencier
ccba363f64 merged branch jonathaningram/patch-10 (PR #5718)
This PR was merged into the master branch.

Commits
-------

74e2c5e Fix incorrect inheritdoc blocks

Discussion
----------

Fix incorrect inheritdoc blocks

Also add a docblock to stopwatch member variable.
2012-10-11 15:43:13 +02:00
Fabien Potencier
89f7b5eed8 [HttpFoundation] fixed empty path when using Request::create() (closes #5729) 2012-10-11 15:19:35 +02:00
Christophe Coevoet
8c6b7a4912 Fixed the handling of the intl locale when setting the default locale
Calling setDefaultLocale was replacing the intl locale even if the locale
was already set in the Request, thus leading to a different value than the
request locale.
2012-10-11 11:52:14 +02:00
Bernhard Schussek
e65ff0bcc2 [Form] Removed unused method ChoiceView::isSelected() 2012-10-11 08:28:46 +02:00
Marek Kalnik
5c895c854e [Form][Tests] Make *TestCase files abstract 2012-10-10 13:24:37 +02:00
Jonathan Ingram
74e2c5ef89 Fix incorrect inheritdoc blocks
Also add a docblock to stopwatch member variable.

Remove docblock from private member
2012-10-10 12:26:59 +11:00
Fabien Potencier
61ab652a3b [DomCrawler] fixed a bad merge 2012-10-09 14:26:19 +02:00
Alexander Kotynia
673f74b8e3 [HttpFoundation] Fixed #5697 - Request::createFromGlobals, Request::getContentType
Changed checking CONTENT_TYPE from server to headers variable

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #5697
Todo: -
License of the code: MIT
2012-10-09 12:01:07 +03:00
Fabien Potencier
1202d9a738 merged branch Tobion/path-slash (PR #5683)
This PR was merged into the 2.1 branch.

Commits
-------

1566f9f [Routing] fix handling of whitespace and synch between collection prefix and route pattern
90145d2 [Routing] fix handling of two starting slashes in the pattern

Discussion
----------

[Routing] fix handling of slashes and whitespace in pattern/prefix

BC break: no
feature addition: no

The first commit fixes the handling of two starting slashes in the pattern. It would be confused with a network path e.g. `//domain/path` when generating a path, so should be prevented.

The second commit fixes the handling of whitespace in RouteCollection::addPrefix. It wasn't trimmed there but it is trimmed in Route::setPattern. So it can be out-of-synch between RouteCollection::getPrefix <-> Route::getPattern.
2012-10-09 09:19:55 +02:00
Fabien Potencier
4e971e758e merged branch szicsu/UniversalClassLoader-FIX (PR #5692)
This PR was merged into the master branch.

Commits
-------

f66f110 FIX [2.1][ClassLoader]UniversalClassLoader not working with AnnotationRegistry::registerLoader

Discussion
----------

[2.1][ClassLoader]UniversalClassLoader not working with AnnotationRe...

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

The Doctrine\Common\Annotations\AnnotationRegistry::loadAnnotationClass examines the returning value of the loader and the load is successful only if the loader returns with "TRUE" value.
This is how method Symfony\Component\ClassLoader\ClassLoader::loadClass works, but it is not true for Symfony\Component\ClassLoader\UniversalClassLoader::loadClass.

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

by sstok at 2012-10-08T09:25:39Z

As this is a bug fix it should be done on 2.0

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

by stof at 2012-10-08T12:49:42Z

It is not a bugfix. Nothing enforces an autoloader to return a boolean in PHP.

And Symfony works with the annotation registry since 1.5 year (when it was introduced): https://github.com/symfony/symfony-standard/blob/2.0/app/autoload.php#L34-38

Btw, if you are using 2.1, I would recommend you to use the new ClassLoader instead of the UniversalClassLoader to autoload PSR-0 libraries. It has a simpler API (and returns the boolean needed by Doctrine) while supporting the same classes than the UniversalClasssLoader (both of them are supporting PSR-0 and nothing else)
2012-10-09 09:15:43 +02:00
Tobias Schultze
1566f9f4ad [Routing] fix handling of whitespace and synch between collection prefix and route pattern 2012-10-08 18:39:54 +02:00
Fabien Potencier
ddcf71c00e merged branch nanocom/fix_progress_helper (PR #5702)
This PR was merged into the master branch.

Commits
-------

bf9d2be [Console] Fixes in ProgressHelper

Discussion
----------

[Console] Fixes in ProgressHelper

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

Changed from true to false the default "newline" parameter of the method "overwrite" (to stick with the default value of OutputInterface).
2012-10-08 18:08:07 +02:00
Arnaud Kleinpeter
bf9d2be77d [Console] Fixes in ProgressHelper 2012-10-08 17:17:46 +02:00
Leonid Terentyev
b439d13a81 fixed DomCrwaler/Form to handle <button> when submitted 2012-10-08 14:13:27 +03:00
Sebastiaan Stok
45349602e3 [Security] Added Pbkdf2PasswordEncoder
[Security] changed default iterations of Pbkdf2PasswordEncoder to 1000 instead of 5000

[Security] Improved description of PBKDF2 encoder

[SecurityBundle] added PBKDF2 PasswordEncoder

updated CHANGELOG.md

[Security] Use the build-in hash_pbkdf2() when available

[SecurityBundle] added information about hash_algorithm for configuration

[Security] always check algorithm and fixed CS
2012-10-08 11:17:32 +02:00
Tamas Szijarto
a4f3ea970a [2.1][DependencyInjection] Incomplete error handling in the container 2012-10-07 20:46:50 +02:00
Tamas Szijarto
f66f110024 FIX [2.1][ClassLoader]UniversalClassLoader not working with AnnotationRegistry::registerLoader 2012-10-07 19:13:37 +02:00
Fabien Potencier
f187beed85 fixed typo 2012-10-06 22:09:27 +02:00
Fabien Potencier
5956f9f2b4 Merge branch '2.1'
* 2.1:
  fixed CS
  added doc comments
  added doc comments
  [Validator] Updated swedish translation
  Update src/Symfony/Component/Validator/Resources/translations/validators.de.xlf
  [2.1] Exclude tests from zips via gitattributes
  [HttpKernel][Translator] Fixed type-hints
  Updated lithuanian validation translation
  [DomCrawler] Allows using multiselect through Form::setValues().
  [Translation] forced the catalogue to be regenerated when a resource is added (closes symfony/Translation#1)
  Unit test for patched method OptionsResolver::validateOptionValues().
  validateOptionValues throw a notice if an allowed value is set and the corresponding option isn't.
  [Form] Hardened code of ViolationMapper against errors
  [HttpFoundation] Fixed #5611 - Request::splitHttpAcceptHeader incorrect result order.
  [Form] Fixed negative index access in PropertyPathBuilder
  Update src/Symfony/Component/Validator/Resources/translations/validators.ro.xlf

Conflicts:
	src/Symfony/Component/DomCrawler/Form.php
	src/Symfony/Component/Process/Process.php
2012-10-06 21:57:59 +02:00
Fabien Potencier
f152170899 merged branch xrstf/2.1 (PR #5687)
This PR was merged into the 2.1 branch.

Commits
-------

65cf3a0 added doc comments

Discussion
----------

added doc comments

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

by stof at 2012-10-06T11:27:23Z

closing in favor of #5686 which targets 2.0

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

by fabpot at 2012-10-06T12:38:17Z

This one cannot be closed as it contains more phpdocs than in the 2.0 branch.
2012-10-06 21:56:03 +02:00
Fabien Potencier
60b54090bb Merge branch '2.0' into 2.1
* 2.0:
  fixed CS
  added doc comments
  [HttpKernel][Translator] Fixed type-hints
  [Translation] forced the catalogue to be regenerated when a resource is added (closes symfony/Translation#1)
  [HttpFoundation] Fixed #5611 - Request::splitHttpAcceptHeader incorrect result order.

Conflicts:
	src/Symfony/Component/Process/Process.php
	tests/Symfony/Tests/Component/HttpFoundation/RequestTest.php
2012-10-06 21:54:37 +02:00
Fabien Potencier
b3345c9abf [Config] added some phpdocs 2012-10-06 21:50:10 +02:00
Johannes
36bbaf31ac added entry to changelog 2012-10-06 17:22:10 +03:00
Christoph
b2614aa7e6 fixed CS 2012-10-06 14:46:45 +02:00
Johannes M. Schmitt
0187a1ac94 adds two convenience methods for optional configuration sections 2012-10-06 14:13:41 +02:00
Christoph
65cf3a0d8a added doc comments 2012-10-06 06:44:21 +02:00
Christoph
e7c2e90069 added doc comments 2012-10-06 06:39:50 +02:00
Ken Marfilla
63b480edb0 [Console] fixed #5316 2012-10-06 09:36:33 +08:00
Tobias Schultze
90145d2b71 [Routing] fix handling of two starting slashes in the pattern
It would be confused with a network path e.g. '//domain/path' when generating a path so should be prevented.
2012-10-06 01:40:30 +02:00
Fabien Potencier
6463c9919c merged branch docteurklein/fix-router-resolve-string (PR #4995)
This PR was merged into the master branch.

Commits
-------

4b86765 [FrameworkBundle] recursively resolve container parameter placeholders for arrays in router _defaults

Discussion
----------

[2.2] [FrameworkBundle] avoid trying to resolve container placeholders on arrays on router _defaults

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

Permits to pass arrays in route `_defaults`.

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

by stof at 2012-07-20T13:07:36Z

This seems weird. An array could contain parameters in it.

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

by docteurklein at 2012-07-20T13:17:00Z

@stof An object too then, no ? Why accepting objects but not arrays ? Would you propose to recursively resolve array values ?

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

by stof at 2012-07-20T13:31:06Z

@docteurklein Resolving array values recursively would be consistent with the way the DIC parameters are resolved. I don't really see how you would resolve objects (and btw, it is pretty much an edge case as you cannot really put an object in your routes if you define them in your YAML or XML config files or with annotations)

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

by docteurklein at 2012-07-20T13:36:43Z

@stof I agree. I can manage recursive array resolving if needed.

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

by fabpot at 2012-07-23T13:58:07Z

Can you squash your commits before I merge? Thanks.

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

by docteurklein at 2012-07-23T14:39:17Z

@fabpot  done.
2012-10-05 19:11:53 +02:00
Fabien Potencier
16405f901d merged branch fabpot/twig (PR #5660)
This PR was merged into the master branch.

Commits
-------

5c809d8 [TwigBundle] added support for Twig namespaced paths (Twig 1.10)

Discussion
----------

[TwigBundle] added support for Twig namespaced paths (Twig 1.10)

In a template, you can now use native Twig template names, instead of
the Symfony ones:

Before (still works):

    {% extends "AcmeDemoBundle::layout.html.twig" %}
    {% include "AcmeDemoBundle:Foo:bar.html.twig" %}

After:

    {% extends "@AcmeDemo/layout.html.twig" %}
    {% include "@AcmeDemo/Foo/bar.html.twig" %}

Using native template names is also faster.

The only drawback is that the new notation looks similar to the way we
locate resources in Symfony, which would be
`@AcmeDemoBundle/Resources/views/Foo/bar.html.twig`. We could have used
the same notation, but it is rather verbose (and by the way, using this
notation did not work anyway in templates).

TODO: update documentation

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

by fabpot at 2012-10-03T13:36:56Z

I forgot to mention why I'd like to include this change besides performance: this would allow to share templates between a project using the Symfony2 full-stack framework and any other project using Twig.

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

by henrikbjorn at 2012-10-03T13:50:48Z

👠Will the old notation be deprecated at some point?

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

by stof at 2012-10-03T14:29:50Z

@fabpot does it still support overwriting templates ?
2012-10-05 18:44:24 +02:00
Chris Heng
63a228c456 Map normalized header names to original capitalization 2012-10-05 18:34:13 +08:00
Fabien Potencier
8062031a0a merged branch persand/2.1 (PR #5677)
This PR was squashed before being merged into the 2.1 branch (closes #5677).

Commits
-------

cf422bf [Validator] Updated swedish translation

Discussion
----------

[Validator] Updated swedish translation

Updated existing strings with plural translations and added some new translations as well.

https://github.com/symfony/symfony/issues/5628
2012-10-04 22:14:54 +02:00
Per Sandström
cf422bfed7 [Validator] Updated swedish translation 2012-10-04 22:14:54 +02:00
Marco
132ba25bbd Update src/Symfony/Component/Validator/Resources/translations/validators.de.xlf
Adding new localized strings and fixing pluralization for german validation.
2012-10-04 19:40:30 +02:00
Fabien Potencier
2be47200e0 [HttpKernel] fixed the traceable event dispatcher when an event of a name is dispatched when an event of the same name is already being dispatched 2012-10-04 17:28:41 +02:00
Igor Wiedler
462dddfac9 [2.1] Exclude tests from zips via gitattributes 2012-10-04 17:17:57 +02:00
Drak
22c7a910b8 [HttpKernel][Translator] Fixed type-hints 2012-10-04 16:11:30 +01:00
Fabien Potencier
0f67dca1fe [Process] fixed a unit test 2012-10-04 16:37:34 +02:00
Fabien Potencier
32a8502304 [Process] fixed phpdoc 2012-10-04 16:23:11 +02:00
Fabien Potencier
d55546675a [Process] updated CHANGELOG 2012-10-04 16:21:40 +02:00
Fabien Potencier
0ba4886721 merged branch boombatower/process-restart (PR #5456)
This PR was squashed before being merged into the master branch (closes #5456).

Commits
-------

be62fcc [process] provide a restart method.

Discussion
----------

[process] provide a restart method.

Pull request for issue #5452.

Another possibility would be to allow for either run() or start() scenarios, but I am not sure that is terribly useful since restart() with a new process lends itself to restarting longer running services when they crash and you want the old process so you can inspect the logs and what not.

Otherwise, something like this might work, but doesn't allow for run() to return status code. Someone can get around that by getting manually on returned process.

```php
<?php
public function restart($method = 'start', $callback = null)
{
    if ($this->isRunning()) {
        throw new \RuntimeException('Process is already running');
    }

    if ($method != 'start' && $method != 'run') {
        throw new \RuntimeException('Method must be start or run');
    }

    $process = clone $this;
    $process->$method();
    return $process;
}
```

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

by pborreli at 2012-09-07T07:17:26Z

can you add some tests please ?
2012-10-04 16:20:59 +02:00
boombatower
be62fcca7f [process] provide a restart method. 2012-10-04 16:20:58 +02:00
Fabien Potencier
c1e77d63d7 [Finder] tweaked previous merge 2012-10-04 15:24:19 +02:00
Fabien Potencier
bb12295dc2 merged branch jfsimon/issue-4031 (PR #4061)
This PR was squashed before being merged into the master branch (closes #4061).

Commits
-------

32bb754 [2.2] [WIP] [Finder] Adding native finders implementations

Discussion
----------

[2.2] [WIP] [Finder] Adding native finders implementations

Work in progress...

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

This PR intends to add native finders implementation based on shell command execution.
Planned support concerns:
- GNU `find` command -> done
- MS `FINDSTR` command

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

by fabpot at 2012-05-15T06:19:50Z

@jfsimon What's the status of this PR?

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

by jfsimon at 2012-05-15T06:43:34Z

@fabpot 2 features missing for the GNU find adapter: sorting result with `sort` command and excluding directories; 1 bug (even if tests pass, which let me thing it needs more tests): regex matching is done on full path, not basename. Then I'll need to work on MS `FINDSTR` command adapter (I talked to Pierre Couzy, and he's OK to help when he will have time to). I'll try to push the sort and directory excluding features this week.

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

by jalliot at 2012-05-15T09:51:20Z

BTW @jfsimon, in the (quite specific) case where you don't precise filenames or other options but only `contains` or `notContains`, you could call `grep` directly without the `find`. That would speed things up a bit more :)

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

by fabpot at 2012-06-28T15:20:55Z

@jfsimon Would be nice to be able to include this PR before 2.1.0 beta2. Would you have time to finish the work soon?

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

by jfsimon at 2012-06-29T11:07:19Z

@fabpot I'd say next week for GNU part with some help from @smaftoul.

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

by jfsimon at 2012-07-10T08:20:44Z

It seems that I need to perform some benchmarks as find may not be so fast :/

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

by jfsimon at 2012-07-10T16:51:19Z

@fabpot @stof do you think I can add benchmark scripts inside the component, or should I create a new repository for that?

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

by fabpot at 2012-07-10T16:57:05Z

Then benchmark scripts won't be part of the repository in the end, so you should create a new repo for that.

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

by jfsimon at 2012-07-13T17:57:03Z

@fabpot @smaftoul Benchmark is ready (more cases to come): https://github.com/jfsimon/symfony-finder-benchmark
I'm glad to see that `gnu_find` adapter is really faster than the `php` one!

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

by stof at 2012-07-13T19:17:20Z

@jfsimon could you make a gist with the result of the benchmark ? I think many people will be lazy to run it themselves when looking at this ticket, and people using windows will probably be unable to run it at all :)

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

by jfsimon at 2012-07-13T21:37:50Z

First results: https://gist.github.com/3107676

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

by jfsimon at 2012-08-01T07:26:21Z

Sorry, I forgot `[Finder]` tag in 3 commits message... is it fixable?

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

by stof at 2012-08-01T08:58:28Z

@jfsimon you can edit the commit message whne doing an interactive rebase.

and btw, you will need to do a rebase anyway: the PR conflicts with master

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

by jfsimon at 2012-08-01T13:11:20Z

@stof Okay, I rebased origin/master. As you can see, above comments are now floating in the air :/

Strangely, rebase broke my tests... I need to fix them :(

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

by stof at 2012-08-01T13:14:11Z

Weird. github still tells me that the PR cannot be merged. Did you fetch the latest master before rebasing ?

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

by jfsimon at 2012-08-01T13:19:25Z

Weird, git fetch only fetched my own repository, I had to `git fetch origin`. I'm rebasing... again.

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

by jfsimon at 2012-08-01T14:50:02Z

@stof Rebase done, tests fixed :)

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

by stof at 2012-08-01T15:18:19Z

hmm, Travis does not seems to agree with the second statement :)

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

by jfsimon at 2012-08-01T17:33:55Z

Ouch, I'm really sorry, I was in the wrong tmux window when started tests :/
Good news, I have to fix my last problem (the regex tested against full path instead of basename) to fix the tests.
I'm on it.

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

by jfsimon at 2012-08-01T18:16:10Z

Grrr...  I didnt start full test suite, shame on me.

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

by jfsimon at 2012-08-01T19:10:02Z

Same bench than before, but with non empty files: https://gist.github.com/3229865

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

by jfsimon at 2012-08-01T19:23:32Z

It seems that searching files by their name with regex is really fatser than by glob with find: https://gist.github.com/3229911
@fabpot should I convert glob to regex when using `contains` and `notContains`?

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

by jfsimon at 2012-08-01T19:55:02Z

It seems that I'm an idiot, I used `contains` instead of `name`.
Real bench is here: https://gist.github.com/3230139
@fabpot sorry for the mess, I should go to bed :/
Results are still convincing!

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

by stof at 2012-08-01T20:04:42Z

They are, but the regex are not faster than glob anymore in these results

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

by jfsimon at 2012-08-01T21:17:25Z

@travisbot you failed, not me!

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

by jfsimon at 2012-08-01T21:18:28Z

Anyone to launch benchmark with php 5.4?
https://github.com/jfsimon/symfony-finder-benchmark

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

by lyrixx at 2012-08-01T22:25:08Z

Bench with php 5.4.5
https://gist.github.com/3231244
2012-10-04 15:06:12 +02:00
Jean-François Simon
32bb754fbe [2.2] [WIP] [Finder] Adding native finders implementations 2012-10-04 15:06:11 +02:00
Fabien Potencier
47900b8aca [HttpKernel] fixed regression caused by the previous commit 2012-10-04 13:36:08 +02:00
Fabien Potencier
fbf19f0fbf [HttpKernel] made the ExceptionHandler more flexible 2012-10-04 13:24:43 +02:00
Nerijus Arlauskas
6a6b4aede6 Updated lithuanian validation translation 2012-10-04 12:08:15 +03:00
Fabien Potencier
a086cdc4ef fixed CS 2012-10-04 08:44:49 +02:00
Fabien Potencier
6c20643a72 merged branch dirkaholic/testDefaultInputDefintion (PR #5668)
This PR was squashed before being merged into the master branch (closes #5668).

Commits
-------

1117499 [2.2][Console] Test default input defintion and default helper set

Discussion
----------

[2.2][Console] Test default input defintion and default helper set

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

See: https://github.com/symfony/symfony/pull/5638
2012-10-04 08:43:57 +02:00
Dirk Pahl
111749945c [2.2][Console] Test default input defintion and default helper set 2012-10-04 08:43:56 +02:00
Tobias Schultze
faee47c64f added note in changelog about disabling requirements check 2012-10-03 21:52:16 +02:00
Tobias Schultze
5fbed361c2 extended phpdoc of ConfigurableRequirementsInterface 2012-10-03 21:00:23 +02:00
Tobias Schultze
1964d43823 [Routing] added test for disabled requirements check 2012-10-03 21:00:22 +02:00
Tobias Schultze
98fb915bfb [Routing] allow disabling the requirements check on URL generation 2012-10-03 21:00:21 +02:00
Fabien Potencier
7276b2d0b8 merged branch Tobion/strictrequirements2 (PR #5445)
This PR was merged into the master branch.

Commits
-------

e22823b [Routing] context params should have higher priority than defaults
16c1b01 [Routing] fixed 4 bugs in the UrlGenerator

Discussion
----------

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

reopened version of #5181 (cherry-picked)

On top of that I fixed #5437 in my code and added test case.

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

by Tobion at 2012-10-03T18:41:45Z

@fabpot ping

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

by fabpot at 2012-10-03T18:43:43Z

IIUC, #5437 is a regression in 2.1 and should be done in 2.1, no?

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

by Tobion at 2012-10-03T18:46:42Z

It's not in 2.1 anymore as you reverted the PR.  #5437 is not valid currently and can be closed.
So this can either be merged in master or 2.1 whatever you prefer.
2012-10-03 20:51:18 +02:00
Tobias Schultze
94f2fb91d7 added info to routing changelog 2012-10-03 19:28:37 +03:00
Tobias Schultze
4eee88f22b [Routing] improve matching performance by using possesive quantifiers when possible (closes #5471)
My benchmarks showed a performance improvement of 20% when matching routes that make use of possesive quantifiers because it prevents backtracking when it's not needed
2012-10-03 16:41:15 +02:00
Tobias Schultze
a3147e9f13 [Routing] default requirement of variable should not disallow previous char, but the slash '/' (closes #5469) 2012-10-03 16:37:44 +02:00
Tobias Schultze
4868bec46c [Routing] fix Compiler when previous char of placeholder is no real separator (closes #5423) 2012-10-03 16:33:06 +02:00
Fabien Potencier
190ccf8dbe merged branch Tobion/compiler (PR #4225)
This PR was merged into the master branch.

Commits
-------

005a9a3 [Routing] fixed RouteCompiler for adjacent and nested placeholders

Discussion
----------

[2.2] [Routing] fixed RouteCompiler for adjacent placeholders

Tests pass: yes
Feature addition: no
Fixes: #4215
BC break: no

- Nesting placeholders works now properly, e.g. `/{foo{bar}}`. Only `bar` is a variable, the rest is static text.
- Variables without separator work now correctly too, e.g. `/{w}{x}{y}{z}.{_format}`. All variables will have the correct default regex in the current manner, that is exclude the previous static char and the next static char (which means disregarding the placeholder in between that have no seperator).

As you can see, I have not modified any tests, only added some. So this change is BC. The compiler now works under all conditions and does not fail for such patterns.

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

by Tobion at 2012-05-08T22:34:58Z

ready for review / merging
Thanks @snc for giving a helpful tip.

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

by Tobion at 2012-06-12T23:22:54Z

fabpot told me, he doesn't like PRs that both fix and enhance stuff. So I reworked this PR so that it only contains the bug fixes.
The new PR #4563 contains the feature addition.

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

by Tobion at 2012-06-26T12:33:43Z

ping @fabpot

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

by Tobion at 2012-08-14T16:29:27Z

Why wait for 2.2? It's a bugfix only, without BC break.

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

by Tobion at 2012-08-31T17:04:37Z

@fabpot I think this should go into 2.1
2012-10-03 16:28:55 +02:00
Fabien Potencier
b6dfa76b7d merged branch pawaclawczyk/bugfix-multiselect-setvalues (PR #5502)
This PR was squashed before being merged into the 2.1 branch (closes #5502).

Commits
-------

6200290 PSR-2 correct.
5c17388 Allows using multiselect through Form::setValues().

Discussion
----------

[DomCrawler] Allows using multiselect through Form::setValues().

Patch allows set multiple values in select using setValues() method, as it is used in Symfony\Component\BrowserKit\Client::submit().
2012-10-03 16:20:23 +02:00
Paweł Wacławczyk
74d10d666c [DomCrawler] Allows using multiselect through Form::setValues(). 2012-10-03 16:20:23 +02:00
Fabien Potencier
f90882927b merged branch kerihenare/ticket_5611 (PR #5612)
This PR was merged into the 2.0 branch.

Commits
-------

6c59fbd [HttpFoundation] Fixed #5611 - Request::splitHttpAcceptHeader incorrect result order.

Discussion
----------

[HttpFoundation] Request::splitHttpAcceptHeader incorrect result order.

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

Makes items with equal q-values return in the original provided order. Fixes tests to reflect this behavior.

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

by kerihenare at 2012-10-02T20:59:11Z

To avoid confusion over the modified language test I have instead created new tests.
2012-10-03 16:08:54 +02:00
Fabien Potencier
b2dd04df93 [Process] fixed previous merge 2012-10-03 16:02:00 +02:00
Fabien Potencier
5c809d8ffb [TwigBundle] added support for Twig namespaced paths (Twig 1.10)
In a template, you can now use native Twig template names, instead of
the Symfony ones:

Before (still works):

    {% extends "AcmeDemoBundle::layout.html.twig" %}
    {% include "AcmeDemoBundle:Foo:bar.html.twig" %}

After:

    {% extends "@AcmeDemo/layout.html.twig" %}
    {% include "@AcmeDemo/Foo/bar.html.twig" %}

Using native template names is also faster.

The only drawback is that the new notation looks similar to the way we
locate resources in Symfony, which would be
@AcmeDemoBundle/Resources/views/Foo/bar.html.twig. We could have used
the same notation, but it is rather verbose (and by the way, using this
notation did not work anyway in templates).
2012-10-03 15:33:19 +02:00
BilgeXA
46d358f348 Fluent interface 2012-10-03 12:27:59 +02:00
Fabien Potencier
a6ae6f6ec3 [Translation] forced the catalogue to be regenerated when a resource is added (closes symfony/Translation#1) 2012-10-03 12:03:29 +02:00
Olivier Maisonneuve
1d8931c79c Unit test for patched method OptionsResolver::validateOptionValues(). 2012-10-03 11:57:12 +02:00
Olivier Maisonneuve
23962fc47c validateOptionValues throw a notice if an allowed value is set and the corresponding option isn't. 2012-10-03 11:57:12 +02:00
Fabien Potencier
f8a6cf2d31 merged branch bschussek/issue5578 (PR #5655)
This PR was merged into the 2.1 branch.

Commits
-------

2568432 [Form] Hardened code of ViolationMapper against errors

Discussion
----------

[Form] Hardened code of ViolationMapper against errors

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

This ticket improves the code of ViolationMapper to reduce the risk of bugs and in order to make further bug fixing easier. It was implemented while trying to solve #5578 and is semantically equivalent to the previous version.
2012-10-03 08:13:50 +02:00
Bernhard Schussek
2568432dd8 [Form] Hardened code of ViolationMapper against errors 2012-10-03 06:43:02 +02:00
Keri Henare
6c59fbdb59 [HttpFoundation] Fixed #5611 - Request::splitHttpAcceptHeader incorrect result order.
* Makes items with equal q-values return in the original provided order.
* Fixes tests to reflect this behavior
2012-10-03 09:31:34 +13:00
Bernhard Schussek
2d412292d5 [Form] Fixed negative index access in PropertyPathBuilder 2012-10-02 20:20:14 +02:00
Rares Vlasceanu
ed1cf546e0 Update src/Symfony/Component/Validator/Resources/translations/validators.ro.xlf
Pluralization of $minMessage, $maxMessage and $exactMessage is required in LengthValidator.
The English version is already updated.
2012-10-02 18:39:32 +02:00
Fabien Potencier
0bfa86ce8a Merge branch '2.1'
* 2.1:
  [2.1] Fix SessionHandlerInterface autoloading
  Remove executable bit from HttpKernel/DependencyInjection/ConfigurableExtension.php
  [2.0][http-foundation] Fix Response::getDate method
  [DoctrineBridge] Require class option for DoctrineType
  [HttpFoundation] fixed the path to the SensioHandlerInterface class in composer.json
  Support the new Microsoft URL Rewrite Module for IIS 7.0. @see http://framework.zend.com/issues/browse/ZF-4491 @see http://framework.zend.com/code/revision.php?repname=Zend+Framework&rev=24842
  fixed undefined variable
  hasColorSupport does not take an argument
  Improve FilterResponseEvent docblocks Response ref
2012-10-02 12:23:35 +02:00
Fabien Potencier
49ca648245 Merge branch '2.0' into 2.1
* 2.0:
  [2.0][http-foundation] Fix Response::getDate method
  Support the new Microsoft URL Rewrite Module for IIS 7.0. @see http://framework.zend.com/issues/browse/ZF-4491 @see http://framework.zend.com/code/revision.php?repname=Zend+Framework&rev=24842
  fixed undefined variable
  hasColorSupport does not take an argument
  Improve FilterResponseEvent docblocks Response ref

Conflicts:
	tests/Symfony/Tests/Component/HttpFoundation/ResponseTest.php
2012-10-02 12:22:56 +02:00
Igor Wiedler
47d7531112 [2.1] Fix SessionHandlerInterface autoloading
The path for 2.1 is also incorrect. For master, this was fixed in 3b4708. This patch adds the `target-dir` prefix to the autoloading base directory of the HttpFoundation stubs.
2012-10-01 17:30:10 +03:00
Fabien Potencier
7b22da693c merged branch jmikola/2.1-doctrine-type-option (PR #5632)
This PR was merged into the 2.1 branch.

Commits
-------

3cc3c67 [DoctrineBridge] Require class option for DoctrineType

Discussion
----------

[DoctrineBridge] Require class option for DoctrineType

This is a resubmission of #5289 against the 2.1 branch.

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

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

by stof at 2012-10-01T11:28:39Z

ðŸ‘
2012-10-01 13:42:36 +02:00
Eugene Leonovich
315ffc7f69 Remove executable bit from HttpKernel/DependencyInjection/ConfigurableExtension.php 2012-10-01 11:23:15 +02:00
Fabien Potencier
7a661d5a60 merged branch fabpot/data-collector (PR #5619)
This PR was merged into the master branch.

Commits
-------

2a673d8 Replaced ContainerAwareTraceableEventDispatcher with TraceableEventDispatcher

Discussion
----------

Replaced ContainerAwareTraceableEventDispatcher with TraceableEventDispatcher

The ContainerAwareTraceableEventDispatcher class was tied to both the
Symfony container and the HttpKernel profiler. It made it non reusable
in another context.

The new TraceableEventDispatcher only keeps the HttpKernel profiler
integration and is able to wrap any other event dispatcher. It makes it
reusable in frameworks using the Symfony HttpKernel component like
Silex.

The only drawback is that we don't have access to the listener
priorities in the collected data anymore (but the listeners are still
ordered correctly). The change is still worth it I think.

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

by stof at 2012-09-27T13:38:24Z

You should add some tests for your new TraceableDispatcher
2012-10-01 01:47:45 +02:00
Fabien Potencier
2a673d8626 Replaced ContainerAwareTraceableEventDispatcher with TraceableEventDispatcher
The ContainerAwareTraceableEventDispatcher class was tied to both the
Symfony container and the HttpKernel profiler. It made it non reusable
in another context.

The new TraceableEventDispatcher only keeps the HttpKernel profiler
integration and is able to wrap any other event dispatcher. It makes it
reusable in frameworks using the Symfony HttpKernel component like
Silex.

The only drawback is that we don't have access to the listener
priorities in the collected data anymore (but the listeners are still
ordered correctly). The change is still worth it I think.
2012-10-01 01:46:38 +02:00
Fabien Potencier
93b084c73d Revert "merged branch fabpot/data-collector (PR #5619)"
This reverts commit 3f0a370e3b, reversing
changes made to bf1ab93130.
2012-10-01 01:26:03 +02:00
Fabien Potencier
3f0a370e3b merged branch fabpot/data-collector (PR #5619)
This PR was merged into the master branch.

Commits
-------

7ef2e9d Replaced ContainerAwareTraceableEventDispatcher with TraceableEventDispatcher

Discussion
----------

Replaced ContainerAwareTraceableEventDispatcher with TraceableEventDispatcher

The ContainerAwareTraceableEventDispatcher class was tied to both the
Symfony container and the HttpKernel profiler. It made it non reusable
in another context.

The new TraceableEventDispatcher only keeps the HttpKernel profiler
integration and is able to wrap any other event dispatcher. It makes it
reusable in frameworks using the Symfony HttpKernel component like
Silex.

The only drawback is that we don't have access to the listener
priorities in the collected data anymore (but the listeners are still
ordered correctly). The change is still worth it I think.

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

by stof at 2012-09-27T13:38:24Z

You should add some tests for your new TraceableDispatcher
2012-10-01 01:06:00 +02:00
Fabien Potencier
7ef2e9d240 Replaced ContainerAwareTraceableEventDispatcher with TraceableEventDispatcher
The ContainerAwareTraceableEventDispatcher class was tied to both the
Symfony container and the HttpKernel profiler. It made it non reusable
in another context.

The new TraceableEventDispatcher only keeps the HttpKernel profiler
integration and is able to wrap any other event dispatcher. It makes it
reusable in frameworks using the Symfony HttpKernel component like
Silex.

The only drawback is that we don't have access to the listener
priorities in the collected data anymore (but the listeners are still
ordered correctly). The change is still worth it I think.
2012-09-30 20:11:37 +02:00
Fabien Potencier
bf1ab93130 [Console] fixed typo 2012-09-30 16:27:49 +02:00
Benjamin Grandfond
1a53b121aa [2.0][http-foundation] Fix Response::getDate method 2012-09-30 16:03:57 +02:00
Bilal Amarni
3b47088c58 fixed some classmap paths 2012-09-30 14:29:13 +02:00
Fabien Potencier
649fd5b3d2 Merge branch 'progress-helper'
* progress-helper:
  [Console] added some basic tests for the ProgressHelper class
  [Console] converted options to proper setters in ProgressHelper
  [2.2][Console] Add ProgressHelper
2012-09-30 02:51:51 +02:00
Jeremy Mikola
3cc3c67e5a [DoctrineBridge] Require class option for DoctrineType 2012-09-29 16:16:47 -07:00
Fabien Potencier
7b3297621a [Console] added some basic tests for the ProgressHelper class 2012-09-30 00:37:08 +02:00
Fabien Potencier
729e3bfcaf [Console] converted options to proper setters in ProgressHelper 2012-09-29 22:11:59 +02:00
Fabien Potencier
2598323632 merged branch leek/feature/progress-helper (PR #3501)
This PR was squashed before being merged into the master branch (closes #3501).

Commits
-------

4f3ded7 Actually this is worse
72a1c65 * Coding standards fixes * Changed `started` to `startTime` * Other fixes/edits
8249928 * Weeks/months/years is probably unrealistic * Set some sensible padding defaults * Use isset() instead of is_array()
37b62bf Fixing bug for elapsed time between 1 and 2 seconds
8fe4568 Special formatting for when there is no maximum set
75f532f Minor docblock updates
e436e1a Adding ProgressHelper for Console Component

Discussion
----------

[2.2][Console] Add ProgressHelper

[![Build Status](https://secure.travis-ci.org/leek/symfony.png?branch=feature/progress-helper)](http://travis-ci.org/leek/symfony)

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

--

I find myself needing some sort of progress indicator in most of my Console applications.
If this is something that could possibly be apart of Symfony, that would be great.

**Example:**
![Progress Example](http://i.imgur.com/a0wGQ.gif)

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

by jmikola at 2012-03-05T03:08:24Z

Do you have an example of this being used within a console command?

I'd be curious what the performance overhead is. My earliest console commands (nearly 2 years ago) would print status during each iteration (for a database migration) and I found the impact noticeable. After some time, I revised it to only print each X iterations, which often matched up with the batch size inserts/updates.

But for the last year, I've been using [declare(ticks=X)](http://php.net/manual/en/control-structures.declare.php) and have been quite happy with the results. By tuning the tick interrupt, the performance overhead is very small. It's especially helpful when dealing with processing code that is difficult to interrupt with a manual call to update the progress display, as PHP takes care of invoking the tick handler for me. I've thought about making such a console component helper for it, but I think the implementation is too invasive to abstract into a helper.

Here's an example of it being used in OrnicarMessageBundle's [MongoDBMigrateMetadataCommand](https://github.com/ornicar/OrnicarMessageBundle/blob/master/Command/MongoDBMigrateMetadataCommand.php).

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

by leek at 2012-03-05T04:05:29Z

@jmikola: Here is a simple example:

```php
<?php
// ...
    protected function execute(InputInterface $input, OutputInterface $output)
    {
        $progress = $this->getHelperSet()->get('progress');
        $progress->start($output, 50);

        $i = 0;
        while ($i++ < 50) {
            usleep(mt_rand(20000, 200000));
            $progress->advance();
        }

        $progress->finish();
    }
```

The performance overhead shouldn't be much more than a standard `$output->write()` call. When used with a loop doing 1000's of iterations, you can set the `redrawFreq` option to something more appropriate to control how often the progress indicator is redrawn to the console.

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

by leek at 2012-03-10T10:05:32Z

Added some minor updates along with an example GIF of 2 of the progress bars (see edited PR).

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

by jmikola at 2012-03-10T15:22:29Z

Why does `1 sec` flash over to `1 secs` before `2 secs` is rendered?

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

by henrikbjorn at 2012-03-10T15:26:08Z

ðŸ‘

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

by leek at 2012-03-10T16:07:08Z

@jmikola: Thanks! I didn't even notice that. Fixed.

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

by drak at 2012-03-11T09:04:58Z

What an amazing PR.  I feel like I just have to write some code that uses this feature just because it's there!

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

by henrikbjorn at 2012-03-11T09:55:50Z

This is needed a lot, we have a bunch of import scripts where this is useful.

@fabpot what are your thoughts on this?

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

by francoispluchino at 2012-03-14T12:34:38Z

ðŸ‘

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

by vicb at 2012-03-14T13:00:42Z

could you please order the properties & methods by visibility according to the Sf2 CS.

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

by leek at 2012-03-14T19:08:52Z

No problem - I'll make the requested changes tonight.

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

by stof at 2012-04-03T22:48:45Z

@fabpot ping

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

by stloyd at 2012-04-14T09:46:31Z

@fabpot Any hope to get this in 2.1 ?

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

by mvriel at 2012-05-15T19:28:34Z

ðŸ‘

Tried it out by manually including it in my project and works like a charm

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

by blaugueux at 2012-05-23T18:46:15Z

Up ! It will be great to have this feature in the next release.

@fabpot ping

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

by guilhermeblanco at 2012-05-28T22:58:35Z

@fabpot tried on my app and everything works fine.
Any plans to merge this one into 2.1?

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

by damonjones at 2012-05-29T02:31:39Z

+1
This would be a very nice feature to have in 2.1.

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

by fabpot at 2012-05-29T06:18:57Z

This is scheduled for 2.2.

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

by Burgov at 2012-08-16T13:04:34Z

I have a service which downloads a file using wget though the console component, and reads the progress from stderr. Rather than advancing in steps, i'd like to be able to set the current progress. Something like this method might be a nice addition:

```php
    public function setCurrent($value, $redraw = false)
    {
        $this->advance($value - $this->current, $redraw);
    }
```
2012-09-29 21:39:42 +02:00
leek
4b89aae98c [2.2][Console] Add ProgressHelper 2012-09-29 21:39:40 +02:00
Beau Simensen
8bc9f75642 Make secret not be required 2012-09-29 12:17:16 -07:00
Fabien Potencier
4e3ea22736 [HttpFoundation] fixed the path to the SensioHandlerInterface class in composer.json 2012-09-29 18:56:30 +02:00
Fabien Potencier
dda2f7cdb3 merged branch jalliot/autoloader-update (PR #5213)
This PR was merged into the master branch.

Commits
-------

92e10a8 Updated HttpFoundation and Locale for proper Composer autoloading

Discussion
----------

Updated HttpFoundation and Locale for proper Composer autoloading

This PR uses better Composer autoloading strategy for the stubs in HttpFoundation and Locale.

It also fixes a bug inside HttpFoundation's composer.json file where the path for SessionHandlerInterface was wrong.

[![Build Status](https://secure.travis-ci.org/jalliot/symfony.png?branch=autoloader-update)](http://travis-ci.org/jalliot/symfony)

After merging this PR and updating the vendors of the SE, you can also merge symfony/symfony-standard#387

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

by datiecher at 2012-09-05T11:15:39Z

Any updates on this issue?

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

by jalliot at 2012-09-05T16:43:46Z

Well I guess it is up to @fabpot to decide now :)

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

by drak at 2012-09-07T11:59:22Z

> It also fixes a bug inside HttpFoundation's composer.json file where the path for SessionHandlerInterface was wrong.

If so should be part of a separate PR imo.
2012-09-29 18:51:40 +02:00
sasezaki
7444cb9725 Support the new Microsoft URL Rewrite Module for IIS 7.0. @see http://framework.zend.com/issues/browse/ZF-4491 @see http://framework.zend.com/code/revision.php?repname=Zend+Framework&rev=24842 2012-09-28 21:25:17 +02:00
Fabien Potencier
2c4ed86197 merged branch dlsniper/wpb-improvements (PR #5518)
This PR was squashed before being merged into the master branch (closes #5518).

Commits
-------

3303ca2 WPB and WDT improvements
be194cb Changed icons to be a bit more consistent
08241b8 Added minimize option to Web Profiler panels

Discussion
----------

[2.2][WebProfilerBundle] Added minimize option to Web Profiler panels

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

I've added a minimize option to the profiler bundle so that you can have more space to work with on the panels.
You can view it in action here:http://sf2demo.rodb.ro/app_dev.php/

Feedback is welcomed!

Thanks!

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

by dlsniper at 2012-09-15T13:36:51Z

I could add a remember option via a cookie if you think this would help, I know I'd want one, but I'm not sure about the general opinion about this. Let me know if I should do it.

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

by stof at 2012-09-15T17:05:58Z

The profiler is totally broken when minimizing the menu in your demo.

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

by lennerd at 2012-09-15T17:10:54Z

I would not make it disappear completely. So I think a combination of Cookie and a small visual for open it again would be great to have.

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

by dlsniper at 2012-09-15T17:15:06Z

@stof I've only enabled a few panels to work in the demo, rest defaults to DB panel. If this is what you mean then it's not broken, it's designed to do so. I've tested the thing on Opera, FF and Chrome (on Linux) before uploading the demo/PR so I'm not sure what's broken. Can you please provide a screenshot?

@lennerd I could be doing something like only display it in the upper left corner and appear on mouse over as an overlay. Would that be better?

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

by stof at 2012-09-15T17:21:22Z

@dlsniper what I mean is that the text of the menu does not disappear. It simply goes over the panel itself as the menu becomes smaller. And this appears for all panels I tried.

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

by stof at 2012-09-15T17:22:32Z

hmm, sorry. It is a browser cache issue. It seems like your server was sending cache headers for the assets, and as I already looked at the demo previously (for your DoctrineBundle PR), it kept the old CSS

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

by dlsniper at 2012-09-15T17:25:09Z

@stof no problem, the server is configured a bit more on caching side in order to speed it up and save bandwidth ;)

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

by lennerd at 2012-09-15T17:38:41Z

@dlsniper I would use the close button changing to maybe an arrow in the bottom right. So it's more intuitive and you can simply show and hide it if you only want to take a quick look at a small detail behind it.

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

by henrikbjorn at 2012-09-15T18:08:02Z

What about making this the default, the icons are self explanatory already. The title would then be the "link" text instead.

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

by dlsniper at 2012-09-15T20:30:51Z

@henrikbjorn I wouldn't make this by default as new people might find it a bit confusing. Hence the suggestion to use the cookie to remember the preference.

---

Also I'm trying not to break the current format of the menu too much as hiding all that stuff by hand is pain but if I'm allowed to break the current way of displaying the left menu then this is going to be easy.

What I didn't understood so far is why is the toolbar displayed on the top as well since we have it on the left side already so I've remove it from my current changes (will be up soonish).

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

by dlsniper at 2012-09-15T21:10:03Z

@lennerd what exactly do you mean by 'I would use the close button' there's no close button on the profiler page, only on the toolbar.

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

by lennerd at 2012-09-15T21:21:20Z

That was the button I was talking about. So that there is a little close button at the bottom right for toggling the toolbar.

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

by dlsniper at 2012-09-15T23:14:06Z

I've changed the way the menu minimizes now, it hides in the top left corner and it maintains its state on refresh. I'll do something similar for the toolbar tomorrow.

You can view it on the same URL.

Please do leave feedback. Thanks!

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

by lennerd at 2012-09-16T01:02:27Z

Sorry. I misunderstand your PR.

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

by stof at 2012-09-16T03:01:06Z

@dlsniper The toolbar is displayed at the top because it gives a quick overview without having to go in each panel. So removing it is a bad idea IMO.

And hiding everything is a bad idea IMO. It means navigating is impossible, making it usable when minimizing it (and btw, this would make the cookie a non-sense as it would hide the menu for subsequent pages)

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

by fabpot at 2012-09-16T06:38:08Z

-1 for removing the toolbar at the top

I prefer the first version where you only hide the menu text but leave the icons. Keeping the state in a cookie is also a must (that cookie might be used to store some other states in the profiler too).

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

by Partugal at 2012-09-16T08:14:11Z

i'm not see first version but show icons without text is more useful.
imho minimize trigger should be always placed on top as it showns in minized state

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

by Partugal at 2012-09-16T08:24:49Z

http://s14.postimage.org/qkdcr8d4h/image.png

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

by dlsniper at 2012-09-16T09:06:50Z

@fabpot I've just had a look on how the timeline stores the selected value and it's using the local storage capabilities. Should I drop the cookie and use the local storage as well to have some sort of uniformity?
Also is there any reason why no generic JS library is used? I'm thinking now about jQuery mostly but any other should do just fine I think. I'm not saying that we should use a library when displaying the WDT as it might bump into issues with the frontend but for the rest of the profiler I guess it wouldn't be a problem to use a library, no?

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

by fabpot at 2012-09-16T09:15:37Z

Let's use the local storage for better consistency. I don't want to embed a JS library as we only need basic JS scripts.

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

by lennerd at 2012-09-16T10:29:20Z

@dlsniper Do we need the up and down arrows any longer?

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

by dlsniper at 2012-09-16T14:24:27Z

I've added a minimize mode to the toolbar but the 'design' isn't the best all around, I'll try to improve it in the future.
It also remembers the state of the toolbar so that you don't need to hide it every time.

@lennerd we don't need the up/down arrows for now, I've removed on the last commit. Thank you for the new icons ;)

L.E.
I've made some sort of rounded corner/gradient background in for the minimized toolbar

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

by dlsniper at 2012-09-18T22:02:35Z

@pborreli thanks for the idea regarding to auto-minimize on window resize, I'll implement it soon, I don't really have time right now to add the event handling part to Sfjs.

L. E.
I'm not going to implement the auto-resize as it proved not to be that useful given the fixed width of the panel. If it proves to be a requested thing then I'll improve it if no one else does it before me :)

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

by dlsniper at 2012-09-19T20:52:43Z

If there's nothing else left to be changed/improved/added, I'll lift the WIP tag of this PR so that it can be merged if you consider it.

@fabpot, if this gets its way to the repository, should I rebase this before merging so that it catches the next Symfony 2.1 release as it doesn't break anything? I don't mean the very next release which I've read that it would be done when Doctrine will release their new version but the version after that.

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

by fabpot at 2012-09-19T20:56:45Z

This is a new feature, so it can only be included in the master branch.

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

by dlsniper at 2012-09-23T12:27:41Z

As soon as this feature goes in master I'll start working on adding AJAX requests to the toolbar to make it even more useful.

Let me know if this change is good to merge or needs more work.

Thanks @stof for all the input and @lennerd for the icons.

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

by stof at 2012-09-23T13:40:38Z

Adding which ajax requests to the toolbar ?

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

by dlsniper at 2012-09-23T13:49:43Z

'Userland' AJAX requests, so that one could access the information from an AJAX request more straight forward
2012-09-28 21:16:51 +02:00
Florin Patan
310c2f98a9 [2.2][WebProfilerBundle] Added minimize option to Web Profiler panels 2012-09-28 21:16:50 +02:00
James Michael DuPont
b3d06dda44 fixed undefined variable 2012-09-28 21:09:10 +02:00
Fabien Potencier
926dd1dcd6 merged branch rrehbeindoi/error-error (PR #5539)
This PR was merged into the master branch.

Commits
-------

7fe44da Whitespace corrections
6d30f20 Switched to using a method to get original class name that did not require string parsing
3c8d607 Changed test to use a longer form, complete check of the contents of the trace
de77c88 Whitespace correction
03a7bb9 Added a unit test to verify incomplete classes do not cause flatten exception to throw
e562418 Added a bit to convert incomplete objects in the error message

Discussion
----------

[HttpKernel] Added a bit to convert incomplete objects in the error message

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

\* no - errors in MongoDbSessionHandlerTest attempting to access private property, however running just src/Symfony/Component/HttpKernel does pass.

Objects of class __PHP_Incomplete_Class are only sometimes an object.

```
$object = unserialize('O:14:"BogusTestClass":0:{}');
$object instanceof __PHP_Incomplete_Class; // true
is_object($object); // false
gettype($object); // "object"
```

Since it is "not an object", the flatter attempts to turn it into a string, it triggers:
```
__PHP_Incomplete_Class could not be converted to string.
```
Which then hides the root error message.

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

by pborreli at 2012-09-18T16:16:33Z

have you seen that http://stackoverflow.com/questions/965611/forcing-access-to-php-incomplete-class-object-properties looks like you can still access the object even if it's a __PHP_Incomplete_Class with foreach

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

by rrehbeindoi at 2012-09-18T16:38:38Z

Thank you for the tip re: foreach.
2012-09-28 21:03:48 +02:00
Ray
ef18e00283 [HttpKernel] Added a bit to convert incomplete objects in the error message 2012-09-28 21:03:47 +02:00
Fabien Potencier
0a3b012619 Merge branch '2.1'
* 2.1:
  Added Base64 encoding, decoding to MongoDBProfilerStorage
  Fix duplicated code and a field name
  refactor src/Symfony/Component/Translation/Loader/MoFileLoader.php
  fixed typo
  Update src/Symfony/Component/Validator/Resources/translations/validators.pl.xlf
  fixed issue #5596 (Broken DOM with the profiler's toolbar set in position top)
  [Form] Fixed the testsuite for PHPUnit 3.6 as travis still uses it
  added dirs generated by build-data.php in locale component to .gitignore
  [Process] Fixed bug introduced by 7bafc69f38.
  [Process][Tests] Prove process fail (Add more test case)
  [Process][Tests] Prove process fail
  [HttpFoundation] Fixed the tests
  [DomCrawler] Added test for supported encodings by mbstring
  [Config] Fixed preserving keys in associative arrays
  [Console] Fixed return value for Command::run
  [Locale] Fixed tests
  [Console] Fix some input tests
  [Filesystem] Fixed tests on Windows
  [Config] Fixed tests on Windows
2012-09-28 19:52:09 +02:00
Kevin McBride
c120c4d3d0 Added Base64 encoding, decoding to MongoDBProfilerStorage 2012-09-28 10:25:05 -07:00
Fabien Potencier
6f30614343 merged branch hason/crawler_mb (PR #5590)
This PR was merged into the 2.1 branch.

Commits
-------

d7623ae [DomCrawler] Added test for supported encodings by mbstring

Discussion
----------

[2.1][DomCrawler] Added test for supported encodings by mbstring

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

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

by fabpot at 2012-09-25T09:35:18Z

As this is a bug fix, it should be done on the 2.0 branch. Thanks.

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

by stof at 2012-09-25T09:41:59Z

@fabpot 2.0 does not contain the code trying to convert the encoding.
2012-09-28 19:05:17 +02:00
Arnaud Kleinpeter
f1746795d5 Fix duplicated code and a field name 2012-09-28 16:35:16 +02:00
James Michael DuPont
4aecda3a93 refactor src/Symfony/Component/Translation/Loader/MoFileLoader.php 2012-09-28 16:32:18 +02:00
James Michael DuPont
ad95364b21 hasColorSupport does not take an argument 2012-09-28 16:21:46 +02:00
Fabien Potencier
5fff62644f merged branch lyrixx/process (PR #5592)
Commits
-------

27b2df9 [Process] Fixed bug introduced by 7bafc69f38.
7a955c0 [Process][Tests] Prove process fail (Add more test case)
598dcf3 [Process][Tests] Prove process fail

Discussion
----------

[Process][Tests] Prove process fail with chained commands

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

This PR is against 2.1 branch. Previous PR was #5575

This PR try to hiligh a regression in Process component.

``` php
$process = new Process("echo -n 1 && echo -n 1");
// or $process = new Process("echo -n 1 ; echo -n 1");
$process->run();
var_dump('11' == $process->getOutput()); // false,
var_dump($process->getOutput()); // '1',
```

This test failed because of PR #5543 ; see 7bafc69f38 (L0R233)

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

by romainneutron at 2012-09-25T13:05:45Z

You've to revert the change that causes the fail (ie: remove https://github.com/symfony/symfony/blob/2.1/src/Symfony/Component/Process/Process.php#L233)

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

by romainneutron at 2012-09-25T13:06:56Z

BTW, removing this line re-open #5030

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

by stof at 2012-09-25T13:11:15Z

@lyrixx please add a commit reverting the addition of ``exec`` in the case of sigchild not being used (only this addition, not the full commit you linked) as it should fix your test.

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

by stof at 2012-09-25T13:12:21Z

@fabpot btw, this regression is quite important. As I said in the previous PR, it impacts composer in a bunch of places.

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

by romainneutron at 2012-09-25T13:30:07Z

You reverted too much things, you just had to remove line 233

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

by stof at 2012-09-25T13:42:49Z

@lyrixx I explicitly asked you to revert only the ``exec`` addition for the case without sigchild.

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

by lyrixx at 2012-09-25T13:55:57Z

@stof Sorry, i fixed that.

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

by romainneutron at 2012-09-25T13:56:26Z

@lyrixx just remove the two last commit, edit Process.php and remove line 233

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

by lyrixx at 2012-09-25T13:59:59Z

@romainneutron I think it's ok now.

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

by romainneutron at 2012-09-25T14:11:28Z

yep it's good :)
2012-09-28 15:15:00 +02:00
Filippo Tessarotto
45bf52358e Optimize autoload prefix in composer.json
By having more specific autoload prefixes it is possible to reduce the
number of stat calls made. Also it prevents conflicts with similar
namespaces.
2012-09-28 09:34:16 +02:00
Fabien Potencier
f62fa8a79e fixed typo 2012-09-27 14:45:27 +02:00
Fabien Potencier
f3fedac503 merged branch hason/config (PR #5589)
Commits
-------

c812b9d [Config] Fixed preserving keys in associative arrays

Discussion
----------

[2.1][Config] Fixed preserving keys in associative arrays

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
License of the code: MIT
2012-09-27 14:29:01 +02:00
Fabien Potencier
bc59f6a4ff merged branch hason/filesystem_tests (PR #5574)
Commits
-------

2dcb2d7 [Filesystem] Fixed tests on Windows

Discussion
----------

[2.1][Filesystem] Fixed tests on Windows

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
License of the code: MIT
2012-09-27 14:26:13 +02:00
Fabien Potencier
4addb2dd04 merged branch hason/locale_tests (PR #5584)
Commits
-------

fc1e844 [Locale] Fixed tests

Discussion
----------

[2.1][Locale] Fixed tests

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
License of the code: MIT
2012-09-27 14:25:23 +02:00
Fabien Potencier
ef6ee6b638 merged branch hason/config_tests (PR #5583)
Commits
-------

65281fb [Config] Fixed tests on Windows

Discussion
----------

[2.1][Config] Fixed tests on Windows

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
License of the code: MIT
2012-09-27 14:23:27 +02:00
Fabien Potencier
93637fbd8d merged branch stof/fix_tests (PR #5591)
Commits
-------

b961ee3 [HttpFoundation] Fixed the tests

Discussion
----------

[HttpFoundation] Fixed the tests

b8a2f8c646 reverted the use of the username
and password in the getSchemeAndHost method but forgot to revert the
corresponding tests.
2012-09-27 14:20:55 +02:00
Fabien Potencier
15e61435fe merged branch shieldo/ignore_generated_icu_files (PR #5595)
Commits
-------

8ab3054 added dirs generated by build-data.php in locale component to .gitignore

Discussion
----------

added dirs generated by build-data.php in locale component to .gitignore

This is to complete the PR #5411.

Paging @eriksencosta.

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

by eriksencosta at 2012-09-25T14:54:06Z

For me it's ok!

Batman?

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

by shieldo at 2012-09-25T14:55:38Z

Kapow! Thanks for checking it over!

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

by shieldo at 2012-09-25T15:41:05Z

As @stof pointed out, git does read .gitignore files in sub-paths.  So I've modified the commit so the change is in the Locale component only.
2012-09-27 14:20:04 +02:00
Fabien Potencier
7306ef67e1 merged branch xavierlacot/ticket_5596 (PR #5597)
Commits
-------

530bd22 fixed issue #5596 (Broken DOM with the profiler's toolbar set in position top)

Discussion
----------

fixed issue #5596 (Broken DOM with the profiler's toolbar set in position top)

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

Whatever the toolbar position, the html code associated to it may be placed at the end of the page (and this will be better from a webperf point of view).

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

by stof at 2012-09-25T17:47:53Z

The spacer div will not be in the right place when using ``position: top`` as it will be at the end of the body.

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

by pborreli at 2012-09-25T17:53:03Z

@stof what is the spacer div ? i guess all the profiler is in absolute so i guess it should work (and I'm sure @xavierlacot already tested it :))

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

by pborreli at 2012-09-25T17:55:55Z

@xavierlacot so maybe we should refactor

```
$pos = $posrFunction($content, '</body>');

$content = $substrFunction($content, 0, $pos).$toolbar.$substrFunction($content, $pos);
```
with something like
```
$content = str_replace('</body>', $toolbar.'</body>', $content);
```
What do you think ?

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

by stof at 2012-09-25T17:58:35Z

@pborreli The toolbar is in position fixed. But to avoid hiding some of the content of your page, another div is added on with a margin, to force keeping some space after the content for the toolbar. With this change, the toolbar HTML is always at the end, so the 40px space is always added at the bottom of the page even if the toolbar is added at the top.

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

by pborreli at 2012-09-25T18:03:08Z

@stof maybe we should just fix the body/html margin-top in that case no ? or find a better solution, anyway I think the actual way to do it is bad, `<body>` and `</body>` are not even mandatory in html5, IMHO i would just put it at the end of file without any check, then fix it with some css and/or js

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

by stof at 2012-09-25T18:06:58Z

@pborreli Putting it at the end after the closing ``<html>`` tag would make the page invalid for people defining the markup fully. It is a bad idea.
And anyway, detecting the body tag is still important, to avoid injecting the toolbar in partial page content (be it ESI requests or parts loaded through AJAX).

Oh, and ``$content = str_replace('</body>', $toolbar.'</body>', $content);`` would not fix #5596 but make it worse: it would also inject the toolbar in the head even when being placed at the bottom (keeping it at the bottom too).

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

by pborreli at 2012-09-25T18:18:46Z

@stof for detecting ajax you already have `if ($request->isXmlHttpRequest()) {` called few lines before,
the proposal for `$content = str_replace('</body>', $toolbar.'</body>', $content);` was only a refactoring for the above PR

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

by stof at 2012-09-25T18:26:34Z

@pborreli ESI requests are not AJAX requests. So simply appending at the end would still break them.

And your code is *not* a refactoring. Your ``str_replace`` will replace **all** occurences of ``</body>``, not just the last one. See the related issue to understand why it makes a difference

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

by pborreli at 2012-09-25T18:38:11Z

ok I'm all wrong.

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

by xavierlacot at 2012-09-25T18:51:42Z

@stof, please review the last commit, which injects the wdt container at the top of the page in javascript, using the browser's DOM capacities. This fixes the spacer problem that you noticed.

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

by stof at 2012-09-25T18:55:51Z

Well, you are now breaking things when the spacer should be at the bottom as you are always putting the spacer at the top.

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

by stloyd at 2012-09-25T19:06:14Z

@xavierlacot Pass `position` variable to template and change:

```diff
-        document.body.insertBefore(sfwdt, document.body.firstChild);
+        {% if position == 'bottom' -%}
+            document.body.appendChild(sfwdt);
+        {%- else -%}
+            document.body.insertBefore(sfwdt, document.body.firstChild);
+        {%- endif %}

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

by stof at 2012-09-25T20:18:31Z

@xavierlacot could you squash your commits ?

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

by xavierlacot at 2012-09-25T21:32:47Z

@stof done. Thanks for the review :-)
2012-09-27 14:18:54 +02:00
Fabien Potencier
96225654f7 merged branch stof/phpunit_3_6 (PR #5598)
Commits
-------

ef288a2 [Form] Fixed the testsuite for PHPUnit 3.6 as travis still uses it

Discussion
----------

[Form] Fixed the testsuite for PHPUnit 3.6

Travis is still using it so this avoids making all build fail just because of it.
2012-09-27 14:17:03 +02:00
Rafał
335aa862de Update src/Symfony/Component/Validator/Resources/translations/validators.pl.xlf
polish translation patch
I think translator should choose first translation if other (seccond/third form) does not exist.
2012-09-27 14:14:35 +02:00
Xavier Lacot
530bd225d2 fixed issue #5596 (Broken DOM with the profiler's toolbar set in position top) 2012-09-25 23:28:50 +02:00
Christophe Coevoet
ef288a2613 [Form] Fixed the testsuite for PHPUnit 3.6 as travis still uses it 2012-09-25 20:53:31 +02:00
Douglas Greenshields
8ab30543da added dirs generated by build-data.php in locale component to .gitignore 2012-09-25 16:28:32 +01:00
Grégoire Pineau
27b2df9db6 [Process] Fixed bug introduced by 7bafc69f38. 2012-09-25 15:48:53 +02:00
Grégoire Pineau
7a955c0e4b [Process][Tests] Prove process fail (Add more test case) 2012-09-25 14:47:45 +02:00
Grégoire Pineau
598dcf3c57 [Process][Tests] Prove process fail 2012-09-25 14:47:33 +02:00
Christophe Coevoet
b961ee3a62 [HttpFoundation] Fixed the tests
b8a2f8c646 reverted the use of the username
and password in the getSchemeAndHost method but forgot to revert the
corresponding tests.
2012-09-25 14:32:56 +02:00
Martin Hasoň
d7623ae2af [DomCrawler] Added test for supported encodings by mbstring 2012-09-25 11:03:23 +02:00
Martin Hasoň
c812b9dddc [Config] Fixed preserving keys in associative arrays 2012-09-24 23:36:53 +02:00
Fabien Potencier
21d16e60fa merged branch hason/command (PR #5585)
Commits
-------

c869a65 [Console] Fixed return value for Command::run

Discussion
----------

[2.1][Console] Fixed return value for Command::run

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

API says that Command::run returns integer. This is also necessary if I want to run nested commands.
2012-09-24 14:11:50 +02:00
Martin Hasoň
c869a657d5 [Console] Fixed return value for Command::run 2012-09-24 10:41:20 +02:00
Martin Hasoň
fc1e844bed [Locale] Fixed tests 2012-09-24 10:11:13 +02:00
Arnaud Kleinpeter
cc46780a48 [Console] Fix some input tests 2012-09-23 16:17:15 +02:00
Fabien Potencier
58cb6f55cc changed comparison on the request method to use the isMethod() method 2012-09-23 15:11:53 +02:00
nervo
e0c001b772 Update src/Symfony/Component/Security/Http/Firewall/UsernamePasswordFormAuthenticationListener.php
Better consistency in request method checking (See L.58)
2012-09-23 10:54:29 +03:00
Martin Hasoň
2dcb2d7d82 [Filesystem] Fixed tests on Windows 2012-09-21 14:34:09 +02:00
Martin Hasoň
65281fb56c [Config] Fixed tests on Windows 2012-09-21 14:13:08 +02:00
Adrien Brault
34ca3de4f2 Improve FilterResponseEvent docblocks Response ref
The type hinting wasn't working in PHPStorm.
2012-09-21 11:33:41 +03:00
Fabien Potencier
e9b6a12baf Merge branch '2.1'
* 2.1:
  fixed stringification of array objects in RequestDataCollector (closes #5295)
  [HttpFoundation] removed the username and password from generated URL as generated by the Request class (closes #5555)
  [Console] fixed default argument display (closes #5563)
  Fixing config normalisation example in docblock
2012-09-21 08:34:59 +02:00
Fabien Potencier
237629ad64 Merge branch '2.0' into 2.1
* 2.0:
  fixed stringification of array objects in RequestDataCollector (closes #5295)
  Fixing config normalisation example in docblock

Conflicts:
	src/Symfony/Bridge/Doctrine/DataCollector/DoctrineDataCollector.php
	src/Symfony/Component/HttpKernel/DataCollector/RequestDataCollector.php
2012-09-21 08:34:46 +02:00
Fabien Potencier
2ceebdcaba fixed stringification of array objects in RequestDataCollector (closes #5295) 2012-09-21 08:32:55 +02:00
Fabien Potencier
b8a2f8c646 [HttpFoundation] removed the username and password from generated URL as generated by the Request class (closes #5555)
Quoted from the ticket it solves for future reference:

"I've been having issues with using htdigest auth (requirement for me to
work with) after upgrading to 2.1. Each time a resource is loaded, a
prompt is given for the HTTP Auth username and password, and Chrome does
not automatically respond to these 401 responses with the credentials it
already has. I've traced the issue to being caused by the HttpFoundation
Component, specifically Request.php.

The request class adds the PHP_AUTH_USER/PHP_AUTH_PW parameters to the
request URI (changes http://www.mysite.com requests to
http://user:pw@www.mysite.com) in getSchemeAndHttpHost(). This behaviour
is not specified in the HTTP RFC, and is incompatible with Chrome as of
Chrome 19, IE (as of IE 9) and has special behaviour in Firefox (prompts
the user to confirm they know they're logging into the site, which is an
ambiguous behaviour at best, but at least it's something if they're
going to support it for now).

This functionality was added about to HttpFoundation about a year ago,
but it really should be removed and standard protocol practices should
be followed. This practice makes it possible for cross-site tracking and
other malicious behaviours to be performed by hiding information in the
authorization headers, which explains why most browsers no longer
support or take exception with it.

The offending line is specifically this. Replacing it with return
$this->getScheme().'://'.$this->getHttpHost(); seems to solve the
problem."
2012-09-21 08:13:47 +02:00
Fabien Potencier
958c9768ea fixed CS 2012-09-21 08:09:07 +02:00
Fabien Potencier
93b327263d merged branch schmittjoh/refDumper (PR #5559)
Commits
-------

6bafe5a moved some code to the component

Discussion
----------

moved some code to the component

This simply moves some code from a command to a dedicated class to make it more reusable.

I wasn't able to run tests because composer failed to install dependencies. Let's see if travis can do better.
2012-09-21 08:07:48 +02:00
Fabien Potencier
c4429af6fb [Console] fixed default argument display (closes #5563) 2012-09-21 08:05:08 +02:00
Fabien Potencier
0d9d7bd444 added a comment 2012-09-20 21:58:11 +02:00
Christian Jul Jensen
3680cec3e8 Fix PSR-0 incompatibilty
Having 2 classes in the same file breaks PSR-0 compability
2012-09-20 21:54:42 +02:00
Johannes M. Schmitt
6bafe5a635 moved some code to the component 2012-09-20 14:56:47 +02:00
Fabien Potencier
ad91b3b464 Merge branch '2.1'
* 2.1:
  bumped Symfony version to 2.1.3-DEV
  updated VERSION for 2.1.2
  updated CHANGELOG for 2.1.2
  Fixed FlashBagInterface phpdoc, clarified UPGRADE docs
  composer is available in travis workers

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
2012-09-20 10:40:30 +02:00
Fabien Potencier
8b7c00ca64 merged branch krmcbride/flash-phpdoc (PR #5557)
Commits
-------

bb0e4c3 Fixed FlashBagInterface phpdoc, clarified UPGRADE docs

Discussion
----------

Fixed FlashBagInterface phpdoc, clarified upgrade doc

The fact that multiple flash messages are now stored/retrieved per type was an additional BC break that I missed when I first went through the 2.1 update doc, and it didn't help that the phpdoc was outdated.

These changes just clarify things a little.

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

by drak at 2012-09-20T07:45:52Z

+1
2012-09-20 10:35:57 +02:00
Fabien Potencier
5db89bd9b8 bumped Symfony version to 2.1.3-DEV 2012-09-20 10:29:15 +02:00
Gunther Konig
6cbeff0ea9 use ->find instead of ->get in the help command to allow command aliases to be used (e.g. "./app/console help do:sc:ge") 2012-09-20 11:09:17 +03:00
Fabien Potencier
80ff285ae2 updated VERSION for 2.1.2 2012-09-20 09:13:00 +02:00
Fabien Potencier
496ed135e8 updated CHANGELOG 2012-09-20 07:48:14 +02:00
Fabien Potencier
46d90ce845 [Config] fixed CS 2012-09-20 07:46:50 +02:00
Fabien Potencier
b49f501ff2 merged branch jeanmonod/config-with-numeric-checks (PR #4714)
Commits
-------

71db836 Better config validation handling for numerical values:  * New node type Integer and Float  * New expressions: min() and max()

Discussion
----------

[2.2] [Config] Better handling for numerical values:

* New node type Integer and Float
* New expressions: ifLessThan(), ifGreaterThan(), ifInRange(), ifNotInRange()

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

by fabpot at 2012-07-03T08:50:22Z

As I said on PR #4713, adding more method clutters the API without any big benefits. I'm -1 on the PR.

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

by jeanmonod at 2012-07-03T08:54:36Z

I have been discuss it with @schmittjoh at the sflive, he was thinking it could be a good addition.
IMHO I think that if we want to encourage the usage of bundle configuration validation, we should make it as easy as possible to use...

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

by jeanmonod at 2012-07-03T08:59:42Z

A real life example:

    ->scalarNode('max_nb_items')
        ->validate()
            ->ifTrue(function($v){
                return !is_int($v) || (is_int($v) && $v<1);
            })
            ->thenInvalid('Must be a positive integer')
        ->end()
    ->end()

could be replaced by

    ->integerNode('max_nb_items')
        ->validate()
            ->ifLessThan(1);
            ->thenInvalid('Must be a positive integer')
        ->end()
    ->end()

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

by gnutix at 2012-07-03T09:03:06Z

I agree with @jeanmonod on this matter, the bundle configuration validation is already kind of a hassle to understand (and read), so it would be a good addition IMHO.

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

by fabpot at 2012-07-03T10:54:32Z

@schmittjoh What's your point of view?

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

by schmittjoh at 2012-07-03T14:10:37Z

The integer and float nodes are valuable additions imo which I wanted to add myself several times but simply did not have the time for.

As for the changes to the expression builder, I was not really passionate about them in Paris, but I did not mind either way. However, looking at this PR, I think they would be better implemented as methods on the definition builders, and validated directly by the nodes:

```php
$builder->integerNode('foo')->range(1, 4)->end();
$builder->integerNode('foo')->mustBeGreaterThan(5)->end();
```

This will also allow for these constraints to be introspected and added to generated documentation.

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

by fabpot at 2012-07-03T17:57:25Z

@jeanmonod Can you take into account the comments by @schmittjoh?

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

by jeanmonod at 2012-07-03T19:40:24Z

@fabpot Yes, I will try to move those 4 checks.

@schmittjoh If I put those tests into the ScalarNodeDefinition did you think it's ok? And did I have to make anything special for the documentation introspection?

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

by schmittjoh at 2012-07-03T19:56:00Z

You can take a look at the EnumNodeDefinition, and the EnumNode. They are
pretty simple, and should give you a good idea of how to implement it.

On Tue, Jul 3, 2012 at 9:46 PM, Jeanmonod David <
reply@reply.github.com
> wrote:

> @fabpot Yes, I will try to move those 4 checks.
>
> @schmittjoh If I put those tests into the ScalarNodeDefinition did you
> think it's ok? And did I have to make anything special for the
> documentation introspection?
>
> ---
> Reply to this email directly or view it on GitHub:
> https://github.com/symfony/symfony/pull/4714#issuecomment-6744309
>

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

by jeanmonod at 2012-07-03T21:37:18Z

OK, I just refactor as requested. At the end, I didn't add the range() check. It can be easily done by chaining min and max, like this:

    $builder->integerNode('foo')->min(1)->max(4)->end();

@schmittjoh can you have a look?

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

by schmittjoh at 2012-07-03T21:48:17Z

Have you tested the builder API? Did you maybe forget to commit something?

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

by jeanmonod at 2012-07-03T21:52:45Z

Yes you are right, I forget the definition

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

by jeanmonod at 2012-07-03T22:15:45Z

OK, I realize now that I misunderstood the concept. I was thinking that a node was able to do self validation. But no, I will have to move my code to the node definition. So let's wait for a new commit...

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

by jeanmonod at 2012-07-06T06:13:55Z

@schmittjoh I just push the move to definition and the new abstract class Numeric. Can you review it?

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

by jeanmonod at 2012-07-10T05:12:59Z

@schmittjoh, @fabpot
I fix all the mention points, can you have a look at the final result?

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

by schmittjoh at 2012-07-10T06:38:20Z

There are still some excessive blank lines if you want to be perfect, but overall looks good now.

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

by jeanmonod at 2012-07-10T07:05:54Z

@schmittjoh I think the comments of @Baachi are not well placed in the diff. I execute php-cs-fix on all code, so level of perfectness is already good ;)

@fabpot Do you want some more complements before merging?

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

by fabpot at 2012-07-10T07:07:21Z

@jeanmonod I'm going to review the code once more and it will be merged for 2.2. Thanks for your work.

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

by fabpot at 2012-09-18T13:58:48Z

@jeanmonod Can you squash your commits before I merge? Thanks.

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

by jeanmonod at 2012-09-18T14:36:59Z

@fabpot Squash done

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

by fabpot at 2012-09-19T04:07:13Z

@jeanmonod One last thing: can you submit a PR on symfony/symfony-docs that update the documentation with the new possibilities?

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

by jeanmonod at 2012-09-20T05:32:01Z

@fabpot OK, Documentation PR done here: https://github.com/symfony/symfony-docs/pull/1732
2012-09-20 07:42:10 +02:00
Kevin McBride
bb0e4c3090 Fixed FlashBagInterface phpdoc, clarified UPGRADE docs 2012-09-19 13:48:54 -07:00
Martin Hasoň
c9029664ad [DomCrawler] Added ability to set file as raw path to file field 2012-09-19 11:23:06 +02:00
Romain Neutron
b89e413a93 [Process] Add output / error output incremental getters 2012-09-19 08:30:27 +02:00
Fabien Potencier
e7b55fcda5 Merge branch '2.1'
* 2.1:
  [Form] removed comment now that PHPUnit 3.7 is out
  Add a Sigchild compatibility mode (set to false by default)
  fix Fatal error: Cannot access private property

Conflicts:
	src/Symfony/Component/Process/Process.php
2012-09-19 08:14:24 +02:00
Fabien Potencier
f1e6063c0a [Form] removed comment now that PHPUnit 3.7 is out 2012-09-19 08:13:43 +02:00
Fabien Potencier
be331ca7f2 [FrameworkBundle] fixed functional tests 2012-09-19 06:19:30 +02:00
Fabien Potencier
05d8c4288c [FrameworkBundle] fixed the typehint for Kernel on the Client class (refs #4897) 2012-09-19 05:59:05 +02:00
Romain Neutron
7bafc69f38 Add a Sigchild compatibility mode (set to false by default)
This mode is required to use a hack to determine if the process finished with success when PHP has been compiled with the --enable-sigchild option
2012-09-19 00:37:29 +02:00
Richard Miller
1402b42228 Fixing config normalisation example in docblock 2012-09-18 21:29:16 +01:00
Fabien Potencier
3ae0b4731f fixed CHANGELOG 2012-09-18 19:29:43 +02:00
Fabien Potencier
ddb8e5c551 merged branch hason/conemu (PR #5498)
Commits
-------

bb2566c [Console] Console colorization is also provided by ConEmu on Windows

Discussion
----------

[Console] Console colorization is also provided by ConEmu on Windows

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

See http://code.google.com/p/conemu-maximus5/wiki/AnsiEscapeCodes#ПеременнаÑ_окружениÑ

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

by fabpot at 2012-09-16T07:43:55Z

Can you add a note about it in the changelog of the component? thanks
2012-09-18 19:29:30 +02:00
Fabien Potencier
8f034ce134 merged branch eventhorizonpl/100ptc_component_httpfundation_p8 (PR #5490)
Commits
-------

2a35941 ParameterBag tests

Discussion
----------

ParameterBag tests

Hi,

This patch adds 100% tests coverage for ParameterBag class.

Best regards,
Michal
2012-09-18 19:28:34 +02:00
Fabien Potencier
833b944548 merged branch mazen/optional-optimization (PR #5340)
Commits
-------

e271b17 Remove the string optimization since it causes no real performance gain but increases generation time of the dumped PHP Container

Discussion
----------

PhpDumper and large strings

When the PhpDumper is dealing with longer strings, the regular expression performed to optimize this can be quite a performance hog.
In our case sometimes the dumper takes more then 30 seconds if leaving this enabled. Disabling it will bring it back to sub-second speed.

This patch makes the optimization optional by passing in an additional container option.

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

by fabpot at 2012-08-25T16:57:29Z

I don't like adding yet another option for something that should "just works". It would be better to find a better way to optimise the strings for all cases.

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

by mazen at 2012-08-25T17:22:07Z

I never really tested how much of a runtime difference it incurs when either using the "optimized" version or the non optimized version, so:

Having an example at hand which generates stable results yields (in a non-debug environment with a booted container using either of the optimization methods):

Without optimized strings:

```
Time taken for tests:   14.865 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      217000 bytes
HTML transferred:       8000 bytes
Requests per second:    67.27 [#/sec] (mean)
Time per request:       14.865 [ms] (mean)
Time per request:       14.865 [ms] (mean, across all concurrent requests)
Transfer rate:          14.26 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.0      0       0
Processing:    14   15  19.7     14     632
Waiting:       14   15  19.7     14     632
Total:         14   15  19.7     14     632

Percentage of the requests served within a certain time (ms)
  50%     14
  66%     14
  75%     14
  80%     14
  90%     14
  95%     14
  98%     15
  99%     23
 100%    632 (longest request)
```

With Optimized Strings enabled

```
Time taken for tests:   14.077 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      217000 bytes
HTML transferred:       8000 bytes
Requests per second:    71.04 [#/sec] (mean)
Time per request:       14.077 [ms] (mean)
Time per request:       14.077 [ms] (mean, across all concurrent requests)
Transfer rate:          15.05 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.0      0       0
Processing:    14   14   1.3     14      48
Waiting:       14   14   1.3     14      48
Total:         14   14   1.3     14      48

Percentage of the requests served within a certain time (ms)
  50%     14
  66%     14
  75%     14
  80%     14
  90%     14
  95%     14
  98%     14
  99%     15
 100%     48 (longest request)
```

So the response times differ by around 0.8ms

Building the non-optimized container takes around 800ms
Building the optimized container takes 43 seconds

From my Point of View it would just be viable to remove the optimization (since it already incurred some issues fixed in 808088a3ca).

I do not see a way how to improve the regexps (but by all means I'm no regular expression guru)

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

by fabpot at 2012-08-30T07:12:55Z

I'm also for removing these optimizations. What others think?

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

by Baachi at 2012-08-30T07:54:53Z

I'm +1 for removing this feature.
The performance boost is to small.
2012-09-18 19:25:25 +02:00
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
Miha Vrhovnik
92fbb0b679 Classes should be removed only when adaptive is specified 2012-07-19 14:30:30 +03: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
Fabien Potencier
22fea110a5 merged branch bschussek/revert_circ_ref (PR #4807)
Commits
-------

eba7dfe Revert "[Form] added a circular reference safeguard for form type"

Discussion
----------

Revert "[Form] added a circular reference safeguard for form type"

This reverts commit ea93e4cafa.

Conflicts:

	src/Symfony/Component/Form/FormBuilder.php
	src/Symfony/Component/Form/FormFactory.php
2012-07-09 18:45:58 +02:00
Bernhard Schussek
eba7dfeb8a Revert "[Form] added a circular reference safeguard for form type"
This reverts commit ea93e4cafa.

Conflicts:

	src/Symfony/Component/Form/FormBuilder.php
	src/Symfony/Component/Form/FormFactory.php
2012-07-09 18:42:18 +02:00
Fabien Potencier
2cf1a0a7e8 merged branch bschussek/issue4615 (PR #4799)
Commits
-------

df5bb4a [Form] Unified rendering of errors for nested elements

Discussion
----------

[Form] Unified rendering of errors for nested elements

Bug fix: yes
Feature addition: no
Backwards compatibility break: yes?
Symfony2 tests pass: yes
Fixes the following tickets: #4615
Todo: -
2012-07-09 18:41:53 +02:00
Fabien Potencier
35e8d086ed merged branch bschussek/issue4450 (PR #4806)
Commits
-------

1345360 [Form] Fixed PropertyPath handling of offsetGet() that returns a constant value
6e1462e [Form] Fixed PropertyPath handling of __get() method that returns a constant

Discussion
----------

[Form] Fixed "Indirect modification.." exceptions in PropertyPath

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4450, #4535?, #4612
Todo: -
2012-07-09 18:25:40 +02:00
Fabien Potencier
a1963b483e merged branch clemens-tolboom/pluraltests (PR #4412)
Commits
-------

3462afc Tests for PluralizationRules.

Discussion
----------

[WIP][Translations][tests] Tests for PluralizationRules.

Currently we have no tests PluralizationRules. This patch is an initial one to show we have not enough langcodes in PluralizationRules.

I hope this gets in so others can fix the missing langcodes.

I'm waiting for [RFC [MessageCatalogue*] Add Metadata to MessageCatalogue](https://github.com/symfony/symfony/pull/4399) to get in to continue working on the [[WIP]: Allow Drupal to use Translate component](https://github.com/symfony/symfony/pull/4249).

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

by travisbot at 2012-05-25T14:38:37Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1433558) (merged 3462afc0 into 023dbf80).

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

by drak at 2012-07-01T09:47:05Z

Is there anything pending in this PR?
2012-07-09 18:23:32 +02:00
Bernhard Schussek
1345360e3f [Form] Fixed PropertyPath handling of offsetGet() that returns a constant value 2012-07-09 18:21:55 +02:00
Fabien Potencier
6cf8e298ab merged branch simensen/fix-bundle-tests (PR #4805)
Commits
-------

28b6557 class_exists was returning fals for the container aware interface

Discussion
----------

class_exists was returning fals for the container aware interface

This test was marked skipped when it should not have been.
2012-07-09 18:16:25 +02:00
Bernhard Schussek
6e1462e0c0 [Form] Fixed PropertyPath handling of __get() method that returns a constant 2012-07-09 18:15:56 +02:00
Beau Simensen
28b6557915 class_exists was returning fals for the container aware interface 2012-07-09 09:02:51 -07:00
Fabien Potencier
377b850272 merged branch bschussek/issue4596 (PR #4804)
Commits
-------

e6b5595 [Form] Fixed display of empty values in DateType, TimeType and DateTimeType if they are not required
14e293f [Form] Refactored processing of the "empty_value" option in DateType

Discussion
----------

[Form] Fixed display of empty values in DateType, TimeType and DateTimeType

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4596
Todo: -
2012-07-09 18:00:20 +02:00
Fabien Potencier
facbcdcf45 [Validator] fixed error message for dates like 2012-02-31 (closes #4223) 2012-07-09 17:53:53 +02:00
Bernhard Schussek
e6b5595f79 [Form] Fixed display of empty values in DateType, TimeType and DateTimeType if they are not required 2012-07-09 17:53:01 +02:00
Fabien Potencier
39e821c1eb [TwigBundle] added a new paths setting to allow configuration of more paths for the filesystem loader (refs #4649) 2012-07-09 17:37:31 +02:00
Fabien Potencier
8f267ada09 merged branch everzet/twig-paths (PR #4649)
Commits
-------

dbeff69 [TwigBundle] added support for custom loader paths

Discussion
----------

[TwigBundle] added support for custom loader paths

Before this commit, there was no ability to specify custom
search paths for Twig loader. Lets say we have twig templates
outside bundles directories (parts of the domain logic, not
application) - we want to be able to load them.

This commit adds `loader_paths` parameter to twig config,
which is used to set custom paths to the loader.

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

by travisbot at 2012-06-25T09:50:44Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1699654) (merged dbeff697 into 03c8d4d2).

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

by vicb at 2012-06-26T06:14:30Z

You also need to support xml in the configuration and update the xsd file.

edit: adding some DI unit tests is probably a good idea.

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

by everzet at 2012-06-26T08:49:20Z

@vicb agree, was just a fast stabbing ;)

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

by fabpot at 2012-06-28T14:06:02Z

I'm +1. Can you "finish" the PR?

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

by fabpot at 2012-07-02T13:23:33Z

@everzet If you don't have time, I can do the remaining work.
2012-07-09 17:37:22 +02:00
Bernhard Schussek
14e293fc66 [Form] Refactored processing of the "empty_value" option in DateType 2012-07-09 17:20:48 +02:00
Fabien Potencier
8d77d999a1 fixed CS 2012-07-09 17:06:57 +02:00
Fabien Potencier
5608c0c3ee merged branch gajdaw/finder_splfileinfo_fpassthu (PR #4751)
Commits
-------

b4d7a7e [Component][Finder][SplFileInfo] file_get_contents=>fpassthru

Discussion
----------

[Component][Finder][SplFileInfo] file_get_contents=>fpassthru

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: https://github.com/symfony/symfony/pull/4335/files#r1016152
Todo: -
License of the code: MIT
Documentation PR: -
2012-07-09 17:05:52 +02:00
Fabien Potencier
38c30b71bd merged branch bschussek/issue3864 (PR #4801)
Commits
-------

040ba8f [Form] Fixed: ChoiceType omits the "empty_value" option if the choices contain an empty element

Discussion
----------

[Form] Fixed: ChoiceType omits the "empty_value" option if the choices contain an empty element

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #3854, #3864
Todo: -
2012-07-09 16:56:11 +02:00
Bernhard Schussek
040ba8f3cd [Form] Fixed: ChoiceType omits the "empty_value" option if the choices contain an empty element 2012-07-09 16:52:31 +02:00
Fabien Potencier
8680571df0 merged branch frosas/start-session-on-generate-csrf-token (PR #4781)
Commits
-------

6d94f3e Ensure there is a session before getting the session id

Discussion
----------

[Form] Ensure there is a session before getting the session id

Solves "The CSRF token is invalid. Please try to resubmit the form" error when a form is generated before the session is started.

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

by fabpot at 2012-07-09T10:23:32Z

Adding a CSRF token only makes sense if you are on a page with a "user". If not (and if you don't use HTTP auth or whatever), then there is no need for a CSRF token.

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

by frosas at 2012-07-09T14:42:40Z

This PR doesn't change any logic on whether a CSRF token is added or not, it just fixes a bug when a token is requested.
2012-07-09 16:49:24 +02:00
Fabien Potencier
25d595742b merged branch bamarni/master (PR #4792)
Commits
-------

6c9c2ec [ClassCollectionLoader] fixed comment striping on classes in global namespace

Discussion
----------

[ClassCollectionLoader] fixed comment striping on classes in global namespace

Comments aren't striped when the class is in the global namespace, this adds a fake namespace to let the fixNamespaceDeclaration method handling the formating, so we can remove a method.

I've also put dev as minimum policy in composer, otherwise I couldn't install dependencies.
2012-07-09 16:48:03 +02:00
Bernhard Schussek
df5bb4aefa [Form] Unified rendering of errors for nested elements 2012-07-09 16:14:58 +02:00
Fabien Potencier
c3ae854634 merged branch SamsonIT/error_explaining_lack_of_adder_remover (PR #4777)
Commits
-------

1fa22d9 [Form] Output a more usable error when PropertyPath has tried to find adders and getters, but failed to find them

Discussion
----------

[Form] Output a more usable error when PropertyPath has tried to find ad...

...ders and getters, but failed to find them

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

I've refactored the writeProperty method of propertypath in order to supply a better error message when writing has failed.

The writeProperty method itself now finds singulars (if a singular was not passed) for the private findAdderAndRemover method which allowed for some duplicate code to be removed and since the writeProperty now holds this data, it can provide a more verbose exception message.

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

by bschussek at 2012-07-09T13:54:35Z

Apart from the typo this PR looks good.

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

by Burgov at 2012-07-09T14:01:04Z

fixed&squashed
2012-07-09 16:11:12 +02:00
Bart van den Burg
1fa22d91ae [Form] Output a more usable error when PropertyPath has tried to find adders and getters, but failed to find them 2012-07-09 15:59:56 +02:00
Fabien Potencier
7f9fd11fd0 merged branch asm89/refactor-authentication-success-handling (PR #4599)
Commits
-------

bb138da [Security] Fix regression after rebase. Target url should be firewall dependent
eb19f2c [Security] Add note to CHANGELOG about refactored authentication failure/success handling [Security] Various CS + doc fixes [Security] Exception when authentication failure/success handlers do not return a response [Security] Add authors + fix docblock
f9d5606 [Security] Update AuthenticationFailureHandlerInterface docblock. Never return null
915704c [Security] Move default authentication failure handling strategy to seperate class [Security] Update configuration for changes regarding default failure handler [Security] Fixes + add AbstractFactory test for failure handler
c6aa392 [Security] Move default authentication success handling strategy to seperate class [Security] Update configuration for changes regarding default success handler [Security] Fix + add AbstractFactory test

Discussion
----------

[Security] Refactor authentication success handling

Bug fix: no
Feature addition: no
Backwards compatibility break: yes
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/asm89/symfony.png?branch=refactor-authentication-success-handling)](http://travis-ci.org/asm89/symfony)
License of the code: MIT

This PR extracts the default authentication success handling to its own class as discussed in #4553. In the end the PR will basically revert #3183 (as suggested by @schmittjoh) and fix point one of #838.

There are a few noticeable changes in this PR:
- This implementation changes the constructor signature of the `AbstractAuthentictionListener` and `UsernamePasswordFormAuthenticationListener` by making the `AuthenticationSuccessHandler` mandatory (BC break). If this WIP is approved I will refactor the failure handling logic too and then this will also move one place in the constructor
- This PR reverts the change of making the returning of a `Response` optional in the `AuthenticationSuccessHandlerInterface`. Developers can now extend the default behavior themselves

@schmittjoh Any suggestions? Or a +1 to do the failure logic too?

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

by schmittjoh at 2012-06-17T23:53:07Z

+1 from me

@fabpot, what so you think?

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

by fabpot at 2012-06-19T08:15:48Z

Can you add a note in the CHANGELOG? Thanks.

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

by asm89 at 2012-06-19T10:22:20Z

I will, but I'll first do the same for the failure logic.

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

by travisbot at 2012-06-21T08:03:14Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1671555) (merged 17c8f66f into 55c6df99).

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

by asm89 at 2012-06-21T08:45:38Z

👠thank you @stof. I think this is good to go now.

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

by travisbot at 2012-06-21T08:50:28Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1671817) (merged 8982c769 into 55c6df99).

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

by asm89 at 2012-06-21T14:23:58Z

@schmittjoh @fabpot The `LogoutListener` currently throws an exception when the successhandler doesn't return a `Response` ([link](9e9519913d/src/Symfony/Component/Security/Http/Firewall/LogoutListener.php (L101))). Should this code check for this too?

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

by schmittjoh at 2012-06-21T14:26:49Z

Yes, this code was removed, but needs to be re-added here as well.

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

by travisbot at 2012-06-21T15:08:59Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1674437) (merged 5afa240d into 55c6df99).

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

by asm89 at 2012-06-26T06:01:02Z

@fabpot Can you make a final decision on this? If you decide on point 3, this code can be merged.  I agree with the arguments of @stof about the option handling and it 'only' being a BC break for direct users of the security component. I even think these direct users should be really careful anyway, since the behavior of the success and failurehandlers now change back to how they acted in 2.0.

Now I am thinking about it, can't the optional parameters of this class move to setters anyway? That will make it cleaner to extend.

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

by asm89 at 2012-06-28T10:29:50Z

ping @fabpot

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

by fabpot at 2012-06-28T17:23:02Z

I'm ok with option 1 (the BC break). After doing the last changes, can you squash your commits before I merge? Thanks.

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

by asm89 at 2012-07-06T21:59:54Z

@fabpot I rebased the PR, added the authors and also ported the fix that was done in 8ffaafa867 to be contained in the default success handler. I also squashed all the CS and 'small blabla fix' commits. Is it ok now?

Edit: travisbot will probably say that the tests in this PR fail, but that is because current master fails on form things

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

by asm89 at 2012-07-08T18:53:05Z

I rebased the PR, tests are green now: [![Build Status](https://secure.travis-ci.org/asm89/symfony.png?branch=refactor-authentication-success-handling)](http://travis-ci.org/asm89/symfony).
2012-07-09 15:29:00 +02:00
Fabien Potencier
d100ffaf76 fixed CS 2012-07-09 14:54:20 +02:00
Fabien Potencier
03d22b74ec fixed CS (mainly method signatures) 2012-07-09 14:43:50 +02:00
Fabien Potencier
6e1e49e3d6 bumped Symfony version to 2.1.0-DEV 2012-07-09 11:39:24 +02:00
Fabien Potencier
70bb756cd8 updated VERSION for 2.1.0 2012-07-09 09:52:38 +02:00
Fabien Potencier
07a6ef5d68 [Locale] re-activated a test now that the bug is fixed 2012-07-09 09:45:48 +02:00
WÅ‚odzimierz Gajda
d1a142ebe8 Issue #4719 - (Redis and Memcached fixes and test) 2012-07-09 09:18:22 +02:00
Fabien Potencier
5def75101e merged 2.0 2012-07-09 08:31:54 +02:00
Eriksen Costa
28f002d978 [Locale] fixed bug on the parsing of TYPE_INT64 integers in 32 bit and 64 bit environments, caused by PHP bug fix :) (closes #4718) 2012-07-08 22:15:42 -03:00
Adrien BRAULT
0562463cb7 [Security] Add an option to disable the hasPreviousSession() check in AbstractAuthenticationListener 2012-07-09 01:05:31 +02:00
Bilal Amarni
6c9c2ec1f3 [ClassCollectionLoader] fixed comment striping on classes in global namespace 2012-07-09 00:35:27 +02:00
Tobias Schultze
413e0ae6e6 fix another '0' problem 2012-07-09 00:24:52 +03:00
Alexander
bb138dadb3 [Security] Fix regression after rebase. Target url should be firewall dependent 2012-07-08 19:59:10 +02:00
Alexander
eb19f2c9e3 [Security] Add note to CHANGELOG about refactored authentication failure/success handling
[Security] Various CS + doc fixes
[Security] Exception when authentication failure/success handlers do not return a response
[Security] Add authors + fix docblock
2012-07-08 19:59:10 +02:00
Alexander
f9d5606f3f [Security] Update AuthenticationFailureHandlerInterface docblock. Never return null 2012-07-08 19:59:10 +02:00
Alexander
915704c071 [Security] Move default authentication failure handling strategy to seperate class
[Security] Update configuration for changes regarding default failure handler
[Security] Fixes + add AbstractFactory test for failure handler
2012-07-08 19:59:10 +02:00
Alexander
c6aa392df7 [Security] Move default authentication success handling strategy to seperate class
[Security] Update configuration for changes regarding default success handler
[Security] Fix + add AbstractFactory test
2012-07-08 19:59:10 +02:00
Bernhard Schussek
2e1941fe55 [Form] Fixed failing test in AbstractLayoutTest 2012-07-08 16:56:41 +02:00
Fabien Potencier
97b017bf3f merged branch gajdaw/kernel_test_fix (PR #4766)
Commits
-------

6de6806 [Component][HttpKernel] fixed testGetRootDir() on Win

Discussion
----------

[Component][HttpKernel] fixed testGetRootDir() on Win

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

Method `getRootDir()` returns path containing slashes. On Windows machine `__DIR__` and `DIRECTORY_SEPARATOR` are backslashes. To pass the test on win machine we have to translate `\` into `/`.
2012-07-08 12:14:29 +02:00
Janusz Jablonski
74aa5021df [HttpKernel] Fix #4719. Added condition which verify existence of profiler dump file. If file does not exists script inserts record to csv file. 2012-07-08 12:07:05 +02:00
Fabien Potencier
b8f99ee19e merged branch arnaud-lb/memory-example-fix (PR #4769)
Commits
-------

8997853 [Security] fixed in_memory provider example

Discussion
----------

[Security] fixed in_memory provider example

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

This fixes the in_memory provider configuration example shown by config:dump-reference

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

by stof at 2012-07-06T11:07:50Z

ðŸ‘
2012-07-08 10:05:28 +02:00
Fabien Potencier
443d70463c merged branch peterkokot/translations (PR #4784)
Commits
-------

df66d90 slovenian validators translations updated

Discussion
----------

Slovenian validators translations updated

Updated Slovenian validators translations for master branch.
2012-07-08 10:05:08 +02:00
Peter Kokot
df66d90196 slovenian validators translations updated 2012-07-08 09:37:00 +02:00
Francesc Rosàs
6d94f3eaa8 Ensure there is a session before getting the session id 2012-07-07 20:30:29 +02:00
Adrien Brault
0a4fd43e0e [Security] Fix typo in docblock 2012-07-07 20:42:10 +03:00
Fabien Potencier
0a3436d105 merged branch bschussek/issue4693 (PR #4772)
Commits
-------

d6e1f39 [Form] Fixed FormBuilder to maintain order of its children

Discussion
----------

[Form] Fixed FormBuilder to maintain order of its children

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4693
Todo: -
2012-07-06 19:44:07 +02:00
Fabien Potencier
9146aded18 merged branch bschussek/issue4715 (PR #4771)
Commits
-------

5fe3f39 [Form] Made data mappers completely responsible for dealing with empty values. Removed duplication of code.
9bf6e8b [Form] Compound forms now always need a data mapper. Otherwise an exception is thrown.

Discussion
----------

[Form] Made requirements for data mappers stricter

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

This cleanup was done while trying to fix #4715, which is not easily fixable right now. It breaks BC for those people who do not extend `FormType` and manually construct `Form` instances, which hopefully nobody does as it is absolutely *not* recommended at this time.
2012-07-06 19:43:23 +02:00
Adel
dbb63aee9c Fix typo change String to string 2012-07-06 19:52:14 +03:00
Bernhard Schussek
d6e1f39d09 [Form] Fixed FormBuilder to maintain order of its children 2012-07-06 17:32:57 +02:00
Bernhard Schussek
5fe3f39ebc [Form] Made data mappers completely responsible for dealing with empty values. Removed duplication of code. 2012-07-06 16:46:24 +02:00
Fabien Potencier
1cb9a74057 [Security] fixed automatic registration of the response listener when creating the listener
This is not a problem with Symfony, but when using the component
standalone (Silex for instance), the context listener might be
instantiated even if the firewall does not need to be fired. In that
case, the handle() method is not called, but the response listener is
called, which means that en empty token is stored in the session.

For Silex, it means that when authenticated, if you visit a 404 page,
you would be disconnected automatically.
2012-07-06 15:59:19 +02:00
Bernhard Schussek
9bf6e8ba59 [Form] Compound forms now always need a data mapper. Otherwise an exception is thrown. 2012-07-06 15:33:06 +02:00
Fabien Potencier
57581193d3 merged branch Inori/refactor-naming (PR #4767)
Commits
-------

819fe34 [Form] refactored variable name to be more consistent with rest of the naming

Discussion
----------

[Form] Refactored config variable naming to be more consistent

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

Since `clientTransformer` is renamed to `viewTransformer` everywhere, I think for consistency reasons config variable name should be changed too..

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

by stloyd at 2012-07-06T07:31:39Z

Maybe also rename of `normTransformers` to `modelTransformers` ? As this were changed too.

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

by Inori at 2012-07-06T07:40:53Z

@stloyd makes sense, done

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

by bschussek at 2012-07-06T08:24:43Z

Thanks for the cleanup. Can you squash the commits and prefix the message with "[Form]" please?

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

by Inori at 2012-07-06T08:43:49Z

@bschussek done

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

by bschussek at 2012-07-06T09:31:04Z

Thanks! @fabpot ðŸ‘
2012-07-06 12:00:31 +02:00
Arnaud Le Blanc
8997853dbd [Security] fixed in_memory provider example 2012-07-06 11:40:37 +02:00
Roman Marintsenko
819fe346e0 [Form] refactored variable name to be more consistent with rest of the naming 2012-07-06 11:41:38 +03:00
WÅ‚odzimierz Gajda
6de6806123 [Component][HttpKernel] fixed testGetRootDir() on Win 2012-07-06 08:26:06 +02:00
Tim Nagel
0a43d7d27c Add missing include in OptionsResolver README.md 2012-07-06 10:26:35 +10:00
Sylvain Lorinet
b9c518213d Fix error variable name. 2012-07-05 15:21:41 +03:00
Fabien Potencier
73d3efb7a9 [FrameworkBundle] added a note about the classes cache 2012-07-05 08:00:39 +02:00
Fabien Potencier
1a37b78078 reverted #4542 2012-07-05 07:56:16 +02:00
Fabien Potencier
1cff9502ca merged branch lavoiesl/master (PR #4522)
Commits
-------

6f9eda9 [Form][Validator] Fixed generation of HTML5 pattern attribute based on Assert\Regex to remove delimiters.

Discussion
----------

[Form][Validator] Fixed generation of HTML5 pattern attribute based on Assert\Regex by removing delimiters or using a new option: htmlPattern.

Hopefully, this time is the good one…

* Fixes: [#3766, #4077, #4513, #4520, #4521]
* Bug fix: yes
* Feature addition: yes
* BC break: no
* Symfony2 tests pass: yes

In Issue #3766, it was asked that Assert\Regex generates HTML5 pattern attribute.
It was done in PR #4077, but the generated Regex is in delimited format which is not supported by HTML5.

Hence, `/[a-z]+/` would be converted to `[a-z]+`.
If flags are specified like in `/[a-z]+/i`, it cannot be converted and pattern validation will be disabled client-side. If is however now possible, using a new option, `htmlPattern`, to specify the pattern you want to be used.

Example:

```php
<?php
/**
 * @Assert\Regex(pattern="/^[0-9]+[a-z]*$/i", htmlPattern="^[0-9]+[a-zA-Z]*$")
 */
private $civic_number;
```

**Note**: [Documentation](http://symfony.com/doc/current/reference/constraints/Regex.html) should be updated accordingly.

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

by lavoiesl at 2012-06-08T15:45:17Z

God, I just found out you can "add more commits to this pull request by pushing to the master branch on lavoiesl/symfony"…

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

by travisbot at 2012-06-08T15:50:31Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1568634) (merged 2d767b41 into b84b46ba).

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

by petajaros at 2012-07-04T14:23:16Z

Anything new about this issue?

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

by lavoiesl at 2012-07-04T16:25:43Z

Alright, tests are passing using `phpunit -c phpunit.xml.dist --filter 'RegexValidatorTest'`. @travisbot reports errors because he can’t even start the tests due to dependencies, which is not related

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

by vicb at 2012-07-04T16:31:13Z

It should be ready to merge when you have taken the last comments into account. thanks.

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

by lavoiesl at 2012-07-04T16:39:05Z

So it seems this PR will finally pass, thanks a lot.

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

by vicb at 2012-07-04T17:03:35Z

Thank you for this PR and the changes.

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

by fabpot at 2012-07-04T17:10:20Z

@lavoiesl Can you squash your commits before I merge? Thanks.

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

by lavoiesl at 2012-07-04T17:25:18Z

There. I also left trace of some commits I did.

Thanks
2012-07-04 19:27:14 +02:00
Sébastien Lavoie
6f9eda9582 [Form][Validator] Fixed generation of HTML5 pattern attribute based on Assert\Regex to remove delimiters.
[Validator] Added delimiter escaping to Validator\Constraints\Regex::getNonDelimitedPattern

[Form][Validator] Added htmlPattern option for Regex Validation.

[Validator] Fixed Validator\Constraints\Regex::getNonDelimitedPattern variable declarations

[Validator] Fixed tests for Regex htmlPattern option (instead of html_pattern)

[Validation] tweaked generation of pattern to include .* when not anchors are present. Also removed the exception and made getNonDelimitedPattern private
2012-07-04 13:23:21 -04:00
WÅ‚odzimierz Gajda
b4d7a7e8f6 [Component][Finder][SplFileInfo] file_get_contents=>fpassthru 2012-07-04 18:50:56 +02:00
Fabien Potencier
d4bd50a340 merged branch vicb/router/kp (PR #4745)
Commits
-------

0555913 [FrameworkBundle] Allow using kernel parameters in routes

Discussion
----------

[FrameworkBundle] Allow using kernel parameters in routes

Kernel parameters can now be used at any position in patterns, defaults and requirements.

Relates to: #3316, #3276

**Differences from 3316:**

- The substitution is now done in the `Router`,
- 3316 uses `$container->getParameterBag()` which is not part of the `ContainerInterface`. The way it been solved in this PR is that some code have been duplicated inside the `Router`, see `resolveString()`.

**BC break:**

Before this PR, nonexistent parameters would have be silently ignored (ie `%idontexist%` would not have been replaced). After this PR, they will throw an exception. However you can escape the value (ie `%%idontexist%%` will be accepted and replaced by `%idontexist%`).

_This behavior is not mandatory and can be reverted if needed. However this keeps the router more consistent with the DI_.

Any feedback ? @helmer @Koc

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

by Seldaek at 2012-07-04T12:40:08Z

👠for consistency.

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

by helmer at 2012-07-04T13:07:11Z

+1 a much better solution to the problem than mine, closing #3316

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

by Tobion at 2012-07-04T13:21:59Z

How about escaping kernel params with `\%idontexist%` as I suggested it for route params in 4563?

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

by stof at 2012-07-04T13:28:55Z

@Tobion this would not be consistent with the way DI parameters are escaped elsewhere

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

by Koc at 2012-07-04T14:24:25Z

Looks good for me, thanx.
2012-07-04 18:48:59 +02:00
Fabien Potencier
aa0399ef27 merged branch gajdaw/finder_yaml_tests (PR #4749)
Commits
-------

18f8fc7 [Finder] tests for Yaml class

Discussion
----------

[Finder] tests for Yaml class

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

Additional tests improving tests coverage.
2012-07-04 18:45:07 +02:00
WÅ‚odzimierz Gajda
18f8fc7ff0 [Finder] tests for Yaml class 2012-07-04 18:29:04 +02:00
Anthon Pang
383efdfadc Ignore validation exception so we get a more informative error message from $this->getXmlErrors().
This is consistent with https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Translation/Loader/XliffFileLoader.php#L82
2012-07-04 11:22:26 -04:00
Fabien Potencier
000d54cd27 merged branch fabpot/classloader-optim (PR #4729)
Commits
-------

3f9e8ff [ClassLoader] made ClassCollectionLoader::load() automatically include class dependencies
6f4d281 [ClassLoader] added missing support for PHP 5.4 traits

Discussion
----------

Classloader optimization

The first commit fixes support for PHP 5.4 trait.

The second one does several things:

 * it optimizes the recent merge so that the reflection class instance is only loaded once;
 * we use the fact that we now get all class dependencies to automatically add all class dependencies to the map.

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

by fabpot at 2012-07-03T17:26:46Z

I've updated to take into accounts traits.

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

by bamarni at 2012-07-04T11:58:57Z

great job ðŸ‘

I can't see it in the diff as this part hasn't changed, but somewhere in the autoReload block there is :
```
if ($meta[1] != $classes) {
    $reload = true;
}
```

It should be array_unique($classes), otherwise the file would be perpetually regenerated in autoReload mode when the input contains duplicate, because they're implicitely removed when dumping the files.

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

by fabpot at 2012-07-04T13:20:04Z

@bamarni I've added an `array_unique` call at the top (this bug existed before by the way).
2012-07-04 15:47:47 +02:00
Fabien Potencier
3f9e8ffe5c [ClassLoader] made ClassCollectionLoader::load() automatically include class dependencies 2012-07-04 15:19:35 +02:00
Fabien Potencier
41da9c7068 merged branch Tobion/patch-3 (PR #4720)
Commits
-------

51b610f [Profiler] fix typehint

Discussion
----------

[Profiler] fix typehint

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

by fabpot at 2012-07-03T10:23:25Z

The profiler only works with Twig anyway.

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

by Tobion at 2012-07-03T10:29:18Z

Right. But why does he have this error: f47b9a6625 (commitcomment-1532164)

And since the class only uses methods of the general interface, I thought this makes it more reliable.

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

by fabpot at 2012-07-03T10:37:26Z

It was unrelated and I fixed that problem already.
2012-07-04 15:15:20 +02:00
Victor Berchet
0555913fbb [FrameworkBundle] Allow using kernel parameters in routes
Kernel parameters can now be used at any position in patterns, defaults and requirements.
2012-07-04 14:47:36 +02:00
Douglas Greenshields
6751c87b52 [Profiler] fixed a couple of minor typos in a test 2012-07-04 13:15:12 +02:00
Fabien Potencier
e71149b4d9 [Locale] skipped a test until #4718 is fixed (refs #4718) 2012-07-04 07:31:08 +02:00
Fabien Potencier
b9f005eab3 merged branch Tobion/query (PR #4735)
Commits
-------

c40a4e5 [HttpFoundation] fix query string normalization
f9ec2ea refactored test method
0880174 [HttpFoundation] added failing tests for query string normalization

Discussion
----------

[HttpFoundation] fix query string normalization

This fixes the query string normalization. There were several problems in it (see test cases that I added).
The main issue, that first catched my eye, was that the query string was urldecoded before it was exploded by `=`. See old code: `explode('=', rawurldecode($segment), 2);`. This means an encoded `=` (`%3D`) would falsely be considered a separator and thus lead to complete different parameters. The fixed test case is at `pa%3Dram=foo%26bar%3Dbaz&test=test`.

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

by Tobion at 2012-07-04T02:21:25Z

cc @simensen considering your PR 4711
2012-07-04 07:27:44 +02:00
Fabien Potencier
c4a33713a6 merged branch Tobion/request (PR #4737)
Commits
-------

d37003e [HttpFoundation] small fixes in Request

Discussion
----------

[HttpFoundation] small fixes in Request

phpdoc fixes,
making http_build_query explicit
fixing query string of '0', that was ignored.

Unfortunately this '0' problematic is omnipresent because PHP makes it so easy to get wrong (as it is converted to boolean false). I don't know how often I fixed such issue already.
2012-07-04 07:18:32 +02:00
Fabien Potencier
8d84e75a75 merged branch Tobion/prevsession (PR #4736)
Commits
-------

4d0ae1f [HttpFoundation] refactored hasPreviousSession

Discussion
----------

[HttpFoundation] refactored hasPreviousSession
2012-07-04 07:16:31 +02:00
Tobias Schultze
d37003ec56 [HttpFoundation] small fixes in Request 2012-07-04 04:13:21 +02:00
Tobias Schultze
4d0ae1fb0c [HttpFoundation] refactored hasPreviousSession 2012-07-04 03:41:37 +02:00
Tobias Schultze
c40a4e50a9 [HttpFoundation] fix query string normalization 2012-07-04 03:10:48 +02:00
Tobias Schultze
f9ec2ea3be refactored test method 2012-07-04 03:05:07 +02:00
Tobias Schultze
0880174a54 [HttpFoundation] added failing tests for query string normalization 2012-07-04 02:42:19 +02:00
Fabien Potencier
af57fe0f3a merged branch Seldaek/processfinder (PR #4731)
Commits
-------

45219ef [Process] Add default xampp path to the list of possible paths to check
28e1313 [Process] Clean-up/simplify code
56f473a [Process] Add extra dirs argument to the executable finder to allow searching more dirs

Discussion
----------

ExecutableFinder changes

It cleans up stuff a bit and adds a guess for xampp users that wouldn't have php in their path
2012-07-03 21:44:11 +02:00
Fabien Potencier
037b4d8096 [ClassLoader] fixed typo 2012-07-03 21:28:10 +02:00
Fabien Potencier
391ee67d68 merged branch vicb/profiler (PR #4727)
Commits
-------

eda439f [EventDataCollector] Display a better message when no events have been recorded
6b87981 [TimeDataCollector] Do not throw an exception when no events are recorded

Discussion
----------

[Profiler] Better support for collector in a production env

relates to #3706.

With this PR it is possible to:
- enable only the profiler in a production environment - the wdt being disabled you have to switch to the development environment to inspect the collected data,
- enable both the profiler and the wdt in a production environment (the use case form #3706).

@jmikola would this solve your use case ?
2012-07-03 19:54:59 +02:00
Bernhard Schussek
45d967e95e [Form] Fixed: Empty forms can be compound too 2012-07-03 19:10:17 +02:00
Fabien Potencier
6f4d28181a [ClassLoader] added missing support for PHP 5.4 traits 2012-07-03 19:09:11 +02:00
Fabien Potencier
85977649a4 fixed unit tests 2012-07-03 19:06:57 +02:00
Jordi Boggiano
45219ef80f [Process] Add default xampp path to the list of possible paths to check 2012-07-03 18:58:37 +02:00
Jordi Boggiano
28e1313e5d [Process] Clean-up/simplify code 2012-07-03 18:58:27 +02:00
Fabien Potencier
3cfe916e65 [FrameworkBundle] fixed some unit tests 2012-07-03 18:55:00 +02:00
Jordi Boggiano
56f473a073 [Process] Add extra dirs argument to the executable finder to allow searching more dirs 2012-07-03 18:19:03 +02:00
Victor Berchet
eda439ffe5 [EventDataCollector] Display a better message when no events have been recorded 2012-07-03 18:15:27 +02:00
Victor Berchet
6b87981641 [TimeDataCollector] Do not throw an exception when no events are recorded 2012-07-03 18:15:20 +02:00
Fabien Potencier
23f41a21ca merged branch vicb/templates (PR #4723)
Commits
-------

aef7663 [FrameworkBundle] Create a dedicated template filename parser

Discussion
----------

[FrameworkBundle] Create a dedicated template filename parser

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

related to #3116
2012-07-03 17:47:16 +02:00
Jeremy Mikola
0fe56e6012 [Config] Fix comment typo 2012-07-03 12:34:31 -03:00
Fabien Potencier
3ee1b383af merged branch vicb/auto_start (PR #4724)
Commits
-------

c5470b0 [Session] Removes references to the deprecated 'auto_start' setting

Discussion
----------

[Session] Removes references to the deprecated 'auto_start' setting

fix #4721
2012-07-03 16:13:04 +02:00
Victor Berchet
c5470b06bb [Session] Removes references to the deprecated 'auto_start' setting 2012-07-03 15:44:06 +02:00
Victor Berchet
aef7663676 [FrameworkBundle] Create a dedicated template filename parser 2012-07-03 14:58:30 +02:00
Fabien Potencier
2335dd0d60 merged branch bamarni/compile-classes (PR #4694)
Commits
-------

26a1e0b [ClassLoader] ordered ClassCollectionLoader writing to avoid redeclaration at runtime

Discussion
----------

[HttpKernel] allowed classes to compile to be prepended

I had an issue when registering JMSDIExtraBundle before the frameworkBundle, because the bundle is adding a class to compile wich extends a class to compile added by the frameworkbundle (https://github.com/schmittjoh/JMSDiExtraBundle/blob/master/HttpKernel/ControllerResolver.php#L39).

In my kernel, the bundle was registered before the frameworkbundle, if it's the case, the class is writed before the symfony core class in the cache file, so it will trigger the autoloader to load the symfony core class, then we'll have a fatal error because we're declaring 2 times the same class.

I'm suggesting to add a way to prepend the classes to compile added by an extension, this way we could force classes from the core bundle to pe prepended, and avoid this kind of error with other bundles adding classes extending core classes or implementing core interface. I've also added it to the frameworkbundle.

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

by travisbot at 2012-07-01T12:32:28Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1750090) (merged a989d35c into a1b73887).

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

by schmittjoh at 2012-07-01T12:45:46Z

This doesn't sound really failure proof, better would be to resolve the compiled classes in a way that handles the dependencies gracefully regardless of the order that they are registered in.

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

by bamarni at 2012-07-01T13:03:15Z

yes that would be much cleaner, even if it's not perfect, I don't have any other examples, but I think in most of situations this error happens because of the frameworkbundle late registration?

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

by bamarni at 2012-07-01T23:07:24Z

I've added an automatic reordering as suggested. Now I don't get the error whatever the order of FrameworkBundle and JMSDIExtraBundle is.

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

by vicb at 2012-07-02T10:02:33Z

Does the algo really works ?

Let's say I have the following hierarchy `A < B < C` and the classes added in the following order; `C, B, A`. I believe that the algo would return `B, A, C` instead of `A, B, C`.

An other question: should the dependency resolution be implemented in the `ClassCollectionLoader` rather than in the compiler pass ?

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

by vicb at 2012-07-02T10:23:11Z

 @bamarni could you confirm the issue with the algo ? If it is confirmed, do you have time to work on a fix ?

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

by bamarni at 2012-07-02T11:05:53Z

the algo looks correct, there is a loop checking dependencies and appending the parent classes at the begining so it should also work with A > B > C, but I'll check and add a unit test.

You're right about the location it could belong there if we want a general fix, should I put it in the ClassLoader component?

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

by vicb at 2012-07-02T11:28:14Z

Yep please move the code to the ClassLoader.

You could also add some cache mechanism:
- ReflectionClass could be cached (they might be use mulitple times when some dependencies exist and are also used by the class loader)
- May be you could also cache the hierarchy of the classes

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

by bamarni at 2012-07-02T17:25:08Z

@vicb : indeed there were something wrong with the algo when it needed to handle more than 1 level of dependency, it's fixed, I've added a few test case and it passes.

Caching the dependencies found with reflection would be useful if people are dumping several files with some similar classes in the same process, but I don't see why we would need to cache the hierarchy?

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

by vicb at 2012-07-02T18:29:06Z

@bamarni I was referring to a local cache (ie local variable).

- On the first iteration, the code instantiate a reflection class,
- On other iteration you would instantiate again a reflection class for a subset of the classes
- ...
- In the end the former code instantiate again a reflection class for each class in order to get the file name, ...

I was also thinking of an other algo: count the number of parent classes for each classes to include and order classes according to this number. This would be a single loop only, what do you think ?

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

by bamarni at 2012-07-02T19:32:34Z

hum good idea counting the parents is cleaner, even though it looks enough, would it also make sense to treat interfaces and classes separately? I'm thinking about a file with all the interfaces at the begining (ordered by number of parents desc), then the classes would be appended (ordered by number of parents desc too).

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

by vicb at 2012-07-03T07:05:07Z

There is no real benefit in making the interfaces appear first but you can do it if it doesn't make the code more complex.

Please also add the `@throws` annotation to the methods.

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

by bamarni at 2012-07-03T09:37:28Z

@vicb : I've changed it to use the parents count, looks good to me.

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

by bamarni at 2012-07-03T12:23:46Z

changed

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

by bamarni at 2012-07-03T12:42:29Z

fixed
2012-07-03 14:53:35 +02:00
Bilal Amarni
26a1e0be5e [ClassLoader] ordered ClassCollectionLoader writing to avoid redeclaration at runtime 2012-07-03 14:40:59 +02:00
Tobias Schultze
5c6f848a7d [Routing] use faster approach for encoding rel segments
replaced the preg_replace code that was 1.4 times slower than the new code (verified with benchmark
2012-07-03 12:52:06 +02:00
Tobias Schultze
25d326b55e [Routing] fix encoding of path segments '.' and '..' 2012-07-03 12:52:05 +02:00
Tobias Schultze
51b610f8ba [Profiler] fix typehint 2012-07-03 13:04:37 +03:00
Victor Berchet
816539b110 [FrameworkBundle] Display an error message when 'session.auto_start' is used (deprecated) 2012-07-03 11:35:02 +02:00
Fabien Potencier
11e8a33c7c merged branch Tobion/4166 (PR #4530)
Commits
-------

3466896 [Routing] fix encoding of static static, so UrlGenerator produces valid URLs

Discussion
----------

[Routing] fix encoding of static text

Fixes #4166

As requested by Fabien, I split #4205 into multiple PRs.

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

by stof at 2012-06-09T12:49:32Z

github tells me this PR cannot be merged automatically. Could you rebase it ?

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

by Tobion at 2012-06-09T13:12:55Z

Done

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

by travisbot at 2012-06-09T13:18:18Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1576266) (merged 3466896a into 15b5aa4f).
2012-07-03 11:09:19 +02:00
Fabien Potencier
bf59b8677c merged branch fabpot/charset-fix (PR #4716)
Commits
-------

d9439ab made the charset overridable (closes #2072)

Discussion
----------

made the charset overridable (closes #2072)

The charset was configurable in a configuration file but it never worked:

    framework:
        charset: ISO-8859-1

Now, like for the cache and log dirs, you can configure the charset by
overriding the getCharset() method in the app kernel:

    public function getCharset()
    {
        return 'ISO-8859-1';
    }

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

by fabpot at 2012-07-03T07:26:04Z

See #2072 for the previous attempts to fix this issue.
2012-07-03 10:43:15 +02:00
Fabien Potencier
d9439aba71 made the charset overridable (closes #2072)
The charset was configurable in a configuration file but it never worked:

    framework:
        charset: ISO-8859-1

Now, like for the cache and log dirs, you can configure the charset by
overriding the getCharset() method in the app kernel:

    public function getCharset()
    {
        return 'ISO-8859-1';
    }
2012-07-03 10:28:30 +02:00
Fabien Potencier
f47b9a6625 [WebProfilerBundle] inlined a service (closes #4717) 2012-07-03 10:02:51 +02:00
Fabien Potencier
736aa210a2 merged branch simensen/normalize-querystring (PR #4711)
Commits
-------

6296a24 Standalone query string normalization

Discussion
----------

[HttpFoundation] Standalone query string normalization

I wanted to leverage query string normalization in a test. I considered copying this code to my own library but I noticed that the only instance data `getQueryString` needed to know from the `Request` was `QUERY_STRING` so I broke the rest out into a standalone static function.

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

by simensen at 2012-07-02T20:05:59Z

I made the requested changes.

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

by fabpot at 2012-07-02T20:10:27Z

Can you squash your commits? Thanks.

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

by simensen at 2012-07-02T20:16:52Z

Sure, no problem. Hopefully I did it correctly.
2012-07-02 22:18:33 +02:00
Beau Simensen
6296a241a8 Standalone query string normalization 2012-07-02 13:11:17 -07:00
Fabien Potencier
67a69ea357 [Security] updated CHANGELOG 2012-07-02 19:29:27 +02:00
Fabien Potencier
637aaacccb merged branch uwej711/security_target_path_master (PR #4409)
Commits
-------

8ffaafa Make the session entry for the target url firewall dependent.

Discussion
----------

[Security] Make the session entry for the target url firewall dependent.

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

If there are two firewalls (eg. main and admin), calling an protected admin url
will direct you to the login form of the admin. If I ignore this and go to the login
form of the main firewall directly I will end up being redirected to the stored
admin target url, which will lead me to the admin login form again.

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

by travisbot at 2012-05-25T09:33:44Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1431566) (merged 8ffaafa8 into 45849ce3).

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

by uwej711 at 2012-06-09T08:05:54Z

Doesn't this make sense or did this slip through? Or is there something missing?
2012-07-02 19:27:21 +02:00
avorobiev
036c15ecfa [DependencyInjection] Unescape class arguments part 2 2012-07-02 18:17:30 +04:00
avorobiev
19bdae1b90 [DependencyInjection] Fixed unescaping of class arguments 2012-07-02 18:10:38 +04:00
Fabien Potencier
81fe2ff8e2 merged branch fabpot/locale-listener (PR #4692)
Commits
-------

88caf3a [HttpKernel] removed the storage of the current locale in the session

Discussion
----------

[HttpKernel] removed the storage of the current locale in the session

Before this commit, the current locale was stored in the session (if one
was already started). That way, for the next requests, even if the
request locale attribute was not set, the locale was "restored".

But this is a really bad practice as it means that the same URL can have
a different content depending on the previous requests. It would have
been better if the Vary header was set but the locale can be different
from the value coming from the Accept-Language anyway.

This is a BC break but fortunately, you can restore the 2.0 behavior by
creating a simple event listener that contains the logic removed by this
commit.

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

by travisbot at 2012-07-01T06:56:48Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1748659) (merged 009e30f0 into 2e356c1a).

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

by schmittjoh at 2012-07-01T08:15:46Z

How about using a cookie instead? It would remove the BC break, and also be possible to use a vary header?

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

by fabpot at 2012-07-01T09:13:44Z

The goal is to make Symfony as stateless as possible; introducing a cookie would defeat this goal.

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

by drak at 2012-07-01T09:19:37Z

@fabpot - thank you for bringing this to attention. I was meaning to do it a long time ago. The requested language is entirely a per request issue and must always be so. URLs must only ever return one content, and not multiple (e.g. different languages). The correct way to behave is to detect the language based on URL and failing that where a language is not requested, to look at the preferred language from the browser request and if available it can be redirected to that resource (e.g. /fr). This is what we do in Zikula. We have a further session based setting for "preferred language" which if set will override the browser default.

In summary:

1. If the language is specified in the GET request, return that language always. E.g. domain.com/fr/foo should return a French version of foo

2. If no language is specified in the GET request: first check the session for a preferred language, otherwise check the browser string for the preferred language and then if necessary, redirect to that resource. We have a setting which additionally say "always have language in URL, and don't put language code in URL for default language"

This means what in Zikula we only ever have one URL per language version of a page, but it still allows for users to set their preferred language which is taken in to account mainly when they visit the homepage (but in fact any page without a specific language in the request).

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

by drak at 2012-07-01T09:38:06Z

+1 on this PR. Basically the request locale should be in the Request object and calculated according to the applications preferences.

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

by schmittjoh at 2012-07-01T12:38:25Z

I agree that content must be detected based on the request, but I strongly disagree with relying entirely on the URL.

@fabpot, if you think about it using a cookie would still be stateless. There would be no state whatsoever, the detection would be entirely based on the request. Whether the language information is transmitted in the URL or as part of request headers is for the developer to decide eventually, at least IMO. My suggestion would just provide a default which is more BC.

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

by drak at 2012-07-01T20:08:50Z

@schmittjoh it's not entirely from the URL, there are browser preferences and also user defaults ca nalso available but the latter is slightly higher level. IMO it's not really Symfony's job here, it's application level specific. We have a pretty good working example of that in Zikula. Anyone can easily implement your own requirements with a listener.

What is absolutely clear however is it is wrong for one URL to deliver more than one version of any content.

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

by schmittjoh at 2012-07-01T21:16:52Z

I'm 100% for this change. My suggestion would just be more BC while still keeping Symfony2 stateless. Of course, it can be easily implemented in userland if we do not care about BC here.

Regarding different URLs per content, I do not think that this is our decision to make. Generally, developers should be able to make whatever content negotation they see fit. Whether they rely solely on the URL, or also take other request headers into account should not be limited by Symfony2.

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

by fabpot at 2012-07-02T10:37:26Z

I've added a paragraph in the UPGRADE file with a listener example that can be used to keep BC.
2012-07-02 12:37:57 +02:00
Fabien Potencier
88caf3a370 [HttpKernel] removed the storage of the current locale in the session
Before this commit, the current locale was stored in the session (if one
was already started). That way, for the next requests, even if the
request locale attribute was not set, the locale was "restored".

But this is a really bad practice as it means that the same URL can have
a different content depending on the previous requests. It would have
been better if the Vary header was set but the locale can be different
from the value coming from the Accept-Language anyway.

This is a BC break but fortunately, you can restore the 2.0 behavior by
creating a simple event listener that contains the logic removed by this
commit.
2012-07-02 12:36:25 +02:00
Fabien Potencier
7407773234 [WebProfilerBundle] tweaked previous merge 2012-07-02 11:12:51 +02:00
Fabien Potencier
155320ae83 merged branch wodor/profiler_rely_on_profile_3372 (PR #3373)
Commits
-------

1472283 fixed CS
bc73487 renamed template to TemplateManager , moved profiler to the deps of manager
5fd6ed6 properties protected
abd0eb7 generating template names moved out from controller  to another class
6138e80 [Profiler] relying on config of displayed profile  instead of current config.

Discussion
----------

[2.2][Profiler] relying on config of displayed profile  instead of current config

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: code of ProfilerController is not covered by any test
Fixes the following tickets: #3372
Todo: ~

This fixes the exception which is raised when viewed profile has other  data collectors than in config of currently run profiler.
explained here
https://github.com/symfony/symfony/issues/3372

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

by fabpot at 2012-02-16T06:11:00Z

This should probably be done on the 2.0 branch. Also, I think we need to check if the panel is actually available in the current profiler (if not, we won't be able to display it anyway). So, both checks are important.

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

by wodor at 2012-02-18T10:15:40Z

defects mentioned by Stof are fixed
2012-07-02 11:05:28 +02:00
Bart van den Burg
6e168cdbb9 fixed dutch translations
mostly reverts a859f7

e-mailadres: http://www.onzetaal.nl/taaladvies/advies/e-mailadres-emailadres
"waarde" is not a neutral word, so it cannot be referred to as "het"
"verwachte" here is an adjective, not a verb - http://www.leestrainer.nl/Leerlijn%20werkwoorden/als%20bijvnm%20schrijven.htm
2012-07-02 10:54:18 +02:00
Fabien Potencier
28b6ff0f48 merged branch nomack84/wdt_documentation_link_color_fix (PR #4260)
Commits
-------

b804b94 Fixed style for the abbr tag
147cab7 [WDT] Fix the color of Documentation link to keep concistence.

Discussion
----------

[WDT] Fix the color of Documentation link to keep concistence.

This pull request is to make the Documentation link black as the other links of the WDT

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

by travisbot at 2012-05-11T13:33:24Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1304777) (merged 5a87a098 into 554e0738).

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

by Tobion at 2012-05-11T16:36:39Z

should be done via selector in the css file that is used for the WDT (also refactor the profiler token link like this)

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

by nomack84 at 2012-05-11T17:46:15Z

Done.

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

by travisbot at 2012-05-11T17:48:24Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1307502) (merged eee437c9 into 554e0738).

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

by travisbot at 2012-05-11T18:27:55Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1307838) (merged 3604f131 into dd0da03c).

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

by mvrhov at 2012-05-11T18:40:05Z

While you are at it, the controller text color is also wrong.

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

by travisbot at 2012-05-11T18:43:00Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1308018) (merged 147cab74 into dd0da03c).

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

by nomack84 at 2012-05-11T18:49:47Z

@mvrhov I don't see the difference.

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

by mvrhov at 2012-05-11T19:45:45Z

Set the color for abbr tag on your website to red or something like that. By default abbr color is set to black. My website has is set to #55555 so the controller name its barely visible.

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

by nomack84 at 2012-05-14T12:42:30Z

@mvrhov Done!

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

by travisbot at 2012-05-14T12:43:48Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1326494) (merged b804b942 into dd0da03c).

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

by nomack84 at 2012-05-15T13:09:59Z

Hi @fabpot,
Can you merge this? The only thing it does is add a missed style to the Documentation link and also to the abbr tag, as suggested by @mvrhov.
Greetings!
2012-07-02 10:42:21 +02:00
Harm van Tilborg
a859f729e3 Better Dutch translation of some validator messages 2012-07-02 11:20:06 +03:00
Fabien Potencier
dd1115a286 merged branch vicb/finder/regex (PR #4699)
Commits
-------

4d09fe6 [Finder] '*' and '?' are considered are glob pattern rather than delimiters (fix #4664)

Discussion
----------

[Finder] '*' and '?' are considered are glob pattern rather than delimit...

...ers (fix #4664)
2012-07-02 09:47:07 +02:00
Victor Berchet
4d09fe6e04 [Finder] '*' and '?' are considered are glob pattern rather than delimiters (fix #4664) 2012-07-02 09:05:19 +02:00
Fabien Potencier
b6e4fd0393 [HttpKernel] fixed a test 2012-07-01 23:28:11 +02:00
Fabien Potencier
6dd342c351 fixed previous merge 2012-07-01 23:25:00 +02:00
Fabien Potencier
d2b5208a77 merged branch dlsniper/session-start-fix (PR #4541)
Commits
-------

f72ba0a Fixed detection of an active session

Discussion
----------

[WIP][HttpFoundation][Session] Fixed detection of an active session

Bug fix: yes
Feature addition: no
Backwards compatibility break: not sure
Symfony2 tests pass: no
Fixes the following tickets: #4529
Todo: Fix failing tests
License of the code: MIT
Documentation PR: ~

This fixes the problem when the session variable inside $request now has always data in it as it's now more powerful but this introduces the problem that the old way of detecting if a session is started or not doesn't work anymore.

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

by travisbot at 2012-06-09T21:53:17Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1578839) (merged 9ae13e12 into 6266b72d).

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

by drak at 2012-06-10T01:57:59Z

Sessions should be started implicitly. The SF auto_start config parameter controls the session listener to start the session.

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

by dlsniper at 2012-06-11T06:46:02Z

So this patch is correct then and I should continue the work on it?

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

by drak at 2012-06-11T07:51:39Z

@dlsniper - no it's not correct.  The session should not be auto-started like this, @fabpot and I recently discussed it.

---------------------------------------------------------------------------

by dlsniper at 2012-06-11T07:52:55Z

@Drak, ok I'll remove the patch for auto_start then but the fix for start would still stand, right?

---------------------------------------------------------------------------

by drak at 2012-06-12T18:40:35Z

@dlsniper - I have no objection to the rest of the PR except for the autostart stuff.  I've annotated for clarity :)

---------------------------------------------------------------------------

by travisbot at 2012-06-12T19:51:12Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1604158) (merged 3499980e into 37550d23).

---------------------------------------------------------------------------

by travisbot at 2012-06-12T19:52:00Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1604166) (merged dcc73071 into 37550d23).

---------------------------------------------------------------------------

by dlsniper at 2012-06-12T19:56:51Z

Seems Travis doesn't like the squashing of commits that I've did but the PR does pass the normal tests.
@drak is this good for merging now?

Thanks :)

---------------------------------------------------------------------------

by dlsniper at 2012-06-13T09:05:09Z

@fabpot this can be merged safely, I've just applied the patch on my production application and the patch is ok, it's just travis failing.

Thanks

---------------------------------------------------------------------------

by travisbot at 2012-06-13T09:23:46Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1608735) (merged 1a6eabd2 into 37550d23).

---------------------------------------------------------------------------

by travisbot at 2012-06-13T09:28:26Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1608758) (merged 4e3a93c8 into 37550d23).

---------------------------------------------------------------------------

by dlsniper at 2012-06-13T09:29:28Z

I've noticed that this is failing, I'll fix it later on today.

---------------------------------------------------------------------------

by travisbot at 2012-06-13T15:14:01Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1611541) (merged 5504c4b7 into 37550d23).

---------------------------------------------------------------------------

by drak at 2012-06-13T15:23:47Z

It's possible that other tests are failing not related to this PR. Run the tests on the current master, and try rebasing your branch to the current master also.

---------------------------------------------------------------------------

by dlsniper at 2012-06-13T15:44:22Z

I've just reminded why this is failing on builds, I can't do them locally because of this:
```
Installing dev dependencies
Your requirements could not be solved to an installable set of packages.

        Problems:
                - Problem caused by:
                        - Installation request for doctrine/orm [>= 2.2.0.0, < 2.4.0.0-dev]: Satisfiable by [doctrine/orm-2.2.2, doctrine/orm-2.2.1, doctrine/orm-2.2.0, doctrine/orm-2.2.x-dev, doctrine/orm-2.3.x-dev].
```

I'll try and install this somehow and see what's wrong with it.

---------------------------------------------------------------------------

by mvrhov at 2012-06-13T18:08:58Z

@dlsniper: as @stof said to me this should be resolved in latest versions of composer, but it seems that is not. The problem is that composer cannot figure out that you are on dev-master if you try to instal dev. dependencies on feature branch. Take a look at the .travis.yml file on how to do a proper dev vendors install.
cc @Seldaek

---------------------------------------------------------------------------

by dlsniper at 2012-06-13T23:08:53Z

@mvrhov Thanks for pointing this out.

@drak I still got two tests not passing but I'm not sure how to fix them as adding $session->start() will either fail with the message that the session has already been started, the headers_sent() call which returns true. Any help with them will be greatly appreciated. Thanks!

Here is what the HttpKernel tests are returning:
```
There were 2 failures:

1) Symfony\Component\HttpKernel\Tests\EventListener\LocaleListenerTest::testDefaultLocaleWithSession
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'es'
+'fr'

/var/www/symfony-orig/src/Symfony/Component/HttpKernel/Tests/EventListener/LocaleListenerTest.php:51

2) Symfony\Component\HttpKernel\Tests\EventListener\LocaleListenerTest::testLocaleFromRequestAttribute
Expectation failed for method name is equal to <string:set> when invoked 1 time(s).
Method was expected to be called 1 times, actually called 0 times.

FAILURES!
Tests: 263, Assertions: 1025, Failures: 2, Skipped: 10.
```

---------------------------------------------------------------------------

by travisbot at 2012-06-13T23:42:59Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1614883) (merged 1004b7c0 into c07e9163).

---------------------------------------------------------------------------

by travisbot at 2012-06-13T23:53:06Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1614897) (merged f72ba0a2 into c07e9163).

---------------------------------------------------------------------------

by dlsniper at 2012-06-16T20:14:41Z

@stof / @vicb Hi, do either of you think that you can either point me out to the right direction for fixing this either ping someone else for home help as @drak doesn't seem available for this and at the moment I'm pretty much clueless in what direction I should take this fix.

Thanks!

---------------------------------------------------------------------------

by dlsniper at 2012-06-19T14:16:29Z

ping @fabpot Can you please provide some input on this one as I'm a bit stuck and seems noone else is available.

---------------------------------------------------------------------------

by drak at 2012-06-20T10:24:43Z

fyi - I'll be able to look again in a few days

---------------------------------------------------------------------------

by fabpot at 2012-07-01T07:53:28Z

I'm +1 to add the `isStarted()` method, but -1 for the change of `Request::hasSession`.

---------------------------------------------------------------------------

by drak at 2012-07-01T09:06:15Z

@fabpot, I agree. `hasSession()` should not be changed, it's semantically incorrect to make it return effectively "hasActiveSession".
2012-07-01 23:20:45 +02:00
Fabien Potencier
7ac10fefa0 merged branch jalliot/load-class-cache (PR #4542)
Commits
-------

f09789b [FrameworkBundle] Generate the class cache when warming up the cache

Discussion
----------

[FrameworkBundle] Generate the class cache when warming up the cache

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/jalliot/symfony.png?branch=load-class-cache)](http://travis-ci.org/jalliot/symfony)
Fixes the following tickets: -
Todo: -

With this PR, the commands `cache:clear` (if `--no-warmup` hasn't been specified) and `cache:warmup` generate the class cache. Now the first page load after clearing the cache does not take over one second anymore :)
Of course, if someone does not want to use the class cache for whatever reason, he can always remove the `$kernel->loadClassCache()` in his front controller and the cache will just be ignored...

On a side note, can someone explain why [SensioDistributionBundle does not warmup the cache in the Composer post-install script](https://github.com/sensio/SensioDistributionBundle/blob/master/Composer/ScriptHandler.php#L48)?

---------------------------------------------------------------------------

by travisbot at 2012-06-10T05:18:30Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1579114) (merged baecbaee into 6266b72d).

---------------------------------------------------------------------------

by travisbot at 2012-06-10T05:24:48Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1579154) (merged f09789b1 into 6266b72d).

---------------------------------------------------------------------------

by jalliot at 2012-06-28T23:18:54Z

@fabpot ping
2012-07-01 23:19:22 +02:00
Fabien Potencier
8a3f5bd323 merged branch Tobion/requestmatcher (PR #4582)
Commits
-------

7464dcd added phpdoc
c413e7b [Routing] remove RequestContextAwareInterface from RequestMatcherInterface
921be34 [Routing] fix phpdoc

Discussion
----------

[Routing] RequestMatcherInterface doesn't need context

Matchers that implement RequestMatcherInterface should match a Request, thus they don't need the request context.

---------------------------------------------------------------------------

by travisbot at 2012-06-14T21:39:48Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1624496) (merged f5ff1fe0 into 7c91ee57).

---------------------------------------------------------------------------

by schmittjoh at 2012-06-15T13:32:59Z

I think it makes sense to remove the RequestContext from the RequestMatcher.

---------------------------------------------------------------------------

by travisbot at 2012-06-15T15:54:28Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1628931) (merged 7464dcd2 into f881d282).

---------------------------------------------------------------------------

by Tobion at 2012-06-26T12:32:06Z

Anything missing?
2012-07-01 23:09:16 +02:00
Fabien Potencier
4f4c679eef [FrameworkBundle] fixed client insulation (closes #1726, closes #4608) 2012-07-01 23:01:26 +02:00
Fabien Potencier
c0e4760b38 merged branch kriswallsmith/form/mv-humanize (PR #4645)
Commits
-------

c1e4166 moved create of default form label to view layer

Discussion
----------

move create of default form label to view layer

A small optimization if you provide custom labels in the view layer (i.e. `{{ form_label(form.name, 'Your name') }}`

```
Bug fix: no
Feature addition: no
Backwards compatibility break: yes
Symfony2 tests pass: yes
Fixes the following tickets: ~
Todo: ~
License of the code: MIT
Documentation PR: ~
```

---------------------------------------------------------------------------

by travisbot at 2012-06-24T14:45:17Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1694310) (merged 37f0b774 into 0d4b02e4).

---------------------------------------------------------------------------

by travisbot at 2012-06-24T15:03:44Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1694418) (merged c1e4166e into 0d4b02e4).
2012-07-01 22:38:07 +02:00
Fabien Potencier
85d77c2ec9 merged branch flojon/patch-1 (PR #4638)
Commits
-------

eb26e89 [FrameworkBundle] Fix built-in server when using query params in paths

Discussion
----------

[FrameworkBundle] Fix built-in server when using query params in paths

$_SERVER['REQUEST_URI'] will contain the query params so is_file will fail.
I propose to use $_SERVER['SCRIPT_FILENAME'] instead which contains the full path and no query params.

---------------------------------------------------------------------------

by ajessu at 2012-06-23T10:17:34Z

I was going to make this comment on your approach in #4484, but I'll make it here, since that issue is already closed.

Your solution won't work on PHP 5.4.0, as `$_SERVER['SCRIPT_FILENAME']` will not be set [see PHP bug #60850](https://bugs.php.net/bug.php?id=60850).

Also PHP 5.4.1 and up, if you don't request a file explicitely, Ex:

     http://localhost:8000/app_dev.php

but a location, Ex:

    http://localhost:8000/

The value of the `$_SERVER['SCRIPT_FILENAME']` will be the router file, not the script name, which makes relying on `$_SERVER['SCRIPT_FILENAME']` inconsistent. [See this comment on the php bug](https://bugs.php.net/bug.php?id=60850#1331261652)

I'm not sure if (nor how?) the issue of the params should be addressed on this "default" router, to not make it overly complex.

For your use case, and this is just my own early opinion without much thought, in case we can't come up with a general solution, there is always the option of defining your own router and passing it to the `server:run` command with `--router` like so:

    php app/console server:run --router=app/config/my_own_router.php

---------------------------------------------------------------------------

by flojon at 2012-06-23T10:31:47Z

So would `$_SERVER['SCRIPT_NAME']` be more reliable? Like this:

    if (is_file($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . $_SERVER['SCRIPT_NAME'])) {
        return false;
    }

I did a simple test and `$_SERVER['SCRIPT_NAME']` is set to `/` when accessing the root (using PHP 5.4.3).

---------------------------------------------------------------------------

by flojon at 2012-06-23T10:51:22Z

Browse around the code a bit and `$_SERVER['SCRIPT_NAME']` has been there since PHP 5.4.0:
https://github.com/php/php-src/blob/php-5.4.0/sapi/cli/php_cli_server.c#L598

---------------------------------------------------------------------------

by travisbot at 2012-06-23T11:16:59Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1688361) (merged eb26e896 into 0d4b02e4).

---------------------------------------------------------------------------

by travisbot at 2012-06-24T10:23:52Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1688043) (merged 71855665 into 0d4b02e4).

---------------------------------------------------------------------------

by CHH at 2012-06-29T07:17:32Z

This works fine for me!

ðŸ‘

Could someone please merge this? This issue makes the `server:run` command currently quite unusable, because it can't load CSS for example which has a `?v=` parameter.

---------------------------------------------------------------------------

by ajessu at 2012-06-29T08:25:14Z

👠from me also. Works just like `$_SERVER['REQUEST_URI']`, but doesn't include the params.

Tested working on PHP 5.4.0 and 5.4.3.
2012-07-01 22:34:54 +02:00
Fabien Potencier
ed49e3be35 [Routing] removed trailing slash behavior on non-safe requests (refs #2626) 2012-07-01 19:02:05 +02:00
Fabien Potencier
16976be8ce [Routing] fixed indentation 2012-07-01 18:56:00 +02:00
Marc Abramowitz
c1fea1d8c8 fixed incorrect reference to set*Service() method 2012-07-01 12:35:01 +02:00
Fabien Potencier
a1b73887f7 [Yaml] fixed parsing when a mapping is mixed within a sequence and vice-versa (closes #4634) 2012-07-01 11:19:53 +02:00
Fabien Potencier
2e356c1ab9 [FrameworkBundle] removed the auto-starting of the session when a previous session exists (it is not needed anymore as the session is now always started on demand) 2012-06-30 20:44:16 +02:00
Sergey Linnik
0b02e3ce79 [FrameworkBundle] Removed unneeded parameter 2012-06-30 13:11:07 +04:00
Fabien Potencier
741927baf3 [FrameworkBundle] removed unneeded start call 2012-06-30 09:42:40 +02:00
Fabien Potencier
fe527d00c1 merged branch drak/session_on_demand (PR #4264)
Commits
-------

911db69 [FrameworkBundle] Typo fix
19eeac8 [HttpFoundation] Removed erroneous reliance on session.auto_start
dcac5d7 [HttpFoundation] Corrected docblocks and properties.
1fd66f3 [FrameworkBundle] Remove 'auto_start' configuration parameter.

Discussion
----------

[HttpFoundation] Remove session start on demand

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT

This removes false reliance on ini directive `session.auto_start` to allow a session to start when session bags are accessed before the `SessionStorageInterface` is started.

Sessions must be explicitly started in all circumstances.

---------------------------------------------------------------------------

by stloyd at 2012-06-13T07:22:24Z

@drak Shouldn't you add note about this change in upgrade file ?

---------------------------------------------------------------------------

by drak at 2012-06-13T15:13:37Z

It's a development version change, so not really. But saying that, I have a bunch of documentation to amend when this gets merged and at that time I'll make sure the changelogs and upgrading are up to date as part of that.

---------------------------------------------------------------------------

by dlsniper at 2012-06-13T21:57:28Z

@drak If this change will kick in what does one user of Symfony 2 Standard must do in order to keep compat with this merge? I see that you said you'll update the docs but until that happens some might upgrade their app directly to master :)

Thanks.

---------------------------------------------------------------------------

by drak at 2012-06-14T01:36:04Z

@dlsniper - nothing. This corrects a bug and inconsistency.

---------------------------------------------------------------------------

by travisbot at 2012-06-29T17:48:42Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1739033) (merged 19eeac88 into 62100f1a).

---------------------------------------------------------------------------

by drak at 2012-06-29T17:55:13Z

@fabpot ping. The failing Travis is nothing to do with this PR (see the travis logs).

---------------------------------------------------------------------------

by travisbot at 2012-06-29T20:39:43Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1739805) (merged 911db69b into 62100f1a).
2012-06-30 09:39:50 +02:00
Drak
911db69bfe [FrameworkBundle] Typo fix 2012-06-29 20:13:19 +01:00
Drak
19eeac88ca [HttpFoundation] Removed erroneous reliance on session.auto_start 2012-06-29 18:05:14 +01:00
Drak
dcac5d7fd6 [HttpFoundation] Corrected docblocks and properties. 2012-06-29 18:04:40 +01:00
Drak
1fd66f3cdf [FrameworkBundle] Remove 'auto_start' configuration parameter. 2012-06-29 17:34:28 +01:00
Fabien Potencier
62100f1a18 merged 2.0 2012-06-29 18:03:08 +02:00
Fabien Potencier
b89b00fa20 bumped minimal version of Swiftmailer to 4.2.0 2012-06-29 18:02:19 +02:00
Fabien Potencier
df1050fa32 merged 2.0 2012-06-29 18:01:01 +02:00
Fabien Potencier
997bcfc420 [SwiftmailerBridge] allowed versions 4.2.* 2012-06-29 18:00:35 +02:00
Fabien Potencier
8ebe624b82 [HttpKernel] added some unit tests 2012-06-29 08:38:15 +02:00
Fabien Potencier
fd0e589c2b fixed sub-requests with a different method than the main request 2012-06-29 08:31:02 +02:00
Fabien Potencier
a725f023c1 fixed typo 2012-06-29 00:35:09 +02:00
Fabien Potencier
e0351c93df merged branch fabpot/request-methods (PR #4679)
Commits
-------

df8d94e added Request::getSchemeAndHttpHost() and Request::getUserInfo() (closes #4312, refs #3416, refs #3056)

Discussion
----------

added Request::getSchemeAndHttpHost() and Request::getUserInfo()

see #4312

---------------------------------------------------------------------------

by travisbot at 2012-06-28T15:22:03Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1730172) (merged 598bd56f into 0d275701).

---------------------------------------------------------------------------

by Seldaek at 2012-06-28T15:22:35Z

Why not just `getSchemeAndHost`? That sounds long enough, and is fairly explicit given the context.

---------------------------------------------------------------------------

by fabpot at 2012-06-28T15:25:34Z

@Seldaek because (and that's probably unfortunate) we have both `getHost()` and `getHttpHost()`. The former does not include the port whereas the latter does.

---------------------------------------------------------------------------

by Seldaek at 2012-06-28T15:26:42Z

Ok makes sense.

---------------------------------------------------------------------------

by travisbot at 2012-06-28T16:11:16Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1730630) (merged df8d94e3 into 884a8264).
2012-06-28 19:05:50 +02:00
Xavier Lacot
e44e21c2e9 Reverted to Symfony 2.0's signature, which made it simple to display only a subset of the routes of the application.
This is particularly useful for FOSJsRoutingBundle's fos:js-routing:debug command, which allows to filter the list of javascript-exposed routes.
2012-06-28 18:29:35 +02:00
Fabien Potencier
df8d94e33c added Request::getSchemeAndHttpHost() and Request::getUserInfo() (closes #4312, refs #3416, refs #3056) 2012-06-28 17:56:04 +02:00
Fabien Potencier
884a8264b3 fixed CS 2012-06-28 17:48:35 +02:00
Fabien Potencier
9fb567dc43 merged branch stealth35/populate_files (PR #2892)
Commits
-------

b217897 [HttpFoundation] Complete Request::overrideGlobals

Discussion
----------

[2.2][HttpFoundation] complete Request::overrideGlobals

Bug fix: yes
Feature addition: yes
Backwards compatibility break: yes
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/stealth35/symfony.png?branch=populate_files)](http://travis-ci.org/stealth35/symfony)Fixes the following tickets: -
Todo: -

---------------------------------------------------------------------------

by stealth35 at 2011-12-15T14:20:36Z

Thank guys, should be better now

---------------------------------------------------------------------------

by stealth35 at 2011-12-15T16:14:40Z

@stloyd ✌ï¸

---------------------------------------------------------------------------

by stloyd at 2011-12-15T16:22:48Z

@stealth35 You should update also [`RequestTest`](https://github.com/symfony/symfony/blob/master/tests/Symfony/Tests/Component/HttpFoundation/RequestTest.php#L623) which would show you typos you have few mins ago ;-)

---------------------------------------------------------------------------

by stealth35 at 2011-12-15T16:57:16Z

@stloyd done, thanks for your review

---------------------------------------------------------------------------

by canni at 2011-12-15T20:27:28Z

As this is bugfix, this shouldn't be re-based against 2.0?

---------------------------------------------------------------------------

by stealth35 at 2011-12-15T20:50:05Z

@canni It's more a forget feature, I tagged it to bug fix because of the `FIXME`, and it's add a method, IMO there is no rush

---------------------------------------------------------------------------

by canni at 2011-12-15T20:55:28Z

@stealth35 no rush at all, I was just curious :)

---------------------------------------------------------------------------

by vicb at 2012-01-06T16:24:31Z

I would say "Backwards compatibility break: yes" i.e.tests have been modified.

---------------------------------------------------------------------------

by stealth35 at 2012-01-06T16:36:15Z

@vicb the tests are not modified, just some addition

---------------------------------------------------------------------------

by vicb at 2012-01-06T16:40:30Z

@stealth35 https://github.com/symfony/symfony/pull/2892/files#L2R46

---------------------------------------------------------------------------

by stealth35 at 2012-01-06T17:13:07Z

@vicb it's not a compatibility break ...

---------------------------------------------------------------------------

by vicb at 2012-01-06T17:19:35Z

Well, same inputs, different outputs, this is a compatibility break to me.
But however it is named we should not change the behavior of this class; Client values are values as passed by the client you should no try to guess them.

---------------------------------------------------------------------------

by stealth35 at 2012-01-06T17:32:41Z

@vicb the behavior ? when you change the GET or POST values with `HttpFoundation\*Bag` (replace/set) it's the same thing

---------------------------------------------------------------------------

by vicb at 2012-01-06T17:35:39Z

I am referring to the difference in behavior between the current implementation and the version in this PR.
They do not behave the same and that's why the tests have been modified.

---------------------------------------------------------------------------

by fabpot at 2012-02-14T23:33:42Z

any progress on this PR?

---------------------------------------------------------------------------

by vicb at 2012-02-15T07:48:34Z

To make it clear I strongly disagree with the modifs in this PR. Available to help if needed.

---------------------------------------------------------------------------

by stealth35 at 2012-02-15T09:24:50Z

@fabpot Well, `move_uploaded_file` will not work so I have some doubt about this, @vicb just don't like the fact to add the mime type type and the size, it's not an important thing, I can remove it we can discuss later about that,

@vicb the last thing to do, it's to recreate the weird php $_FILES array

---------------------------------------------------------------------------

by vicb at 2012-02-23T17:11:29Z

@stealth35 I don't think we can bypass the `move_uploaded_file` security check - which is good. Is there any interest in this PR w/o this ?

If no we should just update phpDoc comment and remove the FIXME (meaning we can not override the `$_FILES`).

---------------------------------------------------------------------------

by stealth35 at 2012-03-10T16:13:14Z

@vicb updated

---------------------------------------------------------------------------

by vicb at 2012-03-11T09:38:20Z

@stealth35 what about adding some unit tests ?

---------------------------------------------------------------------------

by stealth35 at 2012-03-11T11:06:44Z

> what about adding some unit tests ?

@vicb `request_order` is PHP_INI_PERDIR, so I don't really how to handle this

---------------------------------------------------------------------------

by vicb at 2012-03-11T11:15:55Z

by creating a `protected getRequestOrder()` method or something like this ?

---------------------------------------------------------------------------

by stealth35 at 2012-03-11T11:36:11Z

it's too bad to create a method just for this, I can make cond in the test

``` php
<?php
$request->initialize(array('get' => 'foo'), array('post' => 'bar'));
$request->overrideGlobals();

$request_order = ini_get('request_order');

if ('gp' === $request_order) {
    $this->assertEquals(array('get' => 'foo', 'post' => 'bar'), $_REQUEST);
} else if ('pg' === $request_order) {
    $this->assertEquals(array('post' => 'bar', 'get' => 'foo'), $_REQUEST);
}
// ...
```

---------------------------------------------------------------------------

by vicb at 2012-03-11T12:02:17Z

This would only test one case.

Some thoughts about your snippet:

* The init should probably be `$request->initialize(array('foo' => 'get'), array('foo' => 'post'));`,
* `$request_order` does not take into account `variables_order.ini`,
* missing `strtolower`

---------------------------------------------------------------------------

by fabpot at 2012-03-23T21:21:59Z

What's the status of this PR? What needs to be done before merging?

---------------------------------------------------------------------------

by stealth35 at 2012-03-24T18:33:42Z

@fabpot missing some tests, it's not essay to tests an `ini`directive, @vicb recommand a `getRequestOrder` method, it's not a bad idea

---------------------------------------------------------------------------

by vicb at 2012-03-24T20:06:53Z

and change `$request_order` to `$requestOrder` as suggested by @henrikbjorn I can't find where

---------------------------------------------------------------------------

by stealth35 at 2012-06-14T12:42:25Z

I need help for testing

``` php
<?php
$request = $this->getMock('Request', array('overrideGlobals', 'initialize'));

$request->expects($this->any())
        ->method('getRequestOrder')
        ->will($this->returnValue('gp'));

$request->initialize(array('foo' => 'fooget'), array('foo' => 'foopost'));
$request->overrideGlobals();

$this->assertEquals(array_merge($_GET, $_POST), $_REQUEST);
```
2012-06-28 17:48:02 +02:00
Fabien Potencier
9572e9bd6e merged branch eriksencosta/issue-3841 (PR #4601)
Commits
-------

a609d55 [Locale] fixed StubIntlDateFormatter to behave like the ext/intl implementation

Discussion
----------

[2.0][WIP][Locale] StubIntlDateFormatter should use the TZ environment variable instead of the PHP's date.timezone setting

Bug fix: yes
Feature addition: no
Backwards compatibility break: yes
Symfony2 tests pass: yes
Fixes the following tickets: #3841
Todo: Check ext/intl changes for the next PHP 5.4 release
License of the code: MIT

![Build Status](https://secure.travis-ci.org/eriksencosta/symfony.png?branch=issue-3841)

There were changes that need to be investigated for the next PHP 5.4 release:

 - [php-src @ eb346ef](eb346ef0f4)
 - [php-src @ 888e77f](888e77ff73)

A strong evidence of bug in ext/intl was found while testing `StubIntlDateFormatter`. See the comment available at the docblock of `StubIntlDateFormatterTest`'s `testFormatWithDefaultTimezoneIntlShouldUseTheTzEnvironmentVariableWhenAvailable()` method and the following Gist for test scripts: https://gist.github.com/2946342

Maybe the upcoming PHP 5.4 release fix this bug since it will use the PHP's `date.timezone` when no time zone is provided. If confirmed the bug, it will need to be reported to the ext/intl maintainers.

---------------------------------------------------------------------------

by travisbot at 2012-06-18T05:02:05Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1644431) (merged a609d55c into cd0aa378).

---------------------------------------------------------------------------

by fabpot at 2012-06-28T14:09:08Z

@eriksencosta Now that PHP 5.4.4 is out, our tests for the Locale components are broken. Is this PR ready to be merged?

---------------------------------------------------------------------------

by eriksencosta at 2012-06-28T14:53:14Z

@fabpot the failed test case seems unrelated to this issue. I will debug it.

Failed test: `Locale\Tests\Stub\StubNumberFormatterTest::testParseTypeInt64IntlWith32BitIntegerInPhp32Bit`

Recent build job: http://travis-ci.org/#!/symfony/symfony/jobs/1729618

I just need to confirm mine todo note. If you want, merge it, I'll track this and make a new PR if needed (possibly only to remove the TODO note.)
2012-06-28 16:57:13 +02:00
Fabien Potencier
0d2757014e merged branch jeanmonod/config-unittest-on-exprbuilder (PR #4570)
Commits
-------

9d730be Method rename and phpdoc fixes
e01a95e Add a set of unit tests for the ExprBuilder class

Discussion
----------

Add a set of unit tests for the Config/ExprBuilder class

---------------------------------------------------------------------------

by travisbot at 2012-06-13T14:55:31Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1611400) (merged e01a95e1 into c07e9163).

---------------------------------------------------------------------------

by jeanmonod at 2012-06-13T22:04:52Z

Hi there,

I write all these tests because I'll come latter with an other PR that extend the ExprBuilder functionality. But I'm not sure I use the best way for testing this class. It's working, but some refactoring suggestions will be welcome...
@stof and @schmittjoh what do you think about that?
2012-06-28 16:11:59 +02:00
Fabien Potencier
cd08db8e2a merged branch shieldo/mockable_formbuilderinterface (PR #4572)
Commits
-------

6b5b625 [Form] added FormBuilderInterface in Tests namespace, so as to enable easy mocking

Discussion
----------

[Form] added FormBuilderInterface in Tests namespace, so as to enable ea...

...sy mocking

Adding a ``FormBuilderInterface`` in the ``Tests`` namespace, along same lines as ``FormInterface`` already there, for the purposes of being able to mock it straightforwardly (as ``FormBuilderInterface`` extends ``\Traversable``, and therefore creating a mock in PHPUnit causes a fatal error that the mock ``must implement interface Traversable as part of either Iterator or IteratorAggregate``).  Currently in the tests a ``FormBuilder`` object is used with a mock event dispatcher and form factory passed into the constructor, but this is long-winded to have to do in tests for code outside the framework.

---------------------------------------------------------------------------

by travisbot at 2012-06-13T22:03:12Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1613957) (merged 6b5b625a into c07e9163).

---------------------------------------------------------------------------

by bschussek at 2012-06-14T07:22:33Z

ðŸ‘
2012-06-28 16:10:42 +02:00
Fabien Potencier
be27ccf961 [FrameworkBundle] removed duplicated line 2012-06-28 16:05:05 +02:00
Fabien Potencier
84e619c016 merged branch hason/translationrequest (PR #4650)
Commits
-------

8ae0fa2 [FrameworkBundle] Fixed locale detection from request

Discussion
----------

[FrameworkBundle] Fixed locale detection from request

---------------------------------------------------------------------------

by travisbot at 2012-06-25T10:09:24Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1699743) (merged 8ae0fa21 into 03c8d4d2).
2012-06-28 16:03:12 +02:00
Fabien Potencier
b5e6613ad0 merged branch everzet/config-interface-check (PR #4659)
Commits
-------

d4a0988 [FrameworkBundle] added configuration interface check

Discussion
----------

[FrameworkBundle] added configuration interface check

Added check for ConfigurationInterface to config ref dumping
command. To ensure that configuration implements needed
`getConfigTreeBuilder()` command

---------------------------------------------------------------------------

by travisbot at 2012-06-26T09:19:03Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1708744) (merged d4a09881 into d131f9d3).
2012-06-28 15:07:45 +02:00
Fabien Potencier
f7d2ad2175 merged branch acasademont/camelize_property_path_add_and_remove_methods (PR #4673)
Commits
-------

9fabb3d [Form] Camelize 'add' and 'remove' methods in the PropertyPath

Discussion
----------

[Form] Camelize 'add' and 'remove' methods in the PropertyPath

Bug fix: yes
Feature addition: no
Backwards compatibility break: yes
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/acasademont/symfony.png?branch=camelize_property_path_add_and_remove_methods)](http://travis-ci.org/acasademont/symfony)
Fixes the following tickets: -
License of the code: MIT
Documentation PR: -

This issue camelizes the 'add' and 'remove' methods, as it is already done with the 'set' method.
This fixes a problem with properties like 'custom_messages', where the 'add' and 'remove' methods are 'addCustom_message' and 'removeCustom_message' instead of 'addCustomMessage' and 'removeCustomMessage'.

---------------------------------------------------------------------------

by acasademont at 2012-06-27T18:16:36Z

Seems the tests are failing due to some unrelated test in PHP 5.3.14 and PHP 5.4. PHP 5.3.3 works fine

---------------------------------------------------------------------------

by travisbot at 2012-06-27T18:38:39Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1722847) (merged 9fabb3dc into d0e15472).
2012-06-28 15:05:21 +02:00
Kirill chEbba Chebunin
10e0b0b24b [Templating] Use LoaderInterface instead of abstract Loader in ChainLoader 2012-06-28 16:26:23 +04:00
Fabien Potencier
e8c0e07841 merged branch vlechemin/ticket_3472 (PR #3473)
Commits
-------

ab47a88 [FrameworkBundle][Translator] Fix test for request being available in order to get the locale.

Discussion
----------

[FrameworkBundle][Translator] Fix test for request being available.

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #3472
Todo: -
2012-06-27 20:31:58 +02:00
Albert Casademont
9fabb3dc2f [Form] Camelize 'add' and 'remove' methods in the PropertyPath
This issue camelizes the 'add' and 'remove' methods,
as it is already done with the 'set' method.
This fixes a problem with properties like 'custom_messages',
where the 'add' and 'remove' methods are 'addCustom_message'
and 'removeCustom_message' instead of 'addCustomMessage'
and 'removeCustomMessage'.
2012-06-27 19:26:17 +02:00
Fabien Potencier
d0e154725c merged branch Partugal/parameterBag (PR #4468)
Commits
-------

1227cc2 add escapeValue to ParameterBagInterface

Discussion
----------

add escapeValue to ParameterBagInterface

#4465

---------------------------------------------------------------------------

by travisbot at 2012-05-30T18:01:47Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1479725) (merged 1227cc2a into 49e213ce).

---------------------------------------------------------------------------

by drak at 2012-05-31T02:42:44Z

@bschussek - there are a few form tests failing that seem to have been merged into master and thus all other unrelated PRs are failing their travis build checks. @fabpot
2012-06-26 17:35:24 +02:00
Fabien Potencier
fb3f77174c merged branch albyrock87/master (PR #4662)
Commits
-------

4d0cfbb Fix Italian translations in Validator

Discussion
----------

Fix Italian translation in Validator

I hope this time it'll work!

---------------------------------------------------------------------------

by travisbot at 2012-06-26T11:08:19Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1709695) (merged 4d0cfbb6 into 42212394).

---------------------------------------------------------------------------

by fabpot at 2012-06-26T15:17:30Z

That's weird. It still does not appear on your account: https://github.com/albyrock87/symfony is a 404.

---------------------------------------------------------------------------

by henrikbjorn at 2012-06-26T15:20:51Z

he renamed the repository instead i think https://github.com/albyrock87/symfony-fix-form-validation-italian
2012-06-26 17:31:23 +02:00
Fabien Potencier
c4a8feb68b merged branch Wotre/master (PR #4640)
Commits
-------

81d0552 Adding the database to the DSN we are sending to the MongoDB server

Discussion
----------

Adding the database to the DSN we are sending to the MongoDB server

Adding the database to the DSN we are sending to the MongoDB server.

According to the [documentation from PHP](http://be2.php.net/manual/en/mongo.construct.php) the database will default to admin if it isn't specified in this DSN. Unfortunately the username we're trying to login with shouldn't have access to this database.

---------------------------------------------------------------------------

by travisbot at 2012-06-23T13:54:28Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1688817) (merged 2251be90 into 0d4b02e4).

---------------------------------------------------------------------------

by travisbot at 2012-06-25T11:34:17Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1700214) (merged 45d0748b into 0d4b02e4).

---------------------------------------------------------------------------

by Wotre at 2012-06-25T12:16:49Z

It looks to me like travisbot failed because of an error in the routing system that was fixed in c67cf8b56b, not because of the code I altered.

---------------------------------------------------------------------------

by travisbot at 2012-06-25T16:45:12Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1702410) (merged aa659463 into 0d4b02e4).

---------------------------------------------------------------------------

by fabpot at 2012-06-26T05:07:37Z

Can you squash your commits before I merge? Thanks.

---------------------------------------------------------------------------

by Wotre at 2012-06-26T12:02:02Z

I think I've managed to do that, but correct me if I've done something wrong :)

---------------------------------------------------------------------------

by travisbot at 2012-06-26T12:05:19Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1710220) (merged dcb79089 into 0d4b02e4).

---------------------------------------------------------------------------

by fabpot at 2012-06-26T12:14:28Z

@Wotre Unfortunately, that's wrong. You can read how to do that in the contrib docs: http://symfony.com/doc/current/contributing/code/patches.html#rework-your-patch

---------------------------------------------------------------------------

by Wotre at 2012-06-26T12:37:59Z

Thanks for the help, looks like I forgot the -f when pushing. It should be okay now
2012-06-26 14:41:54 +02:00
Wotre
81d0552ba4 Adding the database to the DSN we are sending to the MongoDB server 2012-06-26 13:59:41 +02:00
Alberto Aldegheri
4d0cfbb619 Fix Italian translations in Validator 2012-06-26 12:43:34 +02:00
Fabien Potencier
42212394cb fixed phpdoc 2012-06-26 12:06:05 +02:00
Fabien Potencier
21e2f29eb1 [Security] simplified some code 2012-06-26 11:30:41 +02:00
Fabien Potencier
16a0af1262 [Security] changed the HttpUtils constructor to tak both a UrlGenerator and a UrlMatcher instead of a Router (to make it useable by Silex) 2012-06-26 11:18:35 +02:00
everzet
d4a09881f1 [FrameworkBundle] added configuration interface check
Added check for ConfigurationInterface to config ref dumping
command. To ensure that configuration implements needed
`getConfigTreeBuilder()` command
2012-06-26 10:46:00 +02:00
Eduardo Gulias
4bfb6fddf7 [FrameworkBundle][Command] ContainerDebugCommand - Changed visibility to allow re use in childs 2012-06-26 09:01:12 +02:00
Fabien Potencier
5a8e20643e merged branch adrienbrault/http-foundation-fixes (PR #4483)
Commits
-------

9a74b85 [HttpFoundation] CS and phpdoc fixes

Discussion
----------

[HttpFoundation] CS and phpdoc fixes

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: -

Hey

---------------------------------------------------------------------------

by travisbot at 2012-06-02T00:30:49Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1504379) (merged 2f0117f2 into 1541fe26).

---------------------------------------------------------------------------

by fabpot at 2012-06-25T14:53:18Z

@adrienbrault Can you have a look at my comments?

---------------------------------------------------------------------------

by adrienbrault at 2012-06-25T16:24:49Z

Done! Sorry for the delay

---------------------------------------------------------------------------

by travisbot at 2012-06-25T17:50:24Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1702850) (merged 9a74b851 into 58436de1).
2012-06-25 22:29:10 +02:00
David Zuelke
34ab4812b5 Fix severity, file and line in ErrorExceptions
Fix `ErrorHandler` only handing an error message to the constructor of
`ErrorException`, but not the severity, file name or line number.
2012-06-25 22:04:54 +02:00
Adrien BRAULT
9a74b851e6 [HttpFoundation] CS and phpdoc fixes 2012-06-25 18:21:41 +02:00
Fabien Potencier
c67cf8b56b [Routing] fixed previous merge 2012-06-25 13:50:03 +02:00
Fabien Potencier
db9a8c1e4e merged branch Crell/routecollection-count (PR #4642)
Commits
-------

c350944 Add the Countable interface to RouteCollection.

Discussion
----------

Add the Countable interface to RouteCollection.

Since RouteCollection is a fancy-pants array of Routes, and it already is iterable, it would be nice if it were also countable.

There may be optimizations to be had here, but I figure this is a decent start.  There should be no BC breaks here, just some DX convenience.

---------------------------------------------------------------------------

by Crell at 2012-06-23T17:01:43Z

You Symfony people and your gratuitous whitespace... :-P

Both fixed and rebased.

---------------------------------------------------------------------------

by travisbot at 2012-06-23T17:25:31Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1689898) (merged 6b588eb3 into 0d4b02e4).

---------------------------------------------------------------------------

by travisbot at 2012-06-23T17:26:06Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1689902) (merged abd74cf5 into 0d4b02e4).

---------------------------------------------------------------------------

by travisbot at 2012-06-23T18:10:57Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1689975) (merged c3509446 into 0d4b02e4).

---------------------------------------------------------------------------

by mvrhov at 2012-06-24T07:11:12Z

@Crell running [php-cs-fixer](http://cs.sensiolabs.org/) on your changes will prevent you from being stoffed :P about CS

---------------------------------------------------------------------------

by stof at 2012-06-24T09:34:24Z

@mvrhov depends. The CS fixer will replace tabs with 4 spaces, but it will not fix it if using 2 spaces instead of 4. it cannot fix everything

---------------------------------------------------------------------------

by vicb at 2012-06-24T17:14:14Z

@Crell what is your use case ?

---------------------------------------------------------------------------

by fabpot at 2012-06-25T06:59:00Z

I'm not opposed to the change but what's the use case?

---------------------------------------------------------------------------

by lsmith77 at 2012-06-25T11:22:01Z

This is semi related to ideas we have for the dynamic router in the CMF. The 2 main reasons for the existence of the dynamic router are:
1) the fact that end users should be able to define new routes
2) the fact that there might just be too many routes to dump those efficiently to PHP

Now in some cases despite 1) the users might still want to dump key routes or even all routes as part of some deployment process to mod_rewrite or PHP when moving content from a staging database to a production database for better performance and reduced load on the database server.

Also even with the dynamic router it would be good to have tools available like ``app/console router:debug``.

But for both the use case of dumping some/all routes or when listing routes it might be necessary to implement some stop gap solutions to first check if this wouldn't lead to a too big collection. So it could be useful to be able to use whatever efficient solution the dynamic data store has for determining the count before starting to actually read the data from the data source.
2012-06-25 13:27:15 +02:00
Martin Hasoň
8ae0fa2178 [FrameworkBundle] Fixed locale detection from request 2012-06-25 11:49:17 +02:00
everzet
dbeff6979b [TwigBundle] added support for custom loader paths
Before this commit, there was no ability to specify custom
search paths for Twig loader. Lets say we have twig templates
outside bundles directories (parts of the domain logic, not
application) - we want to be able to load them.

This commit adds `loader_paths` parameter to twig config,
which is used to set custom paths to the loader.
2012-06-25 11:36:26 +02:00
Fabien Potencier
03c8d4d2b0 bumped Symfony version to 2.1.0-DEV 2012-06-25 09:25:26 +02:00
Kris Wallsmith
c1e4166ead moved create of default form label to view layer 2012-06-24 07:57:42 -07:00
Tobias Schultze
aeead1c7a7 fix #4643 2012-06-24 16:06:01 +03:00
Larry Garfield
c3509446c1 Add the Countable interface to RouteCollection. 2012-06-23 12:00:40 -05:00
Jonas Flodén
eb26e89625 [FrameworkBundle] Fix built-in server when using query params in paths
$_SERVER['REQUEST_URI'] will contain the query params so is_file will fail.
Change it to use $_SERVER['SCRIPT_NAME'] instead which only contains the
relative filename of the the script.
2012-06-23 13:09:46 +02:00
Fabien Potencier
0d4b02e452 Revert "merged branch everzet/config-additions-from-rw (PR #4619)"
This reverts commit 041286e601, reversing
changes made to 4c8ea3181d.
2012-06-21 19:42:20 +02:00
Fabien Potencier
0f9be2fac4 updated VERSION for 2.1.0 2012-06-21 15:32:16 +02:00
Fabien Potencier
55c6df995f merged 2.0 2012-06-20 21:33:33 +02:00
Fabien Potencier
041286e601 merged branch everzet/config-additions-from-rw (PR #4619)
Commits
-------

241aa92 [Config] added existence check to some resource methods
56b60c8 [Config] use is_file in FileResource::exists()
ff9c132 [Config] added type prefixes to resource ids
ece489f [Config] skip dots in getFilteredChilds() (fixes test suite on Linux)
c9eaa72 [Config] made ResourceInterface extends Serializable
d7c24eb [Config] added new methods and their tests to File and Directory resources
9fe0d00 [Config] update FileResourceTest
45a45ba [Config] updated DirectoryResource tests
1f9ba38 [Config] getFilteredChildResources() method added to DirectoryResource
6b39688 [Config] moved DirectoryResource childs retrieving to the special getFilteredChilds method
45df2e6 [Config] updated resources API to be more explicit

Discussion
----------

[Config] additions from ResourceWatcher

Extracted `Config` component changes from `ResourceWatcher` component.

---------------------------------------------------------------------------

by travisbot at 2012-06-20T08:27:30Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1662786) (merged 241aa92c into 092b5dde).
2012-06-20 21:17:10 +02:00
Fabien Potencier
15ae25b2e2 merged branch Maks3w/patch-4 (PR #4616)
Commits
-------

fa050b7 [Security] Change return value in DocBlock

Discussion
----------

[Security] Change return value in DocBlock

Change the return value for avoid confusions.

```php
if (!$user instanceof UserInterface) {
    throw new AuthenticationServiceException('retrieveUser() must return a UserInterface.');
}
```

[UserAuthenticationProvider.php#L67](https://github.com/symfony/symfony/tree/2.0/src/Symfony/Component/Security/Core/Authentication/Provider/UserAuthenticationProvider.php#L67)

---------------------------------------------------------------------------

by travisbot at 2012-06-19T21:03:07Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1659148) (merged fa050b77 into e78a7bae).
2012-06-20 21:15:34 +02:00
Fabien Potencier
4c8ea3181d merged branch ricbra/dutch_translations (PR #4618)
Commits
-------

8797b74 [Validator] added missing dutch translations

Discussion
----------

[Validator] added missing dutch translations

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:

---------------------------------------------------------------------------

by travisbot at 2012-06-20T08:27:17Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1662776) (merged aa0a7e83 into 092b5dde).

---------------------------------------------------------------------------

by ricbra at 2012-06-20T09:55:45Z

@Burgov Thanks for the feedback. Fixed all typos & added PR description according to the documentation on Symfony site.

---------------------------------------------------------------------------

by travisbot at 2012-06-20T09:59:38Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1663352) (merged 8797b743 into 092b5dde).
2012-06-20 21:15:00 +02:00
Victor Berchet
680b83c6d3 [Security] Allow "0" as a password 2012-06-20 20:42:55 +02:00
Douglas Greenshields
d4b0a9caaa [Security] fixed exception message in EncoderFactory 2012-06-20 12:10:08 +01:00
Richard van den Brand
8797b74343 [Validator] added missing dutch translations 2012-06-20 11:43:04 +02:00
everzet
241aa92cc5 [Config] added existence check to some resource methods
* fixed DELETED event when starting to watch a file that does not exist yet
* fixed files that are deleted and then re-created

Conflicts:
	src/Symfony/Component/ResourceWatcher/StateChecker/ResourceStateChecker.php
	tests/Symfony/Tests/Component/ResourceWatcher/StateChecker/DirectoryStateCheckerTest.php
	tests/Symfony/Tests/Component/ResourceWatcher/StateChecker/FileStateCheckerTest.php
2012-06-20 10:19:09 +02:00
everzet
56b60c8d46 [Config] use is_file in FileResource::exists()
file resource existence check shouldn't return true if there's
directory with same name instead of file.
2012-06-20 10:11:30 +02:00
everzet
ff9c1321dc [Config] added type prefixes to resource ids
Makes sure that directory and the file resources
with the same name will have different ids
2012-06-20 10:11:24 +02:00
everzet
ece489f4b9 [Config] skip dots in getFilteredChilds() (fixes test suite on Linux) 2012-06-20 10:11:09 +02:00
Fabien Potencier
c9eaa72e2f [Config] made ResourceInterface extends Serializable 2012-06-20 10:10:34 +02:00
everzet
d7c24eb88a [Config] added new methods and their tests to File and Directory resources 2012-06-20 10:10:27 +02:00
everzet
9fe0d00735 [Config] update FileResourceTest 2012-06-20 10:10:17 +02:00
everzet
45a45baf2f [Config] updated DirectoryResource tests 2012-06-20 10:10:10 +02:00
everzet
1f9ba382ee [Config] getFilteredChildResources() method added to DirectoryResource 2012-06-20 10:10:02 +02:00
everzet
6b39688586 [Config] moved DirectoryResource childs retrieving to the special getFilteredChilds method 2012-06-20 10:09:55 +02:00
everzet
45df2e681e [Config] updated resources API to be more explicit 2012-06-20 10:09:47 +02:00
Maks
fa050b77af [Security] Change return value in DocBlock
Change the return value for avoid confusions.
2012-06-19 23:27:38 +03:00
Fabien Potencier
092b5dde62 merged branch gajdaw/finder_current_fix (PR #4335)
Commits
-------

3eb67fc [2.1][Component][Finder] $this->current() fix

Discussion
----------

[2.1][Component][Finder] $this->current() fix

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/gajdaw/symfony.png?branch=master)](http://travis-ci.org/gajdaw/symfony)
Fixes the following tickets: -
Todo: -
License of the code: MIT

One method to resolve `->in("ftp://...")` problem is to create `RecursiveDirectoryFtpIterator`.
(Details: [issue 3585](https://github.com/symfony/symfony/issues/3585))

I think that all filters should access the information about current item calling `current()` or `getInnerIterator()`. Otherwise it will not work if we replace `RecursiveDirectoryIterator` with ftp iterator inside `Finder`.

I'm not sure if that should go to 2.0 or 2.1 branch.

---------------------------------------------------------------------------

by travisbot at 2012-05-19T09:20:19Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1373361) (merged 9f247921 into 58b92453).

---------------------------------------------------------------------------

by gajdaw at 2012-05-19T10:51:10Z

Probably it should go to master branch, because it improves commit done to master:

f2fea97460

---------------------------------------------------------------------------

by travisbot at 2012-05-19T11:26:14Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1373982) (merged f9d1db8c into 58b92453).

---------------------------------------------------------------------------

by travisbot at 2012-05-19T11:51:25Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1374031) (merged f1b4b4f7 into 58b92453).

---------------------------------------------------------------------------

by travisbot at 2012-05-19T12:48:17Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1374303) (merged b6d073da into 58b92453).

---------------------------------------------------------------------------

by travisbot at 2012-05-19T13:28:18Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1374568) (merged fd144c96 into 58b92453).

---------------------------------------------------------------------------

by travisbot at 2012-05-19T13:35:38Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1374609) (merged 89a8d851 into 58b92453).

---------------------------------------------------------------------------

by travisbot at 2012-05-21T04:31:46Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1385764) (merged 0d5b8322 into 58b92453).

---------------------------------------------------------------------------

by travisbot at 2012-05-21T07:21:56Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1386545) (merged 3eb67fca into 1407f112).

---------------------------------------------------------------------------

by stof at 2012-06-09T13:24:14Z

seems good
2012-06-19 17:16:22 +02:00
Fabien Potencier
55f682c9be merged branch romainneutron/FilesystemExceptions (PR #4330)
Commits
-------

a20fc68 Merge pull request #1 from SamsonIT/FilesystemExceptions
8eca661 [FileSystem] explains possible failure of symlink creation in windows
b1f8744 Add Changelog BC Break note
24eb396 [Filesystem] Added few new behaviors:

Discussion
----------

[Filesystem] Consistence and enhancements for Filesystem

Bug fix: no
Feature addition: yes
Backwards compatibility break: **yes**
Symfony2 tests pass: yes
Fixes the following tickets: None
License of the code: MIT

This PR adds features and introduce a backward compatibility break.

features :
- whenever an action fails, a \RuntimeException is thrown
- add access to the second and third arguments of ``touch`` function
- add a recursive option for chmod
- add a chown method
- add a chgrp method

The backward compatibility break happens in the mkdir method : Before this PR, a boolean is returned ; true if all directories were created, false otherwise.
It now returns nothing.

---------------------------------------------------------------------------

by travisbot at 2012-05-18T14:26:42Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1367000) (merged 83cdd622 into 1e15f210).

---------------------------------------------------------------------------

by fabpot at 2012-05-20T02:40:28Z

To be consistent, we should throw exception whenever some operation fails.

---------------------------------------------------------------------------

by romainneutron at 2012-05-20T21:10:23Z

I fix the consistency ; mkdir now throws an exception if a directory creation fails.
This introduce a BC break, see PR message which has been updated with all features and BC break.

Added chgrp and chown methods
Add options for touch
Add recursive option for chmod

---------------------------------------------------------------------------

by travisbot at 2012-05-20T21:11:47Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1383619) (merged a4d1eeb8 into 1407f112).

---------------------------------------------------------------------------

by travisbot at 2012-05-22T10:49:06Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1399027) (merged 7e14b6bd into 517ae43f).

---------------------------------------------------------------------------

by travisbot at 2012-05-22T10:58:10Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1399083) (merged 71852653 into 517ae43f).

---------------------------------------------------------------------------

by travisbot at 2012-05-22T11:18:44Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1399194) (merged 7645bad3 into 517ae43f).

---------------------------------------------------------------------------

by travisbot at 2012-05-23T18:21:47Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1414091) (merged b049d5b1 into 517ae43f).

---------------------------------------------------------------------------

by travisbot at 2012-05-23T18:26:19Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1414123) (merged 34903466 into 517ae43f).

---------------------------------------------------------------------------

by travisbot at 2012-05-29T16:07:26Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1467173) (merged b1d1eb2e into adf07f1e).

---------------------------------------------------------------------------

by travisbot at 2012-05-29T16:19:38Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1467261) (merged 42015ffa into adf07f1e).

---------------------------------------------------------------------------

by romainneutron at 2012-06-01T14:30:45Z

Any news about this PR ?

---------------------------------------------------------------------------

by stloyd at 2012-06-08T09:57:39Z

@romainneutron You need to [squash](http://www.silverwareconsulting.com/index.cfm/2010/6/6/Using-Git-Rebase-to-Squash-Commits) your commits, and add more proper message in squashed commit i.e.:

> [Filesystem]  Added few new behaviors:
* whenever an action fails, a `RuntimeException` is thrown
* add access to the second and third arguments of `touch()` function
* add a recursive option for `chmod()`
* add a `chown()` method
* add a `chgrp()` method

> BC break: `mkdir()` function throw exception in case of failture instead of returning Boolean value.

---------------------------------------------------------------------------

by romainneutron at 2012-06-08T10:59:55Z

@stloyd squash done !

---------------------------------------------------------------------------

by travisbot at 2012-06-08T11:26:20Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1565540) (merged 8f55ddb6 into f8e68e58).

---------------------------------------------------------------------------

by travisbot at 2012-06-08T11:41:45Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1566247) (merged 880312b6 into f8e68e58).

---------------------------------------------------------------------------

by romainneutron at 2012-06-09T11:42:24Z

I've added documentation to the Filesystem component : https://github.com/symfony/symfony-docs/pull/1439

---------------------------------------------------------------------------

by travisbot at 2012-06-09T16:47:20Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1577754) (merged 5647ad41 into f8a09db5).

---------------------------------------------------------------------------

by stloyd at 2012-06-13T14:47:31Z

@romainneutron You probably need to rebase your code as some changes were merge into master for `Filesystem`.

---------------------------------------------------------------------------

by romainneutron at 2012-06-13T15:17:31Z

@stloyd rebase OK !

by the way, do you have any idea when/if this PR will be merged ?

---------------------------------------------------------------------------

by travisbot at 2012-06-13T15:20:44Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1611591) (merged c8b86c68 into c07e9163).

---------------------------------------------------------------------------

by fabpot at 2012-06-16T16:40:50Z

You need to add a note about the BC breaks in the CHANGELOG file.

---------------------------------------------------------------------------

by fabpot at 2012-06-16T16:43:20Z

Also, instead of using `\RuntimeException`, I would create a custom exception like we have done in other components (an interface + a RuntimeException that implements the interface and extends \RuntimeException). The exception name can be something like `IOException`.

---------------------------------------------------------------------------

by travisbot at 2012-06-18T10:11:20Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1645757) (merged 925a8234 into 0b8b76bf).

---------------------------------------------------------------------------

by stloyd at 2012-06-18T10:14:52Z

@fabpot Anything blocking merge of this PR ? (tests are failing because of issue in master, not releted to this PR)

---------------------------------------------------------------------------

by romainneutron at 2012-06-18T10:29:20Z

@fabpot @stloyd the latest push was just a rebase push for PR 4577 (https://github.com/symfony/symfony/issues/4577)
I'm currently fixing the Exception and changelog things, I'll push very soon

---------------------------------------------------------------------------

by romainneutron at 2012-06-18T10:44:38Z

@fabpot I've added the exception and the exception interface, add the changelog info

---------------------------------------------------------------------------

by travisbot at 2012-06-18T10:53:34Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1645981) (merged 634d6fb9 into 0b8b76bf).

---------------------------------------------------------------------------

by romainneutron at 2012-06-18T11:08:43Z

As reported by @stloyd the PR is failing due to an issue in the master, I re-push and trig the PR build when this issue is solved

---------------------------------------------------------------------------

by travisbot at 2012-06-18T11:16:58Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1646006) (merged 2f65945a into 0b8b76bf).
2012-06-19 17:08:20 +02:00
Grummfy
fcf7afcab6 fixed phpdoc (closes symfony/ClassLoader#3) 2012-06-19 15:46:22 +02:00
Fabien Potencier
3f44bba01e merged branch ajessu/php54-server-fix (PR #4484)
Commits
-------

d982bac Fix built-in server for PHP > 5.4.1

Discussion
----------

[FrameworkBundle] Fix built-in server command for PHP > 5.4.1

Bug fix: yes
Feature addition: no
Backwards compatibility break: yes
Symfony2 tests pass: yes

License of the code: MIT

The router isn't routing with PHP > 5.4.1, unless you explicitly include the name of the controller.

For the default command: `app/console server:run`

localhost:8000/app_dev.php `Works`
localhost:8000/ `Doesn't work (it used to work on PHP 5.4.0`)

There was a change after PHP 5.4.1 which makes the router from the built-in server command not work, when no resource is specified, as the variable `$_SERVER['SCRIPT_FILENAME']` passes the `isset` check.

Changelog: http://php.net/ChangeLog-5.php#5.4.1
- Implemented #60850 (Built in web server does not set $_SERVER['SCRIPT_FILENAME'] when using router)

The `router` used to rely on the `$_SERVER['SCRIPT_FILENAME']` being set, to return any asset/file if it existed.

This behavior was changed, so that when using PHP's built-in server, the `$_SERVER['SCRIPT_FILENAME']` is now populated with a combination of the document root and the router filename
Patch: https://bugs.php.net/patch-display.php?bug_id=60850&patch=add_router_script_file_name_svr_var&revision=latest)

---------------------------------------------------------------------------

by travisbot at 2012-06-02T09:06:05Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1506479) (merged b85ff7dd into 1541fe26).

---------------------------------------------------------------------------

by ajessu at 2012-06-03T07:16:33Z

Thinking a bit more about this, as I find my solution a bit weird.

I'll do a bit more testing and report back.

---------------------------------------------------------------------------

by fabpot at 2012-06-13T14:30:28Z

Any news on this PR?

---------------------------------------------------------------------------

by travisbot at 2012-06-18T21:20:17Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1650548) (merged d982bac0 into 086ff482).

---------------------------------------------------------------------------

by ajessu at 2012-06-18T21:35:44Z

Updated the solution, and for me, it's ready to be merged now.

I talked about this on Symfony Live with @michal-pipa (the original contributor to this command) and we were trying to avoid touching the filesystem for the check of file existance to skip the server, but I don't think there is any other way (and it's dev mode, it really shouldn't matter much either).

PHP 5.4.1 and up has changed the behavior of `$_SERVER['SCRIPT_FILENAME']` for the built-in server and it's a bit unreliable/ugly to rely on it now.

This fixes the command, it works again for all versions of PHP 5.4.x
A very similar solution was also suggested on internals:
http://news.php.net/php.internals/53870

@michal-pipa any other ideas?

---------------------------------------------------------------------------

by michal-pipa at 2012-06-18T23:14:36Z

I'll take a closer look at this tomorrow.

But I think that you should revert to original behavior and call production front controller by default to be consistent with other servers.

---------------------------------------------------------------------------

by ajessu at 2012-06-19T08:48:17Z

> But I think that you should revert to original behavior and call production front controller by default to be consistent with other servers.

I disagree. This is a development-only server, and thus, the development controller should be called since IMHO it will be the most common use case for the command, development.
If for some reason, someone wants to use their production controller, it's as easy as providing a new router and passing it to the command explicitly.

Let me know if you come up with something else.
2012-06-19 10:56:44 +02:00
Erik Trapman
8eca661c20 [FileSystem] explains possible failure of symlink creation in windows 2012-06-19 09:53:15 +02:00
Arnaud Kleinpeter
60d371bc35 InputDefinition: Fixed unit tests 2012-06-19 00:10:56 +02:00
Arnaud Kleinpeter
c0997634ef InputDefinition: corrected grammar mistakes and added a @throws declaration 2012-06-18 23:37:16 +02:00
Albert Jessurum
d982bac008 Fix built-in server for PHP > 5.4.1 2012-06-18 23:10:49 +02:00
Fabien Potencier
086ff48228 merged branch jcowgill/console-windows-fix (PR #4594)
Commits
-------

bb87a71 [Console] Use 'mode' command to detect terminal size on Windows

Discussion
----------

[Console] Use 'mode' command to detect terminal size on Windows

This PR uses the windows 'mode' command to get the terminal height and width on windows.

I've left in the ANSICON stuff but I'm not sure if that's needed after this.

---------------------------------------------------------------------------

by travisbot at 2012-06-16T10:37:25Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1634120) (merged a490b6ec into f881d282).

---------------------------------------------------------------------------

by fabpot at 2012-06-16T16:17:24Z

ping @Seldaek

---------------------------------------------------------------------------

by Seldaek at 2012-06-16T17:03:22Z

It's a good addition, but you should still use ANSICON first if it's available. mode returns the buffer size and not the window size, which means the lines are not the real terminal height, but the buffer setting. ANSICON has both informations and hence allows you to be more correct. For columns/width both offer equally good information since the buffer size is not bigger than the window.

---------------------------------------------------------------------------

by fabpot at 2012-06-17T10:41:21Z

Can you squash your commits before I merge? Thanks.

---------------------------------------------------------------------------

by jcowgill at 2012-06-17T13:23:01Z

Yes that's fine.

---------------------------------------------------------------------------

by fabpot at 2012-06-18T12:04:43Z

@jcowgill there are still 3 commits.

---------------------------------------------------------------------------

by jcowgill at 2012-06-18T14:59:51Z

Woops, it's done now
2012-06-18 20:17:56 +02:00
James Cowgill
bb87a71226 [Console] Use 'mode' command to detect terminal size on Windows 2012-06-18 15:58:29 +01:00
Fabien Potencier
faccd25c0f [Security] removed test that fail on PHP 5.3.3 2012-06-18 14:34:17 +02:00
Fabien Potencier
61a9345e6f [Security] fixed some unit tests for PHP 5.3.3 (see https://bugs.php.net/bug.php?id=53727) 2012-06-18 14:22:33 +02:00
Fabien Potencier
d2b612256b merged branch aerialls/profiler_height (PR #4600)
Commits
-------

e113600 [WebProfilerBundle] removed the extra space before the toolbar

Discussion
----------

[WebProfilerBundle] removed the extra space before the toolbar

The profiler toolbar has a height of 38px. This PR removes the (useless) extra space before it.

---------------------------------------------------------------------------

by travisbot at 2012-06-17T22:44:13Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1643364) (merged e1136001 into b27d9b54).
2012-06-18 14:03:39 +02:00
Fabien Potencier
dab9dea633 merged branch asm89/fix-component-testsuites (PR #4602)
Commits
-------

441c098 [HttpKernel] Remove unneeded test class (suggestion by @stof)
e49b714 [Routing] Fix component 'standalone' testsuite
0b0fe74 [HttpKernel] Fix component 'standalone' testsuite
8ff2838 [Form] Fix component 'standalone' testsuite

Discussion
----------

Fix component testsuites

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-component-testsuites)](http://travis-ci.org/asm89/symfony)
License of the code: MIT

The testsuites of some components would crash when running them seperately (from their own directory for example). This PR fixes that by skipping some additional tests if dependencies for the test aren't met. In the case of `HttpKernel` there was also a helper class in `KernelTest` that is now moved to it's own file. This was needed because the class implemented the `BundleInterface`, which depends on the `DependencyInjection` component. The autoloader would then crash the complete test suite.

I sent this PR to the `master` branch since the tests have been moved and splitted some while ago, before it wasn't really possible to have this situation. If for maintainability reasons it should still be send to the 2.0 branch, let me know!

---------------------------------------------------------------------------

by travisbot at 2012-06-18T08:25:58Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1645386) (merged f9b8ea82 into 0b8b76bf).

---------------------------------------------------------------------------

by travisbot at 2012-06-18T08:46:33Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1645448) (merged 441c0983 into 0b8b76bf).
2012-06-18 14:02:55 +02:00
Romain Neutron
b1f87440c9 Add Changelog BC Break note 2012-06-18 13:46:07 +02:00
Romain Neutron
24eb396f26 [Filesystem] Added few new behaviors:
- add a IOException and a main filesystem exception interface
 - whenever an action fails, an IOException is thrown
 - add access to the second and third arguments of touch() function
 - add a recursive option for chmod()
 - add a chown() method
 - add a chgrp() method
 - Switch the 'unlink' global function in Filesystem::symlink to Filesystem::remove.

BC break: mkdir() function now throws exception in case of failure instead of returning Boolean value.
2012-06-18 12:38:47 +02:00
Alexander
0be11f4d9d [Security] Fix retrieval of encoder when configured for concrete classes 2012-06-18 12:01:09 +02:00
Alexander
024cb91c5b [Security] Add failing testcases for EncoderFactory 2012-06-18 12:00:44 +02:00
Alexander
441c0983f6 [HttpKernel] Remove unneeded test class (suggestion by @stof) 2012-06-18 10:36:28 +02:00
Alexander
e49b714c1e [Routing] Fix component 'standalone' testsuite 2012-06-18 10:32:28 +02:00
Alexander
0b0fe74e93 [HttpKernel] Fix component 'standalone' testsuite
- Missing dependency in one file
- Move helper class out of KernelTest because it implemented an
  interface that depends on another component (thus would crash the
  testsuite if invoked)
2012-06-18 10:32:28 +02:00
Alexander
8ff2838bb8 [Form] Fix component 'standalone' testsuite 2012-06-18 10:32:28 +02:00
Fabien Potencier
0b8b76bfef [Security] allowed class names to be passed as an argument to EncoderFactoryInterface::getEncoder() 2012-06-18 08:12:50 +02:00
Jeanmonod David
9d730be385 Method rename and phpdoc fixes 2012-06-18 06:49:11 +02:00
Eriksen Costa
a609d55c1f [Locale] fixed StubIntlDateFormatter to behave like the ext/intl implementation 2012-06-18 01:41:22 -03:00
Julien Brochet
e11360018d [WebProfilerBundle] removed the extra space before the toolbar 2012-06-18 00:35:49 +02:00
Fabien Potencier
bc147d3492 merged branch aerialls/fs_exists (PR #4586)
Commits
-------

38cad9d [Filesystem] added exists method

Discussion
----------

[Filesystem] added exists method

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 travisbot at 2012-06-15T16:29:20Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1629204) (merged ebd1a4c6 into f881d282).

---------------------------------------------------------------------------

by sstok at 2012-06-16T09:05:48Z

Shouldn't it be better to stop on the first failure? as all the others files will be false automatically.

---------------------------------------------------------------------------

by stof at 2012-06-16T10:21:49Z

indeed. We should avoid unnecessary filesystem IO by returning false as soon as it is known

---------------------------------------------------------------------------

by aerialls at 2012-06-16T11:55:24Z

Indeed it's better this way. fixed!

---------------------------------------------------------------------------

by travisbot at 2012-06-16T12:01:16Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1634615) (merged 8d98f417 into 76b2ed46).
2012-06-16 18:35:22 +02:00
Fabien Potencier
cd0aa3781b tweaked the previous commit 2012-06-16 18:27:53 +02:00
Fabien Potencier
1ac2e9c217 merged branch shieldo/fix_docblock_typo (PR #4590)
Commits
-------

bfe5e58 [Form] fixed typo in docblock

Discussion
----------

[Form] fixed typo in docblock

---------------------------------------------------------------------------

by travisbot at 2012-06-15T20:03:08Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1630865) (merged bfe5e585 into f881d282).
2012-06-16 18:22:26 +02:00
Fabien Potencier
f65ade24b2 fixed order of translation files registration 2012-06-16 18:09:40 +02:00
Julien Brochet
38cad9d415 [Filesystem] added exists method 2012-06-16 14:10:34 +02:00
Fabien Potencier
76b2ed46d6 moved validator translation files to the Form and Validator components to make them reusable (closes #4588) 2012-06-16 13:31:07 +02:00
Douglas Greenshields
bfe5e5856a [Form] fixed typo in docblock 2012-06-15 20:56:24 +01:00
Tobias Schultze
7464dcd206 added phpdoc 2012-06-15 17:33:40 +02:00
Fabien Potencier
f881d28240 [Validator] avoid to get information from the cache when we already have them locally (also fixes usage of this class when not using a cache) 2012-06-15 17:30:46 +02:00
Tobias Schultze
c413e7ba39 [Routing] remove RequestContextAwareInterface from RequestMatcherInterface 2012-06-15 17:27:49 +02:00
Tobias Schultze
921be34ee7 [Routing] fix phpdoc 2012-06-14 23:15:09 +02:00
Uwe Jäger
3ce8227a9b [Security] Only redirect to urls called with http method GET 2012-06-14 13:45:10 +02:00
Douglas Greenshields
9e71b426c4 [Validator] fixed typo in docblock 2012-06-14 12:25:16 +01:00
Fabien Potencier
6448fd0772 [FrameworkBundle] added a missing attribute in XSD 2012-06-14 11:31:07 +02:00
Christophe Coevoet
0d67b9f25f Removed useless use statements 2012-06-14 09:54:43 +02:00
Christophe Coevoet
a3c1299ac2 [Form] Added a missing use statement and fix a phpdoc 2012-06-14 09:53:49 +02:00
Florin Patan
f72ba0a27d Fixed detection of an active session 2012-06-14 01:48:01 +03:00
Douglas Greenshields
6b5b625a72 [Form] added FormBuilderInterface in Tests namespace, so as to enable easy mocking 2012-06-13 21:21:22 +01:00
Fabien Potencier
c07e9163a6 merged branch SamsonIT/remove_symlink_on_windows (PR #4565)
Commits
-------

fc3ebb8 [FileSystem] added if-windows check
0b58828 [FileSystem] remove symlinks under windows

Discussion
----------

[FileSystem] remove symlinks under windows

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes

When installing assets on Windows with symlink, the following error occurs when symlink-folders already exist. This PR makes sure symlink-folders are removed under Windows.

```
$ app/console assets:install web --symlink
Installing assets using the symlink option
Installing assets for Symfony\Bundle\FrameworkBundle into web/bundles/framework

  [ErrorException]
  Warning: symlink(): Cannot create symlink, error code(1314) in C:\workspace\erik\roompot\vendor\symfony\symfony\src\Symfony\Component\Filesystem\Filesystem.php line 167

assets:install [--symlink] [--relative] target
```

---------------------------------------------------------------------------

by travisbot at 2012-06-13T09:00:42Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1608541) (merged 0b58828b into 37550d23).

---------------------------------------------------------------------------

by travisbot at 2012-06-13T14:39:32Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1611288) (merged fc3ebb8c into 0f67ca88).
2012-06-13 16:41:41 +02:00
Jeanmonod David
e01a95e1ea Add a set of unit tests for the ExprBuilder class 2012-06-13 16:34:46 +02:00
Erik Trapman
fc3ebb8c65 [FileSystem] added if-windows check 2012-06-13 16:33:54 +02:00
Fabien Potencier
0f67ca88c1 [HttpFoundation] fixed StreamedResponse with HEAD as a method (closes #4502) 2012-06-13 16:21:50 +02:00
Fabien Potencier
6efc00d39d merged branch kriswallsmith/head-streamed-response-err (PR #4502)
Commits
-------

280fc05 failing test for HEAD StreamedResponse requests

Discussion
----------

[WIP] failing test for HEAD StreamedResponse requests

An exception is thrown if you prepare a StreamedResponse with a HEAD request. I'm not sure what the right fix is…

---------------------------------------------------------------------------

by kriswallsmith at 2012-06-06T15:51:04Z

The Travis build is here: http://travis-ci.org/#!/symfony/symfony/builds/1543352

---------------------------------------------------------------------------

by sstok at 2012-06-08T11:07:31Z

Well a HEAD can't/shouldn't be streamed as it doesn't contain a body so what is the real problem here?

---------------------------------------------------------------------------

by kriswallsmith at 2012-06-08T16:14:18Z

@sstok the response is prepared by the ResponseListener regardless of request method

---------------------------------------------------------------------------

by adrienbrault at 2012-06-08T19:41:27Z

Shouldn't the test at least assert something ?
2012-06-13 16:17:27 +02:00
Fabien Potencier
6baa2b19c4 merged branch stof/change_typehint (PR #4569)
Commits
-------

92e028f Changed the typehint in the LocaleListener

Discussion
----------

Changed the typehint in the LocaleListener

The listener does not depend on the RouterInterface but only on the
RequestContextAwareInterface which is also implemented by the matcher
and the generator. Changing the typehint allow reusing the listener
in Silex.

---------------------------------------------------------------------------

by travisbot at 2012-06-13T14:12:10Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1611055) (merged 92e028f1 into 1d7501db).
2012-06-13 16:13:52 +02:00
Christophe Coevoet
92e028f1f0 Changed the typehint in the LocaleListener
The listener does not depend on the RouterInterface but only on the
RequestContextAwareInterface which is also implemented by the matcher
and the generator. Changing the typehint allow reusing the listener
in Silex.
2012-06-13 16:06:22 +02:00
Fabien Potencier
1d7501dbc4 merged branch stealth35/fs_micropt (PR #4568)
Commits
-------

abab929 Prevent empty value in isAbsolutePath, use rtrim in mirror

Discussion
----------

Prevent empty value in isAbsolutePath, use rtrim in mirror

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/stealth35/symfony.png?branch=fs_micropt)](http://travis-ci.org/stealth35/symfony)

---------------------------------------------------------------------------

by travisbot at 2012-06-13T13:39:39Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1610607) (merged abab9295 into 3ab9a6ee).
2012-06-13 16:04:04 +02:00
Fabien Potencier
3ab9a6eec5 [Yaml] fixed string parsing (closes #4561) 2012-06-13 14:57:32 +02:00
stealth35
abab929516 Prevent empty value in isAbsolutePath, use rtrim in mirror 2012-06-13 14:39:17 +02:00
Fabien Potencier
c55ddb9276 merged branch merk/patch-2 (PR #4561)
Commits
-------

4ac48d9 Added failing YAML inline string to tests

Discussion
----------

Added failing YAML inline string to tests

#4042 introduced a regression for yaml string parsing starting with a double colon (::). The below configuration syntax no longer works.

The addition to the tests generates a failure:

1) Symfony\Component\Yaml\Tests\InlineTest::testDump
Symfony\Component\Yaml\Exception\ParseException: Malformed inline YAML string ('::form_base.html.twig').

```yaml
# Twig Configuration
twig:
    debug:            %kernel.debug%
    strict_variables: %kernel.debug%
    form:
        resources:
            - '::form_theme.html.twig'
            - 'InfiniteFormBundle::form_theme.html.twig'
```

---------------------------------------------------------------------------

by merk at 2012-06-12T22:15:42Z

For those having this trouble, locking composer at a specific symfony commit is the best option until it is fixed:

```
        "symfony/symfony": "dev-master#3bb7dc0bfa87b2d4db8262be65b5f49cc6a17a9b",
```

---------------------------------------------------------------------------

by travisbot at 2012-06-13T00:44:45Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1605553) (merged 4ac48d9e into 37550d23).
2012-06-13 14:06:46 +02:00
Erik Trapman
0b58828b3f [FileSystem] remove symlinks under windows 2012-06-13 10:40:20 +02:00
Fabien Potencier
f5c99d2421 merged branch Tobion/eager (PR #4562)
Commits
-------

49e9957 added test to ensure matching is eager

Discussion
----------

[Routing] added test to ensure matching is eager

This just adds a passing test that wasn't covered yet, so we don't break this scenario in the future.

---------------------------------------------------------------------------

by travisbot at 2012-06-13T01:04:09Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1605738) (merged 49e99572 into 37550d23).
2012-06-13 08:18:21 +02:00
Tim Nagel
4ac48d9e6c Added failing YAML inline string to tests 2012-06-13 08:07:25 +10:00
Fabien Potencier
37550d23c6 merged branch Burgov/enhance_form_error_message (PR #4557)
Commits
-------

b5cf337 [Form] Enhanced the form error message

Discussion
----------

[Form] Enhanced the form error message

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes

The error message on type mismatch is a bit obscure:

The form's view data is expected to be an instance of class Samson\Bundle\TRSBundle\Entity\Labour, but has the type object. You can avoid this error by setting the "data_class" option to null or by adding a view transformer that transforms object to Samson\Bundle\TRSBundle\Entity\Labour.

This commit changes it to:

The form's view data is expected to be an instance of class Samson\Bundle\TRSBundle\Entity\Labour, but is an instance of class Closure. You can avoid this error by setting the "data_class" option to null or by adding a view transformer that transforms an instance of Closure to an instance of class Samson\Bundle\TRSBundle\Entity\Labour.

---------------------------------------------------------------------------

by travisbot at 2012-06-12T14:04:08Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1601478) (merged 70a15df6 into 77839690).

---------------------------------------------------------------------------

by travisbot at 2012-06-12T14:06:31Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1601507) (merged 12ec4dbd into 77839690).

---------------------------------------------------------------------------

by travisbot at 2012-06-12T14:13:09Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1601517) (merged b5cf337c into 77839690).

---------------------------------------------------------------------------

by bschussek at 2012-06-12T18:21:31Z

👠Thanks!
2012-06-12 20:26:00 +02:00
Fabien Potencier
ba8333a5b2 merged branch Burgov/builder_getparent_call_fix (PR #4556)
Commits
-------

1e83206 [Form] FormBuilderInterface->getParent() doesn't take any arguments (anymore)

Discussion
----------

[Form] FormBuilderInterface->getParent() doesn't take any arguments (anymore)

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes

---------------------------------------------------------------------------

by travisbot at 2012-06-12T13:43:25Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1601018) (merged 9826ca66 into 77839690).

---------------------------------------------------------------------------

by travisbot at 2012-06-12T13:51:33Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1601030) (merged 1e83206e into 77839690).

---------------------------------------------------------------------------

by bschussek at 2012-06-12T18:21:56Z

👠Thanks again! :)
2012-06-12 20:25:45 +02:00
Fabien Potencier
28f6c5889b merged branch Seldaek/route-gen (PR #4534)
Commits
-------

31843cf [FrameworkBundle] Add info to config
d5ab4c1 [Routing] Update changelog
bbef65e [Routing] Add strict_parameters option to disable exceptions when a route generation fails due to an invalid parameter

Discussion
----------

[Routing] Add strict_parameters option to disable exceptions on invalid parameters

---------------------------------------------------------------------------

by travisbot at 2012-06-09T15:07:26Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1577025) (merged bbef65e6 into 37678e17).

---------------------------------------------------------------------------

by stof at 2012-06-09T15:43:48Z

Seems good, but you forgot to update the Changelog of the component. Anyway, let's wait for @vicb's review as he knows the Routing component better than me.

---------------------------------------------------------------------------

by Seldaek at 2012-06-09T16:35:56Z

I updated the changelog

---------------------------------------------------------------------------

by travisbot at 2012-06-09T16:38:31Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1577716) (merged d5ab4c1d into 37678e17).

---------------------------------------------------------------------------

by travisbot at 2012-06-11T10:10:37Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1590901) (merged a54e59e4 into 37678e17).

---------------------------------------------------------------------------

by travisbot at 2012-06-11T13:50:21Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1591926) (merged 31843cf0 into 0995b1f2).
2012-06-12 19:58:14 +02:00
Fabien Potencier
ef41e308cc merged branch Tobion/phpdoc (PR #4539)
Commits
-------

680e732 [Routing] fix phpDoc

Discussion
----------

[Routing] fix phpDoc

using inheritdoc where possible and removing api tag when parent interface has one
as requested by stof and fabpot

---------------------------------------------------------------------------

by travisbot at 2012-06-09T16:14:53Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1577508) (merged 0a44632a into f8a09db5).

---------------------------------------------------------------------------

by travisbot at 2012-06-10T19:36:25Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1585766) (merged 680e732a into 7bec0786).
2012-06-12 19:54:37 +02:00
Fabien Potencier
6e524e2863 merged branch jalliot/patch-4 (PR #4544)
Commits
-------

5d55726 [HttpFoundation] Added 308 as a valid redirect code

Discussion
----------

[HttpFoundation] Added 308 as a valid redirect code

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/jalliot/symfony.png?branch=patch-4)](http://travis-ci.org/jalliot/symfony)
Fixes the following tickets: -
Todo: -

I think this should go on 2.0 but error code 308 has only been added in master...

---------------------------------------------------------------------------

by lyrixx at 2012-06-09T22:56:32Z

ðŸ‘

---------------------------------------------------------------------------

by travisbot at 2012-06-10T06:27:18Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1579937) (merged 5d557261 into 6266b72d).
2012-06-12 19:54:09 +02:00
Fabien Potencier
41f48b7e6c merged branch mvrhov/1813_regression (PR #4551)
Commits
-------

5d88255 Authorization header should only be rebuild when Basic Auth scheme is used

Discussion
----------

[Regression fix] Authorization header should only be rebuild when Basic Auth scheme is used

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: fixes regression introduced by #1813
Todo: N/A
License of the code: MIT

---------------------------------------------------------------------------

by travisbot at 2012-06-11T14:40:28Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1592604) (merged cf5ee26a into 27100ba4).

---------------------------------------------------------------------------

by mvrhov at 2012-06-12T06:13:01Z

fixed

---------------------------------------------------------------------------

by travisbot at 2012-06-12T06:14:55Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1598555) (merged 5d88255d into 27100ba4).
2012-06-12 19:52:08 +02:00
Bart van den Burg
b5cf337c9c [Form] Enhanced the form error message
The error message on type mismatch is a bit obscure:

The form's view data is expected to be an instance of class Samson\Bundle\TRSBundle\Entity\Labour, but has the type object. You can avoid this error by setting the "data_class" option to null or by adding a view transformer that transforms object to Samson\Bundle\TRSBundle\Entity\Labour.

This commit changes it to:

The form's view data is expected to be an instance of class Samson\Bundle\TRSBundle\Entity\Labour, but is an instance of Closure. You can avoid this error by setting the "data_class" option to null or by adding a view transformer that transforms an instance of Closure to an instance of Samson\Bundle\TRSBundle\Entity\Labour.
2012-06-12 16:02:18 +02:00
Bart van den Burg
1e83206e1d [Form] FormBuilderInterface->getParent() doesn't take any arguments (anymore) 2012-06-12 15:07:40 +02:00
Fabien Potencier
77839690d9 changed getName() to name on all Reflection* object calls (fixes #4555, refs https://bugs.php.net/bug.php?id=61384) 2012-06-12 14:23:19 +02:00
Fabien Potencier
ba16a51d37 changed getName() to name on all Reflection* object calls (fixes #4555, refs https://bugs.php.net/bug.php?id=61384) 2012-06-12 13:59:42 +02:00
Fabien Potencier
66ff06096c fixed an issue with session mocking in functional tests that do not start with a fresh session instance for each request (Silex for instance) 2012-06-12 10:24:12 +02:00
Fabien Potencier
171eecf679 [HttpFoundation] removed unused variable 2012-06-12 10:01:41 +02:00
Miha Vrhovnik
5d88255d4e Authorization header should only be rebuild when Basic Auth scheme is used 2012-06-12 08:10:53 +02:00
Jordi Boggiano
31843cf0bf [FrameworkBundle] Add info to config 2012-06-11 14:26:01 +02:00
Fabien Potencier
0995b1f28b moved the UserPassword validator from the security bundle to the security component to make it reusable outside the full-stack framework 2012-06-10 21:58:31 +02:00
Fabien Potencier
ea8ccf65ce [TwigBridge] updated composer file 2012-06-10 21:51:29 +02:00
Tobias Schultze
680e732a9e [Routing] fix phpDoc
using inheritdoc where possible and removing api tag when parent interface has one
2012-06-10 21:30:17 +02:00
Fabien Potencier
7bec0786be moved the Security Twig extension to the bridge 2012-06-10 19:01:52 +02:00
l3l0
83ff200e5f [OptionsResolver] Added options resolver tests to improve coverage
[OptionsResolver] Fixed test names and iterator test
2012-06-10 14:54:03 +02:00
Jordan Alliot
5d55726183 [HttpFoundation] Added 308 as a valid redirect code 2012-06-10 01:20:06 +03:00
Jordan Alliot
f09789b192 [FrameworkBundle] Generate the class cache when warming up the cache 2012-06-09 22:38:58 +02:00
Fabien Potencier
6266b72ddc merged branch dlsniper/wdt-session-metadata (PR #4428)
Commits
-------

8dd2af7 Added Session Metadata info to the Request section of the WDT

Discussion
----------

[WebProfilerBundle] Added Session Metadata info to the Request section of the WDT

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/dlsniper/symfony.png?branch=wdt-session-metadata)](http://travis-ci.org/dlsniper/symfony)
Fixes the following tickets: #4181
Todo: ~
License of the code: MIT
Documentation PR: ~

This PR adds some session metadata available into the WDT (Created, Last used, Lifetime specifically).
If you'd like to see more info then let me know.

---------------------------------------------------------------------------

by travisbot at 2012-05-26T21:11:56Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1443801) (merged 9b0b4383 into 9e951991).

---------------------------------------------------------------------------

by travisbot at 2012-05-26T21:24:27Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1443856) (merged 31858319 into 9e951991).

---------------------------------------------------------------------------

by drak at 2012-05-27T00:48:37Z

Nice addition.

---------------------------------------------------------------------------

by dlsniper at 2012-05-31T21:21:37Z

@drak While using this patch on a production application I've noticed that the `$request->hasSession()` section will fail to recognize that there's no session anymore in the app if I'm not using the auto-start feature. I'm using the latest master branch, updated today around 12:00 UTC. Clearly this is not the right place to discuss that there's a problem with ::hasSession() but I wanted to ask someone else for an opinion before creating the issue/fix for it.

---------------------------------------------------------------------------

by stof at 2012-06-09T10:14:05Z

@dlsniper create an ticket for it, and it will become the best place to discuss it :)

---------------------------------------------------------------------------

by dlsniper at 2012-06-09T10:42:58Z

Ok, but then can this be merged meanwhile?

---------------------------------------------------------------------------

by stof at 2012-06-09T10:58:39Z

@fabpot  ðŸ‘

---------------------------------------------------------------------------

by dlsniper at 2012-06-09T17:36:24Z

I've opened #4529 to address the issue seen in the comment.
2012-06-09 21:44:05 +02:00
Fabien Potencier
1787992d0c merged branch niklasf/request-matcher-interface (PR #4363)
Commits
-------

2277500 [Routing][HttpKernel] Add RequestMatcherInterface.

Discussion
----------

[Routing][HttpKernel] Add RequestMatcherInterface.

First try at implementing #4351.

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Fixes the following tickets: -
Todo: -
License of the code: MIT

---------------------------------------------------------------------------

by travisbot at 2012-05-21T19:37:07Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1392716) (merged 457496db into ea33d4d3).

---------------------------------------------------------------------------

by travisbot at 2012-05-21T19:47:51Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1392939) (merged 78effa98 into ea33d4d3).

---------------------------------------------------------------------------

by everzet at 2012-05-21T20:17:03Z

No tests?

---------------------------------------------------------------------------

by travisbot at 2012-05-21T20:18:18Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1393392) (merged 6564fb6a into ea33d4d3).

---------------------------------------------------------------------------

by schmittjoh at 2012-05-21T20:35:14Z

You need to remove the type-hint from the constructor, and probably add an exception instead where the matching methods are called to ensure that either ``UrlMatcherInterface``, or ``RequestMatcherInterface`` were passed. Alternatively, you could also add such a check to the constructor.

---------------------------------------------------------------------------

by fabpot at 2012-05-22T06:52:01Z

related to symfony/symfony#4020

---------------------------------------------------------------------------

by niklasf at 2012-05-25T11:11:45Z

Reverted the changes to UrlMatcher.php.

---------------------------------------------------------------------------

by fabpot at 2012-05-25T12:46:06Z

@niklasf: it looks good now except for the listener constructor (see @schmittjoh suggestion above). Can you fix that and add some unit tests to ensure that everything works as expected? Thanks.

---------------------------------------------------------------------------

by stof at 2012-05-25T12:52:59Z

Another solution could be to make the ``RequestMatcherInterface`` extend the ``MatcherInterface`` to keep the typehint in the constructor

---------------------------------------------------------------------------

by fabpot at 2012-05-25T13:52:26Z

I thought about that as well, but that does not make sense.

---------------------------------------------------------------------------

by stof at 2012-05-25T14:12:19Z

Well, the RouterInterface extends UrlMatcherInterface anyway (and it should stay this way as it would be a huge BC break) so I guess most people will implement both interfaces when implementing the RquestMatcherInterface

---------------------------------------------------------------------------

by travisbot at 2012-05-25T15:26:22Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1433963) (merged 8f36204c into ff4d446c).

---------------------------------------------------------------------------

by travisbot at 2012-05-25T15:33:13Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1433996) (merged 6d2f2cd9 into ff4d446c).

---------------------------------------------------------------------------

by travisbot at 2012-05-25T15:39:01Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1434060) (merged 3c1d89e2 into ff4d446c).

---------------------------------------------------------------------------

by travisbot at 2012-05-25T22:06:34Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1437398) (merged 3ab997c1 into ff4d446c).

---------------------------------------------------------------------------

by travisbot at 2012-05-25T22:06:47Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1437385) (merged d8c0e387 into ff4d446c).

---------------------------------------------------------------------------

by fabpot at 2012-05-26T06:41:31Z

Can you add a note in the CHANGELOG of the component?

---------------------------------------------------------------------------

by travisbot at 2012-05-26T08:12:40Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1440435) (merged c7458733 into 9e951991).

---------------------------------------------------------------------------

by niklasf at 2012-05-26T08:14:41Z

@fabpot: Sorry, not sure how: Under 2.1.0 or in a new section? As the first or last entry of the list?

---------------------------------------------------------------------------

by stof at 2012-05-26T10:20:23Z

@niklasf the new interface should be mentioned in the changelog of the Routing component

---------------------------------------------------------------------------

by travisbot at 2012-05-26T10:30:06Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1440837) (merged 34ea86a9 into 9e951991).

---------------------------------------------------------------------------

by niklasf at 2012-06-02T15:27:01Z

Ah ... so there were two pitfalls:

- PHPUnit clones the arguments of mocked functions. So they wouldn't equal.
- createGetResponseEventForUri() disables routing on purpose. So not using that helper, now.

Tests should be passing.

---------------------------------------------------------------------------

by travisbot at 2012-06-02T15:30:28Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1509054) (merged 7fab0118 into 1541fe26).
2012-06-09 21:38:41 +02:00
Fabien Potencier
fc40e53724 Revert "merged branch jfsimon/issue-4475 (PR #4497)"
This reverts commit f8a09db5e2, reversing
changes made to ae2ec36e27.
2012-06-09 21:38:22 +02:00
Jordi Boggiano
d5ab4c1d71 [Routing] Update changelog 2012-06-09 18:33:17 +02:00
Fabien Potencier
f8a09db5e2 merged branch jfsimon/issue-4475 (PR #4497)
Commits
-------

06976fc Updated upgrade 2.1 file.
110ccd8 [BrowserKit] Updated changelog.
686854b [http kernel] Added client response type test.
ce7e1e6 [browser kit] Client now stores filtered response after request.

Discussion
----------

[browser kit] Client now stores filtered response after request.

Bug fix: yes
Feature addition: no
Backwards compatibility break: yes/no, choice is your
Symfony2 tests pass: yes

`Symfony\Component\HttpKernel\Client::request()` method now returns a `Symfony\Component\BrowserKit\Response` instance.

Fixes issue #4475.

---------------------------------------------------------------------------

by stof at 2012-06-05T08:58:00Z

This *is* as BC break as it changes the class returned by the method, even if the BC break is a bugfix to respect the epxected behavior :)

---------------------------------------------------------------------------

by jfsimon at 2012-06-05T09:05:32Z

@stof you're right!

---------------------------------------------------------------------------

by travisbot at 2012-06-06T15:29:54Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1533533) (merged 686854b2 into 1541fe26).

---------------------------------------------------------------------------

by stof at 2012-06-09T10:12:18Z

@jfsimon can you add a note in the changelog of the component and in the upgrade file ?

---------------------------------------------------------------------------

by jfsimon at 2012-06-09T10:51:00Z

@stof done!

---------------------------------------------------------------------------

by travisbot at 2012-06-09T11:12:43Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1575524) (merged 06976fcd into 1541fe26).

---------------------------------------------------------------------------

by stof at 2012-06-09T12:50:16Z

@fabpot ðŸ‘
2012-06-09 17:15:29 +02:00
Fabien Potencier
ae2ec36e27 merged branch henrikbjorn/require-authentication (PR #4525)
Commits
-------

6a01d3d [Security] Check post_only option and request method

Discussion
----------

[Security] Take `post_only` into consideration in requiresAuthentication

Change requiresAuthentication to look at the `post_only` option. Fixes #4524

---------------------------------------------------------------------------

by travisbot at 2012-06-08T18:26:21Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1570033) (merged 6d799494 into b84b46ba).

---------------------------------------------------------------------------

by travisbot at 2012-06-09T11:34:59Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1575681) (merged af676bb5 into b84b46ba).

---------------------------------------------------------------------------

by stof at 2012-06-09T14:01:21Z

@henrikbjorn could you squash the commit, or cherry-pick the third one so that it is the only one ? The reverted commit seems weird in the PR.

---------------------------------------------------------------------------

by henrikbjorn at 2012-06-09T14:18:08Z

@stof there. Actually it cannot be squashed. But maybe what i did was wrong.

``` shell
git reset --hard b84b46ba1a
git cherry-pick af676bb5d01f835b2f9913e129e6c6eb3320dd26
git push -f henrikbjorn require-authentication
```

---------------------------------------------------------------------------

by travisbot at 2012-06-09T14:22:59Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1576658) (merged 6a01d3dd into 3bb7dc0b).

---------------------------------------------------------------------------

by stof at 2012-06-09T14:39:25Z

@fabpot ðŸ‘
2012-06-09 17:11:11 +02:00
Fabien Potencier
dedaa82ec4 merged branch greg0ire/position_switching (PR #4533)
Commits
-------

f541a54 [Form] implement force append / prepend

Discussion
----------

implement force append / prepend

See #4494 and #4473

---------------------------------------------------------------------------

by travisbot at 2012-06-09T12:33:07Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1575997) (merged b0ed9b26 into 3bb7dc0b).

---------------------------------------------------------------------------

by stof at 2012-06-09T12:53:29Z

@fabpot 👠for me.

---------------------------------------------------------------------------

by travisbot at 2012-06-09T12:57:54Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1576150) (merged 5e45b5d3 into 3bb7dc0b).

---------------------------------------------------------------------------

by travisbot at 2012-06-09T13:41:05Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1576322) (merged d51c5437 into 3bb7dc0b).

---------------------------------------------------------------------------

by fabpot at 2012-06-09T14:47:37Z

Can you add a mention in the CHANGELOG please?

---------------------------------------------------------------------------

by greg0ire at 2012-06-09T14:58:25Z

Couldn't find anything relevant to update in the CHANGELOG of the form component, but the UPGRADE file contains something I could update.

---------------------------------------------------------------------------

by travisbot at 2012-06-09T15:06:27Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1576951) (merged 6b45ba66 into 3bb7dc0b).

---------------------------------------------------------------------------

by greg0ire at 2012-06-09T15:06:51Z

Squashed all the commits into one.
2012-06-09 17:08:14 +02:00
Grégoire Paris
f541a54770 [Form] implement force append / prepend 2012-06-09 17:05:41 +02:00
Fabien Potencier
27100ba4eb merged branch jakzal/yamlDoubleQuotesDumperFix (PR #4320)
Commits
-------

b631073 [Yaml] Fixed double quotes escaping in Dumper.

Discussion
----------

[Yaml] Fixed double quotes escaping in Dumper

Issue #4308 is caused by Dumper::escapeWithDoubleQuotes() which uses [str_replace()](http://php.net/str_replace).

From the php docs:

> Because str_replace() replaces left to right, it might replace a previously inserted value when doing multiple replacements.

We should be very careful in deciding about the order of elements in $escapees array. I'd really appreciate if someone reviewed my fix. Tests say I didn't break anything but I'm not sure what percentage of Yaml specification is covered by tests.

Bug fix: yes
Feature addition: no
Backwards compatibility break: not that I know
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/jakzal/symfony.png?branch=yamlDoubleQuotesDumperFix)](http://travis-ci.org/jakzal/symfony)
Fixes the following tickets: #4308

---------------------------------------------------------------------------

by travisbot at 2012-05-18T08:53:51Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1364279) (merged 5192722c into a04acc89).

---------------------------------------------------------------------------

by travisbot at 2012-05-18T23:19:49Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1371539) (merged ecaa1aab into fc3c609b).

---------------------------------------------------------------------------

by dinamic at 2012-05-19T07:35:21Z

Something is really wrong with this method. You can see clearly that multiple characters would fail proper escaping.

Here's an example:
```
$value = '\\\\"some value\n \"some quoted string\" and \'some single quotes one\'"';
var_dump(Escaper::escapeWithDoubleQuotes($value));
string(72) ""\\\"some value\n \\some quoted string\\ and 'some single quotes one'\"""
```

To begin with the backslash - in the initial value you have 2 (escaped ones), that after escaping should result in 4, not in 1 (escaped). I guess this behavior has to be verified with the importer, but imho it does not seem right.

Does anyone know why this escaping wasn't done using a regular expression in first place?

---------------------------------------------------------------------------

by clemens-tolboom at 2012-05-19T10:18:58Z

Searching for https://duckduckgo.com/?q=what+is+\xc2\x85 the table on http://stackoverflow.com/questions/6609895/efficiently-replace-bad-characters is interesting enough to decide we need way more documentation on this file.

\xc2\x85 seems to be triple dot (ellipses)
\xe2\x80\xa9 seems to be paragraph separator see http://drupal.org/node/914360#comment-3468550
2012-06-09 17:04:17 +02:00
Jordi Boggiano
bbef65e657 [Routing] Add strict_parameters option to disable exceptions when a route generation fails due to an invalid parameter 2012-06-09 16:59:48 +02:00
Fabien Potencier
37678e1715 merged branch paul-matthews/master (PR #4042)
Commits
-------

478227d Fixed quoting issues with Yaml Inline Parser

Discussion
----------

[Yaml] fix parsing quotes problem

Added some basic checking for quotes on their own within strings. Used single quote ' followed by "," and ":" to denote the end of the current string to test.

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #4021
Todo: N/A

---------------------------------------------------------------------------

by fabpot at 2012-05-07T09:22:56Z

After doing the requested changes, can you squash your commits? Thanks.

---------------------------------------------------------------------------

by paul-matthews at 2012-05-09T13:29:45Z

Resolved and squashed

---------------------------------------------------------------------------

by travisbot at 2012-05-09T13:30:30Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1285048) (merged 5ce6d4e1 into 6c714095).

---------------------------------------------------------------------------

by travisbot at 2012-05-09T13:31:06Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1285057) (merged 3592fcec into e54f4e46).

---------------------------------------------------------------------------

by travisbot at 2012-05-09T13:33:40Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1285094) (merged e209f786 into e54f4e46).

---------------------------------------------------------------------------

by travisbot at 2012-05-09T13:37:42Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1285153) (merged 0967b513 into e54f4e46).

---------------------------------------------------------------------------

by fabpot at 2012-05-09T14:00:29Z

It looks like that another commit is in your PR that should not be there.

---------------------------------------------------------------------------

by paul-matthews at 2012-05-09T15:52:35Z

Right-o will remove

---------------------------------------------------------------------------

by paul-matthews at 2012-05-09T15:54:15Z

resolved

---------------------------------------------------------------------------

by travisbot at 2012-05-09T15:57:15Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1286339) (merged fc276209 into e66a0bb3).

---------------------------------------------------------------------------

by fabpot at 2012-05-10T05:20:18Z

Apparently, some tests do not pass anymore after the patch. Can you have a look at them? Thanks.

---------------------------------------------------------------------------

by paul-matthews at 2012-05-10T11:20:45Z

Sure - looking into it.

---------------------------------------------------------------------------

by paul-matthews at 2012-05-10T17:55:53Z

I believe that's fixed.

The entire suite works locally now.

---------------------------------------------------------------------------

by travisbot at 2012-05-10T17:55:54Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1297641) (merged 884c02ed into fae4523f).

---------------------------------------------------------------------------

by paul-matthews at 2012-05-10T17:57:03Z

Unsure why travis fails.

---------------------------------------------------------------------------

by travisbot at 2012-05-10T18:00:28Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1297650) (merged 478227d9 into fae4523f).

---------------------------------------------------------------------------

by stof at 2012-06-09T13:24:52Z

@fabpot ðŸ‘
2012-06-09 16:40:39 +02:00
Henrik Bjørnskov
6a01d3dd54 [Security] Check post_only option and request method 2012-06-09 16:16:43 +02:00
Tobias Schultze
3466896acd [Routing] fix encoding of static static, so UrlGenerator produces valid URLs
also added test with many special characters
2012-06-09 15:11:42 +02:00
Jean-François Simon
110ccd8e71 [BrowserKit] Updated changelog. 2012-06-09 12:37:27 +02:00
Kris Wallsmith
d13dce0636 [Console] reduced visibility to protected 2012-06-08 14:18:51 -07:00
Fabien Potencier
b84b46ba1a [HttpFoundation] added some unit tests (refs #4510) 2012-06-08 16:22:49 +02:00
Rowan Manning
326991bd6e Reset image styling for the web-profiler toolbar
I've had issues with the toolbar where the site styling pushes
the toolbar info below the image. This is often because of global
image styling such as applying `display: block` by default.

This fixes the issue by reseting image styling to browser
defaults, which is what the toolbar expects.
2012-06-08 11:45:18 +01:00
Fabien Potencier
f8e68e58bf merged branch alexandresalome/twig-linter-context (PR #4452)
Commits
-------

df5590e [TwigBundle] Fix return code in LintComand
604a79a [TwigBundle] Fix line start in twig:lint command
91936b5 [TwigBundle] Fancy output for twig:lint

Discussion
----------

[TwigBundle] Fancy output for twig:lint

Previous PR : #3804

@marcw @fabpot Since no exception is raised, the return code is always 0. Do I add ``return rand(64, 113)`` ?

Screenshot : http://twitpic.com/9qql09

---------------------------------------------------------------------------

by travisbot at 2012-05-29T21:18:33Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1470256) (merged 91936b53 into adf07f1e).

---------------------------------------------------------------------------

by travisbot at 2012-05-29T21:21:54Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1470353) (merged 604a79ab into adf07f1e).

---------------------------------------------------------------------------

by fabpot at 2012-05-30T16:45:24Z

@alexandresalome just return 1 in case of a problem.

---------------------------------------------------------------------------

by travisbot at 2012-06-06T20:06:04Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1550631) (merged df5590ec into adf07f1e).
2012-06-08 09:58:39 +02:00
Fabien Potencier
3c8947e3f1 merged branch shiroyuki/master (PR #4481)
Commits
-------

06cc9ff Adjust the width of the timeline in the profiler dynamically when the (browser) window is resized.

Discussion
----------

Adjust the width of the timeline in the profiler dynamically when the (browser) window is resized.

(Rework of [PR 4476](https://github.com/symfony/symfony/pull/4476))

Instead of making the developer to resize the width of the visual presentation of the timeline in the profile manually, this change is to make the profiler adjust the width of the timeline dynamically when the (browser) window is resized.

Also, this change introduce the cleaner HTML/JavaScript code and URL as the result of:

* the removal of 'width' from the query string as the width is now controlled by JavaScript.
the removal of 'threshold' from the query string as the threshold is now passed between pages via HTML5 LocalStorage.
* Please note that at the time of submitting the pull request, GitHub didn't pick up some commits to deal with the trailing white spaces.

---------------------------------------------------------------------------

by travisbot at 2012-06-01T18:30:49Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1501464) (merged 06cc9ff3 into 1541fe26).
2012-06-08 09:55:41 +02:00
Fabien Potencier
2faba01d4f merged branch Ph3nol/ph3-routing-component-fixes (PR #4486)
Commits
-------

a6d32de UrlMatcher class indent and doc fixes

Discussion
----------

[Routing] PHP CS and doc minor fixes

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes

---------------------------------------------------------------------------

by travisbot at 2012-06-02T12:03:36Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1507232) (merged a6d32de1 into 1541fe26).
2012-06-08 09:46:03 +02:00
Fabien Potencier
15b5aa4f7c merged branch beberlei/GH-4491 (PR #4493)
Commits
-------

4938080 MethodNotImplementedException -> MethodArgumentValueNotImplementedException
789fc14 Accept calling setLenient(false)

Discussion
----------

GH-4491 - Move patch from master to 2.0

A patch in PR-4469 fixed an issue with setLenient() and not having intl. This was only merged into master, although the original issue was created in the 2.0 branch. This PR cherry-picked the patches against 2.0 again.

---------------------------------------------------------------------------

by travisbot at 2012-06-06T15:29:19Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1527145) (merged 49380804 into 9a5e6c90).

---------------------------------------------------------------------------

by kbond at 2012-06-06T17:42:40Z

fixes #4491
2012-06-08 09:44:31 +02:00
Fabien Potencier
29542c162b merged branch jfsimon/issue-4495 (PR #4496)
Commits
-------

5f328de [console] Fixed docblock.
c80e156 [console] Added style stack getter in formatter.
0ae5a45 [console] Removed hardcoded empty style from styles stack.

Discussion
----------

[console] Removed hardcoded style formatter from style stack.

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes

This PR make it possible to replace OutputFormatter again.
Fixes issue #4495.

---------------------------------------------------------------------------

by travisbot at 2012-06-06T15:29:44Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1531654) (merged c80e156f into 1541fe26).

---------------------------------------------------------------------------

by travisbot at 2012-06-06T15:29:53Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1533586) (merged 5f328dee into 1541fe26).
2012-06-08 09:41:22 +02:00
Fabien Potencier
8d41b64e7e merged branch alexandresalome/feat-profiler-view-all (PR #4506)
Commits
-------

4d29c75 [WebProfilerBundle] Add a button "View all" in top of the page

Discussion
----------

[WebProfilerBundle] Add a button "View all" in top of the page

This is a link in the toolbar to search for last queries. This actions is
often achieved and having a link in top of the page to reach the 10 last
queries seems useful.

View on Twitpic: http://twitpic.com/9ti0yx

---------------------------------------------------------------------------

by travisbot at 2012-06-06T20:04:49Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1550622) (merged 4d29c755 into 1541fe26).

---------------------------------------------------------------------------

by nomack84 at 2012-06-06T20:36:10Z

+1
2012-06-08 08:56:13 +02:00
Niklas Fiekas
5c2fbfabf6 [HttpFoundation] Make JsonResponse HTML safe. 2012-06-07 17:39:19 +02:00
Niklas Fiekas
2277500835 [Routing][HttpKernel] Add RequestMatcherInterface.
While UrlMatcherInterface is only for matching URLs with routes, add
RequestMatcherInterface, that allows to match against whole requests.
2012-06-07 09:37:25 +02:00
alexandresalome
df5590ec60 [TwigBundle] Fix return code in LintComand 2012-06-06 21:11:24 +02:00
alexandresalome
4d29c7555b [WebProfilerBundle] Add a button "View all" in top of the page
This is a link in the toolbar to search for last queries. This actions is
often achieved and having a link in top of the page to reach the 10 last
queries seems useful.
2012-06-06 21:04:12 +02:00
Raul Fraile
26d416fe51 Fixed typo in ConstraintValidatorFactoryInterface PHPDoc (2.0) 2012-06-06 15:13:50 +03:00
Kris Wallsmith
280fc0578a failing test for HEAD StreamedResponse requests 2012-06-05 22:28:15 -07:00
jeanfrancois.simon
5f328deed4 [console] Fixed docblock. 2012-06-05 10:51:09 +02:00
jeanfrancois.simon
686854b245 [http kernel] Added client response type test. 2012-06-05 10:37:51 +02:00
jeanfrancois.simon
ce7e1e6c9a [browser kit] Client now stores filtered response after request. 2012-06-05 10:37:06 +02:00
Jean-François Simon
c80e156f96 [console] Added style stack getter in formatter. 2012-06-05 05:22:08 +02:00
Jean-François Simon
0ae5a45282 [console] Removed hardcoded empty style from styles stack. 2012-06-05 05:21:33 +02:00
Francesc Rosàs
4938080422 MethodNotImplementedException -> MethodArgumentValueNotImplementedException 2012-06-04 19:15:56 +02:00
Francesc Rosàs
789fc14145 Accept calling setLenient(false) 2012-06-04 19:15:47 +02:00
Ph3nol
a6d32de181 UrlMatcher class indent and doc fixes 2012-06-02 13:54:03 +02:00
Juti Noppornpitak
06cc9ff32d Adjust the width of the timeline in the profiler dynamically when the (browser) window is resized. 2012-06-01 14:12:35 -04:00
Bernhard Schussek
a1cd8ae5d9 [Form] Removed invalid tests introduced again upon merge 2012-06-01 07:58:58 +02:00
Fabien Potencier
e08252897a Revert "merged branch nomack84/rename_form_methods (PR #4473)"
This reverts commit 136b7868f7, reversing
changes made to 78747e6cc5.
2012-06-01 07:45:48 +02:00
Fabien Potencier
4d46da7d08 merged branch neilferreira/master (PR #4472)
Commits
-------

85db221 Since getClientIp() no longer takes a parameter, removed that old test
7b5328f getClientIp() will now only return valid IP addresses, rather than assuming the X_FORWARDED_FOR is the first comma seperated value.

Discussion
----------

getClientIp() will now only return valid IP addresses, rather than assuming the X_FORWARDED_FOR is the first comma seperated value.

Fixes #4471

I'm not sure why an empty string was being returned in the first place, rather than null.  Any ideas?

---------------------------------------------------------------------------

by travisbot at 2012-05-31T08:59:12Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1485615) (merged 68c17e07 into 78747e6c).

---------------------------------------------------------------------------

by travisbot at 2012-05-31T09:02:57Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1485634) (merged 9c1ba1c4 into 78747e6c).

---------------------------------------------------------------------------

by neilferreira at 2012-05-31T09:04:16Z

Sorted, I'm guessing I need to squash the commits?

---------------------------------------------------------------------------

by travisbot at 2012-05-31T09:21:30Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1485732) (merged 7b5328f1 into 78747e6c).

---------------------------------------------------------------------------

by igorw at 2012-05-31T09:38:07Z

With what value did it fail? Can you add a test case for that `HTTP_X_FORWARDED_FOR ` value?

---------------------------------------------------------------------------

by neilferreira at 2012-05-31T10:45:11Z

Anyone have any idea why that function returns an empty string instead of null ?

---------------------------------------------------------------------------

by neilferreira at 2012-05-31T11:34:12Z

@igorw done, I've also removed an old test that should have been removed when getClientIp() started using the 'trust proxy' variable concept.

---------------------------------------------------------------------------

by travisbot at 2012-05-31T11:38:19Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1486534) (merged 85db2213 into 78747e6c).
2012-05-31 19:36:01 +02:00
Fabien Potencier
9a5e6c9081 bumped Symfony version to 2.0.16-DEV 2012-05-31 17:18:01 +02:00
nomack84
cbc99442c6 [Bridge][Form] Rename some deprecated methods 2012-05-31 08:09:25 -04:00
Neil Ferreira
85db22130e Since getClientIp() no longer takes a parameter, removed that old test
Added a new test for HTTP_X_FORWARDED_FOR that starts with 'unknown, '
2012-05-31 19:32:31 +08:00
Neil Ferreira
7b5328f1c7 getClientIp() will now only return valid IP addresses, rather than assuming the X_FORWARDED_FOR is the first comma seperated value. 2012-05-31 17:15:39 +08:00
Francesc Rosàs
d55f7ed689 MethodNotImplementedException -> MethodArgumentValueNotImplementedException 2012-05-31 05:04:03 +02:00
Francesc Rosàs
cea6489ddf Accept calling setLenient(false) 2012-05-31 04:28:05 +03:00
Sergey Linnik
1227cc2a8a add escapeValue to ParameterBagInterface 2012-05-30 21:50:31 +04:00
Fabien Potencier
c2480c1e73 updated VERSION for 2.0.15 2012-05-30 18:59:58 +02:00
Julien 'ruian' Galenski
26f5ac4aa0 Fix CS phpdoc FormConfigEditorInterface 2012-05-30 18:44:03 +02:00
Fabien Potencier
eba4aba364 merged 2.0 2012-05-30 13:44:37 +02:00
Joseph Bielawski
2e299aa84f [FrameworkBundle] Sync with latest changes in session handlers 2012-05-30 12:07:22 +02:00
Hugo Hamon
a551d9e554 [DependencyInjection] made ContainerAware class abstract. 2012-05-30 09:01:58 +02:00
Fabien Potencier
0e98d33ee0 merged branch drak/natives (PR #4454)
Commits
-------

3c8cc0a [HttpFoundation][Sessions] Refactored tests
13a2c82 [FrameworkBundle] Refactor session file handler service name and update changelogs
b2cc580 [HttpFoundation] Removed Native*Handler session save handler classes
f33b77c [HttpFoundation] Added a custom file save handler

Discussion
----------

[HttpFoundation][Sessions] Removed native save handlers

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: -

Added a specific filesessionhandler
Removed native handlers to slim down code.

---------------------------------------------------------------------------

by travisbot at 2012-05-30T02:54:40Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1473181) (merged 3c8cc0a1 into adf07f1e).
2012-05-30 07:57:13 +02:00
Fabien Potencier
f5dee51c9e merged branch schmittjoh/configAttr (PR #4425)
Commits
-------

23bb668 [FrameworkBundle][SecurityBundle] updated configuration to new method names
8775f2c [Config] replaced setInfo(), setExample() with more generic attributes

Discussion
----------

[Config] replaced setInfo(), setExample() with more generic attributes

This replaces ``setInfo`` and ``setExample`` with a more generic attribute system which provides more flexibility and is more future prove.

I have kept the specialized ``setInfo`` and ``setExample`` methods because they are a bit shorter, and also a good demonstration of what the system could be used for. However for consistency, I have renamed them to ``info()`` and ``example()`` respectively.

---------------------------------------------------------------------------

by travisbot at 2012-05-26T17:37:06Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1442720) (merged 8775f2c1 into 9e951991).

---------------------------------------------------------------------------

by stof at 2012-05-26T17:42:02Z

and you forgot to update FrameworkBundle

---------------------------------------------------------------------------

by travisbot at 2012-05-26T17:46:37Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1442764) (merged 23bb668e into 9e951991).
2012-05-30 07:56:53 +02:00
Guilherme Blanco
3ef377b6c3 Update src/Symfony/Bundle/FrameworkBundle/EventListener/TestSessionListener.php 2012-05-30 02:26:39 -03:00
Fabien Potencier
223d187abc merged branch vicb/form_updates (PR #4432)
Commits
-------

a30f4a0 [Form] cleanup

Discussion
----------

[Form] cleanup

---------------------------------------------------------------------------

by travisbot at 2012-05-27T19:47:21Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1450050) (merged 09574f4b into adf07f1e).

---------------------------------------------------------------------------

by travisbot at 2012-05-27T19:57:42Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1450149) (merged a8c63d72 into adf07f1e).

---------------------------------------------------------------------------

by vicb at 2012-05-27T20:00:13Z

thanks a bunch @travisbot !

---------------------------------------------------------------------------

by travisbot at 2012-05-28T06:52:52Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1453555) (merged a30f4a03 into adf07f1e).

---------------------------------------------------------------------------

by bschussek at 2012-05-28T09:20:05Z

Thank you Victor! ðŸ‘
2012-05-30 07:22:13 +02:00
Fabien Potencier
3273d5189e merged branch vicb/minor_cleanup (PR #4430)
Commits
-------

59c4f55 a few minor changes

Discussion
----------

a few minor changes / cleanup

---------------------------------------------------------------------------

by travisbot at 2012-05-27T07:58:52Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1446431) (merged bb7ae326 into 9e951991).
2012-05-30 07:21:14 +02:00
Fabien Potencier
c61c7400d2 merged branch bschussek/issue4427 (PR #4431)
Commits
-------

fc38e2b [Form] Fixed mapping of violations with empty paths to the root form

Discussion
----------

[Form] Fixed mapping of violations with empty paths to the root form

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

---------------------------------------------------------------------------

by travisbot at 2012-05-27T12:57:36Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1447769) (merged fc38e2b4 into adf07f1e).
2012-05-30 07:16:58 +02:00
Fabien Potencier
2c6818fefc merged branch vicb/timeline (PR #4440)
Commits
-------

d549493 [WebProfilerBundle] Fix time panel for fr locale (fix #4437)

Discussion
----------

[WebProfilerBundle] Fix time panel for fr locale (fix #4437)

@Vincent-P could you confirm if this commit fixes your issues , Thanks.

---------------------------------------------------------------------------

by travisbot at 2012-05-28T12:39:05Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1455324) (merged d5494936 into adf07f1e).
2012-05-30 07:16:03 +02:00
Fabien Potencier
44f615595a merged branch drak/cleanup (PR #4433)
Commits
-------

d046fed [HttpFoundation] Remove temporary files after tests run

Discussion
----------

[HttpFoundation] Remove temporary files after tests run

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [yes|no]
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -

---------------------------------------------------------------------------

by travisbot at 2012-05-28T00:26:30Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1451809) (merged 30082e97 into adf07f1e).

---------------------------------------------------------------------------

by travisbot at 2012-05-28T06:59:39Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1453569) (merged d046fede into adf07f1e).
2012-05-30 07:13:13 +02:00
Fabien Potencier
f15c9cd19d merged branch widop/patch-1 (PR #4447)
Commits
-------

395004c [Bridge][Doctrine] Fix missing dot in unique entity error message

Discussion
----------

[Bridge][Doctrine] Fix missing dot in unique entity error message

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: none
Todo: none
License of the code: MIT
Documentation PR: none

The translation message defined in the FrameworkExtraBundle defines the unique entity error message like that: ``This value is already used.`` but is defined without the dot in the Doctrine UniqueEntity validator. This PR fixes this issue.

---------------------------------------------------------------------------

by travisbot at 2012-05-29T12:31:59Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1464732) (merged 675c744c into adf07f1e).

---------------------------------------------------------------------------

by travisbot at 2012-05-29T14:24:48Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1465598) (merged 395004c0 into adf07f1e).
2012-05-30 07:10:15 +02:00
alexandresalome
604a79aba2 [TwigBundle] Fix line start in twig:lint command 2012-05-29 23:15:22 +02:00
alexandresalome
91936b533d [TwigBundle] Fancy output for twig:lint 2012-05-29 23:06:08 +02:00
Guilherme Blanco
3ad01c0512 Update src/Symfony/Bundle/FrameworkBundle/EventListener/TestSessionListener.php 2012-05-29 15:59:57 -03:00
Eric GELOEN
395004c03f [Bridge][Doctrine] Fix missing dot in unique entity error message 2012-05-29 14:41:27 +02:00
Victor Berchet
d54949364e [WebProfilerBundle] Fix time panel for fr locale (fix #4437) 2012-05-28 14:33:31 +02:00
Drak
d046fedefb [HttpFoundation] Remove temporary files after tests run 2012-05-28 12:39:57 +05:45
Victor Berchet
a30f4a0350 [Form] cleanup 2012-05-28 08:48:06 +02:00
Victor Berchet
59c4f55290 a few minor changes 2012-05-28 08:46:08 +02:00
KUBO Atsuhiro
20b556dacb [Form] fixed a bug that caused input date validation not to be strict when using the single_text widget with a datetime field 2012-05-28 14:41:53 +09:00
KUBO Atsuhiro
7e3213cf3f [Form] fixed a bug that caused input date validation not to be strict when using the single_text widget with a date field 2012-05-28 14:41:48 +09:00
Drak
3c8cc0a1a0 [HttpFoundation][Sessions] Refactored tests 2012-05-28 06:12:06 +05:45
Drak
13a2c82f01 [FrameworkBundle] Refactor session file handler service name and update changelogs 2012-05-28 06:09:36 +05:45
Drak
b2cc580be7 [HttpFoundation] Removed Native*Handler session save handler classes 2012-05-28 06:09:31 +05:45
Drak
f33b77c23e [HttpFoundation] Added a custom file save handler 2012-05-28 06:09:26 +05:45
Bernhard Schussek
fc38e2b438 [Form] Fixed mapping of violations with empty paths to the root form 2012-05-27 14:53:01 +02:00
Fabien Potencier
adf07f1e53 merged 2.0 2012-05-27 12:30:27 +02:00
Florin Patan
8dd2af77a4 Added Session Metadata info to the Request section of the WDT 2012-05-27 00:21:50 +03:00
Johannes M. Schmitt
23bb668e26 [FrameworkBundle][SecurityBundle] updated configuration to new method names 2012-05-26 12:43:16 -05:00
Johannes M. Schmitt
8775f2c17c [Config] replaced setInfo(), setExample() with more generic attributes 2012-05-26 12:30:39 -05:00
Bernhard Schussek
90516223ab Fixing email 2012-05-26 09:48:33 +02:00
Fabien Potencier
ff56c78424 merged branch schmittjoh/enumNode (PR #4420)
Commits
-------

8308aea [Config] added EnumNode

Discussion
----------

[Config] added EnumNode

This adds an EnumNode which should be used instead of a Closure and manual validation.

The benefit is that you can retrieve the allowed values. It is also a bit shorter, but that is not the main point here.

---------------------------------------------------------------------------

by travisbot at 2012-05-26T03:52:50Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1439264) (merged 8308aea9 into ff4d446c).
2012-05-26 08:38:44 +02:00
Fabien Potencier
def316fcd9 merged branch shieldo/patch-5 (PR #4415)
Commits
-------

3c507ee fixed CS (whitespace)

Discussion
----------

fixed CS (whitespace)

---------------------------------------------------------------------------

by travisbot at 2012-05-25T17:50:41Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1435274) (merged 3c507ee4 into ff4d446c).
2012-05-26 08:38:27 +02:00
Fabien Potencier
05f9cfed0a merged branch yethee/form_cleanup (PR #4417)
Commits
-------

b4e2818 [Form] Using new methods instead of the deprecated

Discussion
----------

[Form] Using new methods instead of the deprecated

---------------------------------------------------------------------------

by travisbot at 2012-05-25T21:05:11Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1436891) (merged b4e28186 into ff4d446c).
2012-05-26 08:38:09 +02:00
Fabien Potencier
0a473895c8 merged branch Tobion/pp-refactor (PR #4418)
Commits
-------

e673a04 [OptionsResolver] clarify phpdoc
0cac404 [Form] refactored PropertyPth

Discussion
----------

PropertyPath refactoring + CS fix

---------------------------------------------------------------------------

by travisbot at 2012-05-25T21:49:01Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1437257) (merged e673a041 into ff4d446c).
2012-05-26 08:37:14 +02:00
Johannes M. Schmitt
8308aea9d1 [Config] added EnumNode 2012-05-25 22:44:51 -05:00
Tobias Schultze
e673a041be [OptionsResolver] clarify phpdoc 2012-05-25 23:40:38 +02:00
Tobias Schultze
0cac4049f7 [Form] refactored PropertyPth 2012-05-25 23:39:40 +02:00
Deni
b4e2818608 [Form] Using new methods instead of the deprecated 2012-05-26 00:59:04 +04:00
Sergey Yuferev
c6881668fe [Form] fixing form type translation_domain inheritance
fixed bug with parent property
fix is_required field
fixed subform translation_domain inheritance
some translation_domain inheritance code refactoring
added form type translation_domain inheritance tests
changed methods place in form type test
changed arguments in createNamed method call in FormTypeTest
2012-05-25 22:00:33 +04:00
Douglas Greenshields
3c507ee47a fixed CS (whitespace) 2012-05-25 19:46:18 +02:00
Bernhard Schussek
8c23d7fdfe [Form] Fixed: "error_mapping" is not an attribute anymore, but an option 2012-05-25 16:50:31 +02:00
Clemens Tolboom
3462afc0d3 Tests for PluralizationRules. 2012-05-25 16:20:45 +02:00
Victor Berchet
bc15e2d68b [Form] Some code cleanup 2012-05-25 12:34:17 +02:00
Victor Berchet
3d800afec3 [Form] Remove usages of deprecated features 2012-05-25 12:34:16 +02:00
Bernhard Schussek
ee803cd948 [Form] Renamed setVars() to addVars() in FormViewInterface 2012-05-25 12:34:16 +02:00
Bernhard Schussek
1c4f632f60 [Form] Fixed API docs and usage of FormBuilderInterface instead of FormBuilder 2012-05-25 12:34:16 +02:00
Bernhard Schussek
2e6cdd15c5 [Form] Inverted the logic of "single_control" and renamed it to "compound". The opposite is now "simple". 2012-05-25 12:34:16 +02:00
Bernhard Schussek
98a7c0cf5f [Form] Consolidated FormInterface, FormBuilderInterface and FormViewInterface 2012-05-25 12:34:16 +02:00
Bernhard Schussek
8e128fc644 [Form][OptionsResolver] Fixed typos 2012-05-25 12:34:16 +02:00
Bernhard Schussek
877d8f7195 [Form] Reversed the order of $type and $name in FormFactory::createNamed[Builder]() 2012-05-25 12:34:16 +02:00
Bernhard Schussek
33fecca210 [Form] Merged various form events and added class FormEvent 2012-05-25 12:34:16 +02:00
Bernhard Schussek
bec80157f9 [Form] Renamed client and application format to view and model format 2012-05-25 12:34:16 +02:00
Bernhard Schussek
8cae3282d8 [Form] setDefaultOptions() is now coded against OptionsResolverInterface 2012-05-25 12:34:16 +02:00
Bernhard Schussek
1ecddbc545 [OptionsResolver] Renamed recommended method to setDefaultOptions() 2012-05-25 12:34:15 +02:00
Bernhard Schussek
dc2fa9dc69 [OptionsResolver] Added OptionsResolverInterface 2012-05-25 12:34:15 +02:00
Bernhard Schussek
2cd99e80b6 [Form] Added FormBuilderInterface and FormViewInterface and cleaned up FormTypeInterface and FormTypeExtensionInterface 2012-05-25 12:28:17 +02:00
Bernhard Schussek
0ef4066983 [Form] Options are now passed to buildView() and buildViewBottomUp() 2012-05-25 12:28:17 +02:00
Bernhard Schussek
027259eba4 [Form] Changed getDefaultOptions() to setDefaultOptions(OptionsResolver $resolver) in FormTypeInterface 2012-05-25 12:28:17 +02:00
Bernhard Schussek
b4e8bcfc5a [OptionsResolver] Relaxed tests to check that allowed values can also be passed as scalars 2012-05-25 12:28:17 +02:00
Bernhard Schussek
97de0041a1 [OptionsResolver] Added option type validation capabilities 2012-05-25 12:28:17 +02:00
Bernhard Schussek
0af5f06703 [OptionsResolver] Added method setFilters() for augmenting the final option values 2012-05-25 12:28:17 +02:00
Uwe Jäger
8ffaafa867 Make the session entry for the target url firewall dependent.
If there are two firewalls (eg. main and admin), calling an protected admin url
will direct you to the login form of the admin. If I ignore this and go to the login
form of the main firewall directly I will end up being redirected to the stored
admin target url. This is not what you usually want to happen.
2012-05-25 10:47:31 +02:00
Fabien Potencier
45849ce306 merged branch Tobion/optionsresolver-optim (PR #4388)
Commits
-------

bad4a1f [OptionsResolver] CS fix in LazyOption
a54ea1b [OptionsResolver] small optimization in Options class
104dcf2 [OptionsResolver] fixed bugs concerning required options
1bfcff4 [OptionsResolver] added failing test cases to demonstrate two bugs
37a3a29 [OptionsResolver] optimized validation

Discussion
----------

[OptionsResolver] fixed two bugs and applied optimization

The first commit optimizes the validation in OptionsResolver by removing several unneeded method calls (without changing anything semantically).

Then I recognized two bugs in the current code that I wrote failing test cases for in the second commit.
1. setAllowedValues wrongly validated missing options
2. required options with defaults were considered missing by `resolve` (contrary to the `isRequired` method)

The third commit fixes these bugs.

The forth commit applies a small optimization in Options and uses a static function call for a static function.

---------------------------------------------------------------------------

by travisbot at 2012-05-24T03:39:34Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1418785) (merged a54ea1b6 into b07fb3c4).

---------------------------------------------------------------------------

by travisbot at 2012-05-24T05:22:33Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1419232) (merged bad4a1f7 into b07fb3c4).

---------------------------------------------------------------------------

by bschussek at 2012-05-24T06:20:02Z

I just tested this on my machine, and static calls are a tiny bit faster here, although this is really irrelevant for practical use. Even though I dislike useless micro-optimizations like this, I'm ok with this PR in general.

---------------------------------------------------------------------------

by Tobion at 2012-05-24T13:23:11Z

I didn't say that's an optimization in the first place. (The optimization was the removal of a variable assignment)
I just changed it because in other PRs I've been told, static functions should be called in a static way.

---------------------------------------------------------------------------

by Tobion at 2012-05-24T23:36:13Z

Please merge before 4387
2012-05-25 09:54:05 +02:00
jaugustin
35b458f6b8 fix kernel root, linux dir separator on windows, to fix cache:clear issue 2012-05-25 09:39:01 +02:00
Jakub Zalas
8da880c394 Fixed notice in AddCacheWarmerPass if there is no cache warmer defined. 2012-05-24 23:58:50 +01:00
Jakub Zalas
8c6c86c9c9 Added unit tests for AddCacheWarmerPass class. 2012-05-24 23:42:04 +01:00
Jordi Boggiano
bcf8cf9116 [Process] Refactor the windows handling so it is always executed
When regular pipes are closed, the file handlers fallback on windows
should still be processed until they are empty
2012-05-24 19:53:48 +02:00
Jordi Boggiano
0c5aa8bf7e [Process] Add failing test for callbacks on windows 2012-05-24 19:52:29 +02:00
Fabien Potencier
7f93bf1f5b [TwigBundle] fixed a PHP warning (closes #4397) 2012-05-24 16:44:41 +02:00
Christian Raue
d11af63672 avoid showing the web profiler toolbar loading error if status is 0 2012-05-24 16:06:17 +02:00
Tobias Schultze
bad4a1f76c [OptionsResolver] CS fix in LazyOption 2012-05-24 07:20:57 +02:00
Tobias Schultze
a54ea1b6b2 [OptionsResolver] small optimization in Options class 2012-05-24 05:32:58 +02:00
Tobias Schultze
104dcf251d [OptionsResolver] fixed bugs concerning required options 2012-05-24 05:31:42 +02:00
Tobias Schultze
1bfcff4fab [OptionsResolver] added failing test cases to demonstrate two bugs 2012-05-24 05:29:35 +02:00
Tobias Schultze
37a3a29c59 [OptionsResolver] optimized validation 2012-05-24 02:48:57 +02:00
Fabien Potencier
95ca5fe11e fixed typo 2012-05-23 17:39:12 +02:00
Bernhard Schussek
bad6d040d7 [Form] Added accessor FormConfigInterface::getByReference() and let Form clone objects if not by reference 2012-05-23 14:51:26 +02:00
Bernhard Schussek
fc2370104f [Form] Correctly highlighted BC breaks in the CHANGELOG 2012-05-23 14:46:49 +02:00
Bernhard Schussek
d1864c7d63 [Form] Fixed: Virtual forms are ignored when prepopulating a form 2012-05-23 14:46:45 +02:00
Christophe Coevoet
7a85b4340b [TwigBundle] Fixed the path to templates when using composer
When installing the bundle and the bridge from the standalone repositories
the relative path between them is different. This simply backports the
change done in symfony 2.1 to allow using subtree repositories with 2.0.x
too.
2012-05-22 22:57:32 +02:00
Fabien Potencier
836443d6f6 merged branch stof/composer_missing_dep (PR #4379)
Commits
-------

40fd99e [FrameworkBundle] Added another missing dependency to Config

Discussion
----------

Yet another composer missing dep

Config is only suggested by DI, not required. So it not installed currently.
2012-05-22 22:44:11 +02:00
Christophe Coevoet
40fd99e949 [FrameworkBundle] Added another missing dependency to Config 2012-05-22 23:40:54 +03:00
Fabien Potencier
e51da8e13a merged branch hhamon/template_loader_phpdoc (PR #4377)
Commits
-------

03183b5 [Templating] added missing @return PHPDoc for LoaderInterface::isFresh method.

Discussion
----------

Template loader phpdoc

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: ~

---------------------------------------------------------------------------

by travisbot at 2012-05-22T17:39:15Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1402200) (merged 03183b5b into 55faa546).
2012-05-22 22:39:54 +02:00
Christophe Coevoet
47a6a29855 [FrameworkBundle] Added a missing dependency to DI
The bundle class extends ContainerAware so the DI component is a required
dependency of the bundle.
2012-05-22 22:22:14 +02:00
Hugo Hamon
03183b5b69 [Templating] added missing @return PHPDoc for LoaderInterface::isFresh method. 2012-05-22 19:20:01 +02:00
Fabien Potencier
e0238071d4 merged branch bschussek/dataclassfix (PR #4374)
Commits
-------

82c221a [Form] Fixed strict "data_class" check to work with instances of \ArrayAccess

Discussion
----------

[Form] Fixed collection type to work with recent Form changes

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

---------------------------------------------------------------------------

by tristanbes at 2012-05-22T16:42:36Z

Ping @fabpot Could you please merge it ASAP, because this bugs breaks all forms containing collection type.

Thanks

---------------------------------------------------------------------------

by travisbot at 2012-05-22T16:54:24Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1401580) (merged 82c221a1 into 1a1403f5).
2012-05-22 19:03:35 +02:00
Bernhard Schussek
82c221a1dd [Form] Fixed strict "data_class" check to work with instances of \ArrayAccess 2012-05-22 18:24:59 +02:00
Fabien Potencier
1a1403f599 merged branch asm89/numeric-keys-config (PR #4276)
Commits
-------

b7fc009 [Config] Numerical keys for prot. arrays if useAttributeAsKey is set

Discussion
----------

[Config] Numerical keys for prot. arrays if useAttributeAsKey is set

Bug fix: not sure
Feature addition: not sure
Backwards compatibility break: not sure
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/asm89/symfony.png?branch=numeric-keys-config)](http://travis-ci.org/asm89/symfony)
License of the code: MIT

When using an array node with children of prototype array and `useAttributeAsKey`, using numerical values for the keys throws an exception. For example (`useAttributeAsKey('id')`):

``` php
<?php
// works
array (
    'thing' => array(
        array('foo', 'bar', 'id' => 'a')
    )
);

// works and is the same as above
array (
    'thing' => array(
        'a' => array('foo', 'bar')
    )
);

// works
array(
    'thing' => array(
        array('foo', 'bar', 'id' => 42), array('baz', 'qux', 'id' => 1337),
    ),
);

// works with this patch and is the same as above
array(
    'thing' => array(
        42 => array('foo', 'bar'), 1337 => array('baz', 'qux'),
    ),
);
```

---------------------------------------------------------------------------

by travisbot at 2012-05-14T14:26:32Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1327383) (merged 42d252da into 46ffbd52).

---------------------------------------------------------------------------

by travisbot at 2012-05-14T14:32:59Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1327430) (merged b7fc0093 into 46ffbd52).

---------------------------------------------------------------------------

by vicb at 2012-05-21T15:16:24Z

Could this be fixed by changing [PrototypedArrayNode](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Config/Definition/PrototypedArrayNode.php#L255)
`$k = $v[$this->keyAttribute];` -> `$k = (string) $v[$this->keyAttribute];`

---------------------------------------------------------------------------

by asm89 at 2012-05-22T07:01:53Z

I tried it and the test I added still fails. The code change you propose doesn't execute because `if (!isset($v[$this->keyAttribute]) && is_int($k))` will still evaluate to true.
2012-05-22 18:02:05 +02:00
Fabien Potencier
ad6779bc2f merged branch grEvenX/authorization_example_fix (PR #4370)
Commits
-------

0935964 Modified example for mod_rewrite to not add Authorization header if it is not set in the request

Discussion
----------

Correct example mod_rewrite to not add Authorization header that does not exists

The in-line PHP code comment suggest to do some changes in .htaccess with mod_rewrite to pass HTTP-Authorization header to PHP. This leads to the Authorization header being introduced even when it's not originally in the request (albit empty, the result of ParameterBag->has('Authorization') will return true when you expect it not to.
Some external libraries might check for this header and perform logic based on wether it was set or not (The php-oauth2 library in my case).

I suggest this fix which I think is a more proper way of handling the case anyway, since when the header is not set you don't expect it to exist in the ServerBag either.

(I tried to search the documentation for this but did not find it, but I guess this probably should go into the documentation somewhere?)

---------------------------------------------------------------------------

by travisbot at 2012-05-22T12:51:25Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1399753) (merged 0935964b into 517ae43f).
2012-05-22 15:10:48 +02:00
Fabien Potencier
3b58564ed0 merged branch kevindew/form_view_errors (PR #4224)
Commits
-------

e92212a [Form] Added valid attribute to a FormView

Discussion
----------

[Form] Added "valid" to view parameters

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 PR adds a parameter of contains_errors to a FormView when buildView is called.

The use case for this addition is when you want to show that a form or sub forms has errors (e.g. when rendering a long form a header message of "This form contains errors" or adding a class to a whole sub form to show an erroneous state) is currently very difficult/near impossible and may need the original form object being accessible in the view layer.

Whats a bit grey here is the best phrasing to use for this. Options I weighed up were is_valid (seemed a bit semantically incorrect in a template, since it would return true pre bind) and has_errors_deep (which i wasn't sure if it fitted naming conventions).

---------------------------------------------------------------------------

by travisbot at 2012-05-07T20:25:55Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1269345) (merged fe1f5aee into 919604ab).

---------------------------------------------------------------------------

by henrikbjorn at 2012-05-19T18:36:33Z

couldnt you just use `{% if errors %}` in your views?

---------------------------------------------------------------------------

by stof at 2012-05-19T19:17:20Z

@henrikbjorn ``errors`` contains only the errors attached to the form itself. It will not tell you when there is some errors in a child form.

---------------------------------------------------------------------------

by kevindew at 2012-05-22T10:43:45Z

Sure, done

---------------------------------------------------------------------------

by travisbot at 2012-05-22T10:45:12Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1399006) (merged 9f6658d4 into 517ae43f).

---------------------------------------------------------------------------

by kevindew at 2012-05-22T10:57:54Z

Shoot, sorry about that.

---------------------------------------------------------------------------

by travisbot at 2012-05-22T11:00:00Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1399096) (merged 88920591 into 517ae43f).

---------------------------------------------------------------------------

by bschussek at 2012-05-22T11:17:38Z

Can you squash the commits and prefix the message with "[Form]" please?

---------------------------------------------------------------------------

by travisbot at 2012-05-22T11:49:52Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1399390) (merged ca771822 into 517ae43f).

---------------------------------------------------------------------------

by kevindew at 2012-05-22T11:53:18Z

Sure, done (I've sorted the travis fail btw)

---------------------------------------------------------------------------

by travisbot at 2012-05-22T11:55:10Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1399404) (merged e92212ac into 517ae43f).

---------------------------------------------------------------------------

by bschussek at 2012-05-22T12:25:45Z

@fabpot ðŸ‘
2012-05-22 15:08:07 +02:00
Even AndreÌ Fiskvik
0935964b29 Modified example for mod_rewrite to not add Authorization header if it is not set in the request 2012-05-22 14:38:37 +02:00
Kevin Dew
e92212ac13 [Form] Added valid attribute to a FormView 2012-05-22 12:51:19 +01:00
Fabien Potencier
517ae43fe9 [Console] added an exception when an option name or shortcut is invalid (refs #4346) 2012-05-22 12:35:53 +02:00
Fabien Potencier
c1e868f994 merged branch Nanocom/master (PR #4346)
Commits
-------

2c19b3c Empty shortcut check in the constructor
cf9039e Added a unit test for the shortcut name of the InputOption class

Discussion
----------

[Console] Single dash for option shortcuts

See https://github.com/symfony/symfony/pull/4062

---------------------------------------------------------------------------

by travisbot at 2012-05-20T13:09:18Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1380389) (merged 02290da4 into f433f6b0).

---------------------------------------------------------------------------

by stof at 2012-05-20T13:16:34Z

please rebase your branch to get rid of these merge commits
btw, you should use feature branches to send your next pull requests instead of using your master branch each time, which limits you to a single PR.

---------------------------------------------------------------------------

by Nanocom at 2012-05-20T13:39:32Z

Sorry for the mess, cleaning it

---------------------------------------------------------------------------

by travisbot at 2012-05-20T13:41:46Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1380549) (merged 63129657 into f433f6b0).

---------------------------------------------------------------------------

by travisbot at 2012-05-20T13:43:07Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1380553) (merged 2c19b3c7 into f433f6b0).
2012-05-22 12:30:31 +02:00
Fabien Potencier
a6b3902128 added the possibility to translate the placeholder and title attributes in the PHP form templates (refs #4194) 2012-05-22 12:23:06 +02:00
Fabien Potencier
5ca64b42fa merged branch andrefgneves/translate-widget-attributes (PR #4194)
Commits
-------

23bad29 Added translation to placeholder and title attributes

Discussion
----------

Added translation to placeholder and title attributes

---------------------------------------------------------------------------

by schmittjoh at 2012-05-03T13:52:38Z

Better translate it where it is defined.

Dynamic translations are usually not desirable as they cannot be automatically extracted, and thus require more work.

---------------------------------------------------------------------------

by ruimarinho at 2012-05-03T13:57:30Z

@schmittjoh but isn't that the same case as with labels for instance? I don't think injecting the translator service into the form type would require less work than what this PR suggests.

---------------------------------------------------------------------------

by schmittjoh at 2012-05-03T14:02:02Z

Yeah, same thing.

There might be some cases where it's fine, but in general, we should try to not translate dynamic vars.

---------------------------------------------------------------------------

by ruimarinho at 2012-05-03T14:17:44Z

@schmittjoh I think that's one of those cases, since these attributes in particular (title and placeholder) are intended to aid the user with a brief description. I understand (and agree) with your concern regarding dynamic vars, but in my opinion this is a use case where it is worth it. Just my two cents :)

---------------------------------------------------------------------------

by stof at 2012-05-03T18:07:01Z

@schmittjoh the issue is that translating the label before the template would require injecting the translator in the form types (as the form label can be set there) and would force the user to duplicate the translation process if they pass the label explicitly in the template.
2012-05-22 12:16:26 +02:00
Fabien Potencier
fc34ed1f86 merged branch craue/patch-20 (PR #4230)
Commits
-------

64101ab separate numeric value from suffix in File constraint's error message `$uploadIniSizeErrorMessage`
ff122d3 fixed tests
868d649 separate numeric values from suffixes in File constraint's error message `$maxSizeMessage`

Discussion
----------

[Validator] separate numeric values from suffixes in File validation error messages

This change allows me to locale-aware format the numbers in a form theme, i.e., to use a comma instead of a dot. If there's a better way without re-implementing the entire validator, let me know.

Such changes also allow for using a different separator than the usual space in translations.

---------------------------------------------------------------------------

by travisbot at 2012-05-08T19:14:16Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1278845) (merged f7c50098 into e54f4e46).

---------------------------------------------------------------------------

by travisbot at 2012-05-08T19:23:31Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1278940) (merged ce1cdafc into e54f4e46).

---------------------------------------------------------------------------

by r1pp3rj4ck at 2012-05-10T11:05:18Z

I don't know if there is a better way to do this, but I like the idea anyway.

---------------------------------------------------------------------------

by craue at 2012-05-11T14:18:52Z

Separated numeric values and suffixes for `$maxSizeMessage` and `$uploadIniSizeErrorMessage` now. Can't find any other relevant places (in other validators). Might be merged if accepted.

---------------------------------------------------------------------------

by travisbot at 2012-05-11T14:19:10Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1305246) (merged 438da7dd into e54f4e46).

---------------------------------------------------------------------------

by travisbot at 2012-05-11T21:22:25Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1309277) (merged 64101aba into dd0da03c).

---------------------------------------------------------------------------

by sstok at 2012-05-13T13:29:07Z

Using the NumberFormatter class would be an option, but that would also add a dependency when using Validation as stand-alone so using the {{ suffix }} is a good idea.

---------------------------------------------------------------------------

by craue at 2012-05-13T14:15:54Z

Using a NumberFormatter (if available) directly in the validator might indeed be a good option. In either case, having the numeric value separated from its suffix looks cleaner.

---------------------------------------------------------------------------

by craue at 2012-05-19T13:36:00Z

@fabpot: Would you merge this?
2012-05-22 12:14:01 +02:00
Fabien Potencier
f7cf76d1e8 merged branch pkraeutli/browserkit_use_cleanup (PR #4324)
Commits
-------

fe7b258 Removed unnecessary use statements

Discussion
----------

[BrowserKit] Removed unnecessary use statements

Merely a cosmetical fix. My IDE (PhpStorm) marks the `use Symfony\Component\BrowserKit\Client;` statement in  `Symfony/Component/BrowserKit/Client.php` itself as an error.
I also removed the two other `use`s of classes from the same namespace.

---------------------------------------------------------------------------

by travisbot at 2012-05-18T11:27:02Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1365455) (merged fe7b2583 into 1e15f210).
2012-05-22 12:09:36 +02:00
Fabien Potencier
976d32ecbf merged branch yethee/ru_plural_trans (PR #4291)
Commits
-------

2f05b40 [FrameworkBundle] Added Russian translations for CollectionSize constraint
d10f33f [FrameworkBundle] Added Russian plural messages

Discussion
----------

[FrameworkBundle] Added Russian plural messages

---------------------------------------------------------------------------

by travisbot at 2012-05-15T09:10:46Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1334630) (merged d10f33f2 into bd07b891).

---------------------------------------------------------------------------

by travisbot at 2012-05-16T13:06:49Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1345310) (merged 2f05b40f into 5314836d).
2012-05-22 12:05:48 +02:00
Fabien Potencier
5ac20ed80b [HttpKernel] renamed a method 2012-05-22 12:04:55 +02:00
Fabien Potencier
148372be9e merged branch simon-n/master (PR #4321)
Commits
-------

46be121 added tokenDataExists() method to prevent loading complete profile structures upon writes

Discussion
----------

[HttpKernel] prevent loading complete profile structures upon writes

The abstract class "PdoProfilerStorage" uses its ::read() method to decide if a profiler record has to be updated or initially created upon a ::write() call. This possibly causes huge memory consumption, as ::read() recursively reads all existing profiles using ::createProfileFromData() calls. When handling many sub-request this may lead into either a "out of memory" or XDebug's "maximum nesting level reached" - whichever comes first.
To prevent this issue, I added a new protected method ::tokenDataExists() that simply checks whether a record for the token in question already exists in storage.

---------------------------------------------------------------------------

by travisbot at 2012-05-18T08:56:56Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1364303) (merged 46be1212 into 1e15f210).
2012-05-22 12:03:11 +02:00
Fabien Potencier
953547c089 merged branch Tobion/router-parameter (PR #4369)
Commits
-------

bc7043f [Routing] removed unused constructor arguments in test classes
d81fdfe [Routing] fixed namespace of test classes
53aaf76 [Routing] removed unused property of Router

Discussion
----------

[Routing] removed unused property of Router

Test pass: yes
BC break: no

This PR removes an unused property ($defaults) of Router. The property was passed to the constructor of UrlMatcher and UrlGenerator although these classes don't accept this parameter at all. And the dumped equivalents of them (produced by PhpMatcherDumper/PhpGeneratorDumper) don't need this property either.
So passing the $defaults was wrong and the property is not used in any way.
The DI config does not define anything for this property either: [routing.xml](https://github.com/symfony/symfony/blob/master/src/Symfony/Bundle/FrameworkBundle/Resources/config/routing.xml#L52)

The second commit fixes the namespaces of test classes that were wrong.

The third commit removes false arguments in the test classes.

---------------------------------------------------------------------------

by travisbot at 2012-05-22T07:34:03Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1397749) (merged bc7043f1 into e4e3ce6c).
2012-05-22 12:01:44 +02:00
Fabien Potencier
55faa5468b merged branch TonyMalz/VALIDATORT_TYPEGUESS_FIX (PR #4251)
Commits
-------

f883953 TypeGuess fixed for Date/Time constraints
41bed29 [Form] fixed invalid 'type' option in ValidatorTypeGuesser for Date/TimeFields

Discussion
----------

[Form] fixed invalid 'type' option in ValidatorTypeGuesser for Date/TimeFields

Automatic field type guessing breaks, if you use any of the Date/Time
constraints (i.e. Symfony\Component\Validator\Constraints\DateTime), since these field types have no 'type' option defined.
(See getDefaultOptions() in DateTimeType.php)

---------------------------------------------------------------------------

by travisbot at 2012-05-10T15:25:16Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1296309) (merged 005bdbb0 into 68eca0f9).

---------------------------------------------------------------------------

by travisbot at 2012-05-18T15:50:39Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1367774) (merged f8839532 into a04acc89).

---------------------------------------------------------------------------

by TonyMalz at 2012-05-18T15:58:57Z

@bschussek Ok, changed it to 'input'

---------------------------------------------------------------------------

by bschussek at 2012-05-22T08:18:27Z

ðŸ‘
2012-05-22 12:00:14 +02:00
Fabien Potencier
3ab88f23b9 merged branch aripringle/master (PR #4333)
Commits
-------

4fa8e68 Add support for javascript object notation in allowed JSONP callback

Discussion
----------

Add support for javascript object notation in allowed JSONP callback

---------------------------------------------------------------------------

by travisbot at 2012-05-18T23:09:45Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1371497) (merged 4fa8e68c into 18132c18).
2012-05-22 11:56:42 +02:00
Bernhard Schussek
af41a1a550 [Form] Fixed typos 2012-05-22 09:30:22 +02:00
Bernhard Schussek
ac6939441f [Form] Allowed native framework errors to be mapped as well 2012-05-22 09:30:21 +02:00
Bernhard Schussek
59d6b55137 [Form] Fixed: error mapping aborts if reaching an unsynchronized form 2012-05-22 09:30:21 +02:00
Bernhard Schussek
9eda5f5872 [Form] Fixed: RepeatedType now maps all errors to the first field 2012-05-22 09:30:21 +02:00
Bernhard Schussek
215b687b7b [Form] Added capability to process "." rules in "error_mapping" 2012-05-22 09:30:21 +02:00
Bernhard Schussek
c9c4900663 [Form] Fixed: errors are not mapped to unsynchronized forms anymore 2012-05-22 09:30:21 +02:00
Bernhard Schussek
c8b61d576b [Form] Renamed FormMapping to MappingRule and moved some logic there to make rules more extendable 2012-05-22 09:30:21 +02:00
Bernhard Schussek
d0d1fe6182 [Form] Added more information to UPGRADE and CHANGELOG 2012-05-22 09:30:21 +02:00
Bernhard Schussek
0c09a0e07e [Form] Made $name parameters optional in PropertyPathBuilder:replaceBy(Index|Property) 2012-05-22 09:30:21 +02:00
Bernhard Schussek
081c6437e4 [Form] Updated UPGRADE and CHANGELOG 2012-05-22 09:30:21 +02:00
Bernhard Schussek
bbffd1b00b [Form] Fixed index checks in PropertyPath classes 2012-05-22 09:30:21 +02:00
Bernhard Schussek
ea5ff77121 [Form] Fixed issues mentioned in the PR comments 2012-05-22 09:30:21 +02:00
Bernhard Schussek
7a4ba521c4 [EventDispatcher] Added class UnmodifiableEventDispatcher 2012-05-22 09:29:53 +02:00
Bernhard Schussek
306324ea0a [Form] Greatly improved the error mapping done in DelegatingValidationListener 2012-05-22 09:29:53 +02:00
Bernhard Schussek
8f7e2f602c [Validator] Fixed: @Valid does not recurse the traversal of collections anymore by default 2012-05-22 09:29:53 +02:00
Bernhard Schussek
5e87dd885c [Form] Added tests for the case when "property_path" is null or false. Instead of setting "property_path" to false, you should set "mapped" to false instead. 2012-05-22 09:29:53 +02:00
Bernhard Schussek
2301b1559e [Form] Tightened PropertyPath validation to reject any empty value (such as false) 2012-05-22 09:29:53 +02:00
Bernhard Schussek
7ff2a9b210 Revert "[Form] removed a constraint in PropertyPath as the path can definitely be an empty string for errors attached on the main form (when using a constraint defined with the 'validation_constraint' option)"
This reverts commit 5182a0c2c4.

PropertyPath instances should be empty. If you have an empty property path string, there is no need to create a PropertyPath instance for it.

Conflicts:

	tests/Symfony/Tests/Component/Form/PropertyPathTest.php
2012-05-22 09:29:53 +02:00
Bernhard Schussek
860dd1f7d8 [Form] Adapted Form to create a deterministic property path by default 2012-05-22 09:29:53 +02:00
Bernhard Schussek
03f50588c2 [Form] Fixed property name in PropertyPathMapperTest 2012-05-22 09:28:16 +02:00
Bernhard Schussek
c2a243f926 [Form] Made PropertyPath deterministic: "[prop]" always refers to indices (array or ArrayAccess), "prop" always refers to properties 2012-05-22 09:28:16 +02:00
Bernhard Schussek
29963400e8 [Form] Extracted FormConfig class to simplify the Form's constructor 2012-05-22 09:28:15 +02:00
Tobias Schultze
bc7043f106 [Routing] removed unused constructor arguments in test classes 2012-05-22 09:27:55 +02:00
Tobias Schultze
d81fdfe823 [Routing] fixed namespace of test classes 2012-05-22 09:27:49 +02:00
Tobias Schultze
53aaf76ad0 [Routing] removed unused property of Router 2012-05-22 09:27:43 +02:00
Fabien Potencier
e4e3ce6cc2 merged branch Tobion/form-phpdoc (PR #4353)
Commits
-------

5d1b366 [Form] fix PhpDoc

Discussion
----------

[Form] fix PhpDoc

---------------------------------------------------------------------------

by travisbot at 2012-05-21T02:31:56Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1385372) (merged 5d1b3669 into 1407f112).

---------------------------------------------------------------------------

by vicb at 2012-05-21T05:44:03Z

have you used inheritdoc (over inheritDoc) on purpose ? (I must admin I haven't followed the CS discussion very closely)

---------------------------------------------------------------------------

by Tobion at 2012-05-21T16:16:48Z

Yes, inheritdoc is used on symfony. It's also the recommended way of phpdoc itself (all lower-case).
2012-05-22 06:54:15 +02:00
Fabien Potencier
335d4eab86 fixed CS 2012-05-21 22:27:15 +02:00
Fabien Potencier
c01fed0c89 fixed CS 2012-05-21 22:25:19 +02:00
Fabien Potencier
b206519671 merged branch vicb/uploadedfile2.0 (PR #4358)
Commits
-------

8223632 [HttpFoundation] Fix the UploadedFilename name sanitization (fix #2577)

Discussion
----------

[HttpFoundation] Fix the UploadedFilename name sanitization (fix #2577)

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/vicb/symfony.png?branch=uploadedfile2.0)](http://travis-ci.org/vicb/symfony)
Fixes the following tickets: #2577

---------------------------------------------------------------------------

by travisbot at 2012-05-21T14:00:22Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1389203) (merged 82236324 into 87bb3661).
2012-05-21 16:09:03 +02:00
Fabien Potencier
ea33d4d377 fixed CS 2012-05-21 16:06:09 +02:00
Fabien Potencier
aa3e1a3b8c merged 2.0 2012-05-21 16:05:28 +02:00
Fabien Potencier
bdf9b7eb3e fixed CS 2012-05-21 16:05:09 +02:00
Victor Berchet
82236324b5 [HttpFoundation] Fix the UploadedFilename name sanitization (fix #2577) 2012-05-21 15:52:36 +02:00
Fabien Potencier
bde26b10e7 merged branch davidwindell/issue_4338 (PR #4357)
Commits
-------

0a3dd0f [Console] Check for existence of proc_open to fix #4338

Discussion
----------

[Console] Check for existence of proc_open to fix #4338

It is quite common to disable proc_open for security purposes.

This PR checks for the existence of the proc_open function and fixes Issue #4338

Replacement for PR4356

---------------------------------------------------------------------------

by travisbot at 2012-05-21T10:49:59Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1387784) (merged dd991bea into 1407f112).

---------------------------------------------------------------------------

by travisbot at 2012-05-21T11:35:21Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1387991) (merged 0a3dd0fe into 1407f112).

---------------------------------------------------------------------------

by fabpot at 2012-05-21T12:17:32Z

I forgot to ask you to sent a new PR for the 2.0 branch instead of master. Thanks.

---------------------------------------------------------------------------

by davidwindell at 2012-05-21T13:03:36Z

proc_open is not used in 2.0?
2012-05-21 15:13:34 +02:00
David Windell
0a3dd0fe1e [Console] Check for existence of proc_open to fix #4338
cs fix
2012-05-21 12:31:25 +01:00
Fabien Potencier
87bb3661fc merged branch kepten/ticket_1813 (PR #3551)
Commits
-------

a450d00 [HttpFoundation] HTTP Basic authentication is broken with PHP as cgi/fastCGI under Apache

Discussion
----------

[HttpFoundation] HTTP Basic authentication is broken with php-cgi under Apache

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: #1813
Todo: -

In order to work, add this to the .htaccess:

RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]

---------------------------------------------------------------------------

by stof at 2012-03-10T17:34:26Z

you should also add a unit test for this

---------------------------------------------------------------------------

by kepten at 2012-03-11T15:34:04Z

Thanks for the feedback, I committed the changes.

---------------------------------------------------------------------------

by stof at 2012-04-04T01:59:53Z

@fabpot could you review it ?

---------------------------------------------------------------------------

by fabpot at 2012-04-04T07:15:34Z

My comments:

 * `ServerBag` represents what we have in the `$_SERVER` global variables. As such, the code should be moved to the `getHeaders()` method instead like the other tweaks we do for the HTTP headers.

 * A comment must be added explaining why this is needed and the configuration the user must have to make it work (then remove the Github URLs).

 * The code should only be executed when `PHP_AUTH_USER` is not available (to not have any overhead when not needed).

---------------------------------------------------------------------------

by danielholmes at 2012-04-14T13:27:09Z

A quick note on that .htaccess/apache configuration required, if adding to the Symfony SE htaccess file, then it will need to look like this:

```
<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
```

NOTE: No **,L** in the Authorization Rewrite as in the original example - it prevents the front controller rewrite from happening

---------------------------------------------------------------------------

by towards at 2012-04-20T16:12:49Z

@kepten you were faster than me applying @fabpot's comments :) nevertheless part of the bug hunt day I also modified the ServerBag class and tested them on a productive LAMP hosting server using Apache and FastCGI

---------------------------------------------------------------------------

by kepten at 2012-04-20T16:15:57Z

ok, so is my PR is useless or should I still fix problems?

---------------------------------------------------------------------------

by towards at 2012-04-20T16:20:26Z

your PR is fine for sure and I don't want to interfere, just wanted to mention that part of the bug hunt day of Symfony I had a go at this PR as an "exercise" but just saw later on that you already fixed the problem, so you can ignore my pushes

---------------------------------------------------------------------------

by vicb at 2012-04-20T16:20:36Z

I have been working with @towards: your PR is useful, please implement his comments and squash your PR.

---------------------------------------------------------------------------

by kepten at 2012-04-20T16:59:07Z

never squashed before, is it okay now? :)

---------------------------------------------------------------------------

by stof at 2012-04-20T17:21:07Z

it is

---------------------------------------------------------------------------

by vicb at 2012-05-20T19:57:51Z

@fabpot this should be ready to be merged
2012-05-21 11:09:36 +02:00
WÅ‚odzimierz Gajda
3eb67fca7a [2.1][Component][Finder] $this->current() fix 2012-05-21 09:17:17 +02:00
Tobias Schultze
5d1b3669c5 [Form] fix PhpDoc 2012-05-21 04:26:59 +02:00
Christophe Coevoet
cdfb0b19d2 Changed composer constraint to allow Doctrine 2.3 too 2012-05-20 22:28:43 +02:00
Fabien Potencier
1407f112fc fixed CS 2012-05-20 18:17:03 +02:00
Fabien Potencier
9b7aab5e94 merged 2.0 2012-05-20 18:16:37 +02:00
Fabien Potencier
26b489f499 fixed CS 2012-05-20 18:15:10 +02:00
Arnaud Kleinpeter
2c19b3c7e5 Empty shortcut check in the constructor 2012-05-20 15:39:51 +02:00
Arnaud Kleinpeter
cf9039e88b Added a unit test for the shortcut name of the InputOption class 2012-05-20 15:39:51 +02:00
Fabien Potencier
f433f6b059 fixed route regex when the pattern is only made of optional segments 2012-05-20 05:43:44 +02:00
Christian Raue
0f7835dc36 added missing dot in ValidationListener as follow-up to #3922 2012-05-19 15:30:12 +02:00
Fabien Potencier
ea2dd12a4f fixed CS 2012-05-19 15:22:24 +02:00
Fabien Potencier
63c76c421e merged branch clemens-tolboom/pofileloader-better-whitelines (PR #4339)
Commits
-------

fb6cf3e Allow for missing whitelines.

Discussion
----------

Allow for missing whitelines.

The Gettext specification allows for 'whitespace is optional' between message string.

For this to work PoFileLoader needs to save found messages on more places while processing. Thus a new method is introduced.

For the tests to work PoFileDumper was changed slightly to only emit white-lines when necessary.

I added more documentation from the GNU gettext documentation to make the code more understandable.

When [[BUG] PoFileLoader pluralhandling uses interval instead of index.](https://github.com/symfony/symfony/pull/4336) this patch needs some small rework.

(this is part of [[WIP]: Allow Drupal to use Translate component)](https://github.com/symfony/symfony/pull/4249)

---------------------------------------------------------------------------

by travisbot at 2012-05-19T12:44:19Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1374295) (merged fb6cf3ef into 58b92453).

---------------------------------------------------------------------------

by stof at 2012-05-19T13:19:29Z

you need to rebase your branch. github tells us it cannot be merged automatically
2012-05-19 15:21:01 +02:00
Fabien Potencier
af41cc7096 merged branch clemens-tolboom/pofileloader-emptytranslations (PR #4337)
Commits
-------

dd60166 Fixed for allowing empty translation.

Discussion
----------

Fixed for allowing empty translation.

PoFileLoader should accept empty translations.

PoFileLoader calls array_filter just before returning the $messages thus filtering empty translations.

For Drupal we need to be able to load and then translate incomplete PO and POT files.

(this is part of [[WIP]: Allow Drupal to use Translate component](https://github.com/symfony/symfony/pull/4249))

---------------------------------------------------------------------------

by travisbot at 2012-05-19T11:14:39Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1373933) (merged 5ee0b1e6 into 58b92453).

---------------------------------------------------------------------------

by travisbot at 2012-05-19T12:09:48Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1374129) (merged dd601662 into 58b92453).
2012-05-19 15:16:40 +02:00
Clemens Tolboom
fb6cf3efc2 Allow for missing whitelines. 2012-05-19 14:25:20 +02:00
Clemens Tolboom
dd601662ea Fixed for allowing empty translation. 2012-05-19 14:06:30 +02:00
Clemens Tolboom
4c4d8890a0 Fixed PoFileLoader pluralhandling from interval to index. 2012-05-19 12:02:19 +02:00
Fabien Potencier
58b924533a removed unused use statements 2012-05-19 09:24:13 +02:00
Fabien Potencier
d48d88a05a merged 2.0 2012-05-19 09:24:03 +02:00
Fabien Potencier
cf11cc067f removed unused use statements 2012-05-19 09:22:59 +02:00
Jakub Zalas
b63107338e [Yaml] Fixed double quotes escaping in Dumper. 2012-05-19 00:23:47 +01:00
aripringle
4fa8e68cdc Add support for javascript object notation in allowed JSONP callback 2012-05-18 17:03:28 -06:00
Christophe Coevoet
beb8d18411 [WebProfilerBundle] Fixed the displaying of the toolbar in the profiler 2012-05-19 00:31:49 +02:00
Fabien Potencier
fc3c609bfd removed empty files 2012-05-18 21:54:07 +02:00
Fabien Potencier
18132c18b4 removed empty files 2012-05-18 20:30:14 +02:00
Fabien Potencier
3bdf52a16a fixed CS 2012-05-18 19:42:42 +02:00
Fabien Potencier
5014011327 fixed CS 2012-05-18 19:40:45 +02:00
Fabien Potencier
e173d79e34 fixed CS 2012-05-18 19:37:58 +02:00
Fabien Potencier
ec36ae7eda merged 2.0 2012-05-18 19:04:58 +02:00
Fabien Potencier
c9ba077a20 added missing LICENSE files 2012-05-18 19:00:00 +02:00
Tony Malzhacker
f8839532f8 TypeGuess fixed for Date/Time constraints 2012-05-18 17:46:49 +02:00
Tony Malzhacker
41bed29c80 [Form] fixed invalid 'type' option in ValidatorTypeGuesser for Date/TimeFields
Field type guessing breaks, if you use any of the Date/Time
constraints, since these field types have no 'type' default option
defined.
2012-05-18 17:46:49 +02:00
Philipp Kräutli
fe7b258356 Removed unnecessary use statements 2012-05-18 13:08:19 +02:00
Simon Neidhold
46be1212f2 added tokenDataExists() method to prevent loading complete profile structures upon writes 2012-05-18 10:19:27 +02:00
Fabien Potencier
a04acc8943 bumped Symfony version to 2.0.15-DEV 2012-05-18 09:50:24 +02:00
Fabien Potencier
1e15f21096 merged branch vierbergenlars/patch-1 (PR #4311)
Commits
-------

fa705db Fix trailing comma in composer (closes #4310)

Discussion
----------

Fix trailing comma in composer (bug #4310)

This pull request fixes bug #4310

---------------------------------------------------------------------------

by travisbot at 2012-05-17T19:10:37Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1359128) (merged fa705db6 into e351c9f0).
2012-05-18 09:43:09 +02:00
Fabien Potencier
813f6b3bb5 merged branch jocl/master (PR #4211)
Commits
-------

d3fee9b [Finder] ignoreDotFiles(true) filter does not match (issue #4106)

Discussion
----------

Fix for issue #4106 [Finder] ignoreDotFiles(true) filter does not match

I added new dot test files:
 * .bar
 * .foo/
 * .foo/.bar

Changed the tests and made a fix to finder that seems to okay for me.

I hope my first PR is well arranged ;-)
If not I will be pleased to get feedback...

---------------------------------------------------------------------------

by vicb at 2012-05-11T10:20:51Z

Could you squash you commits ?

There is also an issue when `ignoreDotFiles(false)` is called twice, could you add a failing TC and fix the code ?
`$this->ignore = $this->ignore ^ static::IGNORE_DOT_FILES;` should be `$this->ignore = $this->ignore & ~static::IGNORE_DOT_FILES;`

---------------------------------------------------------------------------

by travisbot at 2012-05-11T12:43:53Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1304510) (merged 72c320bc into ff7c4757).

---------------------------------------------------------------------------

by vicb at 2012-05-11T13:09:32Z

You need to:

- tackle the related issue I have mentioned,
- squash the commit,
- rebase,
- force push to your branch.

http://symfony.com/doc/current/contributing/code/patches.html has some more info.

As a fix, did you consider sending it to the 2.0 branch - your mention it as a BC in the commit comment but it really is a bug fix.

---------------------------------------------------------------------------

by jocl at 2012-05-11T13:33:30Z

Thank you. I will try it.

Hasn't ```ignoreVCS(false)``` the same twice calling problem with
```$this->ignore = $this->ignore ^ static::IGNORE_VCS_FILES;```?

---------------------------------------------------------------------------

by vicb at 2012-05-11T13:36:22Z

yep, good catch !

---------------------------------------------------------------------------

by jocl at 2012-05-12T10:32:06Z

I mentioned it as BC, since I found no place in documentation with the information that dotFiles are ignored by default. I was also wondering that it is default behavior.

But if I only read the code, it is a 100% bug.

As soon as the PR is merged, I think we should also add a little notice in documentation like it is for ignoreVCS():
http://symfony.com/doc/master/components/finder.html#files-or-directories

---------------------------------------------------------------------------

by fabpot at 2012-05-15T05:47:49Z

I think you should keep these changes on master. Last thing before I can merge: can you squash your commits as explained by @vicb?

---------------------------------------------------------------------------

by travisbot at 2012-05-15T08:20:04Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1334337) (merged 525919fa into ff7c4757).

---------------------------------------------------------------------------

by jocl at 2012-05-15T08:23:24Z

I am sorry, of wasting your time... totally confused about using git. I feel a little bit squashed :-) of a the possible actions.
I hope it is squashed now. And next time I will use the issue/ticket branch I made.

---------------------------------------------------------------------------

by fabpot at 2012-05-15T08:35:59Z

That's still not good. Squashing is explained here: http://symfony.com/doc/current/contributing/code/patches.html#rework-your-patch

---------------------------------------------------------------------------

by travisbot at 2012-05-15T20:44:14Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1339390) (merged d3fee9b2 into 03d4b026).
2012-05-18 09:39:34 +02:00
Fabien Potencier
7b4ff552f6 merged branch stof/doctrine_autoloading (PR #4317)
Commits
-------

fff7221 Fixed the proxy autoloading for Doctrine 2.2

Discussion
----------

Doctrine autoloading

This fixes the autoloading of proxies for Doctrine 2.2

---------------------------------------------------------------------------

by travisbot at 2012-05-17T22:36:11Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1361173) (merged fff72217 into b3799680).
2012-05-18 08:53:40 +02:00
Christophe Coevoet
d1f0c25413 Fixed the composer constraint for Doctrine Common 2012-05-18 00:28:41 +02:00
Christophe Coevoet
fff7221700 Fixed the proxy autoloading for Doctrine 2.2 2012-05-18 00:22:06 +02:00
Lars Vierbergen
fa705db610 Fix trailing comma in composer (closes #4310) 2012-05-17 22:05:45 +03:00
Fabien Potencier
e351c9f0a8 merged branch clemens-tolboom/filedumper-backup (PR #4302)
Commits
-------

189874d FileDumper does no backup.

Discussion
----------

FileDumper does no backup.

Backup check path missed a '/'. So no backup was made.

Removed the repeating path construction by replacing it by new variable.

---------------------------------------------------------------------------

by travisbot at 2012-05-16T14:14:58Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1345963) (merged 189874d0 into 5314836d).
2012-05-17 20:41:02 +02:00
Fabien Potencier
b3799680d5 updated VERSION for 2.0.14 2012-05-17 18:30:49 +02:00
Christophe Coevoet
11e0d2322c [HttpKernel] Fixed the BundleInterface
The kernel expects bundles to implement ContainerAwareInterface (a fatal
error occurs if the method is not implemented). This is done in the base
class but not enforced in the interface.
2012-05-17 12:34:40 +02:00
Alexander Deruwe
6341de025e Be more specific in phpdoc (Fixes #3216) 2012-05-16 20:34:56 +02:00
Clemens Tolboom
189874d056 FileDumper does no backup. 2012-05-16 16:06:33 +02:00
Deni
2f05b40f28 [FrameworkBundle] Added Russian translations for CollectionSize constraint 2012-05-16 16:40:09 +04:00
Fabien Potencier
5314836d3c merged branch Herzult/feature/collection_size_validator (PR #4149)
Commits
-------

3a5e84f [Validator] Add CollectionSize constraint

Discussion
----------

[Validator] Add CollectionSize constraint

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

I will also send a PR to the documentation as soon as this one is accepted.

---------------------------------------------------------------------------

by bschussek at 2012-04-29T08:24:28Z

-1

I dislike the rising amount of very specific constraints in the core. Can't we add this to Size?

---------------------------------------------------------------------------

by vicb at 2012-04-29T09:01:39Z

@bschussek #3918 implements what you propose but then the messages are not valid any more:

```php
<?php
    public $minMessage = 'This value should be {{ limit }} or more';
    public $maxMessage = 'This value should be {{ limit }} or less';
    public $invalidMessage = 'This value should be a valid number';
```

I can imagine 2 solutions:

- adding some more message,
- rename the `Size` constraint to `Range` and create a new `Size` constraint for arrays / countables.

What do you think ?

---------------------------------------------------------------------------

by bschussek at 2012-04-29T09:27:53Z

I'd prefer the second solution and merge `Size` with `SizeLength` as well.

---------------------------------------------------------------------------

by vicb at 2012-04-29T09:34:50Z

@bschussek It would make sense. @makasim @Herzult any one of you would like to contribute this (i.e. rename the current Size to Range and create a new Size supporting arrays / countables / strings) ?

---------------------------------------------------------------------------

by Herzult at 2012-04-29T14:31:12Z

Yep, I'm on it.

---------------------------------------------------------------------------

by stof at 2012-04-29T15:22:44Z

@Herzult could you take the other comment into account and merge SizeLength into you Size ?

---------------------------------------------------------------------------

by vicb at 2012-04-29T15:33:05Z

The guessers should also be modified (it might also affect the ODM which is in an other repo, if so it would be good to sync the changes).

---------------------------------------------------------------------------

by Herzult at 2012-04-29T16:38:19Z

@stof the problem merging SizeLength into Size is that they don't have the same required options & messages.

---------------------------------------------------------------------------

by Herzult at 2012-04-29T16:47:40Z

And what about renaming Range to Interval and SizeLength to IntervalLength?

---------------------------------------------------------------------------

by stof at 2012-04-29T16:54:38Z

Well, SizeLength is about matching the length of a string currently. Nothing related to intervals

---------------------------------------------------------------------------

by Herzult at 2012-04-29T17:29:40Z

Here are the current names:

 * **Size** for collection (countable) size
 * **Range** for numbers
 * **SizeLength** for strings

Merging **SizeLength** into **Size** is maybe not appropriate because collections and strings are different things. It'll be hard to find messages that fit both collections and strings. Maybe we had better to find a better name for both. What do you think?

About the ValidatorTypeGuesser, I'll update it as soon as we know ow to name the constraints.

---------------------------------------------------------------------------

by vicb at 2012-04-29T17:43:01Z

Size is a good name for both strings and "collections", could we have two sets of strings and select according to the type ?

---------------------------------------------------------------------------

by Herzult at 2012-04-29T22:39:55Z

I tried to merge them together, what do you think?

---------------------------------------------------------------------------

by vicb at 2012-04-30T06:52:37Z

I think your changes are great, may be @bschussek has more feedback. The ValidatorTypeGuesser and the translation are yet to be updated.

---------------------------------------------------------------------------

by hhamon at 2012-05-01T12:32:28Z

Am I missing something or `SizeLength` for strings is a duplicate for `MinLength` and `MaxLength` constraints?

---------------------------------------------------------------------------

by Herzult at 2012-05-02T13:29:36Z

Yep, that's true. But the only link between this PR and the SizeLength constraint is that I merged it to the one I introduced.

---------------------------------------------------------------------------

by Herzult at 2012-05-07T07:48:01Z

@bschussek what do you think?

---------------------------------------------------------------------------

by vicb at 2012-05-10T19:51:26Z

@Herzult this PR looks good to me, could you update the changelog and update guides, try to factorize the code and squash the commits ? Thanks.

---------------------------------------------------------------------------

by travisbot at 2012-05-11T15:42:35Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1306112) (merged 8d8e6443 into 4ac3bddb).

---------------------------------------------------------------------------

by vicb at 2012-05-11T21:42:21Z

* could #4259 be helpful ?
* please squash the commits.
* please create a PR / issue on [symfony-docs](https://github.com/symfony/symfony-docs)

thanks for the updates.

---------------------------------------------------------------------------

by travisbot at 2012-05-13T18:38:18Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1321123) (merged eeda9044 into 4ac3bddb).

---------------------------------------------------------------------------

by travisbot at 2012-05-13T18:45:12Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1321146) (merged 491ca19a into 8b54eb56).

---------------------------------------------------------------------------

by travisbot at 2012-05-14T11:29:39Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1326110) (merged 44865024 into 8b54eb56).

---------------------------------------------------------------------------

by vicb at 2012-05-14T11:49:37Z

@Herzult what about plural translations ?

---------------------------------------------------------------------------

by travisbot at 2012-05-14T16:52:37Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1328677) (merged 93480f95 into 46ffbd52).

---------------------------------------------------------------------------

by travisbot at 2012-05-14T17:03:13Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1328705) (merged 326c3b81 into 46ffbd52).

---------------------------------------------------------------------------

by vicb at 2012-05-14T20:19:18Z

thanks for the updates, this PR looks fine to me. @bschussek ?

---------------------------------------------------------------------------

by vicb at 2012-05-16T06:45:51Z

@Herzult can you squash your commits ?

---------------------------------------------------------------------------

by travisbot at 2012-05-16T11:20:44Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1344811) (merged 3a5e84f4 into 58b6ef23).
2012-05-16 14:22:22 +02:00
Antoine Hérault
3a5e84f4a7 [Validator] Add CollectionSize constraint
[Validator] Rename constraint Size to Range

[Validator] Rename constraint CollectionSize to Size

[Validator] Merge the SizeLength into the Size constraint

[Validator] Update messages in Size constraint for consistancy

[Validator] Add english and french translation for Size messages

[Validator] Tweak expected types for exceptions in SizeValidator

[Validator] Fix CS in SizeValidator

[Validator] Update the ValidatorTypeGuesser

[Validator] Tweak SizeValidator

[Validator] Update CHANGELOG

[Validator] Complete previous CHANGELOG updates

[Form] Update validator type guesser

[Validator] Pluralize collection size english messages

[Validator] Pluralize Size french messages
2012-05-16 13:15:05 +02:00
Fabien Potencier
980a062092 merged branch ouardisoft/2.0 (PR #4300)
Commits
-------

d1c831d Change must-proxy-revalidate by proxy-revalidate

Discussion
----------

Change must-proxy-revalidate by proxy-revalidate

---------------------------------------------------------------------------

by travisbot at 2012-05-16T09:20:54Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1344060) (merged d1c831d7 into 8cd6cbcf).
2012-05-16 11:25:06 +02:00
ouardisoft
d1c831d7b2 Change must-proxy-revalidate by proxy-revalidate 2012-05-16 09:17:19 +00:00
Miha Vrhovnik
445fd2f9aa In console terms columns are width and rows are height 2012-05-16 11:10:06 +02:00
Fabien Potencier
8cd6cbcfc4 fixed some CS 2012-05-16 09:53:50 +02:00
Fabien Potencier
90c26a48cd [Console] fixed some CS 2012-05-16 09:33:59 +02:00
Fabien Potencier
398f445c32 fixed test 2012-05-16 07:44:57 +02:00
Fabien Potencier
41621e42e9 fixed phpdoc @param alignment 2012-05-15 22:19:31 +02:00
Fabien Potencier
f27f5969b6 fixed 2.0 merge 2012-05-15 22:15:08 +02:00
Jochen Bayer
d3fee9b22e [Finder] ignoreDotFiles(true) filter does not match (issue #4106)
Added new dot files/folder:
 * .bar
 * .foo/
 * .foo/.bar

Adapted unit tests to the new test directory structure.
Possible patch to fix Finder to ignore dot files.

And fixed issue if ignoreDotFiles(false) and ignoreVCS(false) is called twice.
Added 2 asserts to FinderTest.
2012-05-15 22:04:44 +02:00
Fabien Potencier
ce9791246b fixed phpdoc @param alignment 2012-05-15 18:56:32 +02:00
Fabien Potencier
03d4b0264f merged 2.0 2012-05-15 18:49:53 +02:00
Fabien Potencier
926ac98c9a [Finder] replaced static by self on a private variable 2012-05-15 18:46:20 +02:00
Fabien Potencier
ca56446507 merged branch bschussek/options-resolver (PR #4292)
Commits
-------

d2c162d [OptionsResolver] Added methods isKnown() and isRequired()

Discussion
----------

[OptionsResolver] Added methods isKnown() and isRequired()

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

---------------------------------------------------------------------------

by travisbot at 2012-05-15T14:42:10Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1336375) (merged d2c162d8 into 563f77a3).
2012-05-15 17:10:00 +02:00
Fabien Potencier
563f77a3f0 fixed CS 2012-05-15 12:49:24 +02:00
Fabien Potencier
00108fbd62 merged branch scoolen/json-decode-params (PR #4283)
Commits
-------

38cbbe7 Moved JSON encoding and decoding to separate classes which expose all their available parameters

Discussion
----------

[Serializer][JsonEncoder] Exposed json_encode and json_decode params

In `JsonEncoder::decode()` you are unable to change the `$assoc` parameter from `json_decode`. I created two sub-classes that handle JSON encoding and decoding while exposing all the available parameters from `json_encode` and `json_decode`. You can now do this:

```php
$jsonEncoder = new JsonEncoder(new JsonEncode(JSON_HEX_TAG), new JsonDecode(true, 1024));
$serializer = new Serializer(array(), array($jsonEncoder));
```

Additionally I made `json_last_error()` available from `JsonEncoder`:
```php
$jsonEncoder->getLastEncodingError();
$jsonEncoder->getLastDecodingError();
```

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: N/A
Todo: -
License of the code: MIT
Documentation PR: -

---------------------------------------------------------------------------

by travisbot at 2012-05-14T18:46:16Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1329496) (merged 38cbbe71 into 46ffbd52).

---------------------------------------------------------------------------

by fabpot at 2012-05-15T05:07:04Z

ping @Seldaek / @lsmith77

---------------------------------------------------------------------------

by Seldaek at 2012-05-15T09:47:48Z

This looks fine to me, I asked him to submit the PR, but I wanted to get feedback from others.
2012-05-15 12:46:45 +02:00
Fabien Potencier
ec45169f4f merged branch robocoder/autoloader (PR #4168)
Commits
-------

b2afd9f use require instead of include
1ed8b72 Autoloader should not throw exception because PHP will continue to call other registered autoloaders.

Discussion
----------

[DoctrineBundle] Proxy autoloader should not throw exception

Also change 'require' to non-fatal '@include' in the event no file is generated.

---------------------------------------------------------------------------

by stof at 2012-05-01T06:13:34Z

The goal of the exception was to make debugging easier. And all Symfony2 autoloaders are using ``require``

---------------------------------------------------------------------------

by robocoder at 2012-05-01T16:09:04Z

I changed the include back to a require.

Whether or not the exception makes debugging easier is debatable.  But throwing an exception from an autoloader is both unconventional and unexpected given that (1) exceptions are propagated while php calls other registered autoloaders, and (2) php will throw a fatal error where the usage actually occurs if the class doesn't exist.

---------------------------------------------------------------------------

by fabpot at 2012-05-15T06:01:11Z

ping @beberlei

---------------------------------------------------------------------------

by beberlei at 2012-05-15T10:20:06Z

Its tricky, the message does try to give some additional information - but later autoloaders could handle this issue anyways. I guess the PR makes sense as users have absolutely no control over this autoloader and it should therefore behave less strictly.
2012-05-15 12:45:21 +02:00
Bernhard Schussek
d2c162d842 [OptionsResolver] Added methods isKnown() and isRequired() 2012-05-15 11:47:43 +02:00
Deni
d10f33f271 [FrameworkBundle] Added Russian plural messages 2012-05-15 13:06:46 +04:00
Fabien Potencier
ba38ec5adf merged branch Romain-Geissler/read-only-form-datamapper-fix (PR #4280)
Commits
-------

47605f6 [Form][DataMapper] Do not update form to data when form is read only

Discussion
----------

[Form] [DataMapper] Read only form datamapper fix

The current 2.0.13 ``Symfony\Component\Form\Extension\Core\DataMapper\PropertyPathMapper`` enables to overwrite data from form values, no matter the form fields are read only or not.

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: -

---------------------------------------------------------------------------

by travisbot at 2012-05-14T15:50:02Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1328279) (merged 47605f63 into 72b2f698).

---------------------------------------------------------------------------

by bschussek at 2012-05-14T18:06:41Z

Forms don't bind when they are read only, so why is this change necessary?

---------------------------------------------------------------------------

by stof at 2012-05-14T19:29:45Z

@bschussek A read-only child will not be bound but the setter will still be called on the parent object for this field (with the old value), making it mandatory to define setters for read-only fields.

---------------------------------------------------------------------------

by Romain-Geissler at 2012-05-14T19:43:11Z

In my case, the property is still set through a setter even if the field for this property is read only. The problem is the setter is not called with the legacy value it held, but with the value given by the form. In my case the value is transformed from a string to an object by a ``DataMapper``, which returns ``null`` for an empty string/value. Thus, the setter is called with ``null`` instead of the previous non ``null`` value (and not always the same) it held.

This PR just prevent the setter for an object property marked as read only in the form definition from being called.

---------------------------------------------------------------------------

by bschussek at 2012-05-15T08:20:28Z

Ok, 👠then
2012-05-15 10:40:43 +02:00
Fabien Potencier
bd07b8919d merged branch bschussek/options (PR #3968)
Commits
-------

95727ff [OptionsResolver] Updated PHP requirements to 5.3.3
1c5f6c7 [OptionsResolver] Fixed issues mentioned in the PR comments
d60626e [OptionsResolver] Fixed clear() and remove() method in Options class
2b46975 [OptionsResolver] Fixed Options::replace() method
16f7d20 [OptionsResolver] Improved implementation and clarity of the Options class
6ce68b1 [OptionsResolver] Removed reference to non-existing property
9c76750 [OptionsResolver] Fixed doc and block nesting
876fd9b [OptionsResolver] Implemented fluid interface
95454f5 [OptionsResolver] Fixed typos
256b708 [OptionsParser] Renamed OptionsParser to OptionsResolver
04522ca [OptionsParser] Added method replaceDefaults()
b9d053e [Form] Moved Options classes to new OptionsParser component

Discussion
----------

Extracted OptionsResolver component out of Form

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

![Travis Build Status](https://secure.travis-ci.org/bschussek/symfony.png?branch=options)

This PR refactors the options-related code of the Form component into a separate component. See the README file for usage examples.

---------------------------------------------------------------------------

by schmittjoh at 2012-04-17T18:11:03Z

To me it seems like we have some redundancy with the Config/Definition component. I'm wondering if these two can/should be merged somehow?

---------------------------------------------------------------------------

by kriswallsmith at 2012-04-17T18:14:44Z

I would also suggest merging this into the Config component. Its current name too closely resembles Python's optparser lib, which could create confusion.

---------------------------------------------------------------------------

by bschussek at 2012-04-17T18:18:49Z

Merge conflict artifacts are fixed now.

@schmittjoh Do we? Isn't the idea of the Config component to read complex configuration from different configuration providers? (YAML, XML, Annotations etc.)

The idea of this parser is to be highly performant and to be usable in simple classes. If this can be achieved with the Config component, I'm happy to learn more.

---------------------------------------------------------------------------

by schmittjoh at 2012-04-17T18:27:08Z

The config component is basically a super intelligent version of array_merge and the like.

About performance, I haven't really done any tests to say something about the impact. I think it's safe to say that it would be at least slower than your implementation in its current form due to the additional indirection. However, we could probably add a caching layer.

---------------------------------------------------------------------------

by bschussek at 2012-04-17T18:31:22Z

Have you checked the README I wrote? Are you sure the Config component is intended for the same purpose and not *way* too complex in this case?

---------------------------------------------------------------------------

by stof at 2012-04-17T18:51:14Z

You also forgot to update the ``replace`` section of the root composer.json file.

And regarding doing such thing with the Config Definition stuff, it would be more difficult: it builds the tree of values with their defaults, and then merges stuff coming from different sources. The form component however receives defaults from different places (which also define the allowed keys at the same time) and then receives user options only once. And it needs to handle easily default values which depend from other values. So I think both implementations are useful for different needs (however, we could argue about making it a subnamespace in the Config component, but this would add yet another different stuff in it)

---------------------------------------------------------------------------

by jalliot at 2012-04-17T18:58:03Z

@bschussek You need to add this component to the main composer.json too.

---------------------------------------------------------------------------

by lsmith77 at 2012-04-18T06:54:17Z

doesn't this overlap a bit with the ``TreeBuilder`` in the Config component?

---------------------------------------------------------------------------

by lsmith77 at 2012-04-18T06:59:12Z

ah just saw @stof's comment .. i think the biggest argument against TreeBuilder is that it was designed for a very specific purpose and performance wasn't one of them. where as Form needs something that performs fast. so yeah i do see different use cases, but i don't think this means we should have a new component.

furthermore while i haven't read the code in details i am surprised it doesn't make use of http://php.net/manual/en/function.array-replace-recursive.php to merge defaults into a user supplied options array.

---------------------------------------------------------------------------

by bschussek at 2012-04-18T08:10:49Z

@stof, @jalliot: Fixed.

> furthermore while i haven't read the code in details i am surprised it doesn't make use of http://php.net/manual/en/function.array-replace-recursive.php to merge defaults into a user supplied options array.

@lsmith77: Because that's not what this component does. The key feature of this component is to resolve default values of options that depend on the *concrete* values of other options. I invite you to read the README.

Is it a good idea to merge this into Config? I think that both components address different audiences and different purposes. The idea of this one is to initialize classes with simple, run-time provided arrays. The idea of Config is to load and validate complex configurations from storage providers, such as the filesystem.

---------------------------------------------------------------------------

by bschussek at 2012-04-18T08:18:48Z

Note: Not all relevant code of this component is shown in the diff. The (crucial) Options and LazyOption classes have only been moved out of Form.

---------------------------------------------------------------------------

by lsmith77 at 2012-04-18T08:20:02Z

> Is it a good idea to merge this into Config? I think that both components address different audiences and different purposes. The idea of this one is to initialize classes with simple, run-time provided arrays. The idea of Config is to load and validate complex configuration values from the filesystem (typically).

decoupled is all fine, but to me this feels a bit too granular. but i am just expressing a gut feeling here

---------------------------------------------------------------------------

by jalliot at 2012-04-18T08:34:03Z

I think too it should be included in the config component (maybe in a subnamespace). Indeed the behaviour is too different to be merged into the current component but its purpose is similar and is all about *configuration* (hence the name of the component). Otherwise we could also split the current Config component into smaller components as it seems to me there are already parts of it that are totally unrelated to each other.

---------------------------------------------------------------------------

by bschussek at 2012-04-18T11:30:55Z

@jalliot Can you go into detail which parts that are and what changes you suggest?

@kriswallsmith Any other naming suggestion?

---------------------------------------------------------------------------

by jalliot at 2012-04-18T11:34:35Z

@bschussek I don't know the current component well enough but that's the impression I had last time I looked at its code but I may be wrong.

---------------------------------------------------------------------------

by stof at 2012-04-18T19:30:43Z

@bschussek the Definition subnamespace of the Config component is standalone. It is not directly related to the Loader part

---------------------------------------------------------------------------

by bschussek at 2012-04-19T09:32:48Z

@stof So what do you recommend?

I think this is also a question of marketing. Is the Definition subnamespace intended to be used totally separately of the loaders? What are the use cases? If there are good use cases, it makes sense to me to extract the Definition part into a separate component. Otherwise not.

It is also a question of marketing, because the purpose of a component should be communicable in simple words (quoting @fabpot). The purpose of Config is (copied from the README):

> Config provides the infrastructure for loading configurations from different data sources and optionally monitoring these data sources for changes. There are additional tools for validating, normalizing and handling of defaults that can optionally be used to convert from different formats to arrays.

I think this purpose is completely different than that of OptionsParser.

---------------------------------------------------------------------------

by stof at 2012-04-19T11:39:50Z

The current description itself shows the current state: what is advocated as the main goal of the component (and was the original part) is the loader stuff. But the Definition part (mentioned as "additional tools") is bigger in term of LOC

---------------------------------------------------------------------------

by bschussek at 2012-04-19T11:55:17Z

@stof: Yes, this is a fact, but what's your opinion? How do we proceed with this PR?

---------------------------------------------------------------------------

by stof at 2012-04-19T12:21:44Z

Well, my opinion is that the current Config component may deserve to be split into 2 components (as someone may need only part of it). But this would be a huge BC break. @fabpot what do you think ?

---------------------------------------------------------------------------

by bschussek at 2012-04-23T10:14:57Z

@fabpot Can we merge this?

---------------------------------------------------------------------------

by fabpot at 2012-05-10T06:45:20Z

@bschussek I'm +1 for this PR but as mentioned by @kriswallsmith, we must find another name as `OptionsParser` immediately make me think of something related to the CLI.

---------------------------------------------------------------------------

by stof at 2012-05-10T06:47:45Z

However, after thinking about it again, I would vote for keeping it in its own component instead of adding yet another independant part in Config, to avoid forcing Form users to get the whole Config component

---------------------------------------------------------------------------

by bschussek at 2012-05-10T09:09:36Z

I'm having difficulties finding a better name. The main difference to CLI option parsers is that these actualy *parse* a string, while this class only receives an array of options (does not do any parsing). Otherwise both have the same purpose.

A couple of other suggestions:

* OptionsLoader (likely confused with our filesystem loaders)
* OptionsResolver
* OptionsMerger
* OptionsMatcher (not accurate)
* OptionsBuilder (likely confused with the builder pattern)
* OptionsJoiner
* OptionsBag (likely confused with the session bags)
* OptionsConfig (likely confused with Config)
* OptionsDefinition (likely confused with Config\Definition)
* OptionsSpec
* OptionsCombiner
* OptionsInitializer
* OptionsComposer

The difficulty is to find a name that best reflects its purpose:

```
$parser->setDefaults(...);
$parser->setRequired(...);
$parser->setOptional(...);
$parser->setAllowedValues(...)
$parser->parse($userOptions);
```

The only of the above examples that makes sense to me here is OptionsResolver -> resolve($userOptions).

Ideas?

---------------------------------------------------------------------------

by stof at 2012-05-10T09:56:54Z

OptionsResolver seems a better name than OptionsParser

---------------------------------------------------------------------------

by luxifer at 2012-05-10T09:59:45Z

Agree with @stof

---------------------------------------------------------------------------

by r1pp3rj4ck at 2012-05-10T10:03:53Z

I don't really like the plural in the name, but OptionsResolver seems better than OptionsParser. OptionResolver maybe?

---------------------------------------------------------------------------

by sstok at 2012-05-10T10:10:14Z

@r1pp3rj4ck Options makes more sense as they can be nested/deeper, and thus are multiple.

Agree with @stof also.

---------------------------------------------------------------------------

by r1pp3rj4ck at 2012-05-10T10:13:01Z

@sstok well, we have multiple events too and the name is EventDispatcher, not EventsDispatcher. Actually none of the component names are plural.

---------------------------------------------------------------------------

by newicz at 2012-05-10T10:33:50Z

OptionsResolver - I find it suggesting that there is some kind of problem to be resolved and there's not,
maybe OptionsDefiner but it isn't good aswell this is a tough one
2012-05-15 10:14:33 +02:00
Bernhard Schussek
95727ff5e7 [OptionsResolver] Updated PHP requirements to 5.3.3 2012-05-15 10:12:07 +02:00
Igor Wiedler
4b0cdde2b1 [Validator] Change default of ValidatorFactory::buildDefault to exclude annotations 2012-05-15 09:02:29 +02:00
Igor Wiedler
c7a8678992 [Validator] Move doctrine/common dependency from require to suggest 2012-05-15 09:02:26 +02:00
Fabien Potencier
114c34f82a [WebProfilerBundle] re-added a div that were removed during the last update of the toolbar (closes #4265, #4282) 2012-05-15 08:58:05 +02:00
Fabien Potencier
982c369f37 added @ to all chmod() calls to avoid PHP warnings (operation not permitted) when using CIFS or NTFSa (closes #2125) 2012-05-15 08:44:52 +02:00
Fabien Potencier
6bcdd321e6 [HttpKernel] fixed unit tests when run standalone (closes #4266, patch from Gator92) 2012-05-15 08:39:08 +02:00
jaugustin
9215c4478f [Form] fix failing tests for remove call on an objectCollection 2012-05-14 20:50:10 +02:00
Bernhard Schussek
076a104e86 [Form] Created failing test for PropertyPath modifying collections while iterating them 2012-05-14 20:50:04 +02:00
Sander Coolen
38cbbe7193 Moved JSON encoding and decoding to separate classes which expose all their available parameters 2012-05-14 20:09:23 +02:00
Bernhard Schussek
1c5f6c76c1 [OptionsResolver] Fixed issues mentioned in the PR comments 2012-05-14 19:35:41 +02:00
Bernhard Schussek
d60626efd5 [OptionsResolver] Fixed clear() and remove() method in Options class 2012-05-14 19:35:41 +02:00
Bernhard Schussek
2b46975e32 [OptionsResolver] Fixed Options::replace() method 2012-05-14 19:35:40 +02:00
Bernhard Schussek
16f7d20dff [OptionsResolver] Improved implementation and clarity of the Options class 2012-05-14 19:35:40 +02:00
Bernhard Schussek
6ce68b1b05 [OptionsResolver] Removed reference to non-existing property 2012-05-14 19:35:40 +02:00
Bernhard Schussek
9c76750cb8 [OptionsResolver] Fixed doc and block nesting 2012-05-14 19:35:35 +02:00
Bernhard Schussek
876fd9ba17 [OptionsResolver] Implemented fluid interface 2012-05-14 19:35:07 +02:00
Bernhard Schussek
95454f5f6b [OptionsResolver] Fixed typos 2012-05-14 19:35:07 +02:00
Bernhard Schussek
256b7081a4 [OptionsParser] Renamed OptionsParser to OptionsResolver 2012-05-14 19:35:07 +02:00
Bernhard Schussek
04522ca4ed [OptionsParser] Added method replaceDefaults() 2012-05-14 19:35:07 +02:00
Bernhard Schussek
b9d053edb2 [Form] Moved Options classes to new OptionsParser component 2012-05-14 19:35:07 +02:00
Romain Geissler
47605f63e3 [Form][DataMapper] Do not update form to data when form is read only 2012-05-14 17:35:21 +02:00
Olivier Dolbeau
3623580742 Add missing PHPDoc 2012-05-14 17:06:14 +02:00
Alexander
b7fc009316 [Config] Numerical keys for prot. arrays if useAttributeAsKey is set 2012-05-14 16:26:32 +02:00
nomack84
b804b942a8 Fixed style for the abbr tag 2012-05-14 08:40:40 -04:00
Fabien Potencier
46ffbd5282 merged branch willdurand/form-date-types (PR #4204)
Commits
-------

ceb5ce6 [Form] fixed tests
a1e3a59 [TwigBridge] Switched to composer
df36afb [Form] Added tests
6d5ad3b [Form] Added right HTML types to Datetime/Date/Time types if single_text is true

Discussion
----------

[Form] Added right HTML types to Datetime/Date/Time types if single_text is true

When you set the `widget` option to `single_text`, you get a HTML input tag which is fine, but you the type is `text`, and it's wrong. You don't have any other way to get the right `type` as this attribute is defined to the FormView instance itself (see FileType for instance).

This PR adds right HTML types like the FileType does.

Cheers,
William

---------------------------------------------------------------------------

by willdurand at 2012-05-09T16:04:16Z

@fabpot anything else to do there?

---------------------------------------------------------------------------

by fabpot at 2012-05-11T16:28:43Z

adding some unit tests?

---------------------------------------------------------------------------

by willdurand at 2012-05-11T16:35:40Z

fair point :)

---------------------------------------------------------------------------

by travisbot at 2012-05-12T16:34:43Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1314731) (merged 2631c8b7 into cb905c5f).

---------------------------------------------------------------------------

by travisbot at 2012-05-12T17:14:12Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1314902) (merged ceb5ce6e into e1934527).

---------------------------------------------------------------------------

by willdurand at 2012-05-12T17:16:17Z

@fabpot ok, so I had to fix some other tests but there is a weird dependency between the tests in TwigBridge, and the Form component. I fixed the test suite's setup in the TwigBridge, and fixed some failing tests.
2012-05-14 13:31:58 +02:00
Fabien Potencier
6fba6d7389 merged branch duplabe/customnormalizer-fix (PR #4273)
Commits
-------

e647eaa [Serializer] Fix CustomNormalizer supportsDenormalization interface check.

Discussion
----------

[Serializer] Fix CustomNormalizer supportsDenormalization interface check.

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: -

Fixes the previous PR: https://github.com/symfony/symfony/pull/4257

---------------------------------------------------------------------------

by travisbot at 2012-05-13T20:57:00Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1322002) (merged e647eaa6 into 459942b4).
2012-05-14 13:29:22 +02:00
Fabien Potencier
de8a28713a merged branch hason/localeexceptions (PR #4250)
Commits
-------

6438c80 [Locale] Updated exception messages

Discussion
----------

[Locale] Updated exception messages

---------------------------------------------------------------------------

by travisbot at 2012-05-10T15:12:46Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1296098) (merged 60eabc7c into fae4523f).

---------------------------------------------------------------------------

by travisbot at 2012-05-11T21:27:29Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1309320) (merged 6438c808 into dd0da03c).

---------------------------------------------------------------------------

by hason at 2012-05-14T09:23:26Z

@fabpot corrected
2012-05-14 13:27:56 +02:00
Sebastiaan Stok
bbf7183ccb [Routing] fixed spelling errors in phpdoc 2012-05-14 13:10:18 +02:00
duplabe
e647eaa646 [Serializer] Fix CustomNormalizer supportsDenormalization interface check. 2012-05-13 22:45:59 +02:00
Fabien Potencier
459942b456 merged branch sstok/patch-2 (PR #4272)
Commits
-------

498b814 [FrameworkBundle] minor fix in TranslationUpdateCommand <info> was not properly closed.

Discussion
----------

[FrameworkBundle] TranslationUpdateCommand <info> was not properly closed.

---------------------------------------------------------------------------

by travisbot at 2012-05-13T13:43:06Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1319869) (merged 498b8140 into e1934527).

---------------------------------------------------------------------------

by fabpot at 2012-05-13T17:06:25Z

Can you reopen a PR on the 2.0 branch as this is a bug fix? Thanks.

---------------------------------------------------------------------------

by stof at 2012-05-13T18:09:39Z

@fabpot this command is a 2.1 feature (even if it was added 6 month ago and so seems already old). There is nothing to fix in 2.0
2012-05-13 20:52:26 +02:00
Sebastiaan Stok
498b81409f [FrameworkBundle] minor fix in TranslationUpdateCommand <info> was not properly closed. 2012-05-13 16:37:31 +03:00
Fabien Potencier
8d7f7f5b11 [CssSelector] updated upstream code repository 2012-05-13 10:03:21 +02:00
Fabien Potencier
c642a5ec19 [CssSelector] ignored an optional whitespace after a combinator 2012-05-13 09:14:40 +02:00
Matthieu Moquet
9f772c78f3 [WDT] Ajusted the color of the PHP logo
Since the redesign of the Web-Debug-Toolbar, a new PHP icon has been
set, but its color was a bit darker (#000000) than the other icons in
the toolbar (#302e32 for the Symfony2 logo). This commit aims to ajust
the background color of the PHP logo to keep a certain homogeneity.
2012-05-12 22:27:28 +02:00
Fabien Potencier
d34383f10b [CssSelector] removed an unneeded condition (taken care of afterward in the code) (closes #4269) 2012-05-12 20:35:22 +02:00
William DURAND
ceb5ce6e5e [Form] fixed tests 2012-05-12 19:09:49 +02:00
William DURAND
a1e3a597b0 [TwigBridge] Switched to composer 2012-05-12 18:56:48 +02:00
William DURAND
df36afb123 [Form] Added tests 2012-05-12 18:44:54 +02:00
William DURAND
6d5ad3b289 [Form] Added right HTML types to Datetime/Date/Time types if single_text is true 2012-05-12 18:44:53 +02:00
Fabien Potencier
e193452742 switched to use mbstring whenever possible instead of iconv 2012-05-12 10:17:30 +02:00
Martin Hasoň
6438c80858 [Locale] Updated exception messages 2012-05-11 23:22:47 +02:00
Christian Raue
64101aba0a separate numeric value from suffix in File constraint's error message $uploadIniSizeErrorMessage 2012-05-11 23:15:32 +02:00
Christian Raue
ff122d336c fixed tests 2012-05-11 23:15:30 +02:00
Christian Raue
868d649d5c separate numeric values from suffixes in File constraint's error message $maxSizeMessage 2012-05-11 23:15:29 +02:00
nomack84
147cab749f [WDT] Fix the color of Documentation link to keep concistence.
This pull request is to make the Documentation link black as the other links of the WDT

Styled the WDT links and refactored the profiler token link.
2012-05-11 14:33:27 -04:00
Fabien Potencier
dd0da03c8c merged branch gajdaw/finder_contains_exception_test (PR #4056)
Commits
-------

f2fea97 [Component][Finder] tests and condition: contains() used on dir

Discussion
----------

[Component][Finder] tests and condition: contains() used on dir

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

`Finder::contains()` and `Finder::notContains()` can't be used on directories.

---------------------------------------------------------------------------

by travisbot at 2012-05-08T06:33:11Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1273818) (merged f2fea974 into 919604ab).
2012-05-11 18:30:27 +02:00
Fabien Potencier
266b686017 merged branch hason/plural_validators (PR #4259)
Commits
-------

030dd2f Added English plural messages
077a594 Added Czech plural messages

Discussion
----------

Plural validators

---------------------------------------------------------------------------

by travisbot at 2012-05-11T08:47:46Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1303101) (merged 030dd2fa into 554e0738).
2012-05-11 18:21:19 +02:00
Fabien Potencier
cbc3ed36b9 [HttpKernel] added some constant for better forward compatibility 2012-05-11 18:16:17 +02:00
Fabien Potencier
4c7261e3b1 merged 2.0 2012-05-11 18:14:47 +02:00
Fabien Potencier
d212a30cc0 removed some files from check_cs as they have been fixed now 2012-05-11 18:04:46 +02:00
Martin Hasoň
030dd2facc Added English plural messages 2012-05-11 10:43:23 +02:00
Fabien Potencier
554e073822 merged branch Tobion/doc-link (PR #4140)
Commits
-------

709be4b [WDT] added documentation link

Discussion
----------

[WDT] added documentation link

This adds a documentation link in the WDT for the appropriate branch according to the current symfony version.
@weaverryan there is no documentation branch yet for the currently created 2.1 branch.
Also it might be a nice feature to redirect the dev branch to master automatically on the website. I.e. `http://symfony.com/doc/2.1/index.html` -> `http://symfony.com/doc/master/index.html`
@fabpot It might be a good idea to introduce a `Kernel::BRANCH` constant. So there would be no need to extract the branch from the symfony version in `ConfigDataCollector`. And bumping new versions/branches would be in one place.

---------------------------------------------------------------------------

by vicb at 2012-04-27T14:17:07Z

Maybe the documentation server should redirect to the right version according to `Kernel::VERSION` (i.e. using rewritting) ?

---------------------------------------------------------------------------

by Tobion at 2012-04-27T14:31:49Z

That would be best yes.

---------------------------------------------------------------------------

by fabpot at 2012-05-10T06:03:45Z

FYI, I've added some more constants about the Symfony version: 48099a852c (modeled after PHP constants)

---------------------------------------------------------------------------

by fabpot at 2012-05-10T07:08:57Z

I've just updated the website to accept any `HttpKernel::VERSION` string. Some redirection examples:

 * 2.0.12 -> current
 * 2.0 -> current
 * 2.0.12-DEV -> current
 * 2.1 -> master
 * 2.1.0-DEV -> master

---------------------------------------------------------------------------

by Tobion at 2012-05-10T12:49:16Z

👠for updating the website. But I think you missed to return 404 for a non-existent main doc page.
http://symfony.com/doc/2.4/book/controller.html -> 404 as expected
http://symfony.com/doc/2.4/index.html -> does not return 404 (and all links there are dead)

---------------------------------------------------------------------------

by travisbot at 2012-05-10T15:12:07Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1296057) (merged 04adf361 into a01dec00).

---------------------------------------------------------------------------

by fabpot at 2012-05-10T17:21:06Z

I've fixed the doc index for non-existing versions. Can you squash your commits before I merge? Thanks.

---------------------------------------------------------------------------

by Tobion at 2012-05-10T22:49:18Z

done

---------------------------------------------------------------------------

by travisbot at 2012-05-10T22:52:13Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1300414) (merged 709be4b7 into fae4523f).
2012-05-11 06:51:34 +02:00
Tobias Schultze
709be4b712 [WDT] added documentation link
the doc server redirects to the correct branch according to the symfony version
2012-05-11 00:46:43 +02:00
Paul Matthews
478227d9ac Fixed quoting issues with Yaml Inline Parser
* Added test parse error in parseQuotedScalar
  * Expecting to throw tests, previously trimmed string
  * More details on issue: https://github.com/symfony/symfony/issues/4021
* Enforces single quote escaping when within string quotes
  * Shortens the scope of the validation match
  * Stricter matching rules
* Ensures double quoted strings are not parsed incorrectly
* Split quote matching into 2 types of quotes
  * Separates single and double quotes
  * Fixes intollerence for un escaped double quote
2012-05-10 18:54:47 +01:00
Ondrej Slinták
f2caf07f83 Fixed minor typo in slovak translation (validator.sk.xliff). 2012-05-10 16:11:03 +03:00
Victor Berchet
51b753a6b8 [Session] cleanup of the PDO storage 2012-05-10 12:33:43 +02:00
Fabien Potencier
62594291e4 [Form] fixed wrong class path (closes #4239) 2012-05-10 12:15:10 +02:00
Fabien Potencier
bed0b90bea merged branch vicb/session_pdo_storage (PR #4244)
Commits
-------

b865b09 [Session] Fix the PDO handler for mysql concurrent write

Discussion
----------

[RFC][Session] Make the PDO handler looks less hacky

Related discussion: ebc2f01e5b (commitcomment-1304221)

The current code works but looks hacky (`$dbTimeCol = CASE WHEN $dbTimeCol = :time THEN (VALUES($dbTimeCol) + 1) ELSE VALUES($dbTimeCol) END`).

Todo: wrap the mysql specific code in a `try...catch` if we choose this PR way (to be consistent with all other PDO invocations).

---------------------------------------------------------------------------

by travisbot at 2012-05-10T07:50:39Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1293131) (merged b865b096 into 48099a85).
2012-05-10 11:48:38 +02:00
Fabien Potencier
28d045ed48 merged branch vicb/session_nnhandlers (PR #4227)
Commits
-------

12e22c0 [Session] Memcache/d cleanup, test improvements
788adfb [Session] Pdo Handler cleanup
0216e05 [HttpFoundation][Session] Assume that memcache(d) instances are already configured
72d21c6 [HttpFoundation][Session] change possible replace() & set() for set only()

Discussion
----------

[Session] Non-native Session handlers

A few item to discuss. Needs @drak inputs.

* 72d21c66 is trivial,
* 0216e056 is about memcache(d) handlers
    * I don't think the handlers should configure the memcache(d) instances. Those instances are injected into the storage so they should already be confidured (this will be done in the CacheBundle when available)
    * A SW prefix has been added to the memcached handlers so that the same instance of memcached can be shared - you can still set the `Memcached::OPT_PREFIX_KEY` before injecting the memcached instance.
    * It was not possible to use an expiration > 30days before, see [php.net](http://www.php.net/manual/en/memcached.expiration.php)
* 788adfb6 is trivial (cleanup in the PDO handler)

---------------------------------------------------------------------------

by travisbot at 2012-05-08T09:49:03Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1274808) (merged 788adfb6 into e54f4e46).

---------------------------------------------------------------------------

by drak at 2012-05-09T15:20:38Z

Overall this PR looks good to me. Since Memcache/d objects are passed by DI anyway, there is no need to provide a way to configure the objects here.

However, I am not sure it's consistent to provide internal handling of the prefix/expire if we are saying the objects should be configured and injected - if we hand over all configuration to the injected objects, that's exactly what we should do. In the case of the `Memcache` handler there is no handling for prefix by the Memcache object that is why it's handled internally.

Unless there are some other technical consideration I've missed, I would also not expect the same Memcache/d object to be used in all use cases (e.g. session storage and database caching layer).   I realise we are trying to unify things in one cache component, but I am not entirely convinced session storage would necessarily have to be part of that nor that "one object fits all" is practical or wise.

As far as I am aware, apart from default settings, memcache/memcached instances retain their own settings once configured so it's quite feasible to expect there might be a couple of differently configured instances in a complex system.

In summary, I would remove the `$memcachedOptions` config entirely from the `MemcachedHander` along with the associated prefix and time and let it all be configured by the injected `Memcached` instance.

---------------------------------------------------------------------------

by travisbot at 2012-05-10T07:32:53Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1293064) (merged 12e22c0d into e54f4e46).

---------------------------------------------------------------------------

by vicb at 2012-05-10T07:34:31Z

@drak thanks for your feeback.

About the prefix: it might be necessary to avoid collisions when you re-use the same instance of `memcache/d`. This is why the prefix is handled internally and not by `memcached` (it would be global and not serve the purpose then).

About the ttl:

* `memcache/d` can not handle ttl > 30 days (they would consider the time as an absolute timestamp then) and this is why the PR always convert the ttl to an absolute ts (`time() + $ttl`)
* Moreover I think that the ttl should be initialized by the `Session`: there is no reason why the ttl should be different from the `gc_maxlifetime`. I think this is out of the scope of this PR.

About sharing `memcache/d ` instances: it will be possible but it does not mean that you have to, you still can use different instances if this suit your needs.

The tests have been improved.

If you are ok with the latest changes, this PR should be ready to be merged

---------------------------------------------------------------------------

by drak at 2012-05-10T09:29:18Z

@vicb - I think it's ok to merge now. You are right about the TTL since PHP will pass a maxlifetime not a timestamp, and since memcached varies how it treats $expire, it does need to be normalised in the handler. I'm not necessarily 100% convinced about the prefix, but I don't object.  Nice work.

/cc @fabpot
2012-05-10 11:47:04 +02:00
Martin Hasoň
077a5949ab Added Czech plural messages 2012-05-10 09:41:12 +02:00
Victor Berchet
12e22c0d1f [Session] Memcache/d cleanup, test improvements 2012-05-10 09:28:59 +02:00
Fabien Potencier
48099a852c [HttpKernel] added more fine-grained information about the version (the constant are named after the PHP ones) 2012-05-10 08:02:55 +02:00
Fabien Potencier
f9aa6f7d1e merged branch bamarni/master (PR #4153)
Commits
-------

a2b3d3c added cache service definition

Discussion
----------

[Doctrine Bridge] Added a method to load a cache definition

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

Following this discussion (https://github.com/doctrine/DoctrineBundle/pull/62), this will let DoctrineBundle, MongodbBundle and CouchdbBundle share the same code for cache definitions.

---------------------------------------------------------------------------

by dlsniper at 2012-04-30T06:56:49Z

+1 for this PR.

---------------------------------------------------------------------------

by stof at 2012-04-30T06:57:58Z

ðŸ‘

---------------------------------------------------------------------------

by fabpot at 2012-04-30T15:41:05Z

Can you add a note abou this change in the CHANGELOG?

---------------------------------------------------------------------------

by stof at 2012-04-30T15:46:48Z

does it really need to be in the changelog ? End-users don't know about this at all. The only guys affected by this change are the maintainers of the different Doctrine bundles as they can remove some code now.

---------------------------------------------------------------------------

by fabpot at 2012-04-30T16:41:21Z

@stof: right

@bamarni: Can you squash your commits?

---------------------------------------------------------------------------

by bamarni at 2012-04-30T17:03:38Z

@fabpot : done

---------------------------------------------------------------------------

by dlsniper at 2012-04-30T17:22:07Z

@bamarni can you also do a patch for the docs after this gets merged so that people know about this change and know how to use it?

Thank you!

---------------------------------------------------------------------------

by bamarni at 2012-04-30T17:29:05Z

@dlsniper : no problem ;)

---------------------------------------------------------------------------

by fabpot at 2012-04-30T18:29:03Z

ping @beberlei
2012-05-10 07:18:48 +02:00
Fabien Potencier
1d2065eff0 merged branch corphi/master (PR #4231)
Commits
-------

be35099 Replaced &raquo; and &nbsp; for XHTML compatibility
0a0e74b Replaced &raquo; by &#187; (for XHTML compatibility)

Discussion
----------

Changes for XHTML compatibility

When using Symfony in XHTML mode, some entities cause YSODs. These changes should prevent that.

---------------------------------------------------------------------------

by travisbot at 2012-05-09T00:24:35Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1281344) (merged be350994 into e54f4e46).

---------------------------------------------------------------------------

by Tobion at 2012-05-09T00:46:19Z

+1
2012-05-10 07:16:44 +02:00
William DURAND
6f343b4328 [Console] Fixed typo 2012-05-09 18:42:13 +02:00
Fabien Potencier
e66a0bb32a merged branch shieldo/patch-4 (PR #4234)
Commits
-------

8009675 [Validator] corrected small docblock typo

Discussion
----------

[Validator] corrected small docblock typo

---------------------------------------------------------------------------

by travisbot at 2012-05-09T10:30:15Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1284151) (merged 8009675d into e54f4e46).
2012-05-09 16:04:48 +02:00
Pablo Godel
190024aeeb Provide a clearer error message when message in trans tag is not a simple text. 2012-05-09 10:13:29 -03:00
Douglas Greenshields
8009675dba [Validator] corrected small docblock typo 2012-05-09 12:25:32 +02:00
Victor Berchet
b865b096b5 [Session] Fix the PDO handler for mysql concurrent write 2012-05-09 10:13:10 +02:00
corphi
be350994cc Replaced &raquo; and &nbsp; for XHTML compatibility 2012-05-09 03:07:25 +03:00
corphi
0a0e74b9af Replaced &raquo; by &#187; (for XHTML compatibility) 2012-05-09 03:05:23 +03:00
Victor Berchet
788adfb6c0 [Session] Pdo Handler cleanup 2012-05-08 11:30:40 +02:00
Victor Berchet
0216e05605 [HttpFoundation][Session] Assume that memcache(d) instances are already configured 2012-05-08 11:20:17 +02:00
Tobias Schultze
49e99572be added test to ensure matching is eager 2012-05-08 10:13:04 +02:00
Victor Berchet
72d21c6614 [HttpFoundation][Session] change possible replace() & set() for set only() 2012-05-08 10:05:47 +02:00
Fabien Potencier
e54f4e46c9 merged branch gajdaw/2_1_component_yaml_fix_4022 (PR #4126)
Commits
-------

80a2a92 [2.1][Component][Yaml] fix 4022

Discussion
----------

[2.1][Component][Yaml] fix 4022

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/gajdaw/symfony.png?branch=2_1_component_yaml_fix_4022)](http://travis-ci.org/gajdaw/symfony)
Fixes the following tickets: #4121, #4022, #4135
Todo:

---------------------------------------------------------------------------

by stof at 2012-04-27T13:03:15Z

Why is it marked as ``[2.2]`` if it is a bugfix ?

@fabpot ping

---------------------------------------------------------------------------

by gajdaw at 2012-04-27T14:42:21Z

The title should be [2.1] - now it is correct.

I marked it 2.0 and PR was for 2.0 originally.

Fabien suggested that it should go to master branch: https://github.com/symfony/symfony/pull/4121#issuecomment-5362990

---------------------------------------------------------------------------

by fabpot at 2012-05-07T09:17:31Z

That does not work when you have something after the unindented collection:

    collection:
        key:
        - a
        - b
        - c
    foo: bar

---------------------------------------------------------------------------

by gajdaw at 2012-05-07T11:11:30Z

@fabpot Last commit contains test with your yaml:

    collection:
        key:
        - a
        - b
        - c
    foo: bar

Everything seems fine. Can you give me a hint: what do you mean, when you say "That does not work"?

---------------------------------------------------------------------------

by fabpot at 2012-05-07T12:36:19Z

Sorry, the failing test is the following:

    test: Key/value after unindented collection
    brief: >
        Key/value after unindented collection
    yaml: |
        collection:
            key:
            - a
            - b
            - c
            foo: bar
    php: |
        array('collection' => array('key' => array('a', 'b', 'c'), 'foo' => 'bar'))

---------------------------------------------------------------------------

by gajdaw at 2012-05-07T15:48:26Z

@fabpot Last commit passed your test.

---------------------------------------------------------------------------

by fabpot at 2012-05-07T17:28:21Z

Can you squash your commits? Thanks.

---------------------------------------------------------------------------

by travisbot at 2012-05-08T05:32:58Z

This pull request [fails](http://travis-ci.org/symfony/symfony/builds/1273487) (merged 20891c58 into 919604ab).

---------------------------------------------------------------------------

by gajdaw at 2012-05-08T05:36:51Z

Done.

---------------------------------------------------------------------------

by travisbot at 2012-05-08T07:23:47Z

This pull request [passes](http://travis-ci.org/symfony/symfony/builds/1274162) (merged 80a2a92e into 898ff4e0).
2012-05-08 09:27:29 +02:00
WÅ‚odzimierz Gajda
80a2a92edb [2.1][Component][Yaml] fix 4022 2012-05-08 09:18:55 +02:00
Fabien Potencier
044dee206e raised the minimum version of Twig to 1.7 2012-05-08 08:17:19 +02:00
Fabien Potencier
919604ab71 merged branch symfony/domcrawler-encoding (PR #4214)
Commits
-------

c9ebe67 [DomCrawler] fixed encoding when using addHtmlContent() (fixes #3881)

Discussion
----------

[DomCrawler] fixed encoding when using addHtmlContent() (fixes #3881)

After looking around, this is clear that loadHtml() resets the encoding set on the DomDocument instance. So, the only workaround that actually works (and which is not an ugly hack) is to use `mb_convert_encoding` when it exists.

---------------------------------------------------------------------------

by Seldaek at 2012-05-07T12:38:43Z

+1 (Side note: Using your fork of symfony for PRs would be good I think, otherwise it creates noisy versions on packagist.)
2012-05-07 19:19:26 +02:00
Fabien Potencier
1dd92b6221 merged branch Seldaek/parambag (PR #4220)
Commits
-------

3d9990a [DependencyInjection] Add ParameterBag::remove

Discussion
----------

[DependencyInjection] Add ParameterBag::remove
2012-05-07 19:19:05 +02:00
Fabien Potencier
761579df7c merged branch shieldo/session_docblock_typos (PR #4216)
Commits
-------

8ff11c1 [HttpFoundation] fixed docblock typos in session class

Discussion
----------

[HttpFoundation] fixed docblock typos in session class
2012-05-07 19:18:56 +02:00
Victor Berchet
9907df2569 [Routing] Fix a regression introduced by #4170 2012-05-07 18:20:56 +02:00
Jordi Boggiano
3d9990a0ec [DependencyInjection] Add ParameterBag::remove 2012-05-07 18:13:02 +02:00
Douglas Greenshields
8ff11c1ad3 [HttpFoundation] fixed docblock typos in session class 2012-05-07 15:20:20 +01:00
Fabien Potencier
c9ebe67d65 [DomCrawler] fixed encoding when using addHtmlContent() (fixes #3881) 2012-05-07 14:20:03 +02:00
Fabien Potencier
f14961b747 [DomCrawler] converted all usage of filter() to filterXPath() in unit tests to be less dependent on CssSelector 2012-05-07 14:03:55 +02:00
Fabien Potencier
906f6f662c [DependencyInjection] fixed private services removal when used as configurators (closes #3758) 2012-05-07 12:47:50 +02:00
Fabien Potencier
43249dea5f [DependencyInjection] added support for anonymous services as properties (closes #2964) 2012-05-07 12:30:49 +02:00
Fabien Potencier
23b5e60436 [DependencyInjection] fixed anonymous services handling in XmlFileLoader
Previous to this commit, it was not possible to have anonymous services
as arguments AND anonymous services in custom configs
2012-05-07 12:23:11 +02:00
Fabien Potencier
1244158ceb [DependencyInjection] made a small cleanup 2012-05-07 12:17:20 +02:00
Fabien Potencier
fe6b26c5d0 [TwigBundle] updated CHANGELOG 2012-05-07 10:53:05 +02:00
Fabien Potencier
6e6eb6c462 merged branch symfony/escaping-839 (PR #4105)
Commits
-------

1e84f1e [TwigBundle] implemented context auto-escaping in Twig templates based on the template extension

Discussion
----------

[2.2] Implements context escaping for Twig (fixes #839)
2012-05-07 10:51:11 +02:00
Fabien Potencier
a3ee885d08 merged branch vicb/validator/fix (PR #4200)
Commits
-------

bdc21b4 [Validator] Add a base AbstractLoader
ead4908 [Validator] Some cleanup of the GraphWalker
23e15bb [Validator] Fix a bug in the ExecutionContext

Discussion
----------

[Validator] Fix/cleanup

Bug fix: yes
Feature addition: no
Backwards compatibility break: yes
Symfony2 tests pass: [![Build Status](https://secure.travis-ci.org/vicb/symfony.png?branch=validator/fix)](http://travis-ci.org/vicb/symfony)

* d2100a27 has some fixes for the EC,
* 51769e03 has some cleanup in the graph walker,
* f9b3591c add an AbstractLoader (namespace aliases does not belong to FileLoaders).

---------------------------------------------------------------------------

by vicb at 2012-05-07T08:32:40Z

@fabpot PR ready
2012-05-07 10:44:17 +02:00
Fabien Potencier
3719c70870 updated minimum PHP version to 5.3.3
5.3.3 has some interesting fixes and this is the version used by
Redhat 6 and Debian 6
2012-05-07 10:29:11 +02:00
Victor Berchet
bdc21b4dc4 [Validator] Add a base AbstractLoader 2012-05-07 10:27:33 +02:00
Victor Berchet
ead4908eff [Validator] Some cleanup of the GraphWalker 2012-05-07 10:27:10 +02:00
Victor Berchet
23e15bb878 [Validator] Fix a bug in the ExecutionContext 2012-05-07 10:26:46 +02:00
Fabien Potencier
cc85a6efda merged branch vicb/routingmatcher (PR #4170)
Commits
-------

a196ca0 [Routing] Compiler: remove lazy quantifiers with no effect
8232aa1 [Routing] Compiler: fix in the computing of the segment separators

Discussion
----------

[Routing] Fix the matching process

This PR is based on the PR #3678, #4139.

[![Build Status](https://secure.travis-ci.org/vicb/symfony.png?branch=routingmatcher)](http://travis-ci.org/vicb/symfony)

**The spec**

A pattern is composed of both text and variable segments: `/{variable}-test/{other_variable}`.

A variable segment will match anything until a separator is encountered. The separator is the character following the variable segment when available or preceding the variable otherwise (i.e. at the end of the pattern).

That is:

* the separator is `-` for the `variable`,
* the separator is `/` for the `other_variable`.

*Note: This default matching behavior can be overridden if a requirement is specified for a variable)*

**Fixes**

* The current behavior is to consider booth the preceding and following characters as separators (considering availability),
* The "preceding" separator of the first variable is always set to `/` whatever the preceding character is (due to `$pos = 0` for the first iteration).

**Todo**

Update the doc once this is merged
2012-05-07 10:15:50 +02:00
Fabien Potencier
f273edc176 [HttpFoundation] added missing RFC reference 2012-05-05 10:20:38 +02:00
Fabien Potencier
503a51fa29 [HttpFoundation] updated RFC references in Response 2012-05-05 08:22:03 +02:00
Fabien Potencier
cb905c5ff6 merged branch stephpy/cs_fixes (PR #4198)
Commits
-------

bc63fb2 Fix some cs

Discussion
----------

Fix some cs

---------------------------------------------------------------------------

by fabpot at 2012-05-03T21:13:33Z

Can you squash your commits? Thanks.

---------------------------------------------------------------------------

by stephpy at 2012-05-03T22:18:07Z

It's ok
2012-05-04 12:13:57 +02:00
SteÌphane PY
bc63fb26be Fix some cs 2012-05-04 00:17:06 +02:00
André Neves
23bad292ee Added translation to placeholder and title attributes 2012-05-03 13:17:09 +01:00
Fabien Potencier
b49d611eca merged branch GromNaN/browser-kit-cookie-jar-dependency (PR #4178)
Commits
-------

95b8e29 [BrowserKit] Remove dependency of CookieJar to Response

Discussion
----------

[BrowserKit] Remove dependency of CookieJar to Response

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes

The CookieJar has currently a hard dependency to `BrowserKit\Response`, but this dependency could be avoided.

---------------------------------------------------------------------------

by stof at 2012-05-01T21:52:34Z

Renaming a method *is* a BC break.

You should add a new method and keep the old one accepting the Response (and make it calling the new method internally). This way, it would add the new feature without breaking the BC.

---------------------------------------------------------------------------

by stof at 2012-05-01T21:53:31Z

And btw, I don't see the issue with BrowerKit depending on BrowserKit. If you have a class, you also have the other one.

---------------------------------------------------------------------------

by GromNaN at 2012-05-02T05:57:51Z

The issue is that I want to use the CookieJar without the Request/Response of BrowserKit.

---------------------------------------------------------------------------

by fabpot at 2012-05-03T06:37:02Z

You should also keep some unit tests for the old method.

---------------------------------------------------------------------------

by GromNaN at 2012-05-03T08:22:39Z

@fabpot I've made the changes.

---------------------------------------------------------------------------

by fabpot at 2012-05-03T10:53:47Z

Can you squash your commits before I merge? Thanks.

---------------------------------------------------------------------------

by GromNaN at 2012-05-03T10:57:30Z

@fabpot Squashed
2012-05-03 13:11:02 +02:00
Jérôme Tamarelle
95b8e29f57 [BrowserKit] Remove dependency of CookieJar to Response 2012-05-03 12:58:56 +02:00
Jerome Tamarelle
970d0b4ddb [BrowserKit] Check class existence only when required. 2012-05-03 09:50:46 +02:00
Fabien Potencier
b983fcd565 merged branch Tobion/patch-4 (PR #4175)
Commits
-------

b1de2a2 [HttpKernel] fix typo, commit 9fed41 fixed only half of it

Discussion
----------

[HttpKernel] fix typo

commit 9fed41 fixed only half of it
2012-05-03 08:40:32 +02:00
Christopher Hall
f30bf36d85 Min/Max Validators ignore empty string
Fixes #3686
2012-05-02 16:28:47 -07:00
Christopher Hall
e9f5f130e8 Added test Min/Max validators should ignore empty string
Refs #3686
2012-05-02 16:23:18 -07:00
Sebastien Armand
43dc19e00a update exception message so user can know which message has caused the exception 2012-05-02 22:02:53 +08:00
Tobias Schultze
b1de2a2f2f [HttpKernel] fix typo, commit 9fed41 fixed only half of it 2012-05-01 21:35:18 +03:00
Fabien Potencier
8eea5c3d5f merged branch shieldo/fix_exception_message (PR #4173)
Commits
-------

69e0451 [Security] fixed English grammar in exception message

Discussion
----------

[Security] fixed English grammar in exception message
2012-05-01 18:03:29 +02:00
Fabien Potencier
9fed41ee9b [HttpKernel] fixed typo 2012-05-01 18:02:24 +02:00
Fabien Potencier
5bed5f3c2c merged branch willdurand/fix-components (PR #4155)
Commits
-------

c195957 [Components] Tests/Autoloading fixes

Discussion
----------

Fix components

See #4141

----
This PR:

* configures each component to use composer to manage "dev" dependencies instead of env variables;
* adds phpunit configuration file on Filesystem component;
* fixes READMEs.

It's mergeable without any problems, but I would recommend to wait a fix in Composer in order to use `self.version` in `require`/`require-dev` sections.

Note: I kept `suggest` sections because it makes sense but this PR doesn't aim to provide useful explanations for each entry. It could be another PR, not that one.

---------------------------------------------------------------------------

by willdurand at 2012-04-30T20:43:13Z

@fabpot I reviewed each component, one by one. Now `phpunit` always works, even if tests are skipped. A simple `composer install --dev` allows to run the complete test suite. Each commit is well separated from the others. I guess, everything is ok now.

---------------------------------------------------------------------------

by Tobion at 2012-04-30T20:47:00Z

Please squash, as it makes no sense to have the same commit for each component.

---------------------------------------------------------------------------

by fabpot at 2012-05-01T14:26:11Z

Can you squash your commits before I merge? Thanks.

---------------------------------------------------------------------------

by willdurand at 2012-05-01T14:29:38Z

done

---------------------------------------------------------------------------

by fabpot at 2012-05-01T15:48:25Z

It does not seem that the commits are squashed.

---------------------------------------------------------------------------

by willdurand at 2012-05-01T15:54:08Z

done
2012-05-01 17:59:34 +02:00
William DURAND
c1959571ac [Components] Tests/Autoloading fixes
* Switched to Composer to manage "dev" dependencies
* Fixed READMEs
* Excluded vendor in phpunit.xml.dist files
* Fixed message in bootstrap.php files
* Added autoloader for the component itself
2012-05-01 17:51:41 +02:00
Anthon Pang
b2afd9ff46 use require instead of include 2012-05-01 11:33:50 -04:00
Fabien Potencier
462ddfced9 merged branch pulzarraider/httpfoundation_changelog_fix (PR #4169)
Commits
-------

ea3f8c5 [HttpFoundation] added native Redis session handler to CHANGELOG

Discussion
----------

[HttpFoundation] Added native Redis session handler to CHANGELOG

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
2012-05-01 16:21:36 +02:00
Fabien Potencier
53dadbb9d6 [DependencyInjection] fixed a test 2012-05-01 16:19:44 +02:00
Douglas Greenshields
69e0451143 [Security] fixed English grammar in exception message 2012-05-01 14:45:52 +01:00
Fabien Potencier
26f933e7bd fixed CS 2012-05-01 15:23:48 +02:00
Hugo Hamon
9ac8d43dd1 [Security] fixed phpdoc. 2012-05-01 13:15:31 +01:00
Hugo Hamon
a3ecea3ed3 [Security] added some missing phpdoc for AbstractToken::setUser() and UsernamePasswordToken::__construct() methods. 2012-05-01 13:13:14 +01:00
Victor Berchet
a196ca03a5 [Routing] Compiler: remove lazy quantifiers with no effect 2012-05-01 11:56:03 +02:00
Victor Berchet
8232aa150b [Routing] Compiler: fix in the computing of the segment separators 2012-05-01 11:56:03 +02:00
Andrej Hudec
ea3f8c53f9 [HttpFoundation] added native Redis session handler to CHANGELOG 2012-05-01 08:53:36 +02:00
Fabien Potencier
db1d145b35 merged branch 1ed/hungarian-validator-messages (PR #4154)
Commits
-------

fa45f0e [FrameworkBundle] updated hungarian validator messages

Discussion
----------

[FrameworkBundle] updated hungarian validator messages
2012-05-01 07:23:27 +02:00
Anthon Pang
1ed8b720ac Autoloader should not throw exception because PHP will continue to call other registered autoloaders.
Change 'require' to non-fatal '@include' in the event no file is generated.  Let PHP handle the undefined class, natively.
2012-04-30 22:25:24 -04:00
Gábor Egyed
fa45f0e288 [FrameworkBundle] updated hungarian validator messages 2012-04-30 22:20:05 +02:00
Andrej Hudec
991474be12 [HttpKernel] RedisProfilerStorage - Fix falling unit tests when Redis extension is not available 2012-04-30 20:54:41 +02:00
Bilal Amarni
a2b3d3cf00 added cache service definition 2012-04-30 19:01:18 +02:00
Fabien Potencier
59dd4df7f4 bumped Symfony version to 2.0.14-DEV 2012-04-30 18:52:26 +02:00
Fabien Potencier
dbd95683aa merged branch pulzarraider/memcache_profiler_update (PR #4150)
Commits
-------

1f6c8d5 [HttpKernel] Added mock objects for Memcache(d) and Redis
e17217b [HttpKernel] Remove destructive flush() from memcache(d) storage profilers

Discussion
----------

[HttpKernel] Memcache and Redis profiler storage update

Bug fix: no
Feature addition: yes
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -

Changes of this PR:

- change ```purge()``` method of memcache(d) profiler storage to delete only required items and be less destructive,
- mock objects for Redis and Memcache(d) storages were added to make unit tests independent from memcache(d)/redis extensions and memcache(d)/redis servers running on localhost.
2012-04-30 17:38:04 +02:00
Fabien Potencier
33c7743063 merged branch adanlobato/master (PR #4130)
Commits
-------

42a73f4 Typo fix

Discussion
----------

[Typo] Removed extra 's'
2012-04-30 17:33:53 +02:00
Uwe Jäger
7fe236a44d [Security] Configure ports in RetryAuthenticationEntryPoint according to router settings
Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes

Currently the ports in RetryAuthenticationEntryPoint are fixed in the constructor call, there is no way to set them when you run your application on different ports.

With this fix the ports are taken from the router configuration.
2012-04-30 16:39:18 +02:00
Fabien Potencier
b66b6fc99e updated VERSION for 2.0.13 2012-04-30 15:31:20 +02:00
John Kary
5b92b9ed43 [Console] Selectively output to STDOUT or OUTPUT stream
Addresses issues with writing console output for IBM i5 Series (OS400).
The normal QP2TERM shell outputs garbage text when attempting to write
directly to STDOUT, likely because of EBCDIC character-encoding used
on IBM platforms. Writing to the OUTPUT mimics using 'echo' or 'print'
and prints properly in the console.

Fixes #1434
2012-04-29 14:28:50 -05:00
Fabien Potencier
195a1d36c0 merged branch stof/fix_monolog_webprocessor (PR #4151)
Commits
-------

689a40d [MonologBridge] Fixed the WebProcessor

Discussion
----------

[MonologBridge] Fixed the WebProcessor

The WebProcessor can now be registered as a kernel.request listener to
get the request instead of passing it as a constructor argument, which
was broken as the request is not yet available when the logger is
instantiated.

I'm sending it to 2.0 even if the way to use the processor is not BC as this is really a bugfix. The processor was simply unusable with the previous way. Tell me if you think it should only be fixed for 2.1

Fixes #3311
2012-04-29 18:49:15 +02:00
Andrej Hudec
1f6c8d5c7e [HttpKernel] Added mock objects for Memcache(d) and Redis 2012-04-29 01:33:14 +02:00
Ismael Ambrosi
7dfd410481 Fixes typos 2012-04-28 00:51:32 -03:00
Andrej Hudec
e17217b14a [HttpKernel] Remove destructive flush() from memcache(d) storage profilers 2012-04-27 22:40:33 +02:00
Fabien Potencier
4ac3bddb5d Revert "merged branch Tobion/patch-3 (PR #4136)"
This reverts commit 606ddf48c5, reversing
changes made to 00e7a94a8c.
2012-04-27 19:55:49 +02:00
Fabien Potencier
9fbf8555f0 Revert "merged branch Seldaek/master (PR #4133)"
This reverts commit 00e7a94a8c, reversing
changes made to a01dec00f4.
2012-04-27 19:55:40 +02:00
Fabien Potencier
091ede2dd1 merged branch bschussek/issue3994 (PR #4046)
Commits
-------

246c885 [Form] Fixed: Default value of 'error_bubbling' is now determined by the 'single_control' option
d3bb4d0 [Form] Renamed option 'primitive' to 'single_control'
167e64f [Form] Fixed: Field attributes are not rendered in the label anymore. Label attributes are now passed in "label_attr"
68018a1 [Form] Dropped useless test that is guaranteed by OptionsParser tests and that needs to be adapted very often
649752c [Form] Fixed: CSRF token was not displayed on empty complex forms
c623fcf [Form] Fixed: CSRF protection did not run if token was missing
eb75ab1 [Form] Fixed results of the FieldType+FormType merge.

Discussion
----------

[Form] Fixed errors introduced in the FieldType+FormType merge

Bug fix: yes
Feature addition: no
Backwards compatibility break: yes
Symfony2 tests pass: yes
Fixes the following tickets: #3994, #4000, #2294, #4118
Todo: -

![Travis Build Status](https://secure.travis-ci.org/bschussek/symfony.png?branch=issue3994)

---------------------------------------------------------------------------

by Tobion at 2012-04-22T15:39:20Z

`primitive` is a pretty abstract option name. It depends on the person what he considers primitive. Maybe more explicit naming or better documentation what it means.

---------------------------------------------------------------------------

by bschussek at 2012-04-22T15:47:29Z

Better suggestions?

The distinction here is between primitive and complex forms, where primitive forms are such forms that can be represented by a single HTML tag. This obviously needs to be documented.

---------------------------------------------------------------------------

by Tobion at 2012-04-22T15:49:45Z

Maybe `single_widget` or something like that.

---------------------------------------------------------------------------

by vicb at 2012-04-23T13:09:43Z

@Tobion @bschussek would `elementary` be better than `primitive` ?

---------------------------------------------------------------------------

by vicb at 2012-04-23T13:17:04Z

and `compound \ composite` better than `complex` ?

---------------------------------------------------------------------------

by bschussek at 2012-04-23T14:08:33Z

@vicb I fail to see how elementary/compound is easier to understand than primitive/complex. Maybe single_widget, but what's the opposite of this case? multi_widget?

---------------------------------------------------------------------------

by vicb at 2012-04-23T14:15:09Z

Actually I am fine with anything... as long as it is documented.

---------------------------------------------------------------------------

by bschussek at 2012-04-23T14:22:31Z

Still I think that this unveals a more profound naming problem. How do we (also in the documentation) name forms with children (formerly "forms") and forms without children (formerly "fields")?

Should we refer to them as

* forms and fields?
* complex and primitive forms?
* ...

We must first answer this question before we can find an intuitive option name. If the documentation always switches between different terminologies, neither will it be understandable nor will this option be easy to remember.

---------------------------------------------------------------------------

by vicb at 2012-04-23T15:10:32Z

> Still I think that this unveals a more profound naming problem. How do we (also in the documentation) name forms with children (formerly "forms") and forms without children (formerly "fields")?

To make it clear, I would rather say forms that **can have** children and forms that **can not have** children (i.e. Empty collections have no children but they can have and this is reason why you have to introduce those options, right ? - that could be a good example for the doc).

It will probably be better to refer to "complex" / "primitive" forms in the doc (and use the "form" / "field" terms to explain them).

Note: I think @Tobion concern is that "primitive" / "complex" could be pejorative terms (this is why I have proposed "elementary" / "compound").

---------------------------------------------------------------------------

by Tobion at 2012-04-23T16:00:54Z

1. primitive/complex is subjective (and could be pejorative too)
2. elementary/compound is more explicit so probably better than primitive/complex
3. I dislike this option in general. Does it make sense to change this option from a user perspective? I guess it's always the same as long as the widget structure stays the same. So it should be resolved at a higher level dynamically from the widget structure and not exposed to any configuration.
4. In documentation I would use the terms forms and fields. Because all people with HTML knowledge will understand that fields cannot have sub-fields whereas forms can. But since this distinction is not findable in code, it should be mentioned that all these are implemented as a form hierarchy.

---------------------------------------------------------------------------

by mvrhov at 2012-04-23T16:02:00Z

how about simple and complex?

---------------------------------------------------------------------------

by bschussek at 2012-04-23T16:06:33Z

@Tobion It does not make sense to change this option from the user perspective, still the overloading type has to propagate to FormType whether it is a form or a field, so that the default behaviour is correct.

A second option how to implement this is to add a method `isField` to FormTypeInterface that can be overloaded and receives the options. I don't really like to introduce new methods here unless absolutely required.

What about renaming the option "primitive" to "is_field"? The blocks in the template would then be named "form_widget_field" and "form_widget_form".

---------------------------------------------------------------------------

by tristanbes at 2012-04-25T14:01:06Z

Oh, I should've seen this before, i thought I was doing something wrong. (empty collections gets an input field bug)

Please big :UP: on this. When will it be merged ? @bschussek

---------------------------------------------------------------------------

by Tobion at 2012-04-25T15:30:28Z

+1 for "is_field" and "form_widget_field" but I would rather use "form_widget_compound" instead of "form_widget_form" which is quite strange.

---------------------------------------------------------------------------

by bschussek at 2012-04-26T16:34:04Z

@Tobion "simple" and "compound" then?

---------------------------------------------------------------------------

by Tobion at 2012-04-26T16:49:58Z

no "field" and "compound"

---------------------------------------------------------------------------

by bschussek at 2012-04-26T17:17:02Z

I don't like "field" for a simple reason: Consider the "date" type. We are typically speaking of the "date" field there. But technically, the "date" field is a compound field. So?

---------------------------------------------------------------------------

by Tobion at 2012-04-26T21:17:37Z

I don't understand the open question. You proposed "is_field" and "form_widget_field" yourself. So calling the template block "form_widget_field" is a comprehensible consequence of "is_field". I wouldn't call the date type with multiple inputs a field.

---------------------------------------------------------------------------

by tristanbes at 2012-04-26T21:52:39Z

We should take a decision cause right here i got all my forms that are broken because of the empty collection rendering as input field :-).

I guess we are many in that situation.

---------------------------------------------------------------------------

by bschussek at 2012-04-27T08:28:16Z

I renamed "primitive" to "single_control" now to match with the HTML specification which names all input elements (input, select etc.) "controls". The opposite is now "compound".

Meanwhile, I added a fix for #4118.

@fabpot This is ready for merge now.

---------------------------------------------------------------------------

by Tobion at 2012-04-27T10:22:49Z

Hm, I know naming things is hard and sometimes not really important. But since users need to know which block to override, it is essential to make it clear. I think there is still one issue.
The block is named `form_widget_single_control` in order, as you said, to abstract away if it's an input, select etc. But in fact it can only render `input` and nothing else. So this is misleading.
So you could also simply name it `form_widget_input`.
Apart from that I agree with everything.
2012-04-27 19:13:34 +02:00
Fabien Potencier
606ddf48c5 merged branch Tobion/patch-3 (PR #4136)
Commits
-------

5a85c2a bump master branch to version 2.2

Discussion
----------

bump master branch to version 2.2
2012-04-27 17:57:52 +02:00
Tobias Schultze
5a85c2a0e5 bump master branch to version 2.2 2012-04-27 15:58:17 +03:00
Jordi Boggiano
00c4267726 Update branch aliases 2012-04-27 12:47:50 +02:00
Bernhard Schussek
246c8852c8 [Form] Fixed: Default value of 'error_bubbling' is now determined by the 'single_control' option 2012-04-27 10:24:06 +02:00
Adán Lobato
42a73f4e51 Typo fix 2012-04-27 10:21:46 +02:00
Bernhard Schussek
d3bb4d085c [Form] Renamed option 'primitive' to 'single_control' 2012-04-27 10:18:25 +02:00
Bernhard Schussek
167e64f799 [Form] Fixed: Field attributes are not rendered in the label anymore. Label attributes are now passed in "label_attr" 2012-04-27 09:48:34 +02:00