Commit Graph

1191 Commits

Author SHA1 Message Date
Aurelijus Rožėnas
b30083cebe Updated lithuanian validator translation: changed vartotojas to naudotojas as it is more proper term. 2013-12-31 11:35:30 +01:00
florianv
3c4de45ce9 [Validator] Added Doctrine cache 2013-12-30 06:04:40 +01:00
Fabien Potencier
7d80045b22 Merge branch '2.4'
* 2.4:
  fixed typos
  Fixed deprecated method calls
  Add testing against HHVM at Travis-CI
  Fixed typo
  Fixed typo
  Fixed typo
  fixed acronyms
  [Validator] Fixed IBAN validator with 0750447346 value

Conflicts:
	src/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php
2013-12-28 22:40:48 +01:00
Fabien Potencier
3a1d2200b0 Merge branch '2.3' into 2.4
* 2.3:
  fixed typos
  Fixed deprecated method calls
  Add testing against HHVM at Travis-CI
  Fixed typo
  Fixed typo
  fixed acronyms
  [Validator] Fixed IBAN validator with 0750447346 value

Conflicts:
	src/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php
2013-12-28 22:39:51 +01:00
Fabien Potencier
c33341df09 bug #9850 [Validator] Fixed IBAN validator with 0750447346 value (stewe)
This PR was merged into the 2.3 branch.

Discussion
----------

[Validator] Fixed IBAN validator with 0750447346 value

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

Commits
-------

cf88ba5 [Validator] Fixed IBAN validator with 0750447346 value
2013-12-28 14:42:37 +01:00
Fabien Potencier
f9dff0616b Merge branch '2.4'
* 2.4:
  fixed CS
  fixed a typo
  fixed CS for lambdas
  [Yaml] fixed some license headers
  Fixes message value for objects
  Check for hour, minute & second validity
  avoid tables to have apparently long blank line breaks and be too far appart for long nested array params
  fixed various typos
  [Filesystem] Fixed mirror for symlinks
  [Validator] Removed duplicated test for IBAN in data provider
2013-12-28 09:12:58 +01:00
Fabien Potencier
d87d8daa36 Merge branch '2.3' into 2.4
* 2.3:
  fixed a typo
  fixed CS for lambdas
  [Yaml] fixed some license headers
  Fixes message value for objects
  Check for hour, minute & second validity
  fixed various typos
  [Filesystem] Fixed mirror for symlinks
  [Validator] Removed duplicated test for IBAN in data provider

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
	src/Symfony/Component/Console/Application.php
	src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
	src/Symfony/Component/Filesystem/Tests/FilesystemTest.php
	src/Symfony/Component/HttpKernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php
2013-12-28 09:12:03 +01:00
Fabien Potencier
35b407f016 fixed CS for lambdas 2013-12-28 08:46:05 +01:00
Jon Gotlin
78eeba8f01 Fixes message value for objects 2013-12-27 22:53:58 +01:00
Fabien Potencier
694bd72611 Merge branch '2.4'
* 2.4: (44 commits)
  [FrameworkBundle] Add missing license headers
  Fix parent serialization of user object
  [DependencyInjection] fixed typo
  added condition to avoid skipping tests on JSON_PRETTY support
  add memcache, memcached, and mongodb extensions to run skipped tests
  [DependencyInjection] Fixed support for backslashes in service ids.
  fix #9356 [Security] Logger should manipulate the user reloaded from provider
  [FrameworkBundle] Added extra details in XMLDescriptor to improve container description
  fixed CS
  Crawler default namespace fix
  [BrowserKit] fixes #8311 CookieJar is totally ignorant of RFC 6265 edge cases
  [HttpFoundation] fixed constants that do exist in 2.3 (only in 2.4)
  fix 5528 let ArrayNode::normalizeValue respect order of value array provided
  fix #7243 allow 0 as arraynode name
  Fixed issue in BaseDateTimeTransformer when invalid timezone cause Transformation filed exception (closes #9403).
  BinaryFileResponse should also return 416 or 200 on some range-requets
  fix deprecated usage and clarify constructor defaults for number formatter
  Bumping dependency to ProxyManager to allow testing against the new 0.5.x branch changes
  Do normalization on tag options
  bumped Symfony version to 2.3.9
  ...
2013-12-26 08:59:17 +01:00
Fabien Potencier
ef3ae9cf45 Merge branch '2.3' into 2.4
* 2.3: (31 commits)
  Fix parent serialization of user object
  [DependencyInjection] fixed typo
  add memcache, memcached, and mongodb extensions to run skipped tests
  [DependencyInjection] Fixed support for backslashes in service ids.
  fix #9356 [Security] Logger should manipulate the user reloaded from provider
  [BrowserKit] fixes #8311 CookieJar is totally ignorant of RFC 6265 edge cases
  [HttpFoundation] fixed constants that do exist in 2.3 (only in 2.4)
  fix 5528 let ArrayNode::normalizeValue respect order of value array provided
  fix #7243 allow 0 as arraynode name
  Fixed issue in BaseDateTimeTransformer when invalid timezone cause Transformation filed exception (closes #9403).
  BinaryFileResponse should also return 416 or 200 on some range-requets
  Do normalization on tag options
  bumped Symfony version to 2.3.9
  updated VERSION for 2.3.8
  update CONTRIBUTORS for 2.3.8
  updated CHANGELOG for 2.3.8
  [Filesystem] Changed the mode for a target file in copy() to be write only.
  [Console] fixed CS
  fixed TableHelper when cell value has new line
  Improved and fixed grammar mistakes. Added pluralized messages
  ...

Conflicts:
	src/Symfony/Component/BrowserKit/Cookie.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Routing/Matcher/UrlMatcher.php
2013-12-26 08:59:03 +01:00
Stefano Sala
35610d0e8c [Validator] Removed duplicated test for IBAN in data provider 2013-12-23 19:08:15 +01:00
Stefano Sala
cf88ba58a6 [Validator] Fixed IBAN validator with 0750447346 value 2013-12-23 19:04:13 +01:00
benatespina
37962a6e94 Improved and fixed grammar mistakes. Added pluralized messages 2013-12-15 18:13:25 +01:00
gondo
31c5979152 Update validators.cs.xlf
fixed CZ translation.
there is not such a word as "null" in czech
2013-12-15 17:54:46 +01:00
Javier Eguiluz
c9c21a51ad [Validator] updated the Spanish translation of the validator strings 2013-12-14 17:08:30 +01:00
Arturas Smorgun
e2ef38c806 Fix mistype which slipped through initial proof reading. 2013-12-12 18:03:36 +01:00
Fabien Potencier
c4bf848c5d bug #9722 [Validator]Fixed getting wrong msg when value is an object in Exception (aitboudad)
This PR was merged into the 2.3 branch.

Discussion
----------

[Validator]Fixed getting wrong msg when value is an object in Exception

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

Commits
-------

cdb5ae0 [Validator]Fixed getting wrong msg when value is an object in UnexpectedTypeException
2013-12-12 17:27:40 +01:00
Arturas Smorgun
923640ac4a Add missing lithuanian validator translations 2013-12-12 17:17:03 +01:00
Fabien Potencier
de5790314d Merge branch '2.4'
* 2.4:
  [Debug] fixed tests
  ErrorHandlerTest: restore_error_handler() on assertion failure
  Fixed typo
  [validator] throw an exception if isn't an instance of ConstraintValidatorInterface.
  Reset the box model to content-box in the web debug toolbar
  [FrameworkBundle] Allowed "0" as a checkbox value in the php template.
  raising delta on stopwatch as travis really breaks with less than 35
  Switched to correct gender of "Token"
  bumped Symfony version to 2.4.1
  updated VERSION for 2.4.0
  updated CHANGELOG for 2.4.0
  fixed typos in several translations
  [HttpKernel] use static late binding when dumping out container

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
2013-12-12 17:07:18 +01:00
Fabien Potencier
4147141e1f Merge branch '2.3' into 2.4
* 2.3:
  Fixed typo
  [validator] throw an exception if isn't an instance of ConstraintValidatorInterface.
  Reset the box model to content-box in the web debug toolbar
  [FrameworkBundle] Allowed "0" as a checkbox value in the php template.
  raising delta on stopwatch as travis really breaks with less than 35
  Switched to correct gender of "Token"
  fixed typos in several translations
  [HttpKernel] use static late binding when dumping out container
2013-12-12 17:06:47 +01:00
Eduardo Conceição
113831ef11 Fixed typo 2013-12-10 14:47:08 +00:00
Abdellatif AitBoudad
cdb5ae0ede [Validator]Fixed getting wrong msg when value is an object in UnexpectedTypeException 2013-12-07 14:24:25 +00:00
Christian Raue
8209a7f95b fixed typos in several translations 2013-12-03 11:59:03 +01:00
Fabien Potencier
db4f551527 Merge branch '2.4'
* 2.4:
  [Debug] fixed unit tests
  Avoid notice from being *eaten* by fatal error.
  Teardown used wrong property
  Modified guessDefaultEscapingStrategy to not escape txt templates
  Fix DateType for 32bits computers.
  Fixed the registration of validation.xml file when the form is disabled
  fixed lexing expression ending with spaces
  Fixes #9633, Removed dependency to Symfony\Bundle\FrameworkBundle\Tests\TestCase
  [Validator] Replaced inexistent interface.
  [HttpKernel] Fix profiler event-listener usage outside request stack context
  When getting the session's id, check if the session is not closed
  Fix undefined offset when formatting namespace suggestions
  Adjusting CacheClear Warmup method to namespaced kernels
2013-11-28 11:27:35 +01:00
Fabien Potencier
1a33e1b18b Merge branch '2.3' into 2.4
* 2.3:
  [Debug] fixed unit tests
  Avoid notice from being *eaten* by fatal error.
  Teardown used wrong property
  Modified guessDefaultEscapingStrategy to not escape txt templates
  Fix DateType for 32bits computers.
  Fixed the registration of validation.xml file when the form is disabled
  Fixes #9633, Removed dependency to Symfony\Bundle\FrameworkBundle\Tests\TestCase
  [Validator] Replaced inexistent interface.
  When getting the session's id, check if the session is not closed
  Adjusting CacheClear Warmup method to namespaced kernels

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/CacheClearCommand.php
2013-11-28 11:27:26 +01:00
Jakub Zalas
8fd3256248 [Validator] Replaced inexistent interface.
ClassMetadataFactoryInterface was removed in 2.3 and replaced with MetadataFactoryInterface.
2013-11-28 00:06:02 +00:00
Fabien Potencier
1fcc7c50e1 Merge branch '2.4'
* 2.4:
  [HttpKernel] fixed regression introduced in 2.4 in the base DataCollector class. Added more unit tests coverage for the RequestDataCollector object.
  Fixed mistake in upgrade docu
  bumped Symfony version to 2.4.0
  updated VERSION for 2.4.0-RC1
  updated CHANGELOG for 2.4.0-RC1
  Container::camelize also takes backslashes into consideration
  fixed typos
  fixed @expectedException class names
  Fix an issue when overriding Client::setServerParameters() and using the getContainer() method in it.
  fixed some typos
  fixed @expectedException class names
  Typo and better wording for german validator translation
2013-11-26 17:42:52 +01:00
Fabien Potencier
990267f959 Merge branch '2.3' into 2.4
* 2.3:
  Fixed mistake in upgrade docu
  Container::camelize also takes backslashes into consideration
  fixed typos
  fixed @expectedException class names
  fixed some typos
  fixed @expectedException class names
  Typo and better wording for german validator translation
2013-11-26 17:40:27 +01:00
Fabien Potencier
4aab341d59 updated version to 2.5 2013-11-24 21:17:07 +01:00
Daniel Tschinder
2fe9cd351a Typo and better wording for german validator translation 2013-11-24 19:25:32 +01:00
Fabien Potencier
43becff31d Merge branch '2.3'
* 2.3: (24 commits)
  Add german translation for several validators (Greater/Equal/Less)
  No Entity Manager defined exception
  fixed CS
  [Acl] Fix for issue #9433
  [Validator] fix docblock typos
  [DependencyInjection] removed the unused Reference and Parameter classes use statements from the compiled container class
  Removed useless check if self::$trustProxies is set
  Fix mistake in translation's service definition.
  if handler_id is identical to null fix
  CS fix
  Fixed ModelChoiceList tests in Propel1 bridge.
  [AclProvider] Fix incorrect behaviour when partial results returned from cache
  Check if the pipe array is empty before calling stream_select()
  [Intl] fixed datetime test as described in #9455
  bumped Symfony version to 2.3.8
  updated VERSION for 2.3.7
  updated CHANGELOG for 2.3.7
  re-factor Propel1 ModelChoiceList
  [Form] Added method Form::getClickedButton() to remove memory leak in FormValidator
  [Locale] fixed the failing test described in #9455
  ...

Conflicts:
	src/Symfony/Bridge/Propel1/Form/ChoiceList/ModelChoiceList.php
	src/Symfony/Bridge/Propel1/Tests/Fixtures/ItemQuery.php
	src/Symfony/Bridge/Propel1/Tests/Form/ChoiceList/ModelChoiceListTest.php
	src/Symfony/Bridge/Propel1/Tests/Propel1TestCase.php
	src/Symfony/Component/Form/Tests/CompoundFormTest.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Process/Process.php
2013-11-23 22:17:02 +01:00
Fabien Potencier
dfc54f9e96 Merge branch '2.2' into 2.3
* 2.2:
  No Entity Manager defined exception
  fixed CS
  [Acl] Fix for issue #9433
  [Validator] fix docblock typos
  [DependencyInjection] removed the unused Reference and Parameter classes use statements from the compiled container class
  Fix mistake in translation's service definition.
  if handler_id is identical to null fix
  CS fix
  Fixed ModelChoiceList tests in Propel1 bridge.
  [AclProvider] Fix incorrect behaviour when partial results returned from cache
  Check if the pipe array is empty before calling stream_select()
  re-factor Propel1 ModelChoiceList
  [Locale] fixed the failing test described in #9455
  [Process] fix phpdoc and timeout of 0
  bug #9445 [BrowserKit] fixed protocol-relative url redirection

Conflicts:
	src/Symfony/Component/BrowserKit/Tests/ClientTest.php
	src/Symfony/Component/Locale/Tests/Stub/StubIntlDateFormatterTest.php
2013-11-23 22:11:41 +01:00
Daniel Tschinder
11fd126f15 Add german translation for several validators (Greater/Equal/Less) 2013-11-23 18:11:09 +01:00
Fabien Potencier
b74a887cd9 minor #9487 unify constructor initialization style throughout symfony (Tobion)
This PR was merged into the master branch.

Discussion
----------

unify constructor initialization style throughout symfony

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

In almost all classes symfony uses property initialization when the value is static. Constructor initialization is only used for things that actually have logic, like passed parameters or dynamic values. IMHO it makes the code much more readable because property definition, phpdoc and default value is in one place. Also one can easily see what the constructor implements for logic like overridden default value of a parent class. Otherwise the real deal is just hidden behind 10 property initializations. One more advantage is that it requires less code. As you can see, the code was almost cut in half (210 additions and 395 deletions).
I unified it accordingly across symfony. Sometimes it was [not even consistent within one class](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Config/Definition/BaseNode.php#L32). At the same time I recognized some errors like missing parent constructor call, or undefined properties or private properties that are not even used.

I then realized that a few Kernel tests were not passing because they were deeply implementation specific like modifying booted flag with a custom `KernelForTest->setIsBooted();`. I improved and refactored the kernel tests in the __second commit__.

__Third commit__ unifies short ternary operator, e.g. `$foo ?: new Foo()`. __Forth commit__ unifies missing parentheses, e.g. `new Foo()`.

Commits
-------

077a089 unify missing parentheses
2888594 unify short ternary operator
2a9daff [HttpKernel] better written kernel tests
111ac18 unify constructor initialization style throughout symfony
2013-11-22 18:42:00 +01:00
Fabien Potencier
21fa63532e bug #9352 [Intl] make currency bundle merge fallback locales when accessing data, ... (shieldo)
This PR was merged into the 2.3 branch.

Discussion
----------

[Intl] make currency bundle merge fallback locales when accessing data, ...

...allowing use of country-specific locales

Fixes #9262.

Commits
-------

edc287b [Intl] make currency bundle merge fallback locales when accessing data, allowing use of country-specific locales
2013-11-21 07:11:51 +01:00
Douglas Greenshields
8d32c9cd0b [Validator] fix docblock typos 2013-11-20 18:57:15 +00:00
Tobias Schultze
077a089b4e unify missing parentheses 2013-11-14 15:30:56 +01:00
Fabien Potencier
587f355137 Merge branch '2.3'
* 2.3: (25 commits)
  bumped Symfony version to 2.2.11
  updated VERSION for 2.2.10
  update CONTRIBUTORS for 2.2.10
  updated CHANGELOG for 2.2.10
  fixed version
  Request::overrideGlobals() may call invalid ini value
  Force Luhn Validator to only work with strings
  Fixed bug with lazy services
  [Translation] fixed the error in the dumper test as described in #9475
  deleted mixing string concatenation inside a sprintf
  "__call()" should be displayed only if $this->magicCall is true
  [Console] fix phpdoc and constructor default value
  Add media-query for printing: Do not print the toolbar.
  Fix ProgressHelper redraw when redrawFreq is greater than 1
  Update toolbar.css.twig
  slovenian translations fixed
  slovenian translations fixed
  [DependencyInjection] fixed YamlDumper did not make services private.
  [FrameworkBundle] fix routing container parameter exception message
  [Form] fix and unify phpdoc
  ...

Conflicts:
	src/Symfony/Component/Console/Helper/ProgressHelper.php
	src/Symfony/Component/DependencyInjection/ContainerBuilder.php
	src/Symfony/Component/HttpKernel/Kernel.php
2013-11-13 22:30:16 +01:00
Fabien Potencier
59a4313a52 Merge branch '2.2' into 2.3
* 2.2:
  bumped Symfony version to 2.2.11
  updated VERSION for 2.2.10
  update CONTRIBUTORS for 2.2.10
  updated CHANGELOG for 2.2.10
  fixed version
  Request::overrideGlobals() may call invalid ini value
  Force Luhn Validator to only work with strings
  [Translation] fixed the error in the dumper test as described in #9475
  [Console] fix phpdoc and constructor default value

Conflicts:
	src/Symfony/Component/Console/Helper/ProgressHelper.php
	src/Symfony/Component/HttpKernel/Kernel.php
2013-11-13 22:27:40 +01:00
Tobias Schultze
111ac18232 unify constructor initialization style throughout symfony 2013-11-11 19:40:07 +01:00
Daniel Richter
1e410c7bcb Force Luhn Validator to only work with strings
The Luhn Validator fails to work with float or large integers (internally turned into float by php, depending on precision setting).
This is problematic because developers might use number or integer form fields to capture credit card data, which will lead to a validation error even though the form input itself was valid. This commit makes validator throw UnexpectedTypeException on non-string input to avoid this confusion.
2013-11-09 16:57:10 +01:00
Tobias Schultze
7366901691 adjust doctrine dependencies 2013-11-07 14:20:52 +01:00
Peter Kokot
08191303cd slovenian translations fixed 2013-11-04 02:00:27 +01:00
Peter Kokot
1ec42ec590 slovenian translations fixed 2013-11-04 01:55:20 +01:00
Fabien Potencier
9138e1a64c Merge branch '2.3'
* 2.3:
  fixed CS
  fixed CS
  [HttpKernel] fixed memory limit display in MemoryDataCollector
  Fixed the error handling when decoding invalid XML to avoid a Warning
  [Form] Fixed: The "data" option is taken into account even if it is NULL
  [DomCrawler] [HttpFoundation] Make `Content-Type` attributes identification case-insensitive

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Tests/Templating/TimedPhpEngineTest.php
2013-10-30 09:31:46 +01:00
Fabien Potencier
43f749e507 Merge branch '2.2' into 2.3
* 2.2:
  fixed CS
  Fixed the error handling when decoding invalid XML to avoid a Warning
  [Form] Fixed: The "data" option is taken into account even if it is NULL
  [DomCrawler] [HttpFoundation] Make `Content-Type` attributes identification case-insensitive

Conflicts:
	src/Symfony/Component/Form/Extension/Core/Type/FormType.php
2013-10-30 09:28:22 +01:00
Fabien Potencier
0211c387d3 fixed CS 2013-10-30 09:27:36 +01:00
Douglas Greenshields
edc287bc5b [Intl] make currency bundle merge fallback locales when accessing data, allowing use of country-specific locales 2013-10-20 17:06:39 +01:00
Bernhard Schussek
cccb1db2b2 [Validator] Simplified usage of the Callback constraint 2013-09-26 13:52:04 +02:00
Fabien Potencier
ca62f65887 merged branch fabpot/expression-engine (PR #8913)
This PR was merged into the master branch.

Discussion
----------

New Component: Expression Language

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8850, #7352
| License       | MIT
| Doc PR        | not yet

TODO:

 - [ ] write documentation
 - [x] add tests for the new component
 - [x] implement expression support for access rules in the security component
 - [x] find a better character/convention for expressions in the YAML format
 - [x] check the performance of the evaluation mode
 - [x] better error messages in the evaluation mode
 - [x] add support in the Routing
 - [x] add support in the Validator

The ExpressionLanguage component provides an engine that can compile and
evaluate expressions.

An expression is a one-liner that returns a value (mostly, but not limited to, Booleans).

It is a strip-down version of Twig (only the expression part of it is
implemented.) Like Twig, the expression is lexed, parsed, and
compiled/evaluated. So, it is immune to external injections by design.

If we compare it to Twig, here are the main big differences:

 * only support for Twig expressions
 * no ambiguity for calls (foo.bar is only valid for properties, foo['bar'] is only valid for array calls, and foo.bar() is required for method calls)
 * no support for naming conventions in method calls (if the method is named getFoo(), you must use getFoo() and not foo())
 * no notion of a line for errors, but a cursor (we are mostly talking about one-liners here)
 * removed everything specific to the templating engine (like output escaping or filters)
 * no support for named arguments in method calls
 * only one extension point with functions (no possibility to define new operators, ...)
 * and probably even more I don't remember right now
 * there is no need for a runtime environment, the compiled PHP string is self-sufficient

An open question is whether we keep the difference betweens arrays and hashes.

The other big difference with Twig is that it can work in two modes (possible
because of the restrictions described above):

 * compilation: the expression is compiled to PHP and is self-sufficient
 * evaluation: the expression is evaluated without being compiled to PHP (the node tree produced by the parser can be serialized and evaluated afterwards -- so it can be saved on disk or in a database to speed up things when needed)

Let's see a simple example:

```php
$language = new ExpressionLanguage();

echo $language->evaluate('1 + 1');
// will echo 2

echo $language->compile('1 + 2');
// will echo "(1 + 2)"
```

The language supports:

 * all basic math operators (with precedence rules):
    * unary: not, !, -, +
    * binary: or, ||, and, &&, b-or, b-xor, b-and, ==, ===, !=, !==, <, >, >=, <=, not in, in, .., +, -, ~, *, /, %, **

 * all literals supported by Twig: strings, numbers, arrays (`[1, 2]`), hashes
   (`{a: "b"}`), Booleans, and null.

 * simple variables (`foo`), array accesses (`foo[1]`), property accesses
   (`foo.bar`), and method calls (`foo.bar(1, 2)`).

 * the ternary operator: `true ? true : false` (and all the shortcuts
   implemented in Twig).

 * function calls (`constant('FOO')` -- `constant` is the only built-in
   functions).

 * and of course, any combination of the above.

The compilation is better for performances as the end result is just a plain PHP string without any runtime. For the evaluation, we need to tokenize, parse, and evaluate the nodes on the fly. This can be optimized by using a `ParsedExpression` or a `SerializedParsedExpression` instead:

```php
$nodes = $language->parse($expr, $names);
$expression = new SerializedParsedExpression($expr, serialize($nodes));

// You can now store the expression in a DB for later reuse

// a SerializedParsedExpression can be evaluated like any other expressions,
// but under the hood, the lexer and the parser won't be used at all, so it''s much faster.
$language->evaluate($expression);
```
That's all folks!

I can see many use cases for this new component, and we have two use cases in
Symfony that we can implement right away.

## Using Expressions in the Service Container

The first one is expression support in the service container (it would replace
#8850) -- anywhere you can pass an argument in the service container, you can
use an expression:

```php
$c->register('foo', 'Foo')->addArgument(new Expression('bar.getvalue()'));
```

You have access to the service container via `this`:

    container.get("bar").getvalue(container.getParameter("value"))

The implementation comes with two functions that simplifies expressions
(`service()` to get a service, and `parameter` to get a parameter value). The
previous example can be simplified to:

    service("bar").getvalue(parameter("value"))

Here is how to use it in XML:

```xml
<parameters>
    <parameter key="value">foobar</parameter>
</parameters>
<services>
    <service id="foo" class="Foo">
        <argument type="expression">service('bar').getvalue(parameter('value'))</argument>
    </service>
    <service id="bar" class="Bar" />
</services>
```

and in YAML (I chose the syntax randomly ;)):

```yaml
parameters:
    value: foobar

services:
    bar:
        class: Bar

    foo:
        class: Foo
        arguments: [@=service("bar").getvalue(parameter("value"))]
```

When using the container builder, Symfony uses the evaluator, but with the PHP
dumper, the compiler is used, and there is no overhead as the expression
engine is not needed at runtime. The expression above would be compiled to:

```php
$this->get("bar")->getvalue($this->getParameter("value"))
```

## Using Expression for Security Access Control Rules

The second use case in Symfony is for access rules.

As we all know, the way to configure the security access control rules is confusing, which might lead to insecure applications (see http://symfony.com/blog/security-access-control-documentation-issue for more information).

Here is how the new `allow_if` works:

```yaml
access_control:
    - { path: ^/_internal/secure, allow_if: "'127.0.0.1' == request.getClientIp() or has_role('ROLE_ADMIN')" }
```

This one restricts the URLs starting with `/_internal/secure` to people browsing from the localhost. Here, `request` is the current Request instance. In the expression, there is access to the following variables:

 * `request`
 * `token`
 * `user`

And to the following functions:

 * `is_anonymous`
 * `is_authenticated`
 * `is_fully_authenticated`
 * `is_rememberme`
 * `has_role`

You can also use expressions in Twig, which works well with the `is_granted` function:

```jinja
{% if is_granted(expression('has_role("FOO")')) %}
   ...
{% endif %}
```

## Using Expressions in the Routing

Out of the box, Symfony can only match an incoming request based on some pre-determined variables (like the path info, the method, the scheme, ...). But some people want to be able to match on more complex logic, based on other information of the Request object. That's why we introduced `RequestMatcherInterface` recently (but we no default implementation in Symfony itself).

The first change I've made (not related to expression support) is implement this interface for the default `UrlMatcher`. It was simple enough.

Then, I've added a new `condition` configuration for Route objects, which allow you to add any valid expression. An expression has access to the `request` and to the routing `context`.

Here is how one would configure it in a YAML file:

```yaml
hello:
    path: /hello/{name}
    condition: "context.getMethod() in ['GET', 'HEAD'] and request.headers.get('User-Agent') =~ '/firefox/i'"
```

Why do I keep the context as all the data are also available in the request? Because you can also use the condition without using the RequestMatcherInterface, in which case, you don't have access to the request. So, the previous example is equivalent to:

```yaml
hello:
    path: /hello/{name}
    condition: "request.getMethod() in ['GET', 'HEAD'] and request.headers.get('User-Agent') =~ '/firefox/i'"
```

When using the PHP dumper, there is no overhead as the condition is compiled. Here is how it looks like:

```php
// hello
if (0 === strpos($pathinfo, '/hello') && preg_match('#^/hello/(?P<name>[^/]++)$#s', $pathinfo, $matches) && (in_array($context->getMethod(), array(0 => "GET", 1 => "HEAD")) && preg_match("/firefox/i", $request->headers->get("User-Agent")))) {
    return $this->mergeDefaults(array_replace($matches, array('_route' => 'hello')), array ());
}
```

Be warned that conditions are not taken into account when generating a URL.

## Using Expressions in the Validator

There is a new Expression constraint that you can put on a class. The expression is then evaluated for validation:

```php
use Symfony\Component\Validator\Constraints as Assert;

/**
 * @Assert\Condition(condition="this.getFoo() == 'fo'", message="Not good!")
 */
class Obj
{
    public function getFoo()
    {
        return 'foo';
    }
}
```

In the expression, you get access to the current object via the `this` variable.

## Dynamic annotations

The expression language component is also very useful in annotations. the SensoLabs FrameworkExtraBundle leverages this possibility to implement HTTP validation caching in the `@Cache` annotation and to add a new `@Security` annotation (see sensiolabs/SensioFrameworkExtraBundle#238.)

Commits
-------

d4ebbfd [Validator] Renamed Condition to Expression and added possibility to set it onto properties
a3b3a78 [Validator] added a constraint that runs an expression
1bcfb40 added optimized versions of expressions
984bd38 mades things more consistent for the end user
d477f15 [Routing] added support for expression conditions in routes
86ac8d7 [ExpressionLanguage] improved performance
e369d14 added a Twig extension to create Expression instances
38b7fde added support for expression in control access rules
2777ac7 [HttpFoundation] added ExpressionRequestMatcher
c25abd9 [DependencyInjection] added support for expressions in the service container
3a41781 [ExpressionLanguage] added support for regexes
9d98fa2 [ExpressionLanguage] added the component
2013-09-19 13:00:34 +02:00
Bernhard Schussek
d4ebbfd02d [Validator] Renamed Condition to Expression and added possibility to set it onto properties 2013-09-19 12:59:33 +02:00
Fabien Potencier
a3b3a78237 [Validator] added a constraint that runs an expression 2013-09-19 12:59:12 +02:00
Fabien Potencier
51c6d7696c Merge branch '2.3'
* 2.3:
  fixed phpdoc
  Fix some annotates
  [FrameworkBundle] made sure that the debug event dispatcher is used everywhere
  [HttpKernel] remove unneeded strtoupper
  updated the composer install command to reflect changes in Composer

Conflicts:
	src/Symfony/Component/Serializer/Encoder/XmlEncoder.php
2013-09-19 11:47:34 +02:00
Fabien Potencier
88cef41560 Merge branch '2.2' into 2.3
* 2.2:
  Fix some annotates
  [FrameworkBundle] made sure that the debug event dispatcher is used everywhere
  [HttpKernel] remove unneeded strtoupper
  updated the composer install command to reflect changes in Composer

Conflicts:
	src/Symfony/Component/Console/Application.php
	src/Symfony/Component/Console/Command/Command.php
	src/Symfony/Component/Console/Input/InputDefinition.php
	src/Symfony/Component/CssSelector/Node/CombinedSelectorNode.php
	src/Symfony/Component/Form/Form.php
	src/Symfony/Component/HttpKernel/Debug/ErrorHandler.php
	src/Symfony/Component/HttpKernel/DependencyInjection/RegisterListenersPass.php
	src/Symfony/Component/HttpKernel/Tests/DependencyInjection/RegisterListenersPassTest.php
	src/Symfony/Component/Locale/Locale.php
	src/Symfony/Component/Locale/README.md
	src/Symfony/Component/Locale/Stub/DateFormat/FullTransformer.php
2013-09-19 11:45:20 +02:00
bronze1man
de39bd5433 Fix some annotates 2013-09-19 11:36:05 +02:00
Fabien Potencier
c2144df888 updated the composer install command to reflect changes in Composer 2013-09-18 09:27:26 +02:00
Besnik Br
6cf5e0812e convert object to string if possible instead of using var_export directly 2013-09-16 10:05:18 +02:00
Fabien Potencier
5b71e61d15 Merge branch '2.3'
* 2.3:
  [HttpKernel] added a check for private event listeners/subscribers
  [FrameworkBundle] fixed registration of the register listener pass
  [Form] Fixed regression causing invalid "WHERE id IN ()" statements
  [DependencyInjection] fixed a non-detected circular reference in PhpDumper (closes #8425)
  [Form] Fixed regression in BooleanToStringTransformer from ed83752
  [FrameworkBundle] removed obsolete code
  [Process] Close unix pipes before calling `proc_close` to avoid a deadlock
  [Process] Fix process merge in 2.3
  [Intl] made RegionBundle and LanguageBundle merge fallback data when using a country-specific locale
2013-09-12 14:59:51 +02:00
Fabien Potencier
7b2785bc61 merged branch shieldo/country_fallback_locale (PR #8564)
This PR was merged into the 2.3 branch.

Discussion
----------

[Intl] made RegionBundle merge fallback data if using a country-specific locale

See #8442 and symfony/Icu#2.

Essentially, country data fetches from the Intl component do not currently work when using a locale with a country specifier, e.g. `fr_FR`.  This change forces a merge on the data against the root language locale, thus making country data available for such locales.

Commits
-------

52d8676 [Intl] made RegionBundle and LanguageBundle merge fallback data when using a country-specific locale
2013-09-11 08:28:08 +02:00
Fabien Potencier
95483e518d Merge branch '2.3'
* 2.3:
  Fixed docblock in UserInterface::getSalt()
  [Process] Fix #8970 : read output once the process is finished, enable pipe tests on Windows
  [DoctrineBridge] Improved test coverage of EntityChoiceList
  [DoctrineBridge] Improved test coverage of EntityChoiceList
  [Form] Improved test coverage of ChoiceList classes
  [Form] Fixed expanded choice field to be marked invalid when unknown choices are submitted
  [Form] Fixed ChoiceList::get*By*() methods to preserve order and array keys
  [Form] Removed usage of the ChoiceList::getIndicesFor*() methods where they don't offer any performance benefit
  [Form] Improved test coverage of ChoiceList classes
  [Form] Fixed expanded choice field to be marked invalid when unknown choices are submitted
  [Form] Fixed ChoiceList::get*By*() methods to preserve order and array keys
  [Form] Removed usage of the ChoiceList::getIndicesFor*() methods where they don't offer any performance benefit
  Removed duplicate annotation
  [HttpKernel] made code more reliable
  [HttpFoundation] fixed regression in the way the request format is handled for duplicated requests (closes #8917)
  [HttpKernel] fixer HInclude src (closes #8951)
  Fixed escaping of service identifiers in configuration

Conflicts:
	src/Symfony/Bridge/Doctrine/Tests/Form/ChoiceList/GenericEntityChoiceListTest.php
	src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypeTest.php
	src/Symfony/Component/HttpKernel/Tests/Fragment/HIncludeFragmentRendererTest.php
2013-09-10 22:30:47 +02:00
Bernhard Schussek
5499a29430 [Validator] The default option name can now be omitted when defining constraints as annotations 2013-09-10 17:29:20 +02:00
Jáchym Toušek
5874dbaebf Removed duplicate annotation 2013-09-09 13:18:54 +02:00
Fabien Potencier
feff411dfc Merge branch '2.3'
* 2.3:
  Clear lazy loading initializer after the service is successfully initialized
  [FrameworkBundle] added support for double-quoted strings in the extractor (closes #8797)
  [SecurityBundle] Move format-dependent tests from SecurityExtensionTest
  bumped Symfony version to 2.3.5-DEV
  updated VERSION for 2.3.4
  updated CHANGELOG for 2.3.4
  bumped Symfony version to 2.2.7
  updated VERSION for 2.2.6
  update CONTRIBUTORS for 2.2.6
  updated CHANGELOG for 2.2.6
  clearToken exception is thrown at wrong place.
  fix typo in test skipped message
  [Form] Fixed Form::all() signature for PHP 5.3.3
  [Form] Fixed Form::all() signature for PHP 5.3.3
  [Locale] Fixed: Locale::setDefault() throws no exception when "en" is passed
  [Locale] Fixed: StubLocale::setDefault() throws no exception when "en" is passed
  [Translation] Grammar fix
  [Yaml] fixed embedded folded string parsing
  [Validator] fixed Boolean handling in XML constraint mappings (closes #5603)
  [Translation] Fixed regression: When only one rule is passed to transChoice(), this rule should be used

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
2013-08-29 08:54:01 +02:00
Douglas Greenshields
52d8676399 [Intl] made RegionBundle and LanguageBundle merge fallback data when using a country-specific locale 2013-08-27 11:55:04 +01:00
Fabien Potencier
b8381cdd62 Merge branch '2.2' into 2.3
* 2.2:
  [Locale] Fixed: StubLocale::setDefault() throws no exception when "en" is passed
  [Yaml] fixed embedded folded string parsing
  [Validator] fixed Boolean handling in XML constraint mappings (closes #5603)

Conflicts:
	src/Symfony/Component/Locale/Stub/StubLocale.php
	src/Symfony/Component/Locale/Tests/Stub/StubLocaleTest.php
2013-08-24 17:26:22 +02:00
Fabien Potencier
33b0a177b5 [Validator] fixed Boolean handling in XML constraint mappings (closes #5603) 2013-08-23 17:55:54 +02:00
Fabien Potencier
de50621e8a removed deps checks in unit tests
As Composer is now widely used in the PHP world, having to run composer
install before running the test suite is expected. This also has the
nice benefit of removing a bunch of code, making things easier to
maintain (there is only one place to declare a dev dependency), and
probably more.
2013-08-19 22:44:22 +02:00
Fabien Potencier
a67f5d03d1 Merge branch '2.3'
* 2.3:
  [Process] Revert change
  [Process] Fix #8746 : slowness added in unit tests since #8741
  [Process] Fix #8742 : Signal-terminated processes are not successful
  corrected English grammar (s/does not exists/does not exist)
  [Process] Add more precision to Process::stop timeout
  [Process] Avoid zombie process in case of unit tests failure
  [Process] Fix #8739
  [Process] Add failing test for #8739
  [Process] Fix CS
  [TwigBridge] removed superflous ; when rendering form_enctype() (closes #8660)
  Fixed documentation grammar for AuthenticationManagerInterface::authenticate()
  [Validator] fixed the wrong isAbstract() check against the class (fixed #8589)
  [TwigBridge] Prevent code extension to display warning
  Fix internal sub-request creation
  [FrameworkBundle] made code more generic
  [Form] Moved auto_initialize option to the BaseType
  Use strstr instead of strpos
  Make sure ContextErrorException is loaded during compile time errors
  Fix empty process argument escaping on Windows
  Ignore null value in comparison validators

Conflicts:
	src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
	src/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php
	src/Symfony/Component/Process/Process.php
2013-08-14 15:08:25 +02:00
Fabien Potencier
11018011dd Merge branch '2.2' into 2.3
* 2.2:
  corrected English grammar (s/does not exists/does not exist)
  [Process] Add more precision to Process::stop timeout
  [Process] Avoid zombie process in case of unit tests failure
  [Process] Fix #8739
  [Process] Add failing test for #8739
  [Process] Fix CS
  Fixed documentation grammar for AuthenticationManagerInterface::authenticate()
  [Validator] fixed the wrong isAbstract() check against the class (fixed #8589)
  [TwigBridge] Prevent code extension to display warning
  Use strstr instead of strpos

Conflicts:
	src/Symfony/Component/Finder/Shell/Command.php
	src/Symfony/Component/Process/Process.php
2013-08-13 22:18:00 +02:00
Douglas Greenshields
d74eaf9603 corrected English grammar (s/does not exists/does not exist) 2013-08-13 20:56:24 +01:00
marcj
18896d5a9e [Validator] fixed the wrong isAbstract() check against the class (fixed #8589) 2013-08-12 23:46:36 +02:00
Grégoire Pineau
cf31dfb080 [Validator] Removed unnecessary check as symfony require php >= 5.3.3. 2013-08-10 10:41:36 +02:00
Tobias Schultze
49c4a79a1d optimize some unneeded casts (esp. when casting something to string for array access) 2013-08-09 08:59:22 +02:00
Fabien Potencier
ffe5567955 merged branch EmmanuelVella/validators (PR #8577)
This PR was merged into the 2.3 branch.

Discussion
----------

Validators

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

This PR avoid comparison validators to be executed if the compared value is null.

Commits
-------

48338fc Ignore null value in comparison validators
2013-08-08 16:01:12 +02:00
Fabien Potencier
578f61ac25 Merge branch '2.3'
* 2.3:
  [Validator] fixed metadata serialization
  Fixed metadata serialization
2013-08-06 07:59:55 +02:00
Fabien Potencier
3911cfa66f Merge branch '2.2' into 2.3
* 2.2:
  [Validator] fixed metadata serialization
  Fixed metadata serialization
2013-08-06 07:59:49 +02:00
Fabien Potencier
5d93815d84 Merge branch '2.1' into 2.2
* 2.1:
  [Validator] fixed metadata serialization
  Fixed metadata serialization
2013-08-06 07:59:38 +02:00
Fabien Potencier
5129d3f5d8 [Validator] fixed metadata serialization 2013-08-06 07:58:11 +02:00
Fabien Potencier
97fbb28f75 Merge branch '2.0' into 2.1
* 2.0:
  Fixed metadata serialization
2013-08-06 07:56:20 +02:00
Bernhard Schussek
6d555bc1a6 Fixed metadata serialization 2013-08-06 07:55:32 +02:00
Fabien Potencier
4ee3d7f11a Merge branch '2.3'
* 2.3:
  moved some fixed dep versions from 2.2.* to ~2.2 (refs #8613)
  [HttpKernel] added a missing dep for dev
  [Form] fixed wrong call to setTimeZone() (closes #8644)
  Fix issue with \DateTimeZone::UTC / 'UTC' for PHP 5.4
  [Form] Fixed patched forms to be valid even if children are not submitted
  Revert "[Form] Fix of "PATCH'ed forms are never valid""
  [Form] Fixed: If a form is not present in a request, it is not automatically submitted
  Fixes link indices
  [Form] Removed the "disabled" attribute from the placeholder option in select fields due to problems with the BlackBerry 10 browser
  Revert "[Form] Remove "value" attribute on empty_value option"
  [routing] added ability for apache matcher to handle array values
  removed dead code and fixed CS
  [Validator] fixed StaticMethodLoader trying to invoke methods of abstract classes (closes #8589)
2013-08-02 22:53:46 +02:00
Fabien Potencier
64535bbcb2 Merge branch '2.2' into 2.3
* 2.2:
  [HttpKernel] added a missing dep for dev
  [Form] fixed wrong call to setTimeZone() (closes #8644)
  Fix issue with \DateTimeZone::UTC / 'UTC' for PHP 5.4
  [Form] Removed the "disabled" attribute from the placeholder option in select fields due to problems with the BlackBerry 10 browser
  [routing] added ability for apache matcher to handle array values
  removed dead code and fixed CS
  [Validator] fixed StaticMethodLoader trying to invoke methods of abstract classes (closes #8589)

Conflicts:
	src/Symfony/Bundle/TwigBundle/TokenParser/RenderTokenParser.php
	src/Symfony/Component/Form/FormConfigBuilder.php
	src/Symfony/Component/HttpKernel/composer.json
	src/Symfony/Component/Validator/Tests/GraphWalkerTest.php
2013-08-02 22:53:38 +02:00
Fabien Potencier
2cc36f10ce merged branch lmammino/improved-image-validator (PR #8490)
This PR was squashed before being merged into the master branch (closes #8490).

Discussion
----------

[Validator] improved image validator

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

CHANGELOG
* Added options to validate image aspect ratio (`minRatio` and `maxRatio`)
* Added options to validate if the image ratio is square, landscape or portrait (`allowSquare`, `allowLandscape`, and `allowPortrait`)

Commits
-------

b030624 [Validator] improved image validator
2013-08-02 15:39:24 +02:00
Luciano Mammino
b0306242cc [Validator] improved image validator 2013-08-02 15:39:24 +02:00
Fabien Potencier
b970d172cb merged branch fabpot/dead-code (PR #8572)
This PR was merged into the 2.2 branch.

Discussion
----------

removed dead code and fixed CS

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

Commits
-------

7d58147 removed dead code and fixed CS
2013-07-28 22:42:16 +02:00
Fabien Potencier
7d581471ce removed dead code and fixed CS 2013-07-28 20:26:16 +02:00
Fabien Potencier
b41cf82651 [Validator] fixed StaticMethodLoader trying to invoke methods of abstract classes (closes #8589) 2013-07-28 20:24:29 +02:00
Fabien Potencier
aa3e474aed Merge branch '2.3'
* 2.3:
  [Form] fixes empty file-inputs get treated as extra field
  return 0 if there is no valid data
  [DependencyInjection] fixed regression where setting a service to null did not trigger a re-creation of the service when getting it
  [DependencyInjection] fixed #8570
  fixed file permission
  The ignoreAttributes itself should be ignored, too.
  [Tests] Tests on php 5.5 should pass
  [Twig] fixed TwigEngine::exists() method when a template contains a syntax error (closes #88546)
2013-07-27 07:01:52 +02:00
Emmanuel Vella
48338fcf10 Ignore null value in comparison validators 2013-07-25 14:05:03 +02:00
Fabien Potencier
2e2a36ca24 fixed file permission 2013-07-24 19:57:25 +02:00
Fabien Potencier
1d86ea10ff Merge branch '2.3'
* 2.3:
  [Validator] fixed ConstraintViolation:: incorrect when nested
  handle Optional and Required constraints from XML or YAML sources correctly
  added missing comments to WebTestCase
  Fixed #8455: PhpExecutableFinder::find() does not always return the correct binary
  Added missing files .gitignore
  [DependencyInjection] Fix Container::camelize to convert beginning and ending chars
  [Validator] Fixed groups argument misplace for validateValue method from validator class
  [Form] Fix of "PATCH'ed forms are never valid"
2013-07-21 22:19:01 +02:00
Fabien Potencier
b45f18b81d Merge branch '2.2' into 2.3
* 2.2:
  [Validator] fixed ConstraintViolation:: incorrect when nested
  handle Optional and Required constraints from XML or YAML sources correctly
  added missing comments to WebTestCase
  Fixed #8455: PhpExecutableFinder::find() does not always return the correct binary
  [DependencyInjection] Fix Container::camelize to convert beginning and ending chars
  [Validator] Fixed groups argument misplace for validateValue method from validator class

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

Discussion
----------

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

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

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

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

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

Commits
-------

28e0709 [Validator] fixed ConstraintViolation:: incorrect when nested
2013-07-21 22:10:38 +02:00
Venu
28e070974a [Validator] fixed ConstraintViolation:: incorrect when nested 2013-07-21 22:10:37 +02:00
Christian Flothmann
890934d33d handle Optional and Required constraints from XML or YAML sources correctly 2013-07-21 21:45:37 +02:00
Martin Hasoň
4146587ce7 Added missing files .gitignore 2013-07-21 14:12:18 +02:00
Fabien Potencier
99f97e59f1 Merge branch '2.3'
* 2.3:
  Update JsonResponse.php
  [HttpKernel] fixed the inline renderer when passing objects as attributes (closes #7124)
  CookieJar remove unneeded var, Client remove unneeded else
  [DI] Fixed bug requesting non existing service from dumped frozen container
  Update validators.sk.xlf
  [WebProfiler] fix content-type parameter
  Replace romaji period characters with Japanese style zenkaku period characters
  fixed CS
  fixed CS
  [Console] Avoided an unnecessary check.
  Added missing French validator translations
  typo first->second
  Passed the config when building the Configuration in ConfigurableExtension
  removed unused code
  Fixed variable name used in translation cache

Conflicts:
	src/Symfony/Component/Console/Event/ConsoleCommandEvent.php
2013-07-08 15:37:01 +02:00
Fabien Potencier
686bbb61c4 Merge branch '2.2' into 2.3
* 2.2:
  Update JsonResponse.php
  [HttpKernel] fixed the inline renderer when passing objects as attributes (closes #7124)
  [WebProfiler] fix content-type parameter
  Replace romaji period characters with Japanese style zenkaku period characters
  Passed the config when building the Configuration in ConfigurableExtension

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Tests/Functional/Bundle/TestBundle/Resources/config/routing.yml
	src/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php
2013-07-08 15:36:15 +02:00
Venu
d3eb9b7041 [Validator] Fixed groups argument misplace for validateValue method from validator class 2013-07-04 23:18:29 +05:30
František Bereň
ab9e3eede1 Update validators.sk.xlf 2013-07-03 12:44:49 +02:00
Warwick
b602544bf7 Replace romaji period characters with Japanese style zenkaku period characters
Found 4 of the Japanese translations inconsistently used romaji style periods. Replaced with zenkaku periods.
2013-07-02 09:41:45 +02:00
Fabien Potencier
4c0bfd3313 fixed CS 2013-07-01 14:24:43 +02:00
Christophe Coevoet
0cc8872cab Added missing French validator translations 2013-06-27 13:04:11 +02:00
Fabien Potencier
35bdf823c4 Merge branch '2.3'
* 2.3: (33 commits)
  Revert "[Console] ensure exit code between 0-254"
  Added missing galician (gl) translations
  fix many-to-many Propel1 ModelChoiceList
  [Console] ensure exit code between 0-254
  Added Greek translation
  [DomCrawler] Fixed a fatal error when setting a value in a malformed field name.
  [FrameworkBundle] Fixed OutOfBoundException when session handler_id is null
  [DependencyInjection] Add support for aliases of aliases + regression test
  [Console] fix status code when Exception::getCode returns something like 0.1
  Fixed doc block on Filesystem::rename
  Fixed exit code for exceptions with error code 0
  [DependencyInjection] Rename ContainerBuilder::$aliases to avoid conflicting with the parent class
  [DependencyInjection] Remove get*Alias*Service methods from compiled containers
  [DependencyInjection] Fix aliased access of shared services, fixes #8096
  instantiate valid commands only
  bumped Symfony version to -DEV
  updated VERSION for 2.3.0
  updated CHANGELOG for 2.3.0
  [Config] Added tests for the FileResource and DirectoryResource.
  [Config] Fixed @covers annotation which ignored some of the methods from the code coverage.
  ...

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
2013-06-11 09:15:38 +02:00
rubenrua
b8c13b670f Added missing galician (gl) translations 2013-06-10 18:23:25 +02:00
lancergr
68b33604e5 Added Greek translation 2013-06-08 16:57:40 +02:00
Fabien Potencier
f26c2b9deb Merge branch '2.3'
* 2.3:
  ErrorHandler and fixes
  fixed typo in CS translation (closes #8069)
  fix arab translation
  Removed reference to Symfony\Component\Form\Extension\Core\Type\FormType in form.xml
  slovenian validator translations updated
  [FrameworkBundle] set the dispatcher in the console application
  [Console] fix typehint for Application::setDispatcher
  [Finder] Fixed a path in a test.
  [Form] [Validator] Fixed post_max_size = 0 bug (Issue #8065)
2013-06-02 14:05:59 +02:00
Fabien Potencier
7fb9c25f8c Merge branch '2.2' into 2.3
* 2.2:
  fixed typo in CS translation (closes #8069)
  fix arab translation
  [Finder] Fixed a path in a test.
  [Form] [Validator] Fixed post_max_size = 0 bug (Issue #8065)
2013-06-02 14:05:51 +02:00
Fabien Potencier
afe18722d2 Merge branch '2.1' into 2.2
* 2.1:
  fixed typo in CS translation (closes #8069)
  [Form] [Validator] Fixed post_max_size = 0 bug (Issue #8065)

Conflicts:
	src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorTest.php
	src/Symfony/Component/Validator/Resources/translations/validators.cs.xlf
2013-06-02 14:05:41 +02:00
Fabien Potencier
6d55422fd0 fixed typo in CS translation (closes #8069) 2013-06-02 13:57:02 +02:00
ghazy ben ahmed
009c50dd5b fix arab translation 2013-05-31 16:46:42 +02:00
peter
35c6768bb7 slovenian validator translations updated 2013-05-29 10:42:58 +02:00
Fabien Potencier
e160ddb286 Merge branch '2.3'
* 2.3: (37 commits)
  [Console] renamed ConsoleForExceptionEvent into ConsoleExceptionEvent
  Fix several instances of doubled words
  [Security] Fixed the check if an interface exists.
  Added missing slovak translations
  [FrameworkBundle] removed HttpFoundation classes from HttpKernel cache
  [Finder] Fix iteration fails with non-rewindable streams
  [Finder] Fix unexpected duplicate sub path related AppendIterator issue
  [Security] Added tests for the DefaultLogoutSuccessHandler.
  [Security] Added tests for the DefaultAuthenticationSuccessHandler.
  [ClassLoader] tiny refactoring
  [Security] Added tests for the DefaultAuthenticationFailureHandler.
  [Security] Added tests for the remember me ReponseListener.
  [Security] Added tests for the SessionAuthenticationStrategy.
  [Security] Added tests for the AccessMap.
  [FrameworkBundle] removed deprecated method from cache:clear command
  [WebProfiler] remove deprecated verbose option
  fix logger in regards to DebugLoggerInterface
  [Form] [2.3] removed old option
  Added type of return value in VoterInterface.
  [Console] Add namespace support back in to list command
  ...
2013-05-27 16:49:42 +02:00
Andrej Hudec
af2cd98dc5 Added missing slovak translations 2013-05-26 19:20:29 +03:00
Fabien Potencier
b51de93e6c Merge branch '2.3'
* 2.3:
  Added missing column to the form's table layout
  Bumped Icu dependency to RC
  Update validators.ru.xlf
  remove check for PHP bug #50731
  adding missing Farsi translations
  Revert "merged branch armetiz/master (PR #8045)"
2013-05-16 22:40:38 +02:00
Vitaliy Tverdokhlib
742cdb35be Update validators.ru.xlf
[Validator] russian language update
2013-05-16 11:46:22 +02:00
Hossein Zolfi (Ocean)
204e23e2db adding missing Farsi translations 2013-05-16 11:42:49 +02:00
Fabien Potencier
485802de94 updated version to 2.4 2013-05-16 09:54:39 +02:00
Fabien Potencier
b1c9fd20a1 removed versions in composer.json files 2013-05-13 16:36:40 +02:00
Fabien Potencier
f41ac06531 changed all version deps to accepts all upcoming Symfony versions 2013-05-13 09:33:35 +02:00
Kristen Gilden
fd2b2602ab [Validator] added missing Estonian translations
Estonian translations for the following validators:

-  Currency;
-  EqualTo;
-  IdenticalTo;
-  NotEqualTo;
-  NotIdenticalTo;
-  GreaterThan;
-  GreaterThanOrEqual;
-  LessThan;
-  LessThanOrEqual;
2013-05-13 03:35:41 +03:00
Hoffmann András
8ac4844b04 Update validators.hu.xlf 2013-05-11 11:58:58 +02:00
Fabien Potencier
498bfa33fa Merge branch '2.2'
* 2.2:
  fixed CS
  Fixed XML syntax.
  Fixed parsing of leading blank lines in folded scalars. Closes #7989.
  [Form] Fixed a method name.
  Added a test case for Loader::import().
  Fixed Loader import
  [Console] Added dedicated testcase for HelperSet class
  [Serializer] fixed CS (refs #7971)
  Fixed fatal error in normalize/denormalizeObject.
  Fixed 2 namespaces

Conflicts:
	src/Symfony/Component/HttpKernel/Debug/ErrorHandler.php
	src/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php
2013-05-10 20:12:13 +02:00
Fabien Potencier
70ea5a61c5 Merge branch '2.1' into 2.2
* 2.1:
  Fixed XML syntax.
  Fixed parsing of leading blank lines in folded scalars. Closes #7989.
  Added a test case for Loader::import().
  Fixed Loader import
  [Console] Added dedicated testcase for HelperSet class
2013-05-10 20:08:31 +02:00
Andreas Forsblom
0a4837dee2 Fixed XML syntax. 2013-05-10 19:13:09 +03:00
77web
798a5b9bf4 [Validator] added Japanese translation for comparison validators 2013-05-10 22:32:59 +09:00
Florin Patan
3532f2de28 Updated translation 2013-05-09 10:15:42 +03:00
ikerib
971f5511e0 Basque translations for new validators from #790 2013-05-08 12:34:44 +02:00
Fabien Potencier
11b0758fbb merged branch hason/czech_validator (PR #7970)
This PR was merged into the master branch.

Discussion
----------

[Validator] Updated czech translation of comparison validators

Commits
-------

1416595 [Validator] Updated czech translation of comparison validators
2013-05-07 21:21:26 +02:00
Martin Hasoň
141659588a [Validator] Updated czech translation of comparison validators 2013-05-07 21:07:22 +02:00
Ricardo Oliveira
759ed17b25 [Validator] Added Portuguese translation for the comparison validators 2013-05-07 15:16:53 +01:00
Vitaliy Tverdokhlib
7bc9e09b35 Update validators.uk.xlf
append translation
2013-05-06 15:29:08 +03:00
Fabien Potencier
f1c227be22 Merge branch '2.2'
* 2.2:
  added additional tests to cover invalid argument exceptions in OutputFormatterStyle component
  added a missing check for the provider key
  [Validator] fixed wrong URL for XSD
  [Validator] Fixed: $traverse and $deep is passed to the visitor from Validator::validate()
  [Form] Fixed transform()/reverseTransform() to always throw TransformationFailedExceptions
  [Form] Fixed: String validation groups are never interpreted as callbacks
  if the repository method returns an array ensure that it's internal poin...
  [Form] Improved multi-byte handling of NumberToLocalizedStringTransformer
  Fix wrong method in findTaggedServiceIds(), add example to docblock.

Conflicts:
	src/Symfony/Component/Form/Extension/Core/DataTransformer/ChoicesToBooleanArrayTransformer.php
	src/Symfony/Component/Form/Extension/Validator/Constraints/FormValidator.php
2013-05-06 10:44:35 +02:00
Fabien Potencier
b9bc5b4770 Merge branch '2.1' into 2.2
* 2.1:
  added additional tests to cover invalid argument exceptions in OutputFormatterStyle component
  added a missing check for the provider key
  [Validator] fixed wrong URL for XSD
  [Form] Fixed transform()/reverseTransform() to always throw TransformationFailedExceptions
  [Form] Fixed: String validation groups are never interpreted as callbacks
  if the repository method returns an array ensure that it's internal poin...
  Fix wrong method in findTaggedServiceIds(), add example to docblock.

Conflicts:
	src/Symfony/Bridge/Doctrine/Form/DataTransformer/CollectionToArrayTransformer.php
	src/Symfony/Component/Form/Extension/Core/DataTransformer/DataTransformerChain.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/ArrayToPartsTransformerTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/ChoiceToValueTransformerTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/ChoicesToValuesTransformerTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/DateTimeToArrayTransformerTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/DateTimeToRfc3339TransformerTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/IntegerToLocalizedStringTransformerTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/ValueToDuplicatesTransformerTest.php
2013-05-06 10:37:50 +02:00
Fabien Potencier
0586c7eb16 made some optimization when parsing YAML files 2013-05-05 19:11:25 +02:00
Fabien Potencier
b0e3ea5f5f [Validator] fixed wrong URL for XSD 2013-05-04 10:54:37 +02:00
Bernhard Schussek
59b78c7c16 [Validator] Fixed: $traverse and $deep is passed to the visitor from Validator::validate() 2013-05-03 15:20:58 +02:00
Fabien Potencier
6a4100c615 merged branch 1ed/hungarian-validator-messages (PR #7914)
This PR was merged into the master branch.

Discussion
----------

[Validator] added hungarian translation for comparison constraints

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

Contains the dots added in #7911

Commits
-------

08708ca [Validator] added hungarian translation for comparison constraints
2013-05-03 07:07:18 +02:00
Fabien Potencier
1ef115aebf merged branch WouterJ/patch-3 (PR #7913)
This PR was merged into the master branch.

Discussion
----------

[Validation] Add dutch translation for new validators

This PR already uses the dots added in #7911

Commits
-------

84a0618 Add translation for new validators from #790
2013-05-03 07:06:19 +02:00
Gábor Egyed
08708caaba [Validator] added hungarian translation for comparison constraints 2013-05-03 01:23:57 +02:00
Wouter J
84a0618af1 Add translation for new validators from #790 2013-05-03 01:24:58 +03:00
Joseph Bielawski
90a7e86349 [Validator] Add missing translation for new validators from #790 2013-05-02 22:58:07 +02:00
Fabien Potencier
f7d8c98851 merged branch danielholmes/comparison_validators (PR #790)
This PR was merged into the master branch.

Discussion
----------

[2.3] [Validator] added comparison constraints and validators

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

They work on a class level and you specify a list of properties. Included are the standard GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual and Equal. e.g.:

```php
<?php
/**
 * @assert:GreaterThan({"diedDate", "bornDate"})
 * @assert:LessThanOrEqual({"bornDate", "firstSchoolDayDate", "diedDate"})
 */
class Person
{
    private $bornDate;
    private $firstSchoolDayDate;
    private $diedDate;
}
```

I think it would also be useful if they worked on a property level rather than just class. I'm not sure what the default option should be though. e.g. is there a reliable way to determine what's a raw value and what's a property name:

```php
<?php
/** @assert:GreaterThan(80) */
private $iq;
/** @assert:LessThan('dateDied') */
private $bornDate;
/** @assert:LessThanOrEqual('C') */
private $grade;
/** @assert:GreaterThanOrEqual({50, 'ageStartedSchool'}) */
private $age;
```

Commits
-------

0bffdff [Validator] Added comparison validators.
2013-04-30 18:44:58 +02:00
=
0bffdff56f [Validator] Added comparison validators. 2013-04-29 22:43:20 +10:00
Antonio J. García Lagar
57c724a37f [Validator] Rename issn constraint message option to be consistent with all constraints having a single message option 2013-04-28 18:50:39 +02:00
Fabien Potencier
6a18bfc130 merged branch timaschew/patch-1 (PR #7842)
This PR was merged into the master branch.

Discussion
----------

add german translation for currency validator

| Q             | A
| ------------- | ---
| Fixed tickets | N/A
| License       | MIT

Commits
-------

e99b430 update german translation for validators
2013-04-25 13:16:11 +02:00
Ricardo Oliveira
a14eee3f81 [Validator] Added Portuguese translation for the currency validator 2013-04-25 10:35:53 +01:00
timaschew
e99b430bd5 update german translation for validators 2013-04-25 10:58:30 +03:00
77web
1b061901ea [Validator] added Japanese translation of the message for currency 2013-04-24 22:16:50 +09:00
Fabien Potencier
f5a6d4df88 merged branch kepten/master (PR #7823)
This PR was merged into the master branch.

Discussion
----------

[Validator] updated Hungarian translation

updated and extended Hungarian translation

Commits
-------

cf36126 [Validator] updated Hungarian translation
2013-04-24 07:10:11 +02:00
Robert Kiss
cf36126cea [Validator] updated Hungarian translation
updated and extended Hungarian translation
2013-04-24 00:07:14 +03:00
ikerib
d50f4880bc Currency translation 2013-04-23 23:02:03 +02:00
Michele Orselli
a2e1e25f8f updated it translation for validators 2013-04-23 15:34:10 +02:00
Fabien Potencier
81f37ba3a3 merged branch XWB/currency-translation (PR #7814)
This PR was merged into the master branch.

Discussion
----------

[Validator] Added Dutch currency translation

The previous translation was not entirely correct, sorry!

Commits
-------

dc40a29 [Validator] Added Dutch currency translation
aa795ed Revert "[Validator] Added Dutch currency translation"
2013-04-23 15:01:49 +02:00
Antoine Corcy
f801f22a39 [Validator] Added Danish translation for the currency validator 2013-04-23 14:59:16 +02:00
Karel Souffriau
dc40a29b74 [Validator] Added Dutch currency translation 2013-04-23 14:16:54 +02:00
Karel Souffriau
aa795edad4 Revert "[Validator] Added Dutch currency translation"
This reverts commit d26d1ba467.
2013-04-23 14:16:17 +02:00
Karel Souffriau
d26d1ba467 [Validator] Added Dutch currency translation 2013-04-23 13:58:52 +02:00
Joseph Bielawski
839c40554e [Validator] Added Polish translation for the currency validator. 2013-04-23 10:46:34 +02:00
Miha Vrhovnik
5609aae856 Added currency form type and validator 2013-04-23 06:57:28 +02:00
Gábor Fási
cd2f0a68d1 [Validator] Hungarian translation for the ISSN validator 2013-04-22 21:32:58 +02:00
Antonio J. García Lagar
94173ec58e Rename requireHyphens to requireHyphen for Issn constraint 2013-04-22 20:32:17 +02:00
Josip Kruslin
37443acc5c Updated croatian validator translation
Updated croatian validator translation (collection, IBAN, ISBN, ISSN)
2013-04-22 18:59:18 +02:00
Jakub Zalas
421bd1286c [Validator] Added Polish translation for the ISSN validator. 2013-04-22 11:52:51 +01:00
Fabien Potencier
3bad6e441b merged branch Aitboudad/patch-2 (PR #7787)
This PR was squashed before being merged into the master branch (closes #7787).

Discussion
----------

[Validator] added Arabic translation for ISSN message

Commits
-------

4ae9b52 [Validator] added Arabic translation for ISSN message
2013-04-22 12:27:25 +02:00
Abdellatif AitBoudad
4ae9b529ce [Validator] added Arabic translation for ISSN message 2013-04-22 12:27:25 +02:00
Fabien Potencier
838fa29406 merged branch Aitboudad/patch-1 (PR #7786)
This PR was merged into the master branch.

Discussion
----------

[Validator] added french translation for ISSN message

Commits
-------

06e7d17 [Validator] added french trans for ISSN message
2013-04-22 12:27:12 +02:00
Fabien Potencier
db3250d7e0 merged branch ikerib/basque-trans (PR #7788)
This PR was merged into the master branch.

Discussion
----------

[Validator] Added Basque translations of IBAN and ISBN

Commits
-------

cd0ade3 Added some basque translations
2013-04-22 12:25:44 +02:00
Fabien Potencier
c69d75881e merged branch ricardclau/add_catalan_validators (PR #7794)
This PR was merged into the master branch.

Discussion
----------

[Validator] Added Catalan translations for IBAN, ISBN and ISSN messages.

Commits
-------

5114233 add new validation messages for catalan
2013-04-22 12:25:07 +02:00
Ricard Clau
5114233684 add new validation messages for catalan 2013-04-22 12:19:47 +02:00
ricoli
ea08a4e997 [Validator] Added Portuguese translations for IBAN and ISBN messages. 2013-04-22 12:16:36 +02:00
ikerib
cd0ade33c6 Added some basque translations 2013-04-22 09:57:39 +02:00
Abdellatif AitBoudad
06e7d17a3e [Validator] added french trans for ISSN message 2013-04-22 07:00:03 +00:00
Fabien Potencier
f10364a07e merged branch fabpot/moved_validator_4 (PR #7784)
This PR was merged into the 2.1 branch.

Discussion
----------

Add This field is missing RU translation

This PR was submitted on the symfony/Validator read-only repository and moved automatically to the main Symfony repository (closes symfony/Validator#4).

<source>This field is missing.</source>
Have no translation. Not exists in EN version too. Just forgot? 
Symfony\Component\Validator\Constraints\Collection()
public $missingFieldsMessage = 'This field is missing.';

Commits
-------

97c4291 Add This field is missing RU translation
2013-04-22 08:34:44 +02:00
Maksim Muruev
97c4291452 Add This field is missing RU translation
<source>This field is missing.</source>
Have no translation. Not exists in EN version too. Just forgotten? 
Symfony\Component\Validator\Constraints\Collection()
public $missingFieldsMessage = 'This field is missing.';
2013-04-22 08:33:45 +02:00
77web
95030ec51b [Validator] added Japanese translation for ISSN message 2013-04-22 14:54:06 +09:00
umpirsky
e3e856e1c3 ISBN, IBAN Serbian translation. 2013-04-21 22:54:57 +02:00
Fabien Potencier
be57a555a6 merged branch andreia/translations-1 (PR #7779)
This PR was merged into the master branch.

Discussion
----------

Add Brazilian Portuguese translations for IBAN, ISBN, and ISSN messages

Commits
-------

7d6d891 Add Brazilian Portuguese translations for IBAN, ISBN, and ISSN messages
2013-04-21 21:58:13 +02:00
Andreia Bohner
7d6d891b6e Add Brazilian Portuguese translations for IBAN, ISBN, and ISSN messages 2013-04-21 16:23:07 -03:00
Kristen Gilden
5131103809 [Validator] added Estonian translations for IBAN, ISBN & ISSN messages 2013-04-21 21:23:53 +03:00
Fabien Potencier
488d5eb1fc Merge branch '2.2'
* 2.2:
  [Validator] added missing estonian translation of messages
  Removed trailing whitespace
  [Validator] added missing estonian translation of messages
  Filesystem::touch() not working with different owners (utime/atime issue)
2013-04-21 19:39:37 +02:00
Fabien Potencier
c8e3f0fabe Merge branch '2.1' into 2.2
* 2.1:
  Removed trailing whitespace
  [Validator] added missing estonian translation of messages
  Filesystem::touch() not working with different owners (utime/atime issue)

Conflicts:
	src/Symfony/Component/Validator/Resources/translations/validators.et.xlf
2013-04-21 19:39:25 +02:00
Fabien Potencier
64ba269423 merged branch mweimerskirch/patch-15 (PR #7774)
This PR was merged into the master branch.

Discussion
----------

Tweaked German translation

Commits
-------

461c281 Tweaked German translation
2013-04-21 19:38:01 +02:00
Kristen Gilden
633b63bfb3 [Validator] added missing estonian translation of messages 2013-04-21 20:18:20 +03:00
Michel Weimerskirch
461c281a56 Tweaked German translation 2013-04-21 19:44:02 +03:00
Michel Weimerskirch
92bfc0b6ff Updated LB translations 2013-04-21 19:18:51 +03:00
Pascal Borreli
59a9a2181d Added trailing dot 2013-04-21 14:36:44 +00:00
Pascal Borreli
20d6fd8987 Removed trailing whitespace 2013-04-21 14:22:56 +00:00
Kristen Gilden
efff50ae69 [Validator] added missing estonian translation of messages 2013-04-21 16:56:15 +03:00
Fabien Potencier
a876c8a12e merged branch WouterJ/patch-2 (PR #7762)
This PR was merged into the master branch.

Discussion
----------

[VALIDATOR] Dutch translation of ISSN message

Added dutch translation of the ISSN message (added in #7756 )

Commits
-------

d336979 [VALIDATOR] Dutch translation of ISSN message
2013-04-21 14:23:03 +02:00
Karel Souffriau
7e9fc23eb4 Fixed Dutch translation of IBAN message 2013-04-21 14:12:37 +02:00
Wouter J
d336979b8a [VALIDATOR] Dutch translation of ISSN message 2013-04-21 14:37:54 +03:00
Fabien Potencier
39dfbf682c merged branch pborreli/typos-isbn (PR #7761)
This PR was merged into the master branch.

Discussion
----------

Fixed typos

Sorry for the multiple PRs

Commits
-------

6ef7f10 Fixed typos
2013-04-21 13:21:42 +02:00
Fabien Potencier
a4abfb9550 [Validator] tweaked ISSN validator (refs #7756) 2013-04-21 13:20:34 +02:00
Pascal Borreli
6ef7f10628 Fixed typos 2013-04-21 11:14:35 +00:00
Pascal Borreli
b5c87396b7 Fixed typo 2013-04-21 10:57:29 +00:00
Fabien Potencier
909b810302 [Validator] fixed CS, updated CHANGELOG 2013-04-21 12:48:25 +02:00
Fabien Potencier
a6edc3dfca merged branch ajgarlag/feature/issn-validator (PR #7756)
This PR was squashed before being merged into the master branch (closes #7756).

Discussion
----------

[Validator] Added ISSN Validator

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

This PR complements the ISBN validator added some months ago to allow validation of relevant library systems data.

Commits
-------

77f62ec [Validator] Added ISSN Validator
2013-04-21 12:42:55 +02:00
Antonio J. García Lagar
77f62ec740 [Validator] Added ISSN Validator 2013-04-21 12:42:55 +02:00
Fabien Potencier
d5801a2575 merged branch Aitboudad/patch-1 (PR #7758)
This PR was merged into the master branch.

Discussion
----------

[Validator] Added Arabic translations for IBAN & ISBN messages

Commits
-------

fd9eaae [Validator] Added Arabic trans of ISBN validator
2013-04-21 12:18:17 +02:00
Abdellatif AitBoudad
fd9eaaee16 [Validator] Added Arabic trans of ISBN validator 2013-04-21 10:12:31 +00:00
jskvara
565f6120d0 [Validator] Added Czech translations of IBAN and ISBN 2013-04-21 11:50:43 +02:00
Fabien Potencier
133cd0320f merged branch 77web/translation-ja-iban-isbn (PR #7747)
This PR was merged into the master branch.

Discussion
----------

[Validator] added Japanese translation for IBAN & ISBN messages

| Q             | A
| ------------- | ---
| Fixed tickets | N/A
| License       | MIT

Commits
-------

3719cd5 [Validator] added Japanese translation for IBAN & ISBN messages
2013-04-21 08:24:02 +02:00
Fabien Potencier
993abe0a53 merged branch jakzal/iban-isbn-pl-translations (PR #7743)
This PR was merged into the master branch.

Discussion
----------

[Validator] Added Polish translations for IBAN and ISBN messages.

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

Commits
-------

811fc30 [Validator] Added Polish translations for IBAN and ISBN messages.
2013-04-21 08:23:28 +02:00
Fabien Potencier
9772300060 merged branch patie/master (PR #7744)
This PR was merged into the master branch.

Discussion
----------

[Validator] Added Slovak translations for IBAN and ISBN messages.

Commits
-------

2890a3f [Validator] Added Slovak translations of IBAN and ISBN
2013-04-21 08:23:21 +02:00
77web
3719cd5bb7 [Validator] added Japanese translation for IBAN & ISBN messages 2013-04-21 09:16:16 +09:00
Alexander Kotynia
ca00f2117f [Validator] Russian translation of the IBAN & ISBN validator messages 2013-04-21 01:30:12 +03:00
Patrik Patie Gmitter
2890a3f6ee [Validator] Added Slovak translations of IBAN and ISBN 2013-04-20 23:46:59 +02:00
Jakub Zalas
811fc30f6c [Validator] Added Polish translations for IBAN and ISBN messages. 2013-04-20 22:44:32 +01:00
Fran Moreno
6dfbb59b4f [Validator] Added Spanish translations of IBAN and ISBN 2013-04-20 22:59:00 +02:00
Ramon Kleiss
298d5fd5bd [Validator] Dutch translation of IBAN and ISBN messages 2013-04-20 22:35:53 +02:00
Gábor Fási
7d9fcd1cd5 [Validator] Hungarian translation of the IBAN and ISBN validator messages 2013-04-20 22:02:22 +02:00
Fabien Potencier
1552a16420 Merge branch '2.2'
* 2.2:
  [Config] #7644 add tests for passing number looking attributes as strings
  [HttpFoundation][BrowserKit] fixed path when converting a cookie to a string
  [BrowserKit] removed dead code
  [HttpFoundation] fixed empty domain= in Cookie::__toString()
  fixed detection of secure cookies received over https
  [2.2] Pass ESI header to subrequests
  [Translation] removed an uneeded class property
  [Translation] removed unneeded getter/setter
  [Translator] added additional conversion for encodings other than utf-8
  fixed source messages to accept pluralized messages [Validator][translation][japanese] add messages for new validator
  fix a DI circular reference recognition bug
  [HttpFoundation] fixed the creation of sub-requests under some circumstances for IIS

Conflicts:
	src/Symfony/Component/HttpFoundation/Tests/CookieTest.php
2013-04-20 21:06:06 +02:00
Fabien Potencier
ed200170e3 added missing information in the CHANGELOGS 2013-04-20 15:44:32 +02:00
Fabien Potencier
8482ad2e80 [Validator] fixed CS 2013-04-20 15:37:39 +02:00
Fabien Potencier
cf526ff846 merged branch thewholelifetolearn/master (PR #6718)
This PR was squashed before being merged into the master branch (closes #6718).

Discussion
----------

[Validator] Added ISBN validator

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

For information about ISBN-10 and ISBN13: https://en.wikipedia.org/wiki/Isbn

This constraint permits to valid a ISBN-10 code, a ISBN-13 code or both on a value

Commits
-------

4582261 [Validator] Added ISBN validator
2013-04-20 15:32:05 +02:00
The Whole Life to Learn
4582261cdf [Validator] Added ISBN validator 2013-04-20 15:30:26 +02:00
Fabien Potencier
44be949045 [Validator] fixed CS 2013-04-20 15:26:53 +02:00
Fabien Potencier
3a507e0d86 merged branch sprain/validator-iban (PR #6677)
This PR was merged into the master branch.

Discussion
----------

[Form] [Validator] Added IBAN validator

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

Validation for International Bank Account Numbers
http://en.wikipedia.org/wiki/International_Bank_Account_Number

I don't know if the community likes new validators. I have been using this in many projects and would love to see it integrated directly with Symfony.

Commits
-------

c8906f4 [Validator] Added IBAN validator
2013-04-20 15:22:53 +02:00
Fabien Potencier
f73bced2b6 merged branch bschussek/move-existence-constraints (PR #7701)
This PR was merged into the master branch.

Discussion
----------

[Validator] Moved constraints Optional and Required to the Constraints\ namespace

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

Commits
-------

a868048 [Validator] Moved constraints Optional and Required to the Constraints\ namespace
2013-04-19 16:32:43 +02:00
77web
67b5797965 fixed source messages to accept pluralized messages [Validator][translation][japanese] add messages for new validator 2013-04-19 16:20:54 +02:00
Fabien Potencier
47061d7020 merged branch bschussek/intl (PR #7386)
This PR was merged into the master branch.

Discussion
----------

[Intl] Refactored Locale component into two new components Icu and Intl

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

The Intl component is now a simple drop-in replacement layer for the C intl extension. Install it via Composer and have it available automatically if the intl extension is not available.

Additionally, the component ships data from the ICU library which can be accessed through the methods:

```php
use Symfony\Component\Intl\Intl;

Intl::getCurrencyBundle()->...
Intl::getLanguageBundle()->...
Intl::getLocaleBundle()->...
Intl::getRegionBundle()->...
```

If the intl extension is installed, Composer will install the ICU data for the ICU version in the intl extension. If the intl extension is not installed, Composer will use stub ICU data for the latest ICU version (see `Intl::getStubIcuVersion()`).

See the [README](/bschussek/symfony/blob/intl/src/Symfony/Component/Intl/README.md) for more information.

Todo:

- [x] finish the Intl README file
- [x] update the Icu README file
- [x] update the documentation
- [x] make parameter `$locale` optional (default to `\Locale::getDefault()`) in resource bundle methods
- [x] remove `(Icu)?Version::compare` calls in the tests
- [x] solve deployment problem when trying to install incompatible symfony/icu version listed in composer.lock

Create the following branches in the [Icu component](https://github.com/symfony/Icu):

- [x] 1.0.x
- [x] 1.1.x
- [x] 1.2.x

Commits
-------

9118b4a [Locale] Removed "Stub" prefixes in Intl component
b4cccfd [Intl] Removed "Stub" prefix from stub classes
60f31d1 [Intl] Improved inline documentation
c2d37e6 [Intl] Improved error messages in the build scripts
1249f01 [Intl] Added scripts to test the compatibility of various versions of symfony/icu with the ICU version installed on the system
9dbafd7 [Intl] Split update-stubs.php script into two scripts to function with the changed Icu component versioning
e2c11cb [Intl] Added a check for the ICU data version to IntlTestHelper to prevent the stub class tests from failing
427d24a [Intl] Outsourced bundle reader creation to Icu component
0160fd5 [Intl] Moved stub data to Icu component 1.0.x
dbca3b7 [Intl] Added empty directory needed for the tests
a717ce9 [Intl] Removed ICU version comparisons from the tests
5d17de5 [Intl] Fixed version comparisons in the transformation rules
470927d [Intl] Improved build scripts
aceb20d [Form] Improved tests to use the IntlTestHelper class
3dd75ff [Locale] Improved tests to use the IntlTestHelper class
03b78b0 [Validator] Improved tests to use the IntlTestHelper class
9d9c389 [Intl] Simplified tests
c55c4a2 [Intl] Only the StubNumberFormatterTest requires stub data
17a480b [Intl] Added IntlTestHelper class for convenience
1dcdcd3 [Locale] Fixed failing tests
f6b75b9 [Intl] Changed composer.json to disallow future versions of the Icu component
080c880 [Intl] Bumped the stub version to 50.1.2
dd2d013 [Intl] Improved the bundle compilation process
f47e60a [Intl] Fixed small bugs in the resource bundle transformation
467cc93 [Intl] Fixed various problems in the resource compilation process
4a5c453 [Intl] Moved the content of the README file to symfony/symfony-docs
9899de7 [Intl] Updated the README
bfec58a [Intl] Fixed flawed PHPDoc
21323ba [Intl] Updated the README file
209a9cb [Validator] Adapted to latest Intl changes
f2a0aec [Form] Adapted to latest Intl changes
0f6277f [Locale] Adapted to latest Intl changes
2cd1be8 [Intl] Made the $locale parameter optional in the bundle interfaces
b9e9cb2 [Intl] Added autoload.php which was ignored by .gitignore
838798f [Intl] Removed method IntlTestCase::skipIfInsufficientIcuVersion()
dde1d34 [Intl] Changed Intl::getIcuVersion() to return the stub version if the intl extension is not loaded
99f6f8a [Form] Fixed failing tests
5d0b849 Fixed PHPDoc
b60866c [Intl] Changed Intl::getStubIcuVersion() to Intl::getIcuStubVersion()
b902b6b [Locale] Added default locale
01d0ee8 [Validator] Changed component to use the Intl component
0c1fe39 [Form] Changed component to use the Intl component
5917a2e [Intl] Refactored Locale component into two new components Icu and Intl
2013-04-18 09:30:57 +02:00
Manuel Reinhard
c8906f4be8 [Validator] Added IBAN validator
Validation for International Bank Account Numbers
2013-04-18 09:21:11 +02:00
Bernhard Schussek
a868048a82 [Validator] Moved constraints Optional and Required to the Constraints\ namespace 2013-04-17 18:02:12 +02:00
Bernhard Schussek
d504732728 [Form] Added leading backslashes to @exceptionMessage doc blocks 2013-04-13 16:46:29 +02:00
dantleech
e655120f05 Enforce sprintf for exceptions 2013-04-11 08:50:46 +02:00
Bernhard Schussek
03b78b0e00 [Validator] Improved tests to use the IntlTestHelper class 2013-04-05 10:11:16 +02:00
Bernhard Schussek
209a9cb722 [Validator] Adapted to latest Intl changes 2013-04-05 10:11:15 +02:00
Bernhard Schussek
01d0ee8b78 [Validator] Changed component to use the Intl component 2013-04-05 10:11:14 +02:00
Dariusz Górecki
7c47e34928 [CS Fix] Consistent coding-style of concatenation operator usage 2013-04-02 10:39:57 +01:00
Fabien Potencier
0798800e88 fixed doc references (closes #7515) 2013-04-01 10:07:53 +02:00
Fabien Potencier
e1c741db9c Merge branch '2.2'
* 2.2: (22 commits)
  fixed doc references (closes #7515)
  fixed doc references (closes #7515)
  On OS X, sys_get_tmp_dir() returns /var/private/..., which really is below /private/var.
  Doctrine cannot handle bare random non-utf8 strings
  small changes
  [SecurityBundle] Fixed configuration exemple
  idAsIndex should be true with a smallint or bigint id field.
  [PropertyAccess] Remove trailing periods from doc blocks
  Fix param docs for PropertyAccessor read method
  Fixed long multibyte parameter logging in DbalLogger:startQuery
  Keep the file extension in the temporary copy and test that it exists (closes #7482)
  bumped Symfony version to 2.1.10-DEV
  [Validator][translation][japanese]replaced period to japanese one [Validator][translation][japanese]fixed japanese translation to more practical one [Validator][translation][japanese]fixed message ordering to be consistent with other languages [Validator][translation][japanese]added new validation messages in japanese translation
  updated VERSION for 2.1.9
  update CONTRIBUTORS for 2.1.9
  updated CHANGELOG for 2.1.9
  [Security] fixed wrong interface
  Remove already defined arguments
  Add missing use
  [FrameworkBundle] Reuse definition variable in FormPass
  ...

Conflicts:
	src/Symfony/Bridge/Doctrine/Logger/DbalLogger.php
	src/Symfony/Bundle/WebProfilerBundle/Resources/views/Collector/config.html.twig
2013-04-01 10:07:30 +02:00
Fabien Potencier
50822015a6 fixed doc references (closes #7515) 2013-04-01 10:06:05 +02:00
Fabien Potencier
ab1ab7ac18 merge branch '2.1' into 2.2
* 2.1:
  fixed doc references (closes #7515)
  small changes
  [SecurityBundle] Fixed configuration exemple
  idAsIndex should be true with a smallint or bigint id field.
  Fixed long multibyte parameter logging in DbalLogger:startQuery
  Keep the file extension in the temporary copy and test that it exists (closes #7482)
  [Validator][translation][japanese]replaced period to japanese one [Validator][translation][japanese]fixed japanese translation to more practical one [Validator][translation][japanese]fixed message ordering to be consistent with other languages [Validator][translation][japanese]added new validation messages in japanese translation

Conflicts:
	src/Symfony/Component/Validator/Resources/translations/validators.ja.xlf
2013-04-01 10:05:23 +02:00
Fabien Potencier
e602b19b3c fixed doc references (closes #7515) 2013-04-01 10:04:03 +02:00
77web
987adeddb7 [Validator][translation][japanese]replaced period to japanese one
[Validator][translation][japanese]fixed japanese translation to more practical one
[Validator][translation][japanese]fixed message ordering to be consistent with other languages
[Validator][translation][japanese]added new validation messages in japanese translation
2013-03-26 20:06:56 +09:00
Fabien Potencier
26750075b8 merged branch fabpot/deprecated (PR #7227)
This PR was merged into the master branch.

Discussion
----------

[WIP] Removed deprecated stuff

Commits
-------

f2a8908 removed deprecated functionality from RouteCollection
4f4a5d1 [TwigBundle] removed deprecated syntax
45bd413 [FrameworkBundle] removed deprecated options
0bb5d01 [FrameworkBundle] removed deprecated cookie options
b3081e8 [Form] removed deprecated methods and classes
e0385a2 [Validator] removed deprecated methods
65e3b16 [Validator] removed deprecated constraints
4a70ddf [HttpFoundation] removed deprecated session methods
4e7943f [Yaml] removed deprecated support of PHP parsin when parsing YAML files
09a5969 [HttpFoundation] removed deprecated Request::splitHttpAcceptHeader() method
c28f1b0 removed deprected way to declared trusted proxies
5ff6006 removed deprecated stuff in the fragment sub-framework
0a06a7c [Translation] removed deprecated classes
67f6397 [Security] removed deprecated classes
2013-03-23 13:50:05 +01:00
Fabien Potencier
e0385a2c1c [Validator] removed deprecated methods 2013-03-23 11:48:19 +01:00
Fabien Potencier
65e3b1684b [Validator] removed deprecated constraints 2013-03-23 11:48:18 +01:00
Bilal Amarni
5bb44f52a0 [HttpFoundation] UploadedFile - moved a security check
Squashed commit of the following:

commit b03b32ecc985c4a4f9dc7df2d3336a4cd75aae30
Merge: fb7004b fc70e13
Author: Bilal Amarni <bilal.amarni@gmail.com>
Date:   Wed Feb 27 11:33:37 2013 +0100

    [HttpFoundation] UploadedFile - moved a security check

commit fc70e138c1d3858775c9efe51268cae6d7ec3f69
Author: Bilal Amarni <bilal.amarni@gmail.com>
Date:   Thu Jan 24 11:07:29 2013 +0100

    explicitly passed UPLOAD_ERR_OK constant in a test

commit dda03a2faab9539ca3a93736dd2bc0ec27feb4e7
Author: Bilal Amarni <bilal.amarni@gmail.com>
Date:   Fri Jan 18 17:24:06 2013 +0100

    [HttpFoundation] UploadedFile - moved a security check from move() to isValid()
2013-03-23 10:56:11 +01:00
Fabien Potencier
d699a929e0 Merge branch '2.2'
* 2.2: (70 commits)
  change wrapped exception message to be more usefull
  updated VERSION for 2.0.23
  update CONTRIBUTORS for 2.0.23
  updated CHANGELOG for 2.0.23
  [Form] fixed failing test
  [DomCrawler] added support for query string with slash
  Fixed invalid file path for hiddeninput.exe on Windows.
  fix xsd definition for strict-requirements
  [WebProfilerBundle] Fixed the toolbar styles to apply them in IE8
  [ClassLoader] fixed heredocs handling
  fixed handling of heredocs
  Add a public modifier to an interface method
  removing xdebug extension
  [HttpRequest] fixes Request::getLanguages() bug
  [HttpCache] added a test (cached content should be kept after purging)
  [DoctrineBridge] Fixed non-utf-8 recognition
  [Security] fixed HttpUtils class tests
  replaced new occurences of 'Request::create()' with '::create()'
  changed sub-requests creation to '::create()'
  fixed merge issue
  ...

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/TranslationUpdateCommand.php
	src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar.html.twig
	src/Symfony/Component/DomCrawler/Link.php
	src/Symfony/Component/Translation/Translator.php
2013-03-20 15:03:03 +01:00
Fabien Potencier
94ca2754ff merged branch jfsimon/issue-7069 (PR #7271)
This PR was merged into the master branch.

Commits
-------

b6a5457 [Validator] Fixed member (getter/property) metadata readers. [Validator] added overridden getter metadata test [Validator] class member reflection build requires object instance [Validator] fixed error [Validation] fixed member metadata reflection cache [Validation] added property metedata test [Validation] fixed class/member metadata mapping [Validation] removed var_dump
9b6cd80 Update src/Symfony/Component/Validator/Mapping/GetterMetadata.php

Discussion
----------

[Validator] Use concrete Class Methods to check validations

This PR just adds a test to #7069.

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

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

by vicb at 2013-03-05T18:21:02Z

@jfsimon Do you have a response about my comment in the original PR ?

At least we now have a BC break (ie new is no more called).

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

by jfsimon at 2013-03-05T18:30:43Z

@vicb I didn't saw it. I update the description.

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

by vicb at 2013-03-05T18:34:01Z

np, do you have a reply ?

_BCB = yes should trigger a note in the changelog_

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

by jfsimon at 2013-03-05T18:51:15Z

@vicb a response about the `newReflectionMember` method update?

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

by vicb at 2013-03-05T19:08:54Z

Yep

"Jean-François Simon" <notifications@github.com> wrote:

>@vicb a response about the `newReflectionMember` method update?
>
>---
>Reply to this email directly or view it on GitHub:
>https://github.com/symfony/symfony/pull/7271#issuecomment-14457748

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

by Gladhon at 2013-03-06T08:04:38Z

@vicb
newReflectionMember is a Method that comes from the parent and has no argument "object". So it can only get the reflection Member of the configured class, while we need once (in this special case) need the method of the concrete class.

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

by jfsimon at 2013-03-06T08:29:11Z

@vicb @Gladhon correct me if I'm wrong.

This method is only used to check the member scope. In the case of a getter, this scope is always public (`method_exists` returns true only if method is visible, then is this case public, isn'it?), so the `isPublic`, `isProtected` and `isPrivate` methods can be safely overriden. Am I right?

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

by Gladhon at 2013-03-06T08:43:54Z

Yes i am in agreement with that.

But I just think about to change the getPropertyValue also in PropertyMetadata. Can that make sense in any case ?

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

by vicb at 2013-03-06T08:56:21Z

@jfsimon `method_exists` returns `true` when the method exists, whatever its visibility.

My question is whether it would make sense to change the signature of `newReflectionMember` to accept an objet ?
That would be a BC break but the implementation proposed here is also a BC break (`newReflectionMember` which was called from `getReflectionMember` is no more called with this PR - it could have been overriden by a dev)

Finally `PropertyMetadata` should probably be updated in the same way.

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

by vicb at 2013-03-06T08:57:33Z

_and fyi you can both work on the same PR, ie @Gladhon you can send some changes (a PR) to the repo of @jfsimon_

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

by Gladhon at 2013-03-06T10:22:07Z

Well, i like it how it is now. Cause if we change that, you also need to have a object if calling "isPublic". For me it makes more sence to have only the object parameter if its realy needed.
Where do you see a real benefit if we change the `newReflectionMember` instead ?

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

by jfsimon at 2013-03-07T13:43:43Z

@vicb I think passing object instance to `getReflectionMember` is **required** for consistency.
I just pushed it.
2013-03-18 15:13:05 +01:00
Jean-François Simon
b6a545711a [Validator] Fixed member (getter/property) metadata readers.
[Validator] added overridden getter metadata test
[Validator] class member reflection build requires object instance
[Validator] fixed error
[Validation] fixed member metadata reflection cache
[Validation] added property metedata test
[Validation] fixed class/member metadata mapping
[Validation] removed var_dump
2013-03-18 15:05:03 +01:00
Fabien Potencier
0d7593c636 Merge branch '2.1' into 2.2
* 2.1:
  sub-requests are now created with the same class as their parent
  [FrameworkBundle] removed BC break
  [FrameworkBundle] changed temp kernel name in cache:clear
  [DoctrineBridge] Avoids blob values to be logged by doctrine
  [Security] use current request attributes to generate redirect url?
  [Validator] fix showing wrong max file size for upload errors
  [TwigBridge] removed double var initialization (refs #7344)
  [2.1][TwigBridge] Fixes Issue #7342 in TwigBridge
  [FrameworkBundle] fixed cahe:clear command's warmup
  [TwigBridge] now enter/leave scope on Twig_Node_Module
  [TwigBridge] fixed fixed scope & trans_default_domain node visitor
  [TwigBridge] fixed non probant tests & added new one
  [BrowserKit] added ability to ignored malformed set-cookie header
  [Translation] removed wriong 'use'
  [Translation] added xliff loader/dumper with resname support
  [TwigBridge] fixes

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/HttpKernel.php
	src/Symfony/Component/Security/Http/HttpUtils.php
	src/Symfony/Component/Translation/Loader/XliffFileLoader.php
	src/Symfony/Component/Translation/Tests/Loader/XliffFileLoaderTest.php
2013-03-15 11:14:31 +01:00
fzerorubigd
64aca11785 fix validator translation 2013-03-14 21:52:50 +01:00
Tobias Schultze
7216cb0407 [Validator] fix showing wrong max file size for upload errors
this was because the maxSize option wasn't parsed correctly and simply string comparision could lead to wrong results, e.g. 200 > 1000M
2013-03-13 15:34:16 +01:00
Fabien Potencier
feaee3615f Merge branch '2.2'
* 2.2: (26 commits)
  [FrameworkBundle] Fixes invalid serialized objects in cache
  remove dead code in yaml component
  Fixed typo in UPGRADE-2.2
  fixed typo
  RedisProfilerStorage wrong db-number/index-number selected
  [DependencyInjection] added a test for the previous merge (refs #7261)
  Unset loading[$id] in ContainerBuilder on exception
  Default validation message translation fix.
  remove() should not use deprecated getParent() so it does not trigger deprecation internally
  adjust routing tests to not use prefix in addCollection
  add test for uniqueness of resources
  added tests for addDefaults, addRequirements, addOptions
  adjust RouteCollectionTest for the addCollection change and refactor the tests to only skip the part that really needs the config component
  added tests for remove() that wasnt covered yet and special route name
  refactor interator test that was still assuming a tree
  adjust tests to no use addPrefix with options
  adjusted tests to not use RouteCollection::getPrefix
  [Routing] trigger deprecation warning for deprecated features that will be removed in 2.3
  [Console] fixed StringInput binding
  [Console] added string input test
  ...
2013-03-06 18:50:21 +01:00
Maksim Muruev
709518bafd Default validation message translation fix.
Add 'validators' for $translationDomain. Detailed discussion https://github.com/fabpot/Silex/pull/641
2013-03-06 17:05:34 +01:00
Fabien Potencier
603d80a6ec Merge branch '2.2'
* 2.2:
  fixed CS
  Add persian translation to Components/Security
  bumped Symfony version to 2.2.1-DEV-DEV
  updated VERSION for 2.2.0
  updated CHANGELOG for 2.2.0
2013-03-01 11:42:20 +01:00
Fabien Potencier
62baab5b36 fixed CS 2013-03-01 11:42:10 +01:00
Fabien Potencier
fdb2948130 Merge branch '2.2'
* 2.2: (24 commits)
  Options small typo
  [Console] fixed unparsed StringInput tokens
  Mask PHP_AUTH_PW header in profiler
  [TwigBridge] fixed trans twig extractor
  [Finder] adds adapter selection/unselection capabilities
  [DomCrawler] fix handling of schemes by Link::getUri()
  [Console] Fixed comment
  [TwigBridge] fixed the translator extractor that were not trimming the text in trans tags (closes #7056)
  Fixed handling absent href attribute in base tag
  fixed paths/notPaths regex for shell adapters
  fix issue 4911
  Adds expandable globs support to shell adapters
  [HttpFoundation] Fixed messed up headers
  Fixes AppCache + ESI + Stopwatch problem
  added a DebuClassLoader::findFile() method to make the wrapping less invasive
  bumped Symfony version to 2.2.0-RC4-DEV
  updated VERSION for 2.2.0-RC3
  updated CHANGELOG for 2.2.0-RC3
  fixed CHANGELOG
  bumped Symfony version to 2.1.9-DEV
  ...
2013-03-01 07:43:27 +01:00
Fabien Potencier
bc79f27f70 merged branch kriswallsmith/2.2 (PR #6988)
This PR was merged into the 2.2 branch.

Commits
-------

da22926 [Validator] gracefully handle transChoice errors

Discussion
----------

[Validator] gracefully handle transChoice errors

This validator annotation was throwing an error for me:

```
/** @Assert\Length(min=6, minMessage="Must be 6 characters") */
```

To avoid this error in the current code I would need to provide a message template that accommodates the minimum length being 1, even though that's not the case.

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

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

by kriswallsmith at 2013-02-25T19:41:51Z

ping @fabpot

Any thoughts on this change? Having to provide a transChoice template when you know what the pluralization is going to be is a pain in the neck.

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

by kriswallsmith at 2013-02-25T19:42:11Z

ping @bschussek too :)

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

by fabpot at 2013-02-25T19:57:08Z

I'm +1 for this change. What do you think @bschussek?

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

by vicb at 2013-02-26T10:44:33Z

Would this be a common enough use case to be pushed to the translator ?
2013-02-28 15:29:34 +01:00
Guilherme Blanco
06ebb0db87 Defined stable version point of Doctrine. 2013-02-22 13:53:49 -05:00
Gladhon
9b6cd808c7 Update src/Symfony/Component/Validator/Mapping/GetterMetadata.php
Please use the concrete Class Methods to check validations. Its realy unexpected that Validator don't use the normal Object way and can call anything...
2013-02-14 14:33:52 +01:00
Fabien Potencier
f66e109d14 Merge branch '2.2'
* 2.2:
  Fixed XmlFileLoaderTest::testLoadThrowsExceptionWithInvalidFileEvenWithoutSchemaValidation
  moved file hash calculation to own method
  [Validator] Add check for existing metadata on property
  added support for the X-Forwarded-For header (closes #6982, closes #7000)
  fixed the IP address in HttpCache when calling the backend
  [EventDispatcher] Added assertion.
  [EventDispathcer] Fix removeListener
  [DependencyInjection] Add clone for resources which were introduced in 2.1
  [DependencyInjection] Allow frozen containers to be dumped to graphviz
  Fix 'undefined index' error, when entering scope recursively
  [Security] fixed session creation on login (closes #7011)
  replaced usage of the deprecated pattern routing key (replaced with path)
  Add dot character `.` to legal mime subtype regular expression
  [HttpFoundation] fixed the creation of sub-requests under some circumstancies (closes #6923, closes #6936)
2013-02-11 12:27:01 +01:00
Fabien Potencier
c5fcf0d0cc merged branch dlsniper/validator-check-property-metadata (PR #6972)
This PR was squashed before being merged into the 2.2 branch (closes #6972).

Commits
-------

4cbdbcb [Validator] Add check for existing metadata on property

Discussion
----------

[Validator] Add check for existing metadata on property

| Q             | A
| ------------- | ---
| Bug fix?      | no (sort of)
| New feature?  | no
| BC breaks?    | no (I don't think so)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | ~
| License       | MIT
| Doc PR        | ~

Todo:
- [x] Check if the new method should be added to the interface as well.

This adds a check for metadata existence before usage else the code will emit a warning.

This should not be a BC break or a bug fix as the patched code is 2.2 specific.

@bschussek let me know if I should add the method in the interface as well. Thank you.

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

by vicb at 2013-02-05T10:40:56Z

Strictly speaking this is a BC break (you are adding a public method). But I guess we should better defined what should be describe as BC break - I have asked myself the same question more than one time /cc @fabpot

Please also add a UT and a note in the changelog.

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

by dlsniper at 2013-02-05T11:26:30Z

@vicb thanks for input. In this case I guess I should add the method to the interface as well.

As for unit tests I'll add them soon as well.

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

by fabpot at 2013-02-05T14:19:14Z

Can you add a test?

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

by dlsniper at 2013-02-05T15:57:12Z

I'll do it tonight as I've bumped into some work related issues.

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

by fabpot at 2013-02-11T11:11:12Z

Just for the record, this is not a BC break as the interface was added in 2.2.
2013-02-11 12:11:43 +01:00
Florin Patan
4cbdbcb1f9 [Validator] Add check for existing metadata on property 2013-02-11 12:11:43 +01:00
Fabien Potencier
386884046d changed dependencies to allow all 2.3 versions of the components (closes #6983) 2013-02-11 11:13:11 +01:00
Fabien Potencier
c97be281c0 Merge branch '2.2'
* 2.2: (30 commits)
  [HttpFoundation] Added support for partial ranges in the BinaryFileResponse.
  [HttpFoundation] Fixed byte ranges in the BinaryFileResponse.
  updated required versions when depending on the HttpFoundation component
  updated required versions when depending on the HttpKernel component
  updated required versions when depending on the Config component
  updated required versions when depending on the Form component
  updated required versions when depending on the DependencyInjection component
  updated required versions when depending on the Validator component
  updated required versions when depending on the Translation component
  updated required versions when depending on the Routing component
  updated required versions when depending on the EventDispatcher component
  updated required versions when depending on the OptionsResolver component
  updated required versions when depending on the PropertyAccess component
  updated required versions when depending on the Security component
  updated required versions when depending on the Templating component
  updated required versions when depending on the Stopwatch component
  updated required versions when depending on the Process component
  updated required versions when depending on the Finder component
  updated required versions when depending on the Dom Crawler component
  use ~2.0 when depending on the Dom Crawler component
  ...
2013-02-11 11:09:44 +01:00
Fabien Potencier
0e4a1fe418 updated required versions when depending on the HttpFoundation component 2013-02-08 17:10:58 +01:00
Fabien Potencier
0a70fe7079 updated required versions when depending on the Config component 2013-02-08 17:10:57 +01:00
Fabien Potencier
a6713136d0 updated required versions when depending on the Translation component 2013-02-08 17:10:56 +01:00
Fabien Potencier
9b64be2ee8 use ~2.0 when depending on the locale component
Some methods have been added in 2.1 but none of them are used by the
Symfony components.
2013-02-08 17:10:51 +01:00
Fabien Potencier
c3906a4acb updated required versions when depending on the Yaml component
The API has not changed since 2.0 and won't until 3.0.
2013-02-08 17:10:51 +01:00
Kris Wallsmith
da2292681f [Validator] gracefully handle transChoice errors 2013-02-06 12:54:30 -08:00
Fabien Potencier
223cc6f7c7 Merge branch '2.2'
* 2.2:
  fixed regression in the Finder component (it was possible to use it without using exec before, closes #6357)
  fixed a circular call (closes #6864)
  typo
  [Security] [Tests] added unit tests for the UserPasswordValidator class and made the validator service for the UserPassword constraint configurable.
  fixed wrong indentation
  tweaked previous commit
  [HttpKernel] Fix the URI signer (closes #6801)
  Add Arabic translations.
  [HttpKernel] fixed regression when rendering an inline controller and passing some objects  (closes #6822)
  [FrameworkBundle] fixed typo
  renamed some classes and Twig functions to more descriptive names (refs #6871)
  Classcollectionloader: fix traits + enhancements
  Fix a deprecated method call in the tests
  Update `composer.json` files: - to allow versions ~2.2 (>=2.2,<3.0) of Doctrine DBAL, ORM & Common - fixed Propel1 versions difference between main and bridge files - fixed Twig versions difference between main and bridge files - to allow versions ~1.11 (>=1.11,<2.0) of Twig - fixed Locale ext-intl version to accept all, not non-existing version
  Correct comment in NativeSessionStorage regarding session.save_handler
  [Security] Add PHPDoc to AuthenticationEvents
2013-02-04 13:42:02 +01:00
Mahmoud Mostafa
edd5a85303 Add Arabic translations. 2013-02-01 22:37:51 +01:00
Victor
df9db258c1 Fix a deprecated method call in the tests 2013-02-01 14:27:32 +01:00
Joseph Bielawski
53c70548a0 Update composer.json files: - to allow versions ~2.2 (>=2.2,<3.0) of Doctrine DBAL, ORM & Common - fixed Propel1 versions difference between main and bridge files - fixed Twig versions difference between main and bridge files - to allow versions ~1.11 (>=1.11,<2.0) of Twig - fixed Locale ext-intl version to accept all, not non-existing version 2013-02-01 10:33:53 +01:00
Fabien Potencier
d0aaf62557 updated the branch alias in composer files 2013-01-31 22:39:01 +01:00
Florin Patan
d0341e84ab Replaced call that triggers deprecated error 2013-01-31 14:13:11 +02:00
Fabien Potencier
9e8b2f01f6 [Validator] fixed broken tests 2013-01-24 11:00:40 +01:00
Fabien Potencier
a1616efe1f merged branch franmomu/update_deprecated_calls_all_validator (PR #6743)
This PR was merged into the master branch.

Commits
-------

8bfd7a7 Remove custom error handler for deprecations
efbff0c Change deprecated Min and Max constraint
c47f027 [Validator][Constraints] Update AllValidator using new Validator API

Discussion
----------

[Validator][Constraints] Update AllValidator using new Validator API

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets:
License of the code: MIT
2013-01-24 10:29:59 +01:00
Fabien Potencier
70686ac7b3 merged branch franmomu/update_deprecated_calls_collection_validator (PR #6741)
This PR was merged into the master branch.

Commits
-------

9264431 Remove custom error handler for deprecations
c80c17e Change deprecated Min constraint to Range constraint
a39fdd8 Remove getPropertyPath in the tests
ffa4c6f [Validator][Constraints] CollectionValidator

Discussion
----------

[Validator][Constraints] Update CollectionValidator using new Validator API

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

In the tests `$i = 1` is because in `validate` the first call to `$this->context` is `$this->context->getGroup();`, should I write this in a comment before each declaration?

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

by stof at 2013-01-15T21:50:41Z

You should also modify the CollectionValidator tests to use a different constraint than ``Min`` which is deprecated. Once it is done, these tests should not need to register a custom error handler catching deprecations anymore

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

by franmomu at 2013-01-15T22:33:43Z

Perfect, I'm going to do the same in #6743
2013-01-24 10:29:51 +01:00
Fabien Potencier
02738a509f merged branch CEikermann/patch-1 (PR #6728)
This PR was merged into the master branch.

Commits
-------

2061cc0 Update src/Symfony/Component/Validator/Mapping/ClassMetadata.php

Discussion
----------

[Validator] ClassMetadata use deprecated methods

Bug fix: yes
Feature addition: no
Backwards compatibility break: maybe yes (I don't have the knowlegde)
Symfony2 tests pass: yes
Fixes the following tickets: ?
Todo: Nothing
License of the code: MIT
Documentation PR: Nothing

getValue() is deprecated since version 2.2 and will be removed in 2.3. Use getPropertyValue() instead.

ClassMetadata is still using the deprecated method, changed it to getPropertyValue to prevent a trigger error.

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

by fabpot at 2013-01-14T15:35:28Z

ping @bschussek
2013-01-24 09:53:37 +01:00
Fabien Potencier
001734aa2e [Validator] fixed phpdoc 2013-01-21 17:57:12 +01:00
Fabien Potencier
1f762c7723 Merge branch '2.1'
* 2.1:
  [Yaml] fixed default value
  Added Yaml\Dumper::setIndentation() method to allow a custom indentation level of nested nodes.
  added a way to enable/disable object support when parsing/dumping
  added a way to enable/disable PHP support when parsing a YAML input via Yaml::parse()
  fixed CS
  [Process] Fix docblocks, remove `return` from `PhpProcess#start()` as parent returns nothing, cleaned up `ExecutableFinder`
  fixes a bug when output/error output contains a % character
  [Console] fixed input bug when the value of an option is empty (closes #6649, closes #6689)
  [Profiler] [Redis] Fix sort of profiler rows.
  Fix version_compare() calls for PHP 5.5.
  Removed underscores from test method names to be consistent with other components.
  [Process] In edge cases `getcwd()` can return `false`, then `proc_open()` should get `null` to use default value (the working dir of the current PHP process)
  Fix version_compare() calls for PHP 5.5.
  Handle the deprecation of IntlDateFormatter::setTimeZoneId() in PHP 5.5.
  removed the .gitattributes files (closes #6605, reverts #5674)
  [HttpKernel] Clarify misleading comment in ExceptionListener

Conflicts:
	src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar_style.html.twig
	src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTimeTypeTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/Type/TimeTypeTest.php
	src/Symfony/Component/Form/Tests/Util/PropertyPathTest.php
	src/Symfony/Component/HttpKernel/Profiler/RedisProfilerStorage.php
	src/Symfony/Component/Process/Process.php
2013-01-17 16:25:59 +01:00
Fran Moreno
8bfd7a7a35 Remove custom error handler for deprecations 2013-01-16 00:14:35 +01:00
Fran Moreno
efbff0c425 Change deprecated Min and Max constraint 2013-01-16 00:10:57 +01:00
Fran Moreno
9264431e37 Remove custom error handler for deprecations 2013-01-15 23:53:36 +01:00
Fran Moreno
c80c17ebee Change deprecated Min constraint to Range constraint 2013-01-15 23:50:37 +01:00
Fran Moreno
c47f02735a [Validator][Constraints] Update AllValidator using new Validator API 2013-01-15 01:52:28 +01:00
Fran Moreno
a39fdd88f4 Remove getPropertyPath in the tests 2013-01-15 00:53:09 +01:00
Fran Moreno
ffa4c6f25b [Validator][Constraints] CollectionValidator 2013-01-15 00:03:31 +01:00
Christian Eikermann
2061cc03b7 Update src/Symfony/Component/Validator/Mapping/ClassMetadata.php
getValue() is deprecated since version 2.2 and will be removed in 2.3. Use getPropertyValue() instead.

ClassMetadata is still using the deprecated method, changed it to getPropertyValue to prevent a trigger error.
2013-01-14 09:10:09 +01:00
Jakub Zalas
802426272f Removed underscores from test method names to be consistent with other components.
It is more common to use fully camel-cased names for test methods. Only some of the test methods are called with underscore notation. To avoid confusion it is better to be consistent.
2013-01-11 00:31:43 +00:00
Christophe Coevoet
68257d372f Enhanced the triggering of E_USER_DEPRECATED errors
- Removed useless error handlers around FormEvent as the triggering has
  been fixed in it.
- Enhanced the triggering of deprecation errors for places where the BC
  method provide some user logic needing to be converted to a new way.
- Enhanced the deprecation messages to mention the replacement whenever
  possible.
2013-01-10 09:22:55 +01:00
Fabien Potencier
b33d5bc352 removed the .gitattributes files (closes #6605, reverts #5674) 2013-01-09 09:51:07 +01:00
Bernhard Schussek
586a16e8f8 [Validator] Changed DefaultTranslator::getLocale() to always return 'en' 2013-01-08 15:58:21 +01:00
Bernhard Schussek
58bfd60b0f [Validator] Improved the inline documentation of DefaultTranslator 2013-01-08 15:58:17 +01:00
Bernhard Schussek
cd662ccf7a [Validator] Added ExceptionInterface, BadMethodCallException and InvalidArgumentException 2013-01-08 15:20:14 +01:00
Bernhard Schussek
e00e5ecf4e [Validator] Fixed failing test 2013-01-08 14:59:49 +01:00
Bernhard Schussek
cc0df0a5af [Validator] Changed validator to support pluralized messages by default
This was implemented in order to satisfy Drupal's requirements for a
singular and a plural message whenever a message is passed to their
implementation of transChoice().
2013-01-08 14:59:49 +01:00
Bernhard Schussek
56d61eb6da [Form][Validator] Added BC breaks in unstable code to the CHANGELOG 2013-01-08 14:45:43 +01:00
Bernhard Schussek
46f751ccf2 [Validator] Extracted message interpolation logic of ConstraintViolation and used the Translation component for that 2013-01-08 14:43:29 +01:00
Ricard Clau
5be0042be0 better regexp, more test cases, added comments about each credit card 2013-01-07 22:57:38 +01:00
Sebastian Goettschkes
cc278aff69 [Validator] Fix CardSchemeValidator double violation when value is non-numeric.
Making scheme option accept strings in addition to arrays.
2013-01-07 22:54:50 +01:00
Fabien Potencier
dc4a10e931 merged branch vitaliytv/master (PR #6590)
This PR was merged into the master branch.

Commits
-------

4bf82e0 Update Ukrainian translation for master branch

Discussion
----------

[Validator] Update Ukrainian translation for master branch
2013-01-07 08:09:43 +01:00
Fabien Potencier
ce212fcf65 Merge branch '2.1'
* 2.1:
  Update Ukrainian translation for 2.1 branch
2013-01-07 08:09:06 +01:00
Ricard Clau
b1f190fd6c covers edge case for Luhn 2013-01-06 22:18:36 +01:00
vitaliytv
4bf82e03dc Update Ukrainian translation for master branch 2013-01-06 23:17:37 +02:00
vitaliytv
31edf85e61 Update Ukrainian translation for 2.1 branch 2013-01-06 23:14:22 +02:00
Bernhard Schussek
184c8e586f Fixed @expectedException definitions to reference absolute exception paths 2013-01-05 18:52:40 +01:00
Fabien Potencier
31ff3db517 Merge branch '2.1'
* 2.1: (24 commits)
  updated license year
  Update src/Symfony/Component/HttpFoundation/Response.php
  [Form] Fixed inheritance of "error_bubbling" in RepeatedType
  [Form] Fixed DateType when used with the intl extension disabled.
  [HttpFoundation] fix return types and handling of zero in Response
  [HttpFoundation] better fix for non-parseable Expires header date
  Fixed missing plural message in portuguese validator
  Fix Expires when the header is -1
  [DoctrineBridge] Allowing memcache port to be 0 to support memcache unix domain sockets.
  [Console] fixed unitialized properties (closes #5935)
  [Process] Prevented test from failing when pcntl extension is not enabled.
  Revert "[DoctrineBridge] Improved performance of the EntityType when used with the "query_builder" option"
  [Form] Fixed failing tests for DateTimeToStringTransformer.
  [Locale] Fixed the StubLocaleTest for ICU versions lower than 4.8.
  [Bundle] [FrameworkBundle] fixed typo in phpdoc of the SessionListener.
  [Form] Fixed test regression introduced in #6440
  [Tests] Fix namespaces
  Fixed php doc of GenericEvent::__construct
  HttpUtils must handle RequestMatcher too
  use preferred_choices in favor of preferred_query
  ...

Conflicts:
	src/Symfony/Bridge/Propel1/Form/ChoiceList/ModelChoiceList.php
2013-01-04 18:02:19 +01:00
Fabien Potencier
8349816dc5 Merge branch '2.0' into 2.1
* 2.0:
  updated license year
  Update src/Symfony/Component/HttpFoundation/Response.php
  [Console] fixed unitialized properties (closes #5935)
  [Bundle] [FrameworkBundle] fixed typo in phpdoc of the SessionListener.
  bumped Symfony version to 2.0.21-DEV
  updated VERSION for 2.0.21
  updated CHANGELOG for 2.0.21

Conflicts:
	src/Symfony/Bundle/SwiftmailerBundle/LICENSE
	src/Symfony/Component/Filesystem/LICENSE
	src/Symfony/Component/HttpFoundation/Response.php
	src/Symfony/Component/HttpKernel/Kernel.php
2013-01-04 18:00:54 +01:00
Fabien Potencier
df5c171490 updated license year 2013-01-04 17:59:43 +01:00
Fabien Potencier
18856428b6 updated license year 2013-01-04 17:58:00 +01:00
andreabreu98
ba5cd6ad2b Fixed missing plural message in portuguese validator 2013-01-02 16:51:06 +01:00
Fabien Potencier
79148f3c86 Revert "merged branch ricardclau/rename_choice_to_oneof (PR #6360)"
This reverts commit 1de60c902c, reversing
changes made to e3cc337b00.

Conflicts:
	UPGRADE-2.2.md
2012-12-29 10:43:12 +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
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
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 Moreno
a6704f34f4 [Tests] Fix namespaces 2012-12-27 22:06:37 +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
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
ttomor
a50e2a46ec Albanian translation 2012-12-22 15:40:27 +01:00
Florin Patan
c2acc6c2cb Fixed most of the docblocks/unused namespaces 2012-12-19 08:09:49 +01:00
Colin Frei
07316c9aa0 [Validator] catch deprecated methods 2012-12-17 21:38:04 +01:00
Michel Weimerskirch
ab9d033edc [Validator] Added missing Luxembourgish messages 2012-12-17 12:46:04 +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
Colin Frei
6b105504f4 Merge branch 'master' of github.com:symfony/symfony into deprecationErrors 2012-12-14 23:30:36 +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
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
rubenrua
4c833ac80e Added Galician translation 2012-12-14 19:44:04 +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ň
d6f08809dd [Validator] Added dependency to Config component to loading XML files 2012-12-14 15:33:59 +01:00
robinduval
7511a500ce [Validator] Card validation - French translations 2012-12-14 12:35:25 +01:00
Alex Carol
632f57d862 Corrected typo in catalan translation 2012-12-13 23:08:14 +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
Bernhard Schussek
81bdab8b44 [Validator] Fixed: Arrays are validated recursively by default 2012-12-13 15:47:07 +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
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
Florin Patan
58f9d0042d Updated Romanian translations 2012-12-12 21:31:29 +02: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
Andreia Bohner
655fd6ef4c Update Portuguese validation messages 2012-12-12 16:43:57 -02:00
Haritz
af3e3149d1 Updated basque translations 2012-12-12 18:09:02 +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
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
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
Martin Hasoň
10e5f3b3df Removed useless branch alias for dev-master in composer.json 2012-12-06 11:00:55 +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
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
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
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
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
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
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
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
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