Commit Graph

33559 Commits

Author SHA1 Message Date
Felix Marezki
8464bd0039 HttpCache lock update 2017-11-10 20:24:22 +01:00
Fabien Potencier
11aff9a071 Merge branch '3.3' into 3.4
* 3.3:
  [Intl] Update ICU data to 60.1
  [YAML] Allow to parse custom tags when linting yaml files
  [HttpKernel][Debug] Remove noise from stack frames of deprecations
  [Validator] Fix Costa Rica IBAN format
  [Bridge/ProxyManager] Remove direct reference to value holder property
  [Validator] Add Belarus IBAN format
  [FrameworkBundle] Specifically inject the debug dispatcher in the collector
  [WebserverBundle] fixed the bug that caused that the webserver would …
  update the pull request template
  [Stopwatch] minor fix
2017-11-10 11:03:56 -08:00
Fabien Potencier
e7201245cd Merge branch '2.8' into 3.3
* 2.8:
  [Intl] Update ICU data to 60.1
  [Validator] Fix Costa Rica IBAN format
  [Bridge/ProxyManager] Remove direct reference to value holder property
  [Validator] Add Belarus IBAN format
  [FrameworkBundle] Specifically inject the debug dispatcher in the collector
  update the pull request template
  [Stopwatch] minor fix
2017-11-10 11:02:53 -08:00
Fabien Potencier
e6087d6307 Merge branch '2.7' into 2.8
* 2.7:
  [Intl] Update ICU data to 60.1
  [Validator] Fix Costa Rica IBAN format
  [Bridge/ProxyManager] Remove direct reference to value holder property
  [Validator] Add Belarus IBAN format
  [FrameworkBundle] Specifically inject the debug dispatcher in the collector
  update the pull request template
  [Stopwatch] minor fix
2017-11-10 10:59:36 -08:00
Fabien Potencier
c549e3c647 bug #24856 [FrameworkBundle] Add default mapping path for validator component in bundle-less app (yceruto)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Add default mapping path for validator component in bundle-less 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        | ToDo

Same approach of https://github.com/symfony/symfony/pull/24833

Commits
-------

4e0daecc63 Add default mapping path for validator component
2017-11-10 10:57:49 -08:00
Fabien Potencier
93f206e878 bug #24833 [FrameworkBundle] Add default mapping path for serializer component in bundle-less app (yceruto)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Add default mapping path for serializer component in bundle-less 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        | ToDo

> http://symfony.com/doc/current/serializer.html#using-serialization-groups-annotations:
> In addition to the @Groups annotation, the Serializer component also supports Yaml or XML files. These files are automatically loaded when being stored in one of the following locations:
>* The `serialization.yml` or `serialization.xml` file in the `Resources/config/` directory of a bundle;
>* All `*.yml` and `*.xml` files in the `Resources/config/serialization/` directory of a bundle.

Inspired by the second convention, this proposal adds one more but for bundle-less structure. Theoretically this is what it does for you:
```yaml
framework:
    serializer:
        mapping:
            paths:
                - '%kernel.project_dir%/config/serializer/'
```

Commits
-------

43895b8dae Add default mapping path for serializer component
2017-11-10 10:56:06 -08:00
Fabien Potencier
aaa9f13b57 minor #24840 [TwigBundle] Add default Twig templates path as a container param (emodric)
This PR was merged into the 3.4 branch.

Discussion
----------

[TwigBundle] Add default Twig templates path as a container param

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

Adds a `twig.default_path` container param for easier access to this config in compiler passes.

Commits
-------

81b38ec215 [TwigBundle] Add default Twig templates path as a container param
2017-11-10 10:47:52 -08:00
Fabien Potencier
e68919af79 bug #24908 [WebServerBundle] Prevent console.terminate from being fired when server:start finishes (kbond)
This PR was merged into the 3.4 branch.

Discussion
----------

[WebServerBundle] Prevent console.terminate from being fired when server:start finishes

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

When the cache is cleared between `server:start` and `server:stop` the container used in `server:start` is no longer valid. Firing the `console.terminate` event throws an exception. This PR clears the event dispatcher so `console.terminate` is not fired.

Commits
-------

699339eb0c [WebServerBundle] prevent console.terminate from being fired after stopping server
2017-11-10 10:32:45 -08:00
Fabien Potencier
f249310f30 bug #24888 [FrameworkBundle] Specifically inject the debug dispatcher in the collector (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

[FrameworkBundle] Specifically inject the debug dispatcher in the collector

| Q             | A
| ------------- | ---
| Branch?       | 2.7 <!-- see comment below -->
| Bug fix?      | yes
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | N/A <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

This ensures we always collect data about events, even when the `event_dispatcher` service is decorated, no matter the decoration order.

Commits
-------

7b3a641acc [FrameworkBundle] Specifically inject the debug dispatcher in the collector
2017-11-10 10:29:29 -08:00
Fabien Potencier
2110dc3a70 bug #24909 [Intl] Update ICU data to 60.1 (jakzal)
This PR was squashed before being merged into the 2.7 branch (closes #24909).

Discussion
----------

[Intl] Update ICU data to 60.1

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

http://site.icu-project.org/download/60

All tests are passing, including those from the intl-data group.

Commits
-------

cf04e7cefe [Intl] Update ICU data to 60.1
2017-11-10 10:28:11 -08:00
Jakub Zalas
cf04e7cefe [Intl] Update ICU data to 60.1 2017-11-10 10:28:06 -08:00
Fabien Potencier
35f300de55 bug #24870 [YAML] Allow to parse custom tags when linting yaml files (pierredup)
This PR was squashed before being merged into the 3.3 branch (closes #24870).

Discussion
----------

[YAML] Allow to parse custom tags when linting yaml files

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

When using custom tags in yaml, currently the `lint:yaml` command fails since the flag `Yaml::PARSE_CUSTOM_TAGS` is not passed through

Commits
-------

d8dd91d919 [YAML] Allow to parse custom tags when linting yaml files
2017-11-10 10:26:05 -08:00
Pierre du Plessis
d8dd91d919 [YAML] Allow to parse custom tags when linting yaml files 2017-11-10 10:26:04 -08:00
Nicolas Grekas
d4d8d3a54c bug #24910 [HttpKernel][Debug] Remove noise from stack frames of deprecations (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpKernel][Debug] Remove noise from stack frames of deprecations

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

Collecting arguments of deprecations is too heavy, and was unintended in fact.

Commits
-------

f154be3 [HttpKernel][Debug] Remove noise from stack frames of deprecations
2017-11-10 18:58:45 +01:00
Nicolas Grekas
f154be3207 [HttpKernel][Debug] Remove noise from stack frames of deprecations 2017-11-10 17:38:39 +01:00
Kevin Bond
699339eb0c
[WebServerBundle] prevent console.terminate from being fired after stopping server 2017-11-10 11:15:02 -05:00
Fabien Potencier
9b3bf5d63f minor #24895 [Debug] More aggressively aggregate silenced notices per file+line (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Debug] More aggressively aggregate silenced notices per file+line

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

By aggregating silenced notices (deprecations mostly) per file+line instead of just per message, we loose some accuracy, but gain performance.

Commits
-------

9ab7559fb5 [Debug] More aggressively aggregate silenced notices per file+line
2017-11-10 08:05:54 -08:00
Fabien Potencier
ae65bd8410 bug #24906 [Bridge/ProxyManager] Remove direct reference to value holder property (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Bridge/ProxyManager] Remove direct reference to value holder property

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

This fixes https://github.com/Ocramius/ProxyManager/issues/394 on Symfony's side, because proxy-manager v1 is not maintained anymore, but is the only one that works on PHP 5.3/5.5, which we still support.
Cannot be tested easily (but code is run by the existing test suite.)

Commits
-------

af9d6446ea [Bridge/ProxyManager] Remove direct reference to value holder property
2017-11-10 07:28:23 -08:00
Fabien Potencier
bf5203102a feature #24887 [Cache][Lock] Add RedisProxy for lazy Redis connections (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Cache][Lock] Add RedisProxy for lazy Redis connections

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

That's the only provider that is not lazy by default, leading to bad DX (see linked issue.)
Best reviewed [ignoring whitespaces](https://github.com/symfony/symfony/pull/24887/files?w=1).

Commits
-------

1f5e3538d8 [Cache][Lock] Add RedisProxy for lazy Redis connections
2017-11-10 07:24:34 -08:00
Fabien Potencier
b7928c3f27 bug #24633 [Config] Fix cannotBeEmpty() (ro0NL)
This PR was merged into the 3.4 branch.

Discussion
----------

[Config] Fix cannotBeEmpty()

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | #24614
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

Open for better deprecation message, but this should clarify.

cc @iltar

Commits
-------

2269f70180 [Config] Fix cannotBeEmpty()
2017-11-10 07:14:21 -08:00
Fabien Potencier
b1ad577263 bug #24900 [Validator] Fix Costa Rica IBAN format (Bozhidar Hristov)
This PR was squashed before being merged into the 2.7 branch (closes #24900).

Discussion
----------

[Validator] Fix Costa Rica IBAN format

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

Fix Costa Rica IBAN format: https://bank.codes/iban/structure/costa-rica/

Commits
-------

b9b5e18f8b [Validator] Fix Costa Rica IBAN format
2017-11-10 07:11:42 -08:00
Bozhidar Hristov
b9b5e18f8b [Validator] Fix Costa Rica IBAN format 2017-11-10 07:11:41 -08:00
Fabien Potencier
470629045b bug #24904 [Validator] Add Belarus IBAN format (Bozhidar Hristov)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] Add Belarus IBAN format

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

Add missing Belarus IBAN format - https://bank.codes/iban/structure/belarus/

Commits
-------

128f2fa14e [Validator] Add Belarus IBAN format
2017-11-10 07:10:39 -08:00
Nicolas Grekas
af9d6446ea [Bridge/ProxyManager] Remove direct reference to value holder property 2017-11-10 14:01:38 +01:00
Bozhidar Hristov
128f2fa14e [Validator] Add Belarus IBAN format 2017-11-10 14:40:09 +02:00
Roland Franssen
2269f70180 [Config] Fix cannotBeEmpty() 2017-11-10 11:31:31 +01:00
Nicolas Grekas
9ab7559fb5 [Debug] More aggressively aggregate silenced notices per file+line 2017-11-10 10:14:26 +01:00
Nicolas Grekas
cf4eb4602a [HttpFoundation] minor session-related fix 2017-11-10 08:36:19 +01:00
Nicolas Grekas
1f5e3538d8 [Cache][Lock] Add RedisProxy for lazy Redis connections 2017-11-10 08:19:32 +01:00
Fabien Potencier
deb499ebaf bug #24837 [TwigBridge] [Bootstrap 4] Fix validation error design for expanded choiceType (ostrolucky)
This PR was merged into the 3.4 branch.

Discussion
----------

[TwigBridge] [Bootstrap 4] Fix validation error design for expanded choiceType

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

Unfortunately I didn't test https://github.com/symfony/symfony/pull/24802 with expanded option set to true, sorry about that. Without this fix, it applies form error style twice.

Before:
![screenshot from 2017-11-06 10 31 55](https://user-images.githubusercontent.com/496233/32434235-c13c02f8-c2dd-11e7-97da-6bfa312c5825.png)

After:
![screenshot from 2017-11-06 10 32 40](https://user-images.githubusercontent.com/496233/32434252-d30c2224-c2dd-11e7-86d6-fd06af3ef753.png)

Commits
-------

39083a2067 [TwigBridge] [Bootstrap 4] Fix validation error design for expanded choiceType
2017-11-09 11:24:47 -08:00
Gabriel Ostrolucký
39083a2067 [TwigBridge] [Bootstrap 4] Fix validation error design for expanded choiceType 2017-11-09 20:22:51 +01:00
Maxime Steinhausser
7b3a641acc [FrameworkBundle] Specifically inject the debug dispatcher in the collector 2017-11-09 18:29:09 +01:00
Fabien Potencier
a3e0e49094 minor #24872 [DI] Add "container.hot_path" tag to flag the hot path and inline related services (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Add "container.hot_path" tag to flag the hot path and inline related services

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

This PR is the result of my quest to squeeze some performance out of 3.4/4.0.

It builds on two ideas:
- a new `container.inline` tag that identifies the services that are *always* needed. This tag is only applied to a very short list of bootstrapping services (`router`, `event_dispatcher`, `http_kernel` and `request_stack` only). Then, it is propagated to all dependencies of these services, with a special case for event listeners, where only listed events are propagated to their related listeners.
- replacing the PHP autoloader by plain inlined `require_once` in generated service factories, with the benefit of completely bypassing the autoloader for services and their class hierarchy.

The end result is significant, even on a simple Hello World.
Here is the Blackfire profile, results are consistent with `ab` benchmarks:

https://blackfire.io/profiles/compare/b5fa5ef0-755c-4967-b990-572305f8f381/graph

![capture du 2017-11-08 16-54-28](https://user-images.githubusercontent.com/243674/32558666-a3f439b2-c4a5-11e7-83a3-db588c3e21e5.png)

Commits
-------

f7cb559a06 [DI] Add "container.hot_path" tag to flag the hot path and inline related services
2017-11-09 06:24:55 -08:00
Fabien Potencier
8e9f9765b5 bug #24878 [HttpFoundation] Prevent PHP from sending Last-Modified on session start (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpFoundation] Prevent PHP from sending Last-Modified on session start

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

I really don't know why PHP sends this Last-Modified header.
Let's bypass that and throw headers ourselves instead.

Commits
-------

2c0dc745d6 [HttpFoundation] Prevent PHP from sending Last-Modified on session start
2017-11-09 06:22:15 -08:00
Fabien Potencier
bd0899e3d1 minor #24880 [FrameworkBundle] Fine-tune generated annotations.php cache (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Fine-tune generated annotations.php cache

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

I noticed that the `annotations.php` file generated by `AnnotationsCacheWarmer` contains some noise.
This PR removes it.

Commits
-------

d36adc2392 [FrameworkBundle] Fine-tune generated annotations.php cache
2017-11-09 06:17:34 -08:00
Nicolas Grekas
f7cb559a06 [DI] Add "container.hot_path" tag to flag the hot path and inline related services 2017-11-09 15:14:31 +01:00
Fabien Potencier
ead2a1a0eb bug #24881 [WebserverBundle] fixed the bug that caused that the webserver would … (Serkan Yildiz)
This PR was squashed before being merged into the 3.3 branch (closes #24881).

Discussion
----------

[WebserverBundle] fixed the bug that caused that the webserver would …

Fixed the bug that caused that the webserver would start anyway even you said N.

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

Commits
-------

c256782cc7 [WebserverBundle] fixed the bug that caused that the webserver would …
2017-11-09 06:04:31 -08:00
Serkan Yildiz
c256782cc7 [WebserverBundle] fixed the bug that caused that the webserver would … 2017-11-09 06:04:29 -08:00
Nicolas Grekas
d36adc2392 [FrameworkBundle] Fine-tune generated annotations.php cache 2017-11-09 13:39:01 +01:00
Nicolas Grekas
2c0dc745d6 [HttpFoundation] Prevent PHP from sending Last-Modified on session start 2017-11-09 12:02:13 +01:00
Robin Chalas
85f7cc8d0a minor #24869 update the pull request template (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

update the pull request template

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

Commits
-------

a64f7c1 update the pull request template
2017-11-08 15:02:49 +01:00
Nicolas Grekas
8cd2193a82 minor #24866 Micro optim using explicit root namespaces (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

Micro optim using explicit root namespaces

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

Just doing that makes my local hello world as fast on 3.3 as on 4.0.
Spotted using Blackfire to identify the hot path.
Confirmed using both `ab` and `blackfire curl` on a local `php -S`.

It's not the first time these root namespaces make a measurable difference (on a selected list of functions only, see https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues/3048.)

https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/3222 might become a more generic fix for this kind of optims.

Commits
-------

e78d1c4 Micro optim using explicit root namespaces
2017-11-08 13:58:47 +01:00
Christian Flothmann
a64f7c1350 update the pull request template 2017-11-08 11:12:35 +01:00
Nicolas Grekas
e78d1c4551 Micro optim using explicit root namespaces 2017-11-07 21:33:43 +01:00
Fabien Potencier
850bb2d20a minor #24863 [Bridge\Twig] Lazy-load deps (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Bridge\Twig] Lazy-load deps

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

Spotted while benching a HelloWorld and comparing v3.3 to v4.0.
At this micro-bench level, even registering one more twig extension makes a difference (here, it's `TranslationExtension`, after #24358)

Commits
-------

3fc766ff4b [Bridge\Twig] Lazy-load deps
2017-11-07 10:02:31 -08:00
Nicolas Grekas
3fc766ff4b [Bridge\Twig] Lazy-load deps 2017-11-07 18:37:38 +01:00
Nicolas Grekas
2dbe17b9e9 minor #24859 [3.4] Remove useless docblocks (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[3.4] Remove useless docblocks

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

82ce33d [3.4] Remove useless docblocks
2017-11-07 15:31:47 +01:00
Nicolas Grekas
82ce33d5eb [3.4] Remove useless docblocks 2017-11-07 15:28:09 +01:00
Nicolas Grekas
5420cfca36 [Stopwatch] minor fix 2017-11-07 15:25:27 +01:00
Nicolas Grekas
629895c3ef Merge branch '3.3' into 3.4
* 3.3:
  [3.3] More docblock fixes
  [2.7] More docblock fixes
2017-11-07 15:20:24 +01:00