Commit Graph

27171 Commits

Author SHA1 Message Date
Fabien Potencier
c1c42a52bc bug #20078 Fix #19943 Make sure to process each interface metadata only once (lemoinem)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix #19943 Make sure to process each interface metadata only once

| Q             | A
| ------------- | ---
| Branch?       | 2.7+
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19943
| License       | MIT
| Doc PR        | N/A

Here is the fix for #19943, If you have `InterfaceA <- InterfaceB <- Class` with a constraint on a method defined on `InterfaceA`, the constraint and its eventual violations are currently validated and reported twice.

Copy from https://github.com/symfony/symfony/issues/19943#issuecomment-250238529:
As far as I can see, the problem seems to arise in [`LazyLoadingMetadataFactory`](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Validator/Mapping/Factory/LazyLoadingMetadataFactory.php#L117-L123):

[`ReflectionClass::getInterfaces()`](http://php.net/manual/en/reflectionclass.getinterfaces.php) returns both interfaces implemented directly and through inheritance (either through another interface or through a parent class). In the end, the following process occurs:

1. `PriceInterface` is parsed and its `NotBlank` constraint on `value` is loaded
2. `VariablePriceInterface` is parsed and inherits `PriceInterface`'s constraints (which is OK).
3. `ProductPrice` is parsed and inherits both `PriceInterface` and `VariablePriceInterface`'s  constraints, which leads to a duplicated `NotBlank` constraint, one from each Interface.

The Best Way ™️ would be to be able to extract the list of interfaces implemented by a class directly only. However, the process seems a bit intricate... I will start working on it and prepare a PR to that effect. However, if any of you has a better idea, I'm all hears...

TODO:
- [x] Regression tests to make sure the bug doesn't reappear

Commits
-------

2f9b65a Fix #19943 Make sure to process each interface metadata only once
2016-09-30 12:33:15 -07:00
Fabien Potencier
bab7ef91ae adding missing dep 2016-09-30 11:05:33 -07:00
Fabien Potencier
2081bd9248 minor #20104 [TwigBundle] Adjust CacheWarmingTest for TemplateCacheWarmer introduced in 2.8 (tucksaun)
This PR was merged into the 2.8 branch.

Discussion
----------

[TwigBundle] Adjust CacheWarmingTest for TemplateCacheWarmer introduced in 2.8

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

With #20103, issue reported in #20065 is fixed, however it will now break in 2.8+ as another cache warmer has been introduced with #16271.

Commits
-------

360ca48 [TwigBundle] Adjust CacheWarmingTest for TemplateCacheWarmer introduced in 2.8
2016-09-30 07:47:16 -07:00
Tugdual Saunier
360ca48bdf
[TwigBundle] Adjust CacheWarmingTest for TemplateCacheWarmer introduced in 2.8 2016-09-30 15:27:26 +01:00
Fabien Potencier
fe4ae0befc Merge branch '2.7' into 2.8
* 2.7:
  [TwigBundle] Fix CacheWarmingTest are order dependent
  Revert "bug #20080 [Form] compound forms without children should be considered rendered implicitly (backbone87)"
  #17580 compound forms without children should be considered rendered implicitly
2016-09-30 07:22:20 -07:00
Fabien Potencier
d2c050ebe0 minor #20103 [TwigBundle] Fix CacheWarmingTest are order dependent (tucksaun)
This PR was merged into the 2.7 branch.

Discussion
----------

[TwigBundle] Fix CacheWarmingTest are order dependent

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

Fix issue reported in #20065

Commits
-------

fcd6ec2 [TwigBundle] Fix CacheWarmingTest are order dependent
2016-09-30 07:21:26 -07:00
Tugdual Saunier
fcd6ec2a5e
[TwigBundle] Fix CacheWarmingTest are order dependent 2016-09-30 14:26:39 +01:00
Fabien Potencier
35091b1837 Revert "bug #20080 [Form] compound forms without children should be considered rendered implicitly (backbone87)"
This reverts commit eae5a9ba0b, reversing
changes made to fd763ad5a3.
2016-09-29 16:48:55 -07:00
Fabien Potencier
eae5a9ba0b bug #20080 [Form] compound forms without children should be considered rendered implicitly (backbone87)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] compound forms without children should be considered rendered implicitly

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

Commits
-------

8234f2a #17580 compound forms without children should be considered rendered implicitly
2016-09-29 09:02:32 -07:00
Fabien Potencier
df3dbc510e Merge branch '2.8' into 3.1
* 2.8:
  [2.7][VarDumper] Fix PHP 7.1 compat
  [2.8][VarDumper] Fix PHP 7.1 compat
  silent file operation to avoid open basedir issues
2016-09-29 07:13:09 -07:00
Fabien Potencier
98548f9030 bug #20087 [2.8][VarDumper] Fix PHP 7.1 compat (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[2.8][VarDumper] Fix PHP 7.1 compat

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

Fix PHP 7.1 nullable support.

Commits
-------

1e84452 [2.8][VarDumper] Fix PHP 7.1 compat
2016-09-29 07:06:15 -07:00
Fabien Potencier
d6a9e3de38 Merge branch '2.7' into 2.8
* 2.7:
  [2.7][VarDumper] Fix PHP 7.1 compat
  silent file operation to avoid open basedir issues
2016-09-29 07:03:54 -07:00
Fabien Potencier
fd763ad5a3 bug #20086 [2.7][VarDumper] Fix PHP 7.1 compat (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[2.7][VarDumper] Fix PHP 7.1 compat

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

Fix PHP 7.1 nullable support.

Commits
-------

466dbe6 [2.7][VarDumper] Fix PHP 7.1 compat
2016-09-29 07:01:20 -07:00
Nicolas Grekas
466dbe62b4 [2.7][VarDumper] Fix PHP 7.1 compat 2016-09-29 13:21:39 +01:00
Nicolas Grekas
1e84452acb [2.8][VarDumper] Fix PHP 7.1 compat 2016-09-29 12:10:56 +01:00
Nicolas Grekas
ea2da4f248 Merge branch '2.8' into 3.1
* 2.8:
  [SecurityBundle] Fix Twig master dep
2016-09-29 11:14:33 +01:00
Nicolas Grekas
536da69a49 minor #20085 [SecurityBundle] Fix Twig master dep (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[SecurityBundle] Fix Twig master dep

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

Since Twig 2 is not tagged yet, it's free to do not-BC changes, which it did recently. Our unmaintained `3.0.*` bridge+bundle don't work with it anymore. Let's skip them.

Commits
-------

9a2672e [SecurityBundle] Fix Twig master dep
2016-09-29 10:45:16 +01:00
Nicolas Grekas
9a2672e7fc [SecurityBundle] Fix Twig master dep 2016-09-29 10:23:02 +01:00
Fabien Potencier
07d4985024 bug #20077 [Process] silent file operation to avoid open basedir issues (xabbuh)
This PR was submitted for the master branch but it was merged into the 2.7 branch instead (closes #20077).

Discussion
----------

[Process] silent file operation to avoid open basedir issues

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

Using file operations on a symlink that points to a file outside the directories being allowed by the open_basedir setting leads to PHP warnings being raised.

Commits
-------

30c9b1e silent file operation to avoid open basedir issues
2016-09-28 19:20:22 -07:00
Christian Flothmann
30c9b1ec28 silent file operation to avoid open basedir issues
Using file operations on a symlink that points to a file outside the
directories being allowed by the open_basedir setting leads to PHP
warnings being raised.
2016-09-28 19:20:21 -07:00
Fabien Potencier
6d1d35d83f Merge branch '2.8' into 3.1
* 2.8:
  fixed Twig support for 1.26 and 2.0
  Fix indexBy type extraction
2016-09-28 18:19:09 -07:00
Fabien Potencier
28571d2cfb Merge branch '2.7' into 2.8
* 2.7:
  fixed Twig support for 1.26 and 2.0
2016-09-28 18:16:22 -07:00
Fabien Potencier
b4d5827b2c bug #20079 fixed Twig support for 1.26 and 2.0 (fabpot)
This PR was merged into the 2.7 branch.

Discussion
----------

fixed Twig support for 1.26 and 2.0

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

Removes the deprecation notices for Twig 1.26.

Commits
-------

24e9cf2 fixed Twig support for 1.26 and 2.0
2016-09-28 18:14:48 -07:00
Fabien Potencier
24e9cf2155 fixed Twig support for 1.26 and 2.0 2016-09-28 18:04:26 -07:00
Mathieu Lemoine
2f9b65aa5a Fix #19943 Make sure to process each interface metadata only once 2016-09-28 18:39:11 -04:00
Oliver Hoff
8234f2add4 #17580 compound forms without children should be considered rendered
implicitly
2016-09-28 21:40:37 +02:00
Fabien Potencier
6717f2c4e5 bug #20051 Fix indexBy type extraction (lemoinem)
This PR was merged into the 2.8 branch.

Discussion
----------

Fix indexBy type extraction

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

Bug found and patched by @ksom

Since 3008228b48, the Doctrine Bridge's PropertyInfo Extractor tries to extract the type of the key in an indexed association. However, as you can see in 3008228b48 (diff-7a8fb8072d57f95ea6e37898b05895bcR91), the extractor was using the metadata of the class containing the association instead of the target entity's metadata to retrieve the type of the index.

The tests were green because in 3008228b48 (diff-c7e914ed89ceffd939733efe08c039c2R44), the property used to `indexBy` was present in the classes on both sides of the relation with the same type.

Once the test is fixed (by renaming the property in the targetEntity), the test provided at 3008228b48 (diff-1b2e044d1df011c00caf802a07895bdbR88) gives the error

    1) Symfony\Bridge\Doctrine\PropertyInfo\Tests\DoctrineExtractorTest::testExtract with data set #9 ('indexedBar', array(Symfony\Component\PropertyInfo\Type Object (...)))
    InvalidArgumentException: "" is not a valid PHP type.

The fix is to fetch the metadata of the target entity and check there for the property type.

Commits
-------

138c6e3 Fix indexBy type extraction
2016-09-27 19:18:40 -07:00
Fabien Potencier
d12c100ece Merge branch '2.8' into 3.1
* 2.8:
  format json fixtures
  apply rtrim
2016-09-27 17:11:12 -07:00
Fabien Potencier
aef5008360 Merge branch '2.7' into 2.8
* 2.7:
  format json fixtures
  apply rtrim
2016-09-27 17:10:16 -07:00
Fabien Potencier
da6c664e98 minor #20064 [Console] Format JSON fixtures (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Format JSON fixtures

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Should make merging upstream easier due better diffs.

```php
foreach (glob('src/Symfony/Component/Console/Tests/Fixtures/*.json') as $file) {
    file_put_contents($file, str_replace(PHP_EOL, "\n", json_encode(json_decode(trim(file_get_contents($file))), JSON_PRETTY_PRINT))."\n");
}
```

Should be re-applied on 2.8, 3.1 and master.

Commits
-------

2ca7823 format json fixtures
2016-09-27 17:09:53 -07:00
Fabien Potencier
40c2cbd12b bug #19951 [Finder] Trim trailing directory slash in ExcludeDirectoryFilterIterator (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Finder] Trim trailing directory slash in ExcludeDirectoryFilterIterator

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19599
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

In this context `path` equals `path/`

Commits
-------

e0e5f0c apply rtrim
2016-09-27 17:07:53 -07:00
Roland Franssen
2ca78233a1 format json fixtures 2016-09-27 17:33:51 +00:00
Fabien Potencier
5aa5a6e1fe minor #20058 [Console] Cleanup legacy fixtures (ro0NL)
This PR was merged into the 3.1 branch.

Discussion
----------

[Console] Cleanup legacy fixtures

| Q             | A
| ------------- | ---
| Branch?       | 3.1
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Commits
-------

d50e3fe cleanup
2016-09-26 08:57:56 -07:00
Roland Franssen
d50e3fe104 cleanup 2016-09-25 20:53:54 +00:00
Fabien Potencier
8330e9e5c5 minor #20052 @expectedException expects FQCN (ro0NL)
This PR was merged into the 3.1 branch.

Discussion
----------

@expectedException expects FQCN

| Q             | A
| ------------- | ---
| Branch?       | 3.1
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Sorry.. almost there :) fixes 1 more false positive in `ObjectNormalizerTest`.

https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/2200 is almost ready :)

Commits
-------

7574a92 fixed expected exception annotations
2016-09-25 09:21:09 -07:00
Roland Franssen
7574a92498 fixed expected exception annotations 2016-09-25 08:27:07 +00:00
Mathieu Lemoine
138c6e3752 Fix indexBy type extraction 2016-09-24 17:32:50 -04:00
Fabien Potencier
90f6b30f81 Merge branch '2.8' into 3.1
* 2.8:
  expectedException expects FQCN
  Fixed expectedException annotations
  Security and validators messages translation to Latvian
  [Form] FormView->isRendered() remove dead code and simplify the flow
2016-09-24 08:56:48 -07:00
Fabien Potencier
b049d098d3 Merge branch '2.7' into 2.8
* 2.7:
  Fixed expectedException annotations
  Security and validators messages translation to Latvian
  [Form] FormView->isRendered() remove dead code and simplify the flow
2016-09-24 08:56:40 -07:00
Fabien Potencier
732a363f21 minor #20043 @expectedException expects FQCN (ro0NL)
This PR was merged into the 2.8 branch.

Discussion
----------

@expectedException expects FQCN

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

See #20028

Almost there :)

Commits
-------

526b852 expectedException expects FQCN
2016-09-24 08:56:11 -07:00
Roland Franssen
526b852d2c expectedException expects FQCN 2016-09-24 09:47:20 +00:00
Fabien Potencier
e4f498aa82 minor #20028 Fixed expectedException annotations (ro0NL)
This PR was squashed before being merged into the 2.7 branch (closes #20028).

Discussion
----------

Fixed expectedException annotations

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

See #19237... as this is not going to be fixed in phpunit nor php-cs-fixer and i believe by now these are the last 2 false positives.

Found with `@expectedException\s+[^\s\\]`

In master there are still +-25 consistency issues, ie. FQCN but without a root namespace. Shall we fix this?

Commits
-------

b074a71 Fixed expectedException annotations
2016-09-23 11:13:38 -07:00
Roland Franssen
b074a7156a Fixed expectedException annotations 2016-09-23 11:13:36 -07:00
Fabien Potencier
d79dedf876 bug #19980 [Ldap] Fixed issue with legacy find() method not working as expected (csarrazi)
This PR was merged into the 3.1 branch.

Discussion
----------

[Ldap] Fixed issue with legacy find() method not working as expected

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

This PR fixes two bugs. The first, with the legacy `LdapClient` class' `find()` method not working as expected, sometimes throwing errors, which is an after-effect of missing Ldap attributes normalisation in the ResultIterator, and the second one being that the `find()` method does not return the expected output, which should be the same as PHP's `ldap_get_entries()` method.

As a reminder, this method should only be used by legacy software, which need to provide compatibility with Symfony 3.0 and Symfony 2.8.

Commits
-------

3bae5ea Fixed issue with legacy find() method not working as expected
2016-09-23 10:55:42 -07:00
Fabien Potencier
23eee70f6e bug #20026 [Cache] Fixed password used to make the redis connection. (ErikSaunier)
This PR was merged into the 3.1 branch.

Discussion
----------

[Cache] Fixed password used to make the redis connection.

| Q             | A
| ------------- | ---
| Branch?       | 3.1
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/20025
| License       | MIT
| Doc PR        | http://symfony.com/blog/new-in-symfony-3-1-cache-component

I do not know if it's possible to provide a test as `REDIS_HOST` is provided by Travis in [RedisAdapterTest.php](https://github.com/symfony/symfony/blob/3.1/src/Symfony/Component/Cache/Tests/Adapter/RedisAdapterTest.php).

Commits
-------

77eea43 [Cache] Fix password used to make the redis connection.
2016-09-23 08:20:59 -07:00
Erik Saunier
77eea43ee1 [Cache] Fix password used to make the redis connection. 2016-09-23 15:37:10 +02:00
Fabien Potencier
fc0fe87c6d minor #20027 Security and validators messages translation to Latvian (Rikijs)
This PR was merged into the 2.7 branch.

Discussion
----------

Security and validators messages translation to Latvian

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

Commits
-------

ff72f21 Security and validators messages translation to Latvian
2016-09-22 09:52:50 -07:00
Rikijs Murgs
ff72f21427 Security and validators messages translation to Latvian 2016-09-22 19:04:04 +03:00
Fabien Potencier
b23389d85d Merge branch '2.8' into 3.1
* 2.8:
  [VarDumper] Fix test
  Revert "minor #20011 Use UUID for error codes for Form validator. (Koc)"
  Use UUID for error codes for Form validator.
  Use UUID for error codes for Form validator.
  Fixed regression when exception message swallowed when logging it.
  [HttpFoundation] Enable memcached tests with the latest memcached extension
2016-09-21 13:55:10 -07:00
Fabien Potencier
8acf80f24d bug #20018 [VarDumper] Fix test (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[VarDumper] Fix test

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

Commits
-------

ae118e7 [VarDumper] Fix test
2016-09-21 13:53:02 -07:00