Commit Graph

17835 Commits

Author SHA1 Message Date
Bernhard Schussek 3bd6d802ed [Validator] CS fixes 2014-07-28 15:52:59 +02:00
Bernhard Schussek 870a41a594 [FrameworkBundle] Made ConstraintValidatorFactory aware of the legacy validators 2014-07-28 15:52:58 +02:00
Bernhard Schussek 7504448ee7 [Validator] Added extensive test coverage for the constraint validators for the different APIs 2014-07-28 15:52:58 +02:00
Bernhard Schussek 8e461af756 [Validator] Constraint validators now use the 2.5 API. For incompatible validators, legacy validators were created 2014-07-28 15:52:58 +02:00
Fabien Potencier 7e175ef8f3 Merge branch '2.4' into 2.5
* 2.4:
  Update validators.eu.xlf
  fixed CS
  remove unused imports
  [Routing] simplify the XML schema file
  Unify null comparisons
  [EventDispatcher] don't count empty listeners
  [Process] Fix unit tests in sigchild environment
  [Process] fix signal handling in wait()
  [BrowserKit] refactor code and fix unquoted regex
  Fixed server HTTP_HOST port uri conversion
  [MonologBridge] fixed Console handler priorities
  Bring code into standard
  [Process] Add test to verify fix for issue #11421
  [Process] Fixes issue #11421
  [DependencyInjection] Pass a Scope instance instead of a scope name.

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Test/WebTestCase.php
	src/Symfony/Component/DependencyInjection/Tests/Dumper/GraphvizDumperTest.php
	src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorCollectionTest.php
2014-07-28 15:20:46 +02:00
Fabien Potencier 4413dacc07 Merge branch '2.3' into 2.4
* 2.3:
  Update validators.eu.xlf
  fixed CS
  remove unused imports
  Unify null comparisons
  [EventDispatcher] don't count empty listeners
  [Process] Fix unit tests in sigchild environment
  [Process] fix signal handling in wait()
  [BrowserKit] refactor code and fix unquoted regex
  Fixed server HTTP_HOST port uri conversion
  Bring code into standard
  [Process] Add test to verify fix for issue #11421
  [Process] Fixes issue #11421
  [DependencyInjection] Pass a Scope instance instead of a scope name.

Conflicts:
	src/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php
2014-07-28 15:13:16 +02:00
Bernhard Schussek e8b53e9c21 bug #11412 [Validator] Made sure that context changes don't leak out of (Contextual)ValidatorInterface (webmozart)
This PR was merged into the 2.5 branch.

Discussion
----------

[Validator] Made sure that context changes don't leak out of (Contextual)ValidatorInterface

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

Commits
-------

ff48939 [Validator] Added markObjectAsInitialized() and isObjectInitialized() to ExecutionContextInterface
14b60c8 [Validator] Fixed doc block
91bf277 [Validator] Made sure that context changes don't leak out of (Contextual)ValidatorInterface
2014-07-28 12:07:02 +02:00
Fabien Potencier 20bf24ea3d minor #11491 Update validators.eu.xlf (g123456789l)
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes #11491).

Discussion
----------

Update validators.eu.xlf

Spelling of 'CSRF' was incorrect

Commits
-------

d432395 Update validators.eu.xlf
2014-07-28 11:30:47 +02:00
g123456789l d4323951f2 Update validators.eu.xlf
Spelling of 'CSRF' was incorrect
2014-07-28 11:30:47 +02:00
Fabien Potencier 24cd42555c bug #11475 [EventDispatcher] don't count empty listeners (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[EventDispatcher] don't count empty listeners

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

When event listeners for certain events are removed from the event
dispatcher, empty arrays are not being removed. Therefore, counting
on empty arrays leads to wrong results of the hasListeners() method.

Thanks to @mlindenb for discovering this an proposing a solution.

Commits
-------

fdbb04a [EventDispatcher] don't count empty listeners
2014-07-27 10:29:33 +02:00
Fabien Potencier ff4a37ff24 minor #11484 remove unused imports (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

remove unused imports

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

Commits
-------

9cd059e remove unused imports
2014-07-27 10:26:10 +02:00
Fabien Potencier 0bce1483c1 fixed CS 2014-07-27 10:25:12 +02:00
Fabien Potencier 9b5f56c7cc minor #11482 [Routing] simplify the XML schema file (xabbuh)
This PR was merged into the 2.4 branch.

Discussion
----------

[Routing] simplify the XML schema file

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

Conditions that are defined for certain routes are just simple strings.
Thus, there is no need to use a dedicated element when xsd:string does
the same (as mentioned by @tobion in #11394).

Commits
-------

dbac46a [Routing] simplify the XML schema file
2014-07-27 10:01:39 +02:00
Fabien Potencier 8b051f9daa minor #11481 Unify null comparisons (WouterJ)
This PR was merged into the 2.3 branch.

Discussion
----------

Unify null comparisons

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

Commits
-------

be04c50 Unify null comparisons
2014-07-27 09:59:35 +02:00
Christian Flothmann 9cd059ee1f remove unused imports 2014-07-26 20:24:56 +02:00
Bernhard Schussek ff489390c6 [Validator] Added markObjectAsInitialized() and isObjectInitialized() to ExecutionContextInterface 2014-07-26 14:46:01 +02:00
Bernhard Schussek 14b60c8c8f [Validator] Fixed doc block 2014-07-26 14:41:49 +02:00
Christian Flothmann dbac46a9ae [Routing] simplify the XML schema file
Conditions that are defined for certain routes are just simple strings.
Thus, there is no need to use a dedicated element when xsd:string does
the same.
2014-07-26 12:08:20 +02:00
WouterJ be04c5000c Unify null comparisons 2014-07-26 11:54:23 +02:00
Christian Flothmann fdbb04a6ac [EventDispatcher] don't count empty listeners
When event listeners for certain events are removed from the event
dispatcher, empty arrays are not being removed. Therefore, counting
on empty arrays leads to wrong results of the hasListeners() method.
2014-07-25 17:00:14 +02:00
Romain Neutron c548bd861a bug #11436 fix signal handling in wait() on calls to stop() (xabbuh, romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

fix signal handling in wait() on calls to stop()

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

``wait()`` throws an exception when the process was terminated by a signal. This should not happen when the termination was requested by calling the ``stop()`` method (for example, inside a callback which is passed to ``wait()``).

Commits
-------

5939d34 [Process] Fix unit tests in sigchild environment
eb68662 [Process] fix signal handling in wait()
94ffc4f bug #11469  [BrowserKit] Fixed server HTTP_HOST port uri conversion (bcremer, fabpot)
103fd88 [BrowserKit] refactor code and fix unquoted regex
f401ab9 Fixed server HTTP_HOST port uri conversion
045cbc5 bug #11425 Fix issue described in #11421 (Ben, ben-rosio)
f5bfa9b bug #11423 Pass a Scope instance instead of a scope name when cloning a container in the GrahpvizDumper (jakzal)
3177be5 minor #11464 [Translator] Use quote to surround invalid locale (lyrixx)
c9742ef [Translator] Use quote to surround invalid locale
4dbe0e1 bug #11120 [2.3][Process] Reduce I/O load on Windows platform (romainneutron)
797d814 bug #11342 [2.3][Form] Check if IntlDateFormatter constructor returned a valid object before using it (romainneutron)
0b5348e minor #11441 [Translator] Optimize assertLocale regexp (Jérémy Derussé)
537c39b Optimize assertLocale regexp
4cf50e8 Bring code into standard
9f4313c [Process] Add test to verify fix for issue #11421
02eb765 [Process] Fixes issue #11421
6787669 [DependencyInjection] Pass a Scope instance instead of a scope name.
9572918 bug #11411 [Validator] Backported #11410 to 2.3: Object initializers are called only once per object (webmozart)
291cbf9 [Validator] Backported #11410 to 2.3: Object initializers are called only once per object
efab884 bug #11403 [Translator][FrameworkBundle] Added @ to the list of allowed chars in Translator (takeit)
3176f8b [Translator][FrameworkBundle] Added @ to the list of allowed chars in Translator
91e32f8 bug #11381 [2.3] [Process] Use correct test for empty string in UnixPipes (whs, romainneutron)
45df2f3 minor #11397 [2.3][Process] Fix unit tests on Windows platform (romainneutron)
cec0a45 [Process] Adjust PR #11264, make it Windows compatible and fix CS
d418935 [Process] Fix unit tests on Windows platform
ff0bb01 [Process] Reduce I/O load on Windows platform
ace5a29 bumped Symfony version to 2.3.19
75e07e6 updated VERSION for 2.3.18
4a12f4d update CONTRIBUTORS for 2.3.18
98b891d updated CHANGELOG for 2.3.18
06a80fb Validate locales sets intos translator
06fc97e feature #11367 [HttpFoundation] Fix to prevent magic bytes injection in JSONP responses... (CVE-2014-4671) (Andrew Moore)
3c54659 minor #11387 [2.3] [Validator] Fix UserPassword validator translation (redstar504)
73d50ed Fix UserPassword validator translation
93a970c bug #11386 Remove Spaceless Blocks from Twig Form Templates (chrisguitarguy)
8f9ed3e Remove Spaceless Blocks from Twig Form Templates
9e1ea4a [Process] Use correct test for empty string in UnixPipes
6af3d05 [HttpFoundation] Fix to prevent magic bytes injection in JSONP responses (Prevents CVE-2014-4671)
ebf967d [Form] Check if IntlDateFormatter constructor returned a valid object before using it
2014-07-25 11:23:56 +02:00
Romain Neutron 5939d34c17 [Process] Fix unit tests in sigchild environment 2014-07-25 10:39:28 +02:00
Christian Flothmann eb68662360 [Process] fix signal handling in wait()
wait() throws an exception when the process was terminated by a signal.
This should not happen when the termination was requested by calling
either the stop() or the signal() method (for example, inside a callback
which is passed to wait()).
2014-07-25 10:39:21 +02:00
Fabien Potencier 94ffc4fab2 bug #11469 [BrowserKit] Fixed server HTTP_HOST port uri conversion (bcremer, fabpot)
This PR was merged into the 2.3 branch.

Discussion
----------

 [BrowserKit] Fixed server HTTP_HOST port uri conversion

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

See #11356

Commits
-------

103fd88 [BrowserKit] refactor code and fix unquoted regex
f401ab9 Fixed server HTTP_HOST port uri conversion
2014-07-25 08:30:34 +02:00
Fabien Potencier 103fd88b40 [BrowserKit] refactor code and fix unquoted regex 2014-07-25 07:47:26 +02:00
Benjamin Cremer f401ab9032 Fixed server HTTP_HOST port uri conversion 2014-07-25 07:41:17 +02:00
Fabien Potencier 045cbc53cc bug #11425 Fix issue described in #11421 (Ben, ben-rosio)
This PR was merged into the 2.3 branch.

Discussion
----------

Fix issue described in #11421

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

This pull request fixes the issue described in #11421.  It also adds a test for the issue.  The issue is present in 2.0 forward, but I decided to fix it on the 2.3 branch so that I could also write a test for it (2.0 had no tests for the Process component, and 2.1 and 2.2 didn't have tests for the `ExecutableFinder` class).

Commits
-------

4cf50e8 Bring code into standard
9f4313c [Process] Add test to verify fix for issue #11421
02eb765 [Process] Fixes issue #11421
2014-07-25 07:28:54 +02:00
Fabien Potencier f5bfa9bc9e bug #11423 Pass a Scope instance instead of a scope name when cloning a container in the GrahpvizDumper (jakzal)
This PR was merged into the 2.3 branch.

Discussion
----------

Pass a Scope instance instead of a scope name when cloning a container in the GrahpvizDumper

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

Commits
-------

6787669 [DependencyInjection] Pass a Scope instance instead of a scope name.
2014-07-25 07:22:20 +02:00
Fabien Potencier dde854d96a bug #11448 [MonologBridge] fixed Console handler priorities (fabpot)
This PR was merged into the 2.4 branch.

Discussion
----------

[MonologBridge] fixed Console handler priorities

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

alternative to symfony/symfony#11432

ping @Seldaek

Commits
-------

bdf874f [MonologBridge] fixed Console handler priorities
2014-07-25 07:02:35 +02:00
Fabien Potencier d6bbf0448d minor #11462 [HttpFoundation] moved test file to the right directory (fabpot)
This PR was merged into the 2.5 branch.

Discussion
----------

[HttpFoundation] moved test file to the right directory

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

a260623 [HttpFoundation] moved test file to the right directory
2014-07-25 06:56:08 +02:00
Christian Flothmann 123fc62652 properly handle null data when denormalizing
If null is passed to denormalize(), no property values can be set on
the denormalized object. Additionally, this fixes passing values to
the denormalized object's constructor if the incoming data is an object.
2014-07-24 20:40:16 +02:00
Fabien Potencier feb4f5cdb6 Merge branch '2.4' into 2.5
* 2.4:
  [Translator] Use quote to surround invalid locale
  Optimize assertLocale regexp
  [ExpressionLanguage] Fixed an issue with # characters in double quoted string literals
  Add some tweaks to the pt_BR translations
  [Validator] Backported #11410 to 2.3: Object initializers are called only once per object
  [Translator][FrameworkBundle] Added @ to the list of allowed chars in Translator
  [Process] Reduce I/O load on Windows platform
  [Form] Check if IntlDateFormatter constructor returned a valid object before using it

Conflicts:
	src/Symfony/Component/Validator/Tests/ValidationVisitorTest.php
2014-07-24 19:01:56 +02:00
Fabien Potencier b07a6b6201 Merge branch '2.3' into 2.4
* 2.3:
  [Translator] Use quote to surround invalid locale
  Optimize assertLocale regexp
  [Validator] Backported #11410 to 2.3: Object initializers are called only once per object
  [Translator][FrameworkBundle] Added @ to the list of allowed chars in Translator
  [Process] Reduce I/O load on Windows platform
  [Form] Check if IntlDateFormatter constructor returned a valid object before using it
2014-07-24 18:59:59 +02:00
Fabien Potencier 3177be50f8 minor #11464 [Translator] Use quote to surround invalid locale (lyrixx)
This PR was submitted for the 2.5 branch but it was merged into the 2.3 branch instead (closes #11464).

Discussion
----------

[Translator] Use quote to surround invalid locale

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

I got this message in one application (CLI):

```

  [InvalidArgumentException]
  Invalid locale: en_US .

```

It's not so easy to spot the issue.

Commits
-------

c9742ef [Translator] Use quote to surround invalid locale
2014-07-24 18:59:35 +02:00
Grégoire Pineau c9742efe99 [Translator] Use quote to surround invalid locale 2014-07-24 18:59:28 +02:00
Bernhard Schussek d6a783f989 [Validator] Renamed valueToString() to formatValue(); added missing formatValue() calls 2014-07-24 16:57:54 +02:00
Tobias Schultze d6d462a8a7 [Validator] do not call getter inside ExecutionContext to prevent unnecessary calls 2014-07-24 16:44:45 +02:00
Bernhard Schussek 71897d7e35 [Validator] Fixed CS 2014-07-24 13:57:51 +02:00
Bernhard Schussek cea4155d39 [Validator] Fixed date-to-string conversion tests to match ICU 51 2014-07-24 13:57:51 +02:00
Bernhard Schussek 5aa7e6dbe0 [Validator] Added "{{ value }}" parameters where they were missing 2014-07-24 13:57:51 +02:00
Bernhard Schussek f3295522ef [Validator] Simplified and explained the LuhnValidator 2014-07-24 13:57:51 +02:00
Bernhard Schussek bff09f210b [Validator] Simplified IssnValidator 2014-07-24 13:57:51 +02:00
Bernhard Schussek 224e70f709 [Validator] Fixed and simplified IsbnValidator 2014-07-24 13:57:51 +02:00
Bernhard Schussek fd58870ac0 [Validator] Simplified IBAN validation algorithm 2014-07-24 13:57:51 +02:00
Bernhard Schussek 97243bcd02 [Validator] Fixed value-to-string conversion in constraint violations 2014-07-24 13:57:51 +02:00
Damián Nohales 75e8815566 [Validator] Fix constraint violation message parameterization 2014-07-24 13:57:51 +02:00
Fabien Potencier a260623b18 [HttpFoundation] moved test file to the right directory 2014-07-24 12:44:07 +02:00
Bernhard Schussek 91bf2774a2 [Validator] Made sure that context changes don't leak out of (Contextual)ValidatorInterface 2014-07-24 12:18:38 +02:00
Fabien Potencier 2f7b702e3b bug #11454 [Validator] Fixed memory leak in ValidatorBuilder (webmozart)
This PR was merged into the 2.5 branch.

Discussion
----------

[Validator] Fixed memory leak in ValidatorBuilder

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

In 23534ca6ab, the following code was introduced in `ValidatorBuilder::getValidator()`:

```php
AnnotationRegistry::registerLoader(function ($class) {
    if (0 === strpos($class, __NAMESPACE__.'\\Constraints\\')) {
        $file = str_replace(__NAMESPACE__.'\\Constraints\\', __DIR__.'/Constraints/', $class).'.php';

        if (is_file($file)) {
            require_once $file;

            return true;
        }
    }

    return false;
});
```

`AnnotationRegistry::registerLoader()` stores all loaders in a global array. Every time that `getValidator()` is called, a new closure is put onto the loader stack, referencing `$this` (i.e. the ValidatorBuilder) and consequently preventing the ValidatorBuilder (and its references) from being garbage-collected.

The call to `registerLoader()` did not exist in 2.4 and I can't find a reason why it should be there. All tests are green without that code. I suppose I used it for debugging and then forgot to remove it again, so I'm removing it here.

Commits
-------

283387a [Validator] Fixed memory leak in ValidatorBuilder
2014-07-23 21:03:58 +02:00
Bernhard Schussek 283387a4ec [Validator] Fixed memory leak in ValidatorBuilder 2014-07-23 18:40:39 +02:00