Commit Graph

17912 Commits

Author SHA1 Message Date
Nicolas Grekas
80fb51c3af [Process] Fix stopping a process on Windows 2015-12-05 13:06:52 +01:00
Alexander M. Turek
78c0a6e3a4 Added a test case for the Logger class. 2015-12-05 11:47:18 +01:00
Christophe Coevoet
0310499f42 minor #16798 [Process] Unset callback after stop to free memory (Slamdunk)
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes #16798).

Discussion
----------

[Process] Unset callback after stop to free memory

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

As of yet, a `Process` instance can't free memory.
The built-in callback has a self-reference to the intance not cleared after instance destruction.
I've tried to change both `buildCallback` and https://github.com/symfony/process/blob/v2.7.6/Process.php#L1373 usage to avoid self-referencing, but it can't be done without breaking BC, and the memory issue is still there.

A simple test script (that obiously can't be embedded in unit-tests)
```php
for ($inc = 0; $inc < 10000; $inc++) {
    $process = new Symfony\Component\Process\Process('echo 1');
    $process->mustRun();
    $process->stop();
    unset($process);

    echo (memory_get_usage(true) / 1000000) . ' MB ' . $inc . PHP_EOL;
}
```
Before:
```
1.572864 MB 0
5.505024 MB 9999
```
After:
```
1.572864 MB 0
1.572864 MB 9999
```
Ok, in this simple scenario 4 MB of RAM is nothing, but in our business app full of IOC where `unset`-ting is hard, our RAM explodes.

After `stop()`, the callback is no longer necessary.

To be clear, the garbage collector in the previous example was already active.
Deactivating it manually, which somewhere is needed to avoid particluar segfaults, obiously leads to worse scenarios:

Before:
```
 gc_disable();
 1.572864 MB 0
29.360128 MB 9999
```
After:
```
 gc_disable();
 1.572864 MB 0
 1.572864 MB 9999
```

Commits
-------

ec93b9a [Process] Unset callback after stop to free memory
2015-12-05 11:16:21 +01:00
Filippo Tessarotto
ec93b9a7f7 [Process] Unset callback after stop to free memory 2015-12-05 11:16:20 +01:00
Christophe Coevoet
fbc353dcda bug #16799 Improve error message for undefined DIC aliases (mpdude)
This PR was squashed before being merged into the 2.3 branch (closes #16799).

Discussion
----------

Improve error message for undefined DIC aliases

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

Additionally, I think the arguments need to be the other way round (`templating` is an alias pointing to `templating.engine.twig`).

Commits
-------

9195cd3 Improve error message for undefined DIC aliases
2015-12-05 11:09:09 +01:00
Matthias Pigulla
9195cd3e44 Improve error message for undefined DIC aliases 2015-12-05 11:09:07 +01:00
Tobias Schultze
6e279c5f8a [FrameworkBundle] prevent cache:clear creating too long paths 2015-12-05 03:07:20 +01:00
Tobias Schultze
8ab107c905 minor #16780 CS: remove unneeded parentheses around control statements (keradus)
This PR was merged into the 2.3 branch.

Discussion
----------

CS: remove unneeded parentheses around control statements

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

Commits
-------

45d250d CS: remove unneeded parentheses around control statements
2015-12-03 10:03:30 +01:00
Tobias Schultze
30f9175f6c minor #16820 Fix typo (j0k3r)
This PR was merged into the 2.3 branch.

Discussion
----------

Fix typo

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

230acb2 Fix typo
2015-12-03 09:47:44 +01:00
Jeremy Benoist
230acb2841 Fix typo 2015-12-03 06:49:53 +01:00
Christophe Coevoet
fb791fdbcb bug #16772 Refactoring EntityUserProvider::__construct() to not do work, cause cache warm error (weaverryan)
This PR was submitted for the 2.8 branch but it was merged into the 2.3 branch instead (closes #16772).

Discussion
----------

Refactoring EntityUserProvider::__construct() to not do work, cause cache warm error

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

This fixes a "Database not Found" error when using `doctrine/orm` 2.5 while warming up your cache under certain situations. Basically, if you use the `EntityUserProvider`, then during cache warmup, Twig requires the `security.authorization_checker` which eventually requires this `EntityUserProvider`, which previously caused Doctrine to calculate the metadata for your User class. If no database exists (and you haven't specified the platform), you'll get the error.

More broadly, this simply tries to do less work in the constructor. It's a "bug fix", only kind of, but as it's completely an internal refactoring, it should be quite safe.

Thanks!

Commits
-------

44a2861 Refactoring EntityUserProvider::__construct() to not do work, cause cache warm error
2015-12-02 16:35:50 +01:00
Ryan Weaver
44a28612da Refactoring EntityUserProvider::__construct() to not do work, cause cache warm error 2015-12-02 16:35:49 +01:00
Dariusz Ruminski
d3f671e8f6 CS: general fixes 2015-12-01 23:08:33 +01:00
Dariusz Ruminski
45d250d25f CS: remove unneeded parentheses around control statements 2015-12-01 12:58:24 +01:00
Fabien Potencier
d9b8d0c1e9 bug #16753 [Process] Fix signaling/stopping logic on Windows (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[Process] Fix signaling/stopping logic on Windows

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

Commits
-------

9afbea2 [Process] Fix signaling/stopping logic on Windows
2015-11-30 13:29:40 +01:00
Nicolas Grekas
9afbea27e9 [Process] Fix signaling/stopping logic on Windows 2015-11-30 11:29:50 +01:00
Fabien Potencier
52209dbcdc minor #16737 [Yaml] minor CS cleaning (mhujer)
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes #16737).

Discussion
----------

[Yaml] minor CS cleaning

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

PHPStorm reported different types of coding style suggestions along the Symfony codebase. I've fixed some of them in the Yaml compontent and I have two questions:
1) What is the correct branch for such changes? Not all of them can be fixed in 2.3/2.8, for example `ParserTest`'s docblock is different there.
2) Should I create similar PRs for other components or is there a plan to do all such fixes at once someday in the future (e.g. after 2.8/3.0 is released)?

Commits
-------

613804d [Yaml] minor CS cleaning
2015-11-29 11:53:55 +01:00
Martin Hujer
613804d0cf [Yaml] minor CS cleaning 2015-11-29 11:53:50 +01:00
Fabien Potencier
0239d4ae7e bug #16733 [Console] do not encode backslashes in console default description (Tobion)
This PR was merged into the 2.3 branch.

Discussion
----------

[Console] do not encode backslashes in console default description

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

Commits
-------

873a541 [Console] do not encode backslashes in console default description
2015-11-29 11:50:28 +01:00
Tobias Schultze
873a5417a8 [Console] do not encode backslashes in console default description 2015-11-28 23:15:59 +01:00
Fabien Potencier
b2899a6c2e bug #16312 [HttpKernel] clearstatcache() so the Cache sees when a .lck file has been released (mpdude)
This PR was squashed before being merged into the 2.3 branch (closes #16312).

Discussion
----------

[HttpKernel] clearstatcache() so the Cache sees when a .lck file has been released

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

I've been trying to debug #15813 and modified the Store in a way to keep unique request IDs in the .lck file. That way, I was hoping to find out which request is blocking and/or if the request is actually still running.

It turned out that `is_file()` would claim that a lock file still exists, but a subsequent attempt to read the information from that file returned "file not found" errors.

So, my assumption is that the `is_file()` result is based on the fstat cache and wrong once a process has seen the lock file.

@jakzal said in https://github.com/symfony/symfony/issues/15813#issuecomment-149013691 that `unlink()`ing the lock file should clear the statcache, but I doubt this is true across PHP processes.

Commits
-------

982710f [HttpKernel] clearstatcache() so the Cache sees when a .lck file has been released
2015-11-28 11:48:57 +01:00
Matthias Pigulla
982710ff18 [HttpKernel] clearstatcache() so the Cache sees when a .lck file has been released 2015-11-28 11:48:55 +01:00
Nicolas Grekas
59b782a200 [ci] Force update of ./phpunit deps 2015-11-28 10:05:13 +01:00
Nicolas Grekas
4e73e1a436 minor #16702 [Process] Don't catch RuntimeException when it complicates tests debugging (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[Process] Don't catch RuntimeException when it complicates tests debugging

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

See https://github.com/symfony/symfony/pull/16702/files?w=1

Commits
-------

8588a4f [Process] Don't catch RuntimeException when it complicates tests debugging
2015-11-27 12:58:28 +01:00
Nicolas Grekas
8588a4f63b [Process] Don't catch RuntimeException when it complicates tests debugging 2015-11-27 09:37:23 +01:00
Nicolas Grekas
f8a7ddb9f8 minor #16684 [appveyor] Workaround transient segfault when APCu is enabled (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[appveyor] Workaround transient segfault when APCu is enabled

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

See e.g. https://ci.appveyor.com/project/nicolas-grekas/symfony/build/1.0.4#L1186

Commits
-------

12a152b [appveyor] Workaround transient segfault when APCu is enabled
2015-11-27 09:29:25 +01:00
Fabien Potencier
12e63398fe minor #16700 Fixed the wrong source name and the ja translation (hainey)
This PR was submitted for the 2.8 branch but it was merged into the 2.3 branch instead (closes #16700).

Discussion
----------

Fixed the wrong source name and the ja translation

Commits
-------

90f3b94 Fixed the wrong source name and the ja translation
2015-11-27 06:41:09 +01:00
hainey
90f3b941d3 Fixed the wrong source name and the ja translation 2015-11-27 06:41:08 +01:00
Fabien Potencier
82b6ec192b bug #16695 [SecurityBundle] disable the init:acl command if ACL is not used (Tobion)
This PR was merged into the 2.3 branch.

Discussion
----------

[SecurityBundle] disable the init:acl command if ACL is not used

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

Related to #16694 but this should go in 2.3 IMO because it was just forgotten. The other acl command already has this logic: https://github.com/symfony/symfony/blob/2.7/src/Symfony/Bundle/SecurityBundle/Command/SetAclCommand.php#L36

It ensures the command list is not flooded with unusable commands.

Commits
-------

55f84a3 [SecurityBundle] disable the init:acl command if ACL is not used
2015-11-26 21:09:40 +01:00
Tobias Schultze
55f84a3369 [SecurityBundle] disable the init:acl command if ACL is not used 2015-11-26 20:19:29 +01:00
Fabien Potencier
fd140fc045 minor #16691 [DI] remove useless condition around unset (Tobion)
This PR was merged into the 2.3 branch.

Discussion
----------

[DI] remove useless condition around unset

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

478375d [DI] remove useless condition around unset
2015-11-26 19:04:30 +01:00
Tobias Schultze
478375d664 [DI] remove useless condition around unset 2015-11-26 18:53:25 +01:00
Nicolas Grekas
12a152b666 [appveyor] Workaround transient segfault when APCu is enabled 2015-11-26 16:12:01 +01:00
Nicolas Grekas
5f93188dc0 bug #16676 [HttpFoundation] Workaround HHVM rewriting HTTP response line (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] Workaround HHVM rewriting HTTP response line

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

Commits
-------

5013f98 [HttpFoundation] Workaround HHVM rewriting HTTP response line
2015-11-26 10:19:28 +01:00
Nicolas Grekas
5013f9895f [HttpFoundation] Workaround HHVM rewriting HTTP response line 2015-11-26 07:58:58 +01:00
Nicolas Grekas
7ddfc5fae9 minor #16670 Always enable clock-mock for HttpFoundation (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

Always enable clock-mock for HttpFoundation

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

Commits
-------

1712086 Always enable clock-mock for HttpFoundation
2015-11-26 07:56:24 +01:00
Tobias Schultze
27327d3e4d bug #16668 [ClassLoader] Fix parsing namespace when token_get_all() is missing (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[ClassLoader] Fix parsing namespace when token_get_all() is missing

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

Commits
-------

4a17c9e [ClassLoader] Fix parsing namespace when token_get_all() is missing
2015-11-25 20:26:50 +01:00
Nicolas Grekas
171208627d Always enable clock-mock for HttpFoundation 2015-11-25 19:15:39 +01:00
Nicolas Grekas
4a17c9e6af [ClassLoader] Fix parsing namespace when token_get_all() is missing 2015-11-25 18:16:22 +01:00
Nicolas Grekas
bece73aa27 bug #16386 Bug #16343 [Router] Too many Routes ? (jelte)
This PR was submitted for the 2.8 branch but it was merged into the 2.3 branch instead (closes #16386).

Discussion
----------

Bug #16343 [Router] Too many Routes ?

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/16343
| License       | MIT
| Doc PR        | N/A

Seems there is an issue when you have more than 7265 routes declared,
The routes are generated into the cached appDevUrlGenerator.php but php only loads the last 7265 elements of the array.

Commits
-------

0113ac3 Bug #16343 [Router] Too many Routes ?
2015-11-25 13:20:53 +01:00
Jelte Steijaert
0113ac3ce2 Bug #16343 [Router] Too many Routes ? 2015-11-25 13:20:52 +01:00
Nicolas Grekas
8d0ec00caa minor #16644 [travis] Disable xdebug on PHP7 (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[travis] Disable xdebug on PHP7

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

Commits
-------

dfda5ce [travis] Disable xdebug on PHP7
2015-11-24 08:30:27 +01:00
Nicolas Grekas
dfda5ced7c [travis] Disable xdebug on PHP7 2015-11-24 08:24:59 +01:00
Fabien Potencier
03eb2e909d bumped Symfony version to 2.3.36 2015-11-23 12:27:40 +01:00
Fabien Potencier
8f52c651e4 Merge pull request #16634 from fabpot/release-2.3.35
released v2.3.35
2015-11-23 11:44:17 +01:00
Fabien Potencier
3b790dd0da updated VERSION for 2.3.35 2015-11-23 11:44:06 +01:00
Fabien Potencier
6836bc34b7 update CONTRIBUTORS for 2.3.35 2015-11-23 11:44:00 +01:00
Fabien Potencier
4e44295288 updated CHANGELOG for 2.3.35 2015-11-23 11:43:52 +01:00
Fabien Potencier
f95078c409 security #16631 n/a (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

n/a

n/a

Commits
-------

f88e600 migrate session after remember me authentication
2015-11-23 11:22:15 +01:00
Fabien Potencier
c51977293a security #16630 n/a (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

n/a

n/a

Commits
-------

819aa54 prevent timing attacks in digest auth listener
557ea17 mitigate CSRF timing attack vulnerability
f1fd768 fix potential timing attack issue
2015-11-23 11:21:11 +01:00