Commit Graph

35663 Commits

Author SHA1 Message Date
jmsche
ecef6f1b9b [WebProfilerBundle] Fixed icon alignment issue using Bootstrap 4.1.2 2018-07-13 16:00:59 +02:00
Kévin Dunglas
aaf7e889f7
Fix tests 2018-07-13 14:52:14 +02:00
Fabien Potencier
f80376217d bug #27937 [HttpFoundation] reset callback on StreamedResponse when setNotModified() is called (rubencm)
This PR was merged into the 2.8 branch.

Discussion
----------

[HttpFoundation] reset callback on StreamedResponse when setNotModified() is called

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

Commits
-------

51a49c7f78 [HttpFoundation] reset callback on StreamedResponse when setNotModified() is called
2018-07-13 13:22:37 +02:00
Fabien Potencier
e2c0239414 bug #27927 [HttpFoundation] Suppress side effects in 'get' and 'has' methods of NamespacedAttributeBag (webnet-fr)
This PR was submitted for the 3.4 branch but it was merged into the 2.8 branch instead (closes #27927).

Discussion
----------

[HttpFoundation] Suppress side effects in 'get' and 'has' methods of NamespacedAttributeBag

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

As @Gemineye reported there was a bug in `get` and `has` methods of NamespacedAttributeBag. These methods accept composite names as an argument (like 'foo/bar' or 'foo/bar/baz') to reach the elements of stored arrays. Up to now these methods erroneously created entries (`->get('foo/bar')` created `['foo' => null]`, `->get('foo/bar/baz')` created `['foo' => ['bar' => null]]`).

Commits
-------

5f59ad4600 suppress side effects in 'get' or 'has' methods of NamespacedAttributeBag
2018-07-13 13:19:23 +02:00
Webnet team
5f59ad4600 suppress side effects in 'get' or 'has' methods of NamespacedAttributeBag 2018-07-13 13:19:15 +02:00
Rubén Calvo
51a49c7f78 [HttpFoundation] reset callback on StreamedResponse when setNotModified() is called 2018-07-13 08:54:27 +02:00
Fabien Potencier
3b90bc71c1 minor #27929 [HttpFoundation] Fixed phpdoc for get method of HeaderBag (JanHort)
This PR was submitted for the master branch but it was merged into the 2.8 branch instead (closes #27929).

Discussion
----------

[HttpFoundation] Fixed phpdoc for get method of HeaderBag

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

Method `\Symfony\Component\HttpFoundation\HeaderBag::get` return type was declared only as `string|string[]` but there is also possibility of returning of `null` value since the `null` is the default value for second parameter.

Commits
-------

a72f4ecb3a [HttpFoundation] Fixed phpdoc for get method of HeaderBag
2018-07-12 08:13:53 +02:00
Jan Hort
a72f4ecb3a [HttpFoundation] Fixed phpdoc for get method of HeaderBag 2018-07-12 08:13:47 +02:00
Fabien Potencier
44ce4dd625 bug #27923 [Form/Profiler] Massively reducing memory footprint of form profiling pages... (VincentChalnot)
This PR was merged into the 3.4 branch.

Discussion
----------

[Form/Profiler] Massively reducing memory footprint of form profiling pages...

… by removing redundant 'form' variable from view variables.

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

## Problem
When trying to profile large forms in web profiler, the page can get so big that the memory footprint of the web browser excedes 1Gb making everything unusable and sometimes crashing the browser.

This is especially true for "deep" forms as every node of the form also contains its children in the debugging infos.

## Solution
When removing the "form" view variable that actually contains duplicated contents of everything already displayed in the page, the memory footprint massively decrease making the page usable again even form very complex and deep forms.

By using CutStub, we keep a necessary level of information by providing the information that the variable is indeed here but not directly accessible in the dump.

Commits
-------

5f5077f4fc [Form/Profiler] Massively reducing memory footprint of form profiling pages by removing redundant 'form' variable from view variables.
2018-07-12 08:05:38 +02:00
Fabien Potencier
137753db66 bug #27918 [Console] correctly return parameter's default value on "--" (seschwar)
This PR was merged into the 3.4 branch.

Discussion
----------

[Console] correctly return parameter's default value on "--"

Fixes #27916

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

The tests have been adjusted to use a default value different from the one in `A*Input::getParameterOption()`'s signature. This would have detected the bug in the first place and should prevent future regressions.

Commits
-------

d78dcc0615 [Console] correctly return parameter's default value on "--"
2018-07-12 08:01:07 +02:00
Fabien Potencier
fc41042008 minor #27922 [DependencyInjection] fix typo in ContainerBuilder docblock (xabbuh)
This PR was merged into the 2.8 branch.

Discussion
----------

[DependencyInjection] fix typo in ContainerBuilder docblock

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

559cdb01bd fix typo in ContainerBuilder docblock
2018-07-11 13:22:56 +02:00
Christian Flothmann
559cdb01bd fix typo in ContainerBuilder docblock 2018-07-11 12:26:22 +02:00
Vincent Chalnot
5f5077f4fc [Form/Profiler] Massively reducing memory footprint of form profiling pages by removing redundant 'form' variable from view variables. 2018-07-11 11:08:35 +02:00
Sebastian Schwarz
d78dcc0615 [Console] correctly return parameter's default value on "--"
Fixes #27916
2018-07-10 16:02:11 +02:00
Nicolas Grekas
08b7874a08 Merge branch '2.8' into 3.4
* 2.8:
  [Filesystem] fix lock file mode
  [Console] fix typo in phpdoc
2018-07-09 15:25:43 +02:00
Nicolas Grekas
881c46aadd [Filesystem] fix lock file mode 2018-07-09 15:24:25 +02:00
Nicolas Grekas
e3bdbed513 minor #27777 [Console] fix typo in phpdoc (Tobion)
This PR was merged into the 2.8 branch.

Discussion
----------

[Console] fix typo in phpdoc

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

Commits
-------

7aa45579d5 [Console] fix typo in phpdoc
2018-07-09 14:59:54 +02:00
Tobias Schultze
7aa45579d5 [Console] fix typo in phpdoc 2018-07-09 14:58:09 +02:00
Nicolas Grekas
69509728c4 Merge branch '2.8' into 3.4
* 2.8:
  [Filesystem] fix lock file permissions
  add @xabbuh as a code owner of the Yaml component
2018-07-09 14:47:47 +02:00
Nicolas Grekas
66b9ebcda5 bug #27904 [Filesystem] fix lock file permissions (fritzmg)
This PR was squashed before being merged into the 2.8 branch (closes #27904).

Discussion
----------

[Filesystem] fix lock file permissions

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

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

Commits
-------

7a68fea2af [Filesystem] fix lock file permissions
2018-07-09 14:47:26 +02:00
fritzmg
7a68fea2af [Filesystem] fix lock file permissions 2018-07-09 14:47:20 +02:00
Nicolas Grekas
608cf7f1b7 bug #27903 [Lock] fix lock file permissions (fritzmg)
This PR was squashed before being merged into the 3.4 branch (closes #27903).

Discussion
----------

[Lock] fix lock file permissions

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

See [this comment](https://github.com/symfony/symfony/pull/27668#issuecomment-403392924). Since we are using `r+` now to fix an issue on Solaris, we also need to change the file permissions when the lock file is created for the first time. Otherwise
```php
fopen($fileName, 'r+')
```
will fail due to the file permissions and while
```php
fopen($fileName, 'r')
```
will work, the subsequent locking will again fail on Solaris.

Changing the file permissions to `0666` fixes this issue. __However__ any lock file that was generated _prior_ to this change will still cause issues and would need to be manually deleted. Usually the default `sys_get_temp_dir()` location is used for the lock files and _usually_ these files are purged periodically, so it probably won't matter that much. But it still might cause some confusion since it will not be transparent, why the file lock failed on Solaris systems.

Commits
-------

23481a112e [Lock] fix lock file permissions
2018-07-09 14:45:49 +02:00
fritzmg
23481a112e [Lock] fix lock file permissions 2018-07-09 14:45:36 +02:00
Nicolas Grekas
55ddaee7b1 minor #27886 [Form] Removed .form-control-label class. (vudaltsov)
This PR was squashed before being merged into the 3.4 branch (closes #27886).

Discussion
----------

[Form] Removed .form-control-label class.

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

There is no such a class neither in [bootstrap 4.0](https://getbootstrap.com/docs/4.0/components/forms/#form-controls) nor in [bootstrap 4.1](https://getbootstrap.com/docs/4.1/components/forms/#form-controls).

Commits
-------

cb3e712698 [Form] Removed .form-control-label class.
2018-07-09 14:42:10 +02:00
Valentin
cb3e712698 [Form] Removed .form-control-label class. 2018-07-09 14:42:04 +02:00
Nicolas Grekas
5c7495295b minor #27887 [Form] Removed .mb-0 in errors. (vudaltsov)
This PR was merged into the 3.4 branch.

Discussion
----------

[Form] Removed .mb-0 in errors.

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

`<span class="d-block">` will never have a margin on its own, so `.mb-0` is needless.

Commits
-------

925dda130e Removed .mb-0 in errors.
2018-07-09 14:39:50 +02:00
Valentin
925dda130e Removed .mb-0 in errors. 2018-07-09 14:38:55 +02:00
Nicolas Grekas
d5c765ad69 bug #27889 [Form] Replace .initialism with .text-uppercase. (vudaltsov)
This PR was merged into the 3.4 branch.

Discussion
----------

[Form] Replace .initialism with .text-uppercase.

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

I think that the `.initialism` [class](https://getbootstrap.com/docs/4.0/content/typography/#abbreviations) is for different purposes. While the `.text-uppercase` [class](https://getbootstrap.com/docs/4.0/utilities/text/#text-transform) is more neutral and does exactly what we want here.

Commits
-------

3c39dfdaa6 Replace .initialism with .text-uppercase.
2018-07-09 14:34:25 +02:00
Nicolas Grekas
0fcc874e6f bug #27902 Fix the detection of the Process new argument (stof)
This PR was merged into the 3.4 branch.

Discussion
----------

Fix the detection of the Process new argument

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

This fixes the detection of the new method signature when triggering the deprecation warning. The new `$env` parameter is the second argument, not the first one.

Commits
-------

57e95f3f9a Fix the detection of the Process new argument
2018-07-09 14:30:57 +02:00
Christian Flothmann
ca7000019f minor #27899 add @xabbuh as a code owner of the Yaml component (xabbuh)
This PR was merged into the 2.8 branch.

Discussion
----------

add @xabbuh as a code owner of the Yaml component

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

748cad4 add @xabbuh as a code owner of the Yaml component
2018-07-09 11:07:51 +02:00
Christophe Coevoet
57e95f3f9a Fix the detection of the Process new argument 2018-07-09 11:01:07 +02:00
Christian Flothmann
4c7f29fefe minor #27868 improve deprecation messages (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

improve deprecation messages

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

Commits
-------

a3845c7 improve deprecation messages
2018-07-09 10:21:26 +02:00
Christian Flothmann
748cad4898 add @xabbuh as a code owner of the Yaml component 2018-07-09 10:01:26 +02:00
Christian Flothmann
a3845c7d6e improve deprecation messages 2018-07-08 21:14:58 +02:00
Nicolas Grekas
08dced56c4 Merge branch '2.8' into 3.4
* 2.8:
  [Console] fix CS
  improve deprecation messages
  minor #27858 [Console] changed warning verbosity; fixes typo (adrian-enspired)
2018-07-07 17:54:55 +02:00
Nicolas Grekas
bacb9ed333 [Console] fix CS 2018-07-07 17:53:36 +02:00
Nicolas Grekas
2a2e6f1390 bug #27885 [HttpFoundation] don't encode cookie name for BC (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpFoundation] don't encode cookie name for BC

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

As reported by @Seldaek in https://github.com/symfony/symfony/pull/25348#issuecomment-401696990

Commits
-------

d28949b846 [HttpFoundation] don't encode cookie name for BC
2018-07-07 17:50:45 +02:00
Nicolas Grekas
1cb3b5b170 bug #27782 [DI] Fix dumping ignore-on-uninitialized references to synthetic services (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Fix dumping ignore-on-uninitialized references to synthetic services

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

Commits
-------

97e8d68a05 [DI] Fix dumping ignore-on-uninitialized references to synthetic services
2018-07-07 17:48:58 +02:00
Nicolas Grekas
6fea6349ec bug #27435 [OptionResolver] resolve arrays (Doctrs)
This PR was squashed before being merged into the 3.4 branch (closes #27435).

Discussion
----------

[OptionResolver] resolve arrays

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

Option resolver didn't work with nested arrays

Before:

        $resolver->setDefaults([
            'integer' => [
                [
                    12,
                    23,
                ],
            ],
        ]);

        $resolver->setAllowedTypes('integer', 'integer[][]');

Error

    The option "host" with value array is expected to be of type "integer[][]", but is of type "integer[][]".

Option expetcted type `integer[][]` but get... `integer[][]`. So strange

Now that case work correct, and we get

    array (size=1)
      'integer' =>
        array (size=1)
          0 =>
            array (size=2)
              0 => int 12
              1 => int 23

Commits
-------

6d4812e995 [OptionResolver] resolve arrays
2018-07-07 17:09:44 +02:00
Oleg Golovakhin
6d4812e995 [OptionResolver] resolve arrays 2018-07-07 17:09:37 +02:00
Nicolas Grekas
332b7fd0ca bug #27728 [TwigBridge] Fix missing path and separators in loader paths list on debug:twig output (yceruto)
This PR was squashed before being merged into the 3.4 branch (closes #27728).

Discussion
----------

[TwigBridge] Fix missing path and separators in loader paths list on debug:twig output

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

**Reproducer**
```bash
$ composer create-project symfony/skeleton repr
$ cd repr
$ composer req twig
# remove duplicated path on `twig.paths: ['%kernel.project_dir%/templates']` config.
$ bin/console debug:twig
```
See "Loader Paths" section at the end of the output and compare it with `--format=json`. Note that the root `templates` path is present in Twig `loader_paths` because `twig.default_path` config, but it isn't visible on `debug:twig` output.

**Missing path:**

| Before | After |
| --- | --- |
| ![debug_twig_before1](https://user-images.githubusercontent.com/2028198/41908937-9af78274-7913-11e8-91d1-bb48f81031dd.png) | ![debug_twig_after1](https://user-images.githubusercontent.com/2028198/41908969-b5fd3140-7913-11e8-8129-8215f3c09b24.png) |

**Extra Lines separator:**

| Before | After |
| --- | --- |
| ![debug_twig_before2](https://user-images.githubusercontent.com/2028198/41909029-e867fcdc-7913-11e8-91f1-bba0d873495c.png) | ![debug_twig_after2](https://user-images.githubusercontent.com/2028198/41915586-12a6426e-7924-11e8-899f-9ecc7d95b74f.png) |

Commits
-------

ba7a4ca863 [TwigBridge] Fix missing path and separators in loader paths list on debug:twig output
2018-07-07 17:04:34 +02:00
Yonel Ceruto
ba7a4ca863 [TwigBridge] Fix missing path and separators in loader paths list on debug:twig output 2018-07-07 17:04:14 +02:00
Nicolas Grekas
9a6fe47273 bug #27837 [PropertyInfo] Fix dock block lookup fallback loop (DerManoMann)
This PR was submitted for the 4.1 branch but it was squashed and merged into the 3.4 branch instead (closes #27837).

Discussion
----------

[PropertyInfo] Fix dock block lookup fallback loop

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

`getDocBlock()` in `PhpDocExtractor` implements a fallback loop when trying to lookup a dock block for a property (property, accessor method, mutator method). This relies on the individual lookups to return `null`.

Unfortunately, phpDocumentor will throw an `InvalidArgumentException` exception in case there is no dock block.

Currently the try/catch is wrapping the whole loop which means if the first lookup fails the loop is ended instead of moving on to the next one.

This PR moves the try/catch to each individual call of `$this->docBlockFactory->create()`.

Commits
-------

b1a612087f [PropertyInfo] Fix dock block lookup fallback loop
2018-07-07 16:54:11 +02:00
DerManoMann
b1a612087f [PropertyInfo] Fix dock block lookup fallback loop 2018-07-07 16:54:05 +02:00
Nicolas Grekas
c35772c243 minor #27866 improve deprecation messages (xabbuh)
This PR was merged into the 2.8 branch.

Discussion
----------

improve deprecation messages

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

39cb2a99ba improve deprecation messages
2018-07-07 16:41:03 +02:00
Nicolas Grekas
f4350448e2 minor #27869 Replaced AppBundle mentions with App (vudaltsov)
This PR was merged into the 3.4 branch.

Discussion
----------

Replaced AppBundle mentions with App

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

Removed some legacy non-test related mentions of AppBundle. Probably this should be done for 4.x only, not >=3.4.

Commits
-------

b4552373c1 AppBundle->App.
2018-07-07 16:34:32 +02:00
Valentin
3c39dfdaa6 Replace .initialism with .text-uppercase. 2018-07-07 16:05:57 +03:00
Nicolas Grekas
d28949b846 [HttpFoundation] don't encode cookie name for BC 2018-07-07 11:30:05 +02:00
Christian Flothmann
39cb2a99ba improve deprecation messages 2018-07-06 16:26:38 +02:00
Robin Chalas
ddea90e97d minor #27858 [Console] changed warning verbosity; fixes typo (adrian-enspired)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Console] changed warning verbosity; fixes typo

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

* Tests pass, but I do not have an installation of MacOS to run tests on.  Tests should be unaffected (the test is simply [skipped on MacOS](https://github.com/symfony/console/blob/master/Tests/Command/CommandTest.php#L345)).

When a Console Command fails to change the process title on MacOS, a warning is issued to output.  This warning is relevant to developers of Console applications, but to end users is largely meaningless and potentially confusing.

This PR changes the verbosity of the warning to "very verbose" so it does not interrupt normal usage.
I've also fixed a typo in the message ("get" vs. "set").

Commits
-------

86c771a changed warning verbosity; fixes typo
2018-07-06 11:12:12 +02:00