Commit Graph

14662 Commits

Author SHA1 Message Date
Matthieu Napoli
1b170d7a85 Improve the phpdoc of SplFileInfo methods 2016-01-19 13:10:23 +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
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
Robin van der Vleuten
c847feb5f3 Fixed correct class name in thrown exception 2016-01-15 15:32:28 +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
Javier Eguiluz
197413168c Removed a duplicated test in CardSchemeValidatorTest 2016-01-15 09:07:14 +01:00
Tobias Schultze
eaef88c565 bug #17358 [ClassLoader] Use symfony/polyfill-apcu (nicolas-grekas)
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        | -

Fixes APC usage on PHP 7 or when APCu bc-layer is disabled

Commits
-------

623595f [ClassLoader] Use symfony/polyfill-apcu
2016-01-14 19:12:34 +01:00
Nicolas Grekas
623595f0d6 [ClassLoader] Use symfony/polyfill-apcu 2016-01-14 18:42:51 +01:00
Wouter de Wild
f1f9754bcb [HttpFoundation][Cookie] Cookie DateTimeInterface fix 2016-01-14 17:21:08 +01:00
Nicolas Grekas
d1f72d8ef4 Fix perf and mem issue when using token_get_all 2016-01-14 14:27:10 +01:00
Tobias Schultze
50d55f6855 [SecurityBundle] fix SecureRandom service constructor args 2016-01-14 14:17:14 +01:00
Possum
6852a46423 Normalize params only when used. 2016-01-14 11:04:11 +01:00
Fabien Potencier
bbbb0796f4 bumped Symfony version to 2.3.38 2016-01-14 10:59:28 +01:00
Fabien Potencier
2f98f158c9 updated VERSION for 2.3.37 2016-01-14 10:14:51 +01:00
Fabien Potencier
b91441c6cc removed obsolete tests, fixed composer.json 2016-01-14 09:49:27 +01:00
Christian Flothmann
fcd3160a0f do not ship with a custom rng implementation 2016-01-14 09:34:47 +01:00
Fabien Potencier
5781bbce01 bug #17326 [Console] Display console application name even when no version set (polc)
This PR was squashed before being merged into the 2.3 branch (closes #17326).

Discussion
----------

[Console] Display console application name even when no version set

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

When displaying help of an Application with a name but no version, it show "Console Tool" instead of the application name.

Commits
-------

61e810e [Console] Display console application name even when no version set
2016-01-14 08:51:59 +01:00
Paul LE CORRE
61e810e769 [Console] Display console application name even when no version set 2016-01-14 08:51:57 +01:00
Possum
4491c970b3 Remove empty statements. 2016-01-13 18:07:01 +01:00
Nicolas Grekas
26af0ae56b minor #17348 [Yaml] Fix tests on PHP 7.0.2 (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[Yaml] Fix tests on PHP 7.0.2

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

Related to https://bugs.php.net/66179 that has been fixed in 7.0.2

Commits
-------

902f6dd [Yaml] Fix tests on PHP 7.0.2
2016-01-13 10:03:05 +01:00
Nicolas Grekas
902f6ddb93 [Yaml] Fix tests on PHP 7.0.2 2016-01-13 09:54:41 +01:00
Nicolas Grekas
c5479dde8c [2.3] Workaround https://bugs.php.net/63206 2016-01-13 08:28:48 +01:00
omerida
5cdccc4350 Add closing parenthesis 2016-01-12 14:46:23 -05:00
Tobias Schultze
85d5ed29d7 bug #17140 [Serializer] Remove normalizer cache in Serializer class (jvasseur)
This PR was merged into the 2.3 branch.

Discussion
----------

[Serializer] Remove normalizer cache in Serializer class

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

The serializer cache the normalizer/denormalizer to use based only on the class and format. But the supportsNormalization and supportDenormalization methods can decide based on the data passed leading to hard to find bugs when the serializer used a cached normalizer it shouldn't use.

Commits
-------

8566dc1 Remove normalizer cache in Serializer class
2016-01-12 13:31:34 +01:00
Fabien Potencier
f1cce4e139 minor #17282 [2.3] Static Code Analysis for Components (kalessil)
This PR was squashed before being merged into the 2.3 branch (closes #17282).

Discussion
----------

[2.3] Static Code Analysis for Components

| 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

Static Code Analysis with Php Inspections (EA Extended):
    - several code constructs simplification
    - decoupling statements from foreach
    - extra colons/parenthesis removal (code style)
    - correct string functions usage (micro-optimization)
    - variable functions usage (php 5 compatible)

Commits
-------

81f8181 [2.3] Static Code Analysis for Components
2016-01-12 12:31:36 +01:00
Vladimir Reznichenko
81f81812a5 [2.3] Static Code Analysis for Components 2016-01-12 12:31:34 +01:00
Fabien Potencier
a02bd4b753 bug #17307 [FrameworkBundle] Fix paths with % in it (like urlencoded) (scaytrase)
This PR was merged into the 2.3 branch.

Discussion
----------

[FrameworkBundle] Fix paths with % in it (like urlencoded)

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

Commits
-------

de7b4d7 Fix #17306 Paths with % in it are note allowed (like urlencoded)
2016-01-11 11:07:30 +01:00
Disparity
6ebd1792d8 Added support \IteratorAggregate for UniqueEntityValidator
Expand the list of supported types of results returned from the repositories.
Added processing of type \IteratorAggregate (and as a consequence doctrine Collection)
2016-01-11 11:04:46 +01:00
Pavel Batanov
de7b4d73c6 Fix #17306 Paths with % in it are note allowed (like urlencoded) 2016-01-09 15:55:11 +03:00
Tim van Densen
2040139db6 Added sort order SORT_STRING for params in UriSigner 2016-01-07 14:43:59 +01:00
Fabien Potencier
f9bf3f8d5a bug #17278 [2.3][FrameworkBundle] Add case in Kernel directory guess for PHPUnit (tgalopin)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][FrameworkBundle] Add case in Kernel directory guess for PHPUnit

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

The current automatic guess of the Kernel directory in the context of PHPUnit does work properly using the following commands:

- `phpunit -c app`
- `phpunit --configuration app`
- `phpunit --configuration=app`

But it fails with the synthax `phpunit -capp`, even if PHPUnit supports it. This PR fixes this.

See https://github.com/symfony/symfony/pull/17272.

Commits
-------

758fc1d [FrameworkBundle] Add case in Kernel directory guess for PHPUnit
2016-01-07 14:27:03 +01:00
pawel-lewtak
e32f5a2cd2 Add missing apostrophe in setSaveHandler phpdoc 2016-01-07 14:19:31 +01:00
Titouan Galopin
758fc1dfb2 [FrameworkBundle] Add case in Kernel directory guess for PHPUnit 2016-01-06 10:52:17 +01:00
Nicolas Grekas
b114a85609 [Process] Fix potential race condition 2016-01-06 10:07:06 +01:00
Jáchym Toušek
eab7e11be7 typo 2016-01-05 16:32:23 +01:00
Jakub Zalas
1438b9a067 [FrameworkBundle] Set the kernel.name properly after a cache warmup 2016-01-04 18:15:54 +01:00
Fabien Potencier
5a9c1b5a0f minor #17243 Removed spaces before semicolon (dereckson)
This PR was merged into the 2.3 branch.

Discussion
----------

Removed spaces before semicolon

'lorem ; ipsum' → 'lorem; ipsum'

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

Commits
-------

169d551 Removed spaces before semicolon
2016-01-04 17:52:03 +01:00
Adrien LUCAS
be20e892c2 Fix Form's DateTimeType tests. 2016-01-04 15:27:01 +01:00
Fabien Potencier
e738227d63 bug #17159 [Yaml] recognize when a block scalar is left (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[Yaml] recognize when a block scalar is left

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

The parser did not recognize when the block scalar was completely parsed
and thus treated following comments as they need to be kept leading to
parse errors on the following lines.

Commits
-------

3a22165 [Yaml] recognize when a block scalar is left
2016-01-04 12:01:16 +01:00
Christian Flothmann
3a2216559b [Yaml] recognize when a block scalar is left
The parser did not recognize when the block scalar was completely parsed
and thus treated following comments as they need to be kept leading to
parse errors on the following lines.
2016-01-03 20:52:40 +01:00
Jérôme Vasseur
8566dc18fc Remove normalizer cache in Serializer class 2016-01-03 18:07:57 +01:00
Diego Saint Esteben
ce067e6460 Update copyright year 2016-01-01 23:53:47 -03:00
Sébastien Santoro
169d5513a6 Removed spaces before semicolon
'lorem ; ipsum' → 'lorem; ipsum'
2016-01-01 15:10:52 +00:00
Fabien Potencier
1b15ac3bdc minor #17085 [2.3] Static Code Analysis for Components (kalessil)
This PR was squashed before being merged into the 2.3 branch (closes #17085).

Discussion
----------

[2.3] Static Code Analysis for Components

| 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

Static Code Analysis with Php Inspections (EA Extended):
    - remaining mkdir race conditions
    - continue miss-usage in switch

Commits
-------

6d303c7 [2.3] Static Code Analysis for Components
2015-12-31 19:24:03 +01:00
Vladimir Reznichenko
6d303c7755 [2.3] Static Code Analysis for Components 2015-12-31 19:24:01 +01:00