Commit Graph

18131 Commits

Author SHA1 Message Date
Fabien Potencier a52ae99735 bug #17355 [DoctrineBridge][Validator] >= 2.3 Pass association instead of ID as argument (xavismeh)
This PR was squashed before being merged into the 2.3 branch (closes #17355).

Discussion
----------

[DoctrineBridge][Validator] >= 2.3 Pass association instead of ID as argument

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

No verification on doctrine-orm version has been provided since the `composer.json` requires `"doctrine/orm": "~2.4,>=2.4.5"` and performing a query with an object as array argument has been added in 2.2.0-BETA1 (see https://github.com/doctrine/doctrine2/blob/2.2.0-BETA1/lib/Doctrine/ORM/Persisters/BasicEntityPersister.php#L1511)

Commits
-------

5c2d534 [DoctrineBridge][Validator] >= 2.3 Pass association instead of ID as argument
2016-01-25 12:44:21 +01:00
Xavier Coureau 5c2d534a1f [DoctrineBridge][Validator] >= 2.3 Pass association instead of ID as argument 2016-01-25 12:44:19 +01:00
Fabien Potencier a5e1062a03 minor #17095 [HttpFoundation] Added 451 status code (AndrewCarterUK)
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes #17095).

Discussion
----------

[HttpFoundation] Added 451 status code

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

https://datatracker.ietf.org/doc/draft-ietf-httpbis-legally-restricted-status/?include_text=1

The HTTP 451 status code was approved by the ISG a few days ago on the 18th December '15.

Commits
-------

df8952f Added 451 status code
2016-01-25 12:38:40 +01:00
Andrew Carter df8952f2a3 Added 451 status code 2016-01-25 12:38:22 +01:00
Fabien Potencier 11257ee89a minor #17396 [ClassLoader] Use symfony/polyfill-apcu (gapple)
This PR was merged into the 2.3 branch.

Discussion
----------

[ClassLoader] Use symfony/polyfill-apcu

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

#17358 updated ApcClassLoader to use polyfill-apcu, but not ApcUniversalClassLoader

2.7 / 2.8 tests are in LegacyApcUniversalClassLoaderTest

Commits
-------

a0dc399 [ClassLoader] Use symfony/polyfill-apcu
2016-01-25 12:06:45 +01:00
Fabien Potencier 50b48f6516 bug #16736 [Request] Ignore invalid IP addresses sent by proxies (GromNaN)
This PR was submitted for the 2.8 branch but it was merged into the 2.3 branch instead (closes #16736).

Discussion
----------

[Request] Ignore invalid IP addresses sent by proxies

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

The [RFC 7239](https://tools.ietf.org/html/rfc7239#section-6.2) allows other values that IP addresses to be passed in `Forwarded`header and [Nginx can add `unknown` to the `X-Forwarded-For`header](http://www.squid-cache.org/Doc/config/forwarded_for/).

To prevent these invalid IP addresses from being returned as "Client IP", this PR ensure that they are excluded.

Commits
-------

6578806 [Request] Ignore invalid IP addresses sent by proxies
2016-01-25 10:51:01 +01:00
Jérôme Tamarelle 6578806fc3 [Request] Ignore invalid IP addresses sent by proxies
Fixes symfony/symfony#15525
2016-01-25 10:50:55 +01:00
Fabien Potencier ec26f6ece0 bug #16873 Able to load big xml files with DomCrawler (zorn-v)
This PR was submitted for the 2.8 branch but it was merged into the 2.3 branch instead (closes #16873).

Discussion
----------

Able to load big xml files with DomCrawler

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

Commits
-------

3dae825 Able to load big xml files with DomCrawler
2016-01-25 09:23:30 +01:00
zorn 3dae8257f2 Able to load big xml files with DomCrawler 2016-01-25 09:23:17 +01:00
Fabien Potencier 898f3890ff fixed typo 2016-01-25 09:20:12 +01:00
Fabien Potencier 07d99c2b6f bug #16897 [Form] Fix constraints could be null if not set (DZunke)
This PR was squashed before being merged into the 2.3 branch (closes #16897).

Discussion
----------

[Form] Fix constraints could be null if not set

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

If the form options has no key for constraints the default should be an empty array to be ignored by the loop in the FormValidator. The default without this fix is ```null``` and foreach will throw an error.

The "Bug" also still exists in master-Branch.

Commits
-------

f80e0eb [Form] Fix constraints could be null if not set
2016-01-25 09:19:47 +01:00
DZunke f80e0eb143 [Form] Fix constraints could be null if not set 2016-01-25 09:19:45 +01:00
Fabien Potencier 414365d8ef minor #17134 [Finder] Check PHP version before applying a workaround for a PHP bug (alebo)
This PR was squashed before being merged into the 2.3 branch (closes #17134).

Discussion
----------

[Finder] Check PHP version before applying a workaround for a PHP bug

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

Commits
-------

cba206a [Finder] Check PHP version before applying a workaround for a PHP bug
2016-01-25 08:55:01 +01:00
Alex Bogomazov cba206ab18 [Finder] Check PHP version before applying a workaround for a PHP bug 2016-01-25 08:54:54 +01:00
Fabien Potencier d44add24b2 bug #17505 sort bundles in config:dump-reference command (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

sort bundles in config:dump-reference command

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

This backports #17495 to the `2.3` branch.

Commits
-------

a5c8811 sort bundles in config:dump-reference command
2016-01-25 08:33:31 +01:00
Fabien Potencier fb729eecfa fixed CS 2016-01-25 08:27:56 +01:00
Fabien Potencier 4b9f6c7aa8 minor #17487 [2.3] [CS] MethodSeparationFixer - findings. (SpacePossum)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3] [CS] MethodSeparationFixer - findings.

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

Th goal of this PR is _not_ to have it merged, but to see if the `MethodSeparationFixer` (https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1426) is suitable for SF level/configuration in the PHP-CS-Fixer (and thereby might later become part of `fabbot.io`).

Commits
-------

d7b730f Fixer findings.
2016-01-25 08:27:13 +01:00
Christian Flothmann a5c881182f sort bundles in config:dump-reference command
This backports #17495 to the `2.3` branch.
2016-01-23 17:38:15 +01:00
Fabien Potencier 93b831b395 minor #17497 [SecurityBundle] Optimize dependency injection tests (paradajozsef)
This PR was squashed before being merged into the 2.3 branch (closes #17497).

Discussion
----------

[SecurityBundle] Optimize dependency injection tests

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

Tests building the same container multiple times. The same solution can be applied as here: #17399. This time I ran comparison tests only on 2.3. (my laptop is really slow)

**2.3 before**

```go
Time: 14.79 seconds, Memory: 48.25Mb
OK (77 tests, 227 assertions)
OK src/Symfony/Bundle/SecurityBundle/
```
**2.3 after**

```go
Time: 9.78 seconds, Memory: 48.75Mb
OK (77 tests, 227 assertions)
OK src/Symfony/Bundle/SecurityBundle/
```

Commits
-------

bf56d2f [SecurityBundle] Optimize dependency injection tests
2016-01-23 10:46:31 +01:00
Paráda József bf56d2fc17 [SecurityBundle] Optimize dependency injection tests 2016-01-23 10:46:30 +01:00
Possum d7b730f3e5 Fixer findings. 2016-01-22 08:50:32 +01:00
Fabien Potencier 9a90cde4ed bug #17478 [HttpFoundation] Do not overwrite the Authorization header if it is already set (jakzal)
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes #17478).

Discussion
----------

[HttpFoundation] Do not overwrite the Authorization header if it is already set

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

Commits
-------

53ebfda [HttpFoundation] Do not overwrite the Authorization header if it is already set
2016-01-22 07:46:45 +01:00
Jakub Zalas 53ebfda33e [HttpFoundation] Do not overwrite the Authorization header if it is already set 2016-01-22 07:46:45 +01:00
Fabien Potencier 385f23e238 bug #17461 [Yaml] tag for dumped PHP objects must be a local one (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[Yaml] tag for dumped PHP objects must be a local one

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

Commits
-------

9d03478 tag for dumped PHP objects must be a local one
2016-01-22 07:35:55 +01:00
Fabien Potencier 6eda9ad834 fixed test 2016-01-21 09:40:05 +01:00
Fabien Potencier b81cac880e minor #17467 fixed CS (fabpot)
This PR was merged into the 2.3 branch.

Discussion
----------

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

42862c4 fixed CS
2016-01-21 07:57:24 +01:00
Fabien Potencier 42862c4668 fixed CS 2016-01-21 07:28:40 +01:00
Christian Flothmann 9d034787fe tag for dumped PHP objects must be a local one 2016-01-20 20:16:59 +01:00
Fabien Potencier 6d8078febf bug #17423 [2.3][Process] Use stream based storage to avoid memory issues (romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Process] Use stream based storage to avoid memory issues

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

Commits
-------

da73125 [Process] Use stream based storage to avoid memory issues
2016-01-20 07:43:36 +01:00
Fabien Potencier 1941add676 minor #17419 Fixed the documentation of VoterInterface::supportsAttribute (javiereguiluz)
This PR was merged into the 2.3 branch.

Discussion
----------

Fixed the documentation of VoterInterface::supportsAttribute

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

Commits
-------

d662c2a Fixed the documentation of VoterInterface::supportsAttribute
2016-01-19 22:34:18 +01:00
Tobias Schultze 4224b1b55f minor #17448 [Process] Remove a misleading comment (jakzal)
This PR was merged into the 2.3 branch.

Discussion
----------

[Process] Remove a misleading comment

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

The described behaviour was never implemented as part of #3681.

Commits
-------

71f4a32 [Process] Remove a misleading comment
2016-01-19 17:52:05 +01:00
Jakub Zalas 71f4a3200e [Process] Remove a misleading comment
The described behaviour was never implemented.
2016-01-19 16:31:40 +00:00
Fabien Potencier c2333e6a26 minor #17437 [Finder] Improve the phpdoc of SplFileInfo methods (mnapoli)
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes #17437).

Discussion
----------

[Finder] Improve the phpdoc of SplFileInfo methods

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

I **always** get confused when I need to use the finder (getFilename, getPath, getPathname, getRelativePath, getRelativePathname, …). This is only addressing the last two methods but hopefully it will help.

Commits
-------

1b170d7 Improve the phpdoc of SplFileInfo methods
2016-01-19 13:10:24 +01:00
Matthieu Napoli 1b170d7a85 Improve the phpdoc of SplFileInfo methods 2016-01-19 13:10:23 +01:00
Romain Neutron da73125a9c [Process] Use stream based storage to avoid memory issues 2016-01-19 11:50:56 +01:00
Geoff a0dc3994d4 [ClassLoader] Use symfony/polyfill-apcu 2016-01-18 12:27:23 -08:00
Javier Eguiluz d662c2ae8f Fixed the documentation of VoterInterface::supportsAttribute 2016-01-18 17:25:45 +01:00
Tobias Schultze b7024483e3 minor #17414 Remove useless duplicated tests (WouterJ)
This PR was merged into the 2.3 branch.

Discussion
----------

Remove useless duplicated tests

Although there isn't much speed difference, it makes no sense to run the same test twice.

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

Commits
-------

deab127 Remove useless duplicated tests
2016-01-18 11:18:06 +01:00
Wouter J deab127663 Remove useless duplicated tests 2016-01-18 10:52:44 +01:00
Fabien Potencier 80086ad54b minor #17399 [FrameworkBundle] Optimize framework extension tests (paradajozsef)
This PR was squashed before being merged into the 2.3 branch (closes #17399).

Discussion
----------

[FrameworkBundle] Optimize framework extension tests

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

```XmlFrameworkExtensionTest```, ```YamlFrameworkExtensionTest``` and ```PhpFrameworkExtensionTest``` are slow tests. The reason is that the [parent test](https://github.com/symfony/symfony/blob/2.3/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php#L308) creates the container in every test case. With different parameters, but the same is created several times. (actually with 'full' parameter it is created 12 times in 2.3) If we cache the different containers during test, we avoid to creating the same container multiple times.

As I experienced it can be merged without a conflict into 2.3 and 2.7, but 2.8 and 3.0 conflicts.

I have these result on my local setup. Not that big optimalization, but a few second can matter too imo. :)

**2.3 before**

```go
Time: 8.79 seconds, Memory: 55.75Mb
OK (449 tests, 586 assertions)
OK src/Symfony/Bundle/FrameworkBundle
```

**2.3 after**

```go
Time: 5.85 seconds, Memory: 58.25Mb
OK (449 tests, 586 assertions)
OK src/Symfony/Bundle/FrameworkBundle
```

----

**2.7 before**

```go
Time: 17.17 seconds, Memory: 81.50Mb
OK, but incomplete, skipped, or risky tests!
Tests: 753, Assertions: 1098, Skipped: 3.
Legacy deprecation notices (45)
OK src/Symfony/Bundle/FrameworkBundle
```
**2.7 after**

```go
Time: 12.65 seconds, Memory: 88.00Mb
OK, but incomplete, skipped, or risky tests!
Tests: 753, Assertions: 1098, Skipped: 3.
Legacy deprecation notices (41)
OK src/Symfony/Bundle/FrameworkBundle
```

----

**2.8 before**

```go
Time: 18.94 seconds, Memory: 88.00Mb
OK, but incomplete, skipped, or risky tests!
Tests: 787, Assertions: 1159, Skipped: 3.
Legacy deprecation notices (89)
OK src/Symfony/Bundle/FrameworkBundle
```

**2.8 after**

```go
Time: 12.69 seconds, Memory: 94.50Mb
OK, but incomplete, skipped, or risky tests!
Tests: 787, Assertions: 1159, Skipped: 3.
Legacy deprecation notices (85)
OK src/Symfony/Bundle/FrameworkBundle
```

----

**3.0 before**

```go
Time: 16.48 seconds, Memory: 73.75Mb
OK (741 tests, 1043 assertions)
OK src/Symfony/Bundle/FrameworkBundle
```

**3.0 after**

```go
Time: 11.49 seconds, Memory: 76.75Mb
OK (741 tests, 1043 assertions)
OK src/Symfony/Bundle/FrameworkBundle
```

Commits
-------

f6a078b [FrameworkBundle] Optimize framework extension tests
2016-01-17 17:17:04 +01:00
Paráda József f6a078b96c [FrameworkBundle] Optimize framework extension tests 2016-01-17 17:17:03 +01:00
Fabien Potencier 5c034adc5d minor #17400 Use is_subclass_of instead of Reflection when possible (Ener-Getick)
This PR was merged into the 2.3 branch.

Discussion
----------

Use is_subclass_of instead of Reflection when possible

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

For performance reason, I replaced a reflection instantiation by ``is_subclass_of``

Commits
-------

51e3652 Use is_subclass_of instead of Reflection when possible
2016-01-16 19:09:48 +01:00
Ener-Getick 51e3652aeb Use is_subclass_of instead of Reflection when possible 2016-01-16 14:42:15 +01:00
Fabien Potencier 7d72f93e90 bug #17373 [SecurityBundle] fix SecureRandom service constructor args (Tobion)
This PR was merged into the 2.3 branch.

Discussion
----------

[SecurityBundle] fix SecureRandom service constructor args

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

Commits
-------

50d55f6 [SecurityBundle] fix SecureRandom service constructor args
2016-01-16 05:53:05 +01:00
Fabien Potencier 9d189137e3 minor #17364 [Bridge] [Doctrine] Normalize params only when used. [2.3] (SpacePossum)
This PR was merged into the 2.3 branch.

Discussion
----------

[Bridge] [Doctrine] Normalize params only when used. [2.3]

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

If no logger is set the params are not used so those don't have to be normalized.

Commits
-------

6852a46 Normalize params only when used.
2016-01-15 17:58:40 +01:00
Fabien Potencier ac3111fe8a bug #17377 Fix performance (PHP5) and memory (PHP7) issues when using token_get_all (nicolas-grekas, peteward)
This PR was merged into the 2.3 branch.

Discussion
----------

Fix performance (PHP5) and memory (PHP7) issues when using token_get_all

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

Although it's not the case anymore on PHP 7, on PHP 5, `is_array` checks are much slower than `isset` checks.

Also from @peteward in #17384:
>  New PHP7 memory manager will not release small buckets to OS automatically in cases exposed by `token_get_all()`. This function call addition specifically for PHP7 will reclaim this memory to keep the footprint down of long processe

> See above ticket and suggested actions by PHP internals team for long-running tasks (https://bugs.php.net/70098) - I think `cache:clear/warmup` on a heavy app justifies this.

> We're running on cloud-based hosting platforms under memory limitations (Platform.sh). When memory is exceeded we're into swap and the cache clearing process goes from seconds to minutes for the initial deployment, which really slows our development workflow and also causes holding page delays.

Commits
-------

e555aad Add gc_mem_caches() call for PHP7 after itoken_get_all() as new memory manager will not release small buckets to OS automatically
d1f72d8 Fix perf and mem issue when using token_get_all
2016-01-15 17:52:13 +01:00
Fabien Potencier 54442313ae bug #17389 [Routing] Fixed correct class name in thrown exception (fixes #17388) (robinvdvleuten)
This PR was merged into the 2.3 branch.

Discussion
----------

[Routing] Fixed correct class name in thrown exception (fixes #17388)

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

This fixes the thrown exception. Instead of the complete file contents, the class name is used in the exception message.

Commits
-------

c847feb Fixed correct class name in thrown exception
2016-01-15 17:48:36 +01:00
Robin van der Vleuten c847feb5f3 Fixed correct class name in thrown exception 2016-01-15 15:32:28 +01:00
Tobias Schultze e489bba61d minor #17383 Removed a duplicated test in CardSchemeValidatorTest (javiereguiluz)
This PR was merged into the 2.3 branch.

Discussion
----------

Removed a duplicated test in CardSchemeValidatorTest

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

I was looking into making `CardSchemeValidatorTest` faster. I couldn't make it, but I found a duplicated test.

Commits
-------

1974131 Removed a duplicated test in CardSchemeValidatorTest
2016-01-15 13:30:58 +01:00
Peter Ward e555aade12 Add gc_mem_caches() call for PHP7 after itoken_get_all() as new memory manager will not release small buckets to OS automatically 2016-01-15 10:01:44 +01:00