Commit Graph

23715 Commits

Author SHA1 Message Date
Robin Chalas
dbc4148535
[Filesystem] Check that the directory is writable after created it in dumpFile() 2017-01-08 13:55:49 +01:00
Robin Chalas
2a279b9db9
[TwigBundle] Disable form in tests 2017-01-08 12:35:37 +01:00
Fabien Potencier
8e497f2643 feature #21196 [FrameworkBundle] changed some default configs from canBeEnabled to canBeDisabled (fabpot)
This PR was squashed before being merged into the 3.3-dev branch (closes #21196).

Discussion
----------

[FrameworkBundle] changed some default configs from canBeEnabled to canBeDisabled

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

FrameworkBundle configuration is currently "optimized" for when a project
depends on symfony/symfony (which is the vast majority of Symfony projects out
there as that's how Symfony Standard Edition is set up). As all components are
always available, features (forms, validation, translation, serializer, ...)
are disabled by default in FrameworkBundle's configuration (`canBeEnabled`) and
developers must enable them when they need them (that was done mainly for
performance reasons).

That's annoying as it means one configuration step before being able to use
forms for the first time (or validation, or serialization, or translation, ...).

To make features auto-configurable and make the framework a bit more
user-friendly (that's where I think I need to invoke DX :), I'd like Symfony 4
to work in a different way. Instead of relying on symfony/symfony, I want
people to install only the components/bundles they need. In that scenario, we
can auto-configure Symfony FrameworkBundle based on the available components.
If you add symfony/form as a dependency, then it makes sense to automatically
enable the feature in framework bundle (with the possibility to disable it if
needed thanks to `canBeDisabled`).

Let's recap:

 * Before:

   * You want to use forms; you have symfony/symfony, so nothing to install;

   * Using forms does not work out of the box though; you need to know that you
     have to edit `app/config/config.yml` to explicitly enable forms;

   * Forms work!

 * After:

   * You want to use forms so you install symfony/form (like for any other
     packages out there; want to use Twig for templating, install twig/twig);

   * But for Symfony components, there are no other steps; forms are
     auto-configured just because you installed the dependency, go work now!

In a way, it makes handling/installing/configuring Symfony components no
different than doing the same for a third party package. That's about relying
even more on Composer and less on configuration. Symfony components have the
extra benefit of being auto-configured via FrameworkBundle. That's not the case
for other third-party packages/bundles, but for those who attended SymfonyCon
Berlin, you know that this is coming soon via Symfony Flex.

That's even more interesting for forms as CSRF protection needs an extra knob
to be turned on currently. With the new way, just install the CSRF security
component. An again, you still have the possibility to turn it off if you want
to.

Anyway, this PR gives us the flexibility to do both: when using
symfony/symfony, everything works as before, if you are using
symfony/framework-bundle, then auto-configuration based on the installed
packages is automatically activated.

This also brings consistency as this behavior is already what we've done for
the Doctrine Annotation library in 3.2.

Last, but not the least, with all the work currently done on the container
lazyness for Symfony 3.3, concerns about performance are less important than
before, so having components auto-enabled when installed should not be a big
deal. We might even go one step further and remove enabling/disabling for
ESI/SSI/fragments/... And whenever we create an independent Session component,
we will be able to do the same with the session configuration. The astute
reader might have noticed that I haven't talked about the templating
configuration, but as the component will be deprecated in 3.3, I prefer to keep
its activation explicit.

In terms of BC, the only change is for people using symfony/framework-bundle
with some packages that were installed but not enabled in the config. I would
say that this should be pretty rare and anyway, the only consequence is a small
performance hit which can be easily offset by explicitly disabling the config.

That's all folks!

Commits
-------

ef80873d06 [FrameworkBundle] changed some default configs from canBeEnabled to canBeDisabled
98ce21a351 [FrameworkBundle] changed the default value of annotation setting based on the existence of Doctrine Annotations
2017-01-07 18:12:06 -08:00
Fabien Potencier
e1d39005bd feature #20937 [EventDispatcher] Deprecate ContainerAwareEventDispatcher (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[EventDispatcher] Deprecate ContainerAwareEventDispatcher

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

These methods shouldn't be available to end users.

Commits
-------

c4a6a8a47c [EventDispatcher] Deprecate ContainerAwareEventDispatcher
2017-01-07 18:00:26 -08:00
Fabien Potencier
81eb2f3423 feature #21190 [WebServerBundle] Decouple server commands from the container (chalasr)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[WebServerBundle] Decouple server commands from the container

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

This removes the need for injecting the container in the new `server:*` commands, registering them as services when used in the framework and thus making them even more discoverable and extensible.
It would then be easy to reconsider extracting them in a `WebServer` component instead of having a bundle only. IMHO it would make sense to use these commands outside of the framework.

If the idea can be considered I'll add some tests at least ensuring that these commands are bootstrap-able. This must be done before that they are covered by the BC promise (3.3).

Commits
-------

2e63025e18 [WebServerBundle] Decouple server:* commands from the container
2017-01-07 16:40:55 -08:00
Fabien Potencier
ef80873d06 [FrameworkBundle] changed some default configs from canBeEnabled to canBeDisabled 2017-01-07 14:17:04 -08:00
Fabien Potencier
96c9e202c3 minor #21192 [DI] Dont call get() when not required - µ-optim (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Dont call get() when not required - µ-optim

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

(could be applied on 3.2, please advise)
Helps a bit on https://rawgit.com/kocsismate/php-di-container-benchmarks/master/var/benchmark.html

note: if we want more performance, we should consider deprecating case insensitivity of service identifiers.

Commits
-------

7a42199115 [DI] Dont call get() when not required - µ-optim
2017-01-07 09:36:06 -08:00
Nicolas Grekas
7a42199115 [DI] Dont call get() when not required - µ-optim 2017-01-07 17:52:01 +01:00
Nicolas Grekas
beec1cff8f [DI] Allow definitions to inherit tags from parent context 2017-01-07 17:43:10 +01:00
Maxime Steinhausser
05f24d5a6d [DI] Add "defaults" tag to XML services configuration 2017-01-07 17:40:58 +01:00
Nicolas Grekas
7b4a18b044 [DI] Add "_defaults" key to Yaml services configuration 2017-01-07 17:40:58 +01:00
Nicolas Grekas
c4a6a8a47c [EventDispatcher] Deprecate ContainerAwareEventDispatcher 2017-01-07 16:57:09 +01:00
Martin Hasoň
a18c4b6ab2 [DI] Add tests for class named services 2017-01-07 16:55:01 +01:00
Nicolas Grekas
71b17c7790 [DI] Optional class for named services 2017-01-07 16:55:01 +01:00
Fabien Potencier
8725f6985a minor #21195 [WebServerBundle] Fix package type in composer.json (chalasr)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[WebServerBundle] Fix package type in composer.json

| Q             | A
| ------------- | ---
| Branch?       | master

Commits
-------

50baf256d5 [WebServerBundle] Fix package type in composer.json
2017-01-07 06:16:34 -08:00
Fabien Potencier
6ba968424c feature #20953 [DI][EventDispatcher] Add & wire closure-proxy argument type (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI][EventDispatcher] Add & wire closure-proxy argument type

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

By resolving event subscribers at compile time, then wrapping listeners in a closure, we get laziness almost for free. This should solve/replaced all the above linked issues.

(WIP because tests are missing)

Commits
-------

ecdf857b61 [DI][EventDispatcher] Add & wire closure-proxy argument type
2017-01-07 06:13:19 -08:00
Robin Chalas
50baf256d5
[WebServerBundle] Fix package type in composer.json 2017-01-07 15:13:03 +01:00
Robin Chalas
2e63025e18
[WebServerBundle] Decouple server:* commands from the container 2017-01-07 15:11:56 +01:00
Guilhem N
1a14a1f274
[Yaml] Remove an unused argument 2017-01-07 12:16:59 +01:00
Fabien Potencier
98ce21a351 [FrameworkBundle] changed the default value of annotation setting based on the existence of Doctrine Annotations 2017-01-06 16:42:03 -08:00
Robin Chalas
5b0504c926
[Console] Ease writing to stderr using styles 2017-01-06 19:34:44 +01:00
Nicolas Grekas
36aedd8b2c Merge branch '3.2'
* 3.2:
  [Bridge/PhpUnit] Relax expectedDeprecation for forward compat
  [FrameworkBundle] Remove Response* from classes to compile
  [Workflow] Removed twig from composer.json (dev section, not used)
2017-01-06 18:58:22 +01:00
Nicolas Grekas
886a28c56e bug #21186 [Bridge/PhpUnit] Relax expectedDeprecation for forward compat (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[Bridge/PhpUnit] Relax expectedDeprecation for forward compat

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

Instead of a strict match, this makes the annotation check ignore not expected messages, while still requiring all the expected ones in order.

This is needed for forward compat with future deprecations, and should make travis green again.

Commits
-------

a3ba726 [Bridge/PhpUnit] Relax expectedDeprecation for forward compat
2017-01-06 18:57:29 +01:00
Fabien Potencier
0f93face5b bug #21184 [FrameworkBundle] Remove Response* from classes to compile (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[FrameworkBundle] Remove Response* from classes to compile

| Q             | A
| ------------- | ---
| Branch?       | 3.2
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #20560, https://github.com/symfony/symfony-demo/issues/411, https://github.com/FriendsOfSymfony/FOSHttpCacheBundle/issues/276
| License       | MIT
| Doc PR        | -

When HttpCache is used, Response is loaded first, then the kernel is booted (on cache miss), which triggers the loading of classes.php. Since 3.2 generates a context free classes.php, the Response class is now included there when it was excluded previously. And boom, "Cannot declare class Symfony\Component\HttpFoundation\Response".

Commits
-------

9ab59824a1 [FrameworkBundle] Remove Response* from classes to compile
2017-01-06 09:23:07 -08:00
Fabien Potencier
182dd8f7e6 minor #20972 [HttpFoundation] Improved set cookie header tests (ro0NL)
This PR was squashed before being merged into the 2.7 branch (closes #20972).

Discussion
----------

[HttpFoundation] Improved set cookie header tests

| Q             | A
| ------------- | ---
| Branch?       | 2.7 (already in master)
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

Separated from #20569

Commits
-------

05bce71d7a [HttpFoundation] Improved set cookie header tests
2017-01-06 09:20:46 -08:00
Roland Franssen
05bce71d7a [HttpFoundation] Improved set cookie header tests 2017-01-06 09:20:45 -08:00
Nicolas Grekas
a3ba7269d4 [Bridge/PhpUnit] Relax expectedDeprecation for forward compat 2017-01-06 18:19:17 +01:00
Nicolas Grekas
9ab59824a1 [FrameworkBundle] Remove Response* from classes to compile 2017-01-06 17:22:25 +01:00
Fabien Potencier
6f6100a8e1 feature #20547 [FrameworkBundle] Allowed symlinks when searching for translation, searialization and validation files (tifabien)
This PR was squashed before being merged into the 3.3-dev branch (closes #20547).

Discussion
----------

[FrameworkBundle] Allowed symlinks when searching for translation, searialization and validation files

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

When we have a symlink folder in app/Resources/translations, files inside this symlink are not handled.

Commits
-------

4874e43a4c [FrameworkBundle] Allowed symlinks when searching for translation, searialization and validation files
2017-01-06 07:23:52 -08:00
Fabien Lucas
4874e43a4c [FrameworkBundle] Allowed symlinks when searching for translation, searialization and validation files 2017-01-06 07:23:44 -08:00
Fabien Potencier
dda376032d feature #20735 Deprecate ClassCollectionLoader and Kernel::loadClassCache (dbrumann)
This PR was merged into the 3.3-dev branch.

Discussion
----------

Deprecate ClassCollectionLoader and Kernel::loadClassCache

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

As suggested by @nicolas-grekas in #20668 I added deprecation notices to ClassCollectionLoader and Kernel::loadClassCache.

Commits
-------

660d79a186 Deprecates ClassCache-cache warmer.
2017-01-06 07:22:02 -08:00
Grégoire Pineau
4a81af6fa6 [Workflow] Removed twig from composer.json (dev section, not used) 2017-01-06 16:20:14 +01:00
Fabien Potencier
c36f25f038 bug #21165 [Serializer] int is valid when float is expected when deserializing JSON (dunglas)
This PR was squashed before being merged into the 3.1 branch (closes #21165).

Discussion
----------

[Serializer] int is valid when float is expected when deserializing JSON

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

JSON only has a Number type corresponding to both `int` and `float` PHP types.
PHP's `json_encode`, JavaScript's `JSON.stringify`, Go's `json.Marshal` as well as most other JSON encoders convert floating-point numbers like `12.0` to `12` (the decimal part is dropped when possible).
PHP's `json_decode` automatically converts Numbers without a decimal part to integers.

Actually, the Serializer rejects integers when a float is expected, this PR fixes this behavior when denormalizing JSON-based formats.

Port of api-platform/core#714.

/cc @gorghoa @Shine-neko

Commits
-------

4125455775 [Serializer] int is valid when float is expected when deserializing JSON
2017-01-06 07:11:28 -08:00
Kévin Dunglas
4125455775 [Serializer] int is valid when float is expected when deserializing JSON 2017-01-06 07:11:08 -08:00
Nicolas Grekas
53344d01a9 minor #21180 [PhpUnitBridge] silence warnings on PHPUnit 4.8 (xabbuh)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[PhpUnitBridge] silence warnings on PHPUnit 4.8

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

The concept of warnings is only available since PHPUnit 5. We can later think about whether we need this for PHPUnit 4.8 to or if we should rather aim to drop PHPUnit 4.8 support in 4.0. For now, this change will make the test suite green again.

Commits
-------

2c3de10 silence warnings on PHPUnit 4.8
2017-01-06 15:48:43 +01:00
Christian Flothmann
2c3de10a98 silence warnings on PHPUnit 4.8 2017-01-06 15:37:11 +01:00
Nicolas Grekas
1038221d51 minor #21124 [Console] increased code coverage of Output classes (ShinDarth)
This PR was squashed before being merged into the 2.7 branch (closes #21124).

Discussion
----------

[Console] increased code coverage of Output classes

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

This PR increases the coverage of Output classes of the Console component from 80.81% to 94.95%

Commits
-------

ab4ba23 [Console] increased code coverage of Output classes
2017-01-06 14:13:12 +01:00
ShinDarth
ab4ba23931 [Console] increased code coverage of Output classes 2017-01-06 14:13:10 +01:00
Nicolas Grekas
66f7126569 minor #21156 No fallback to REQUEST_TIME in TimeDataCollector (iltar)
This PR was merged into the 3.3-dev branch.

Discussion
----------

No fallback to REQUEST_TIME in TimeDataCollector

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

As of PHP 5.4 the `REQUEST_TIME_FLOAT` is available and the minimum version of PHP is 5.5 in Symfony. I think it's safe to use as I can't find cases where this is _not_ defined.

Commits
-------

ba00543 No fallback to REQUEST_TIME in TimeDataCollector
2017-01-06 14:09:06 +01:00
Nicolas Grekas
98c4e501ab feature #21140 [PhpUnitBridge] deprecate the testLegacy test name prefix (xabbuh)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[PhpUnitBridge] deprecate the testLegacy test name prefix

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

Commits
-------

21b72dd deprecate the Legacy/testLegacy test name prefix
2017-01-06 12:30:22 +01:00
Christian Flothmann
21b72ddb57 deprecate the Legacy/testLegacy test name prefix 2017-01-06 12:04:13 +01:00
Nicolas Grekas
5518f6a2d0 minor #21151 [Profiler][VarDumper] Fix minor color issue & duplicated selector (ogizanagi)
This PR was merged into the 2.8 branch.

Discussion
----------

[Profiler][VarDumper] Fix minor color issue & duplicated selector

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

While working on #21109, I spotted this minor issue with `sf-dump-const` and `.sf-dump-ref`:

| Before | After |
| --- | --- |
|<img width="276" alt="screenshot 2017-01-03 a 20 13 55" src="https://cloud.githubusercontent.com/assets/2211145/21619779/7e1e347e-d1f1-11e6-9d84-fbb1d5d6b1fa.PNG">| <img width="275" alt="screenshot 2017-01-03 a 20 14 04" src="https://cloud.githubusercontent.com/assets/2211145/21619786/86dde5dc-d1f1-11e6-8b13-dcfc5abe466a.PNG">|

Commits
-------

b282076 [Profiler][VarDumper] Fix minor color issue & duplicated selector
2017-01-06 11:12:29 +01:00
Nicolas Grekas
ecdf857b61 [DI][EventDispatcher] Add & wire closure-proxy argument type 2017-01-06 08:57:26 +01:00
Iltar van der Berg
c9c2474a2c Added missing headers in fixture files 2017-01-06 08:41:29 +01:00
Fabien Potencier
924469c47e feature #21109 [Profiler][VarDumper] Add a search feature to the HtmlDumper (ogizanagi)
This PR was squashed before being merged into the 3.3-dev branch (closes #21109).

Discussion
----------

[Profiler][VarDumper] Add a search feature to the HtmlDumper

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

I finally took some time to continue this. Here is the result so far:

| Raw        | Profiler           | Profiler Bar |
|:-------------:|:-------------:|:-----:|
| ![sfdump](https://cloud.githubusercontent.com/assets/2211145/21567183/4edfcd98-ceaa-11e6-9c51-873663551f32.gif) | ![sfdump profiler](https://cloud.githubusercontent.com/assets/2211145/21567181/4eb8013c-ceaa-11e6-8ed9-f9cb40090d55.gif) | ![sfdump profilerbar](https://cloud.githubusercontent.com/assets/2211145/21567180/4eb71740-ceaa-11e6-92dd-cc61d68a8def.gif) |

New outputs:

| Raw        | Profiler Bar |
|:-------------:|:-----:|
| ![capture d ecran 2017-01-03 a 16 20 54](https://cloud.githubusercontent.com/assets/2211145/21612323/f6b275c4-d1d0-11e6-9f78-059940fe1c2f.png) | <img width="245" alt="capture d ecran 2017-01-03 a 16 21 34" src="https://cloud.githubusercontent.com/assets/2211145/21612337/0641ad34-d1d1-11e6-92ac-a0fff2721241.png"> |

| Profiler Dump Panel | Profiler - Request Panel |
|:-------------:|:-----:|
| ![capture d ecran 2017-01-03 a 16 21 57](https://cloud.githubusercontent.com/assets/2211145/21612329/00a0ead4-d1d1-11e6-958e-e11bc87c0a7d.png) | ![capture d ecran 2017-01-03 a 16 22 22](https://cloud.githubusercontent.com/assets/2211145/21612330/00a2135a-d1d1-11e6-867d-18c55b86897e.png) ![capture d ecran 2017-01-03 a 16 22 33](https://cloud.githubusercontent.com/assets/2211145/21612331/00a2e000-d1d1-11e6-8f2a-2965a837fa60.png) |

Usage:

1. Click on the dump
1. <kbd>CTRL</kbd>/<kbd>CMD</kbd> + <kbd>F</kbd>.
1. <kbd>ESC</kbd> to quit.

Code, styles and rendering might not be perfect, but I think it's enough polished to be considered.
Anyway, I'll accept any PR on my own branch if anyone wishes to contribute to it 😃

~~I moved javascript and css into dedicated files, as I find it easier to maintain (but will complicate diff with other branches). I know PHPStorm is already able to do partial language injection in PHP files, so it might not be needed... But still looks more elegant to me ^^'~~

Commits
-------

1fe82fa49b [Profiler][VarDumper] Add a search feature to the HtmlDumper
2017-01-05 20:44:38 -08:00
Maxime Steinhausser
1fe82fa49b [Profiler][VarDumper] Add a search feature to the HtmlDumper 2017-01-05 20:44:37 -08:00
Fabien Potencier
be85fcc2b8 feature #21039 Web server bundle (fabpot)
This PR was squashed before being merged into the 3.3-dev branch (closes #21039).

Discussion
----------

Web server bundle

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

Moved the `server:*` commands to a new bundle. It makes them more easily discoverable and more decoupled. Discoverability is important when not using symfony/symfony. In that case, the commands are not available unless you have the symfony/process component installed. With a dedicated bundle, installing the bundle also installs the dependency, making the whole process easier.

Usage is the same as the current commands for basic usage:

To start a web server in the foreground:

```
bin/console server:run
```

To manage a background server:

```
bin/console server:start
bin/console server:stop
bin/console server:status
```

The big difference is that port is auto-determined if something is already listening on port 8000.

Usage is **different** if you pass options:

```
bin/console server:start 127.0.0.1:8888
bin/console server:stop # no need to pass the address again
bin/console server:status # no need to pass the address again
```

That's possible as the web server now stores its address in a pid file stored in the current directory.

Commits
-------

f39b32735b [WebServerBundle] switched auto-run of server:start to off by default
961d1cea55 [WebServerBundle] fixed server:start when already running
126f4d9ec4 [WebServerBundle] added support for port auto-detection
6f689d6597 [WebServerBundle] changed the way we keep track of the web server
585d4451c8 [WebServerBundle] tweaked command docs
fa7ebc57de [WebServerBundle] moved most of the logic in a new class
951a1a227d [WebServerBundle] changed wording
ac1ba7700e made the router configurable via env vars
48dd2b0dbe removed obsolete check
132902c621 moved server:* command to a new bundle
2017-01-05 19:09:35 -08:00
Fabien Potencier
0f50b4de80 feature #20907 [DependencyInjection] Implement lazy collection type using generators (tgalopin, nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DependencyInjection] Implement lazy collection type using generators

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

Following the RFC https://github.com/symfony/symfony/issues/20875, this PR aims to implement lazy services collections using generators internally.

For now, I suggest to support only XML and PHP definitions. Supporting YAML means adding another convention to the language and this is not the aim of this PR.

- [x] value object holding the semantic (IteratorArgument)
- [x] iterator dumping
- [x] lazyness awareness in CheckCircularReferencesPass & GraphvizDumper
- [x] rewindable iterators
- [x] `*_ON_INVALID_REFERENCE` behavior
- [x] ContainerBuilder::createService
- [x] ArgumentInterface handling in compiler passes

Commits
-------

1dbf52ad03 [DI] Add "=iterator" arguments to Yaml loader
5313943692 [DependencyInjection] Implement lazy collection type using generators
2017-01-05 19:07:12 -08:00
Nicolas Grekas
1dbf52ad03 [DI] Add "=iterator" arguments to Yaml loader 2017-01-05 21:40:35 +01:00
Fabien Potencier
f39b32735b [WebServerBundle] switched auto-run of server:start to off by default 2017-01-05 12:36:51 -08:00
Titouan Galopin
5313943692 [DependencyInjection] Implement lazy collection type using generators 2017-01-05 21:34:37 +01:00
Fabien Potencier
961d1cea55 [WebServerBundle] fixed server:start when already running 2017-01-05 11:49:47 -08:00
Fabien Potencier
126f4d9ec4 [WebServerBundle] added support for port auto-detection 2017-01-05 11:48:52 -08:00
Fabien Potencier
6f689d6597 [WebServerBundle] changed the way we keep track of the web server 2017-01-05 11:33:44 -08:00
Nicolas Grekas
65d73f58e7 Merge branch '3.2'
* 3.2:
  [TwigBundle] Help composer resolve its deps
2017-01-05 19:14:24 +01:00
Nicolas Grekas
56987dda9f [TwigBundle] Help composer resolve its deps 2017-01-05 19:14:11 +01:00
Nicolas Grekas
aa2a1ebe4c Merge branch '3.2'
* 3.2:
  [Cache] Remove silenced warning tiggered by PhpArrayAdapter
  [Cache] Fix order of writes in ChainAdapter
  [Console] Fix return type in Terminal docblocks
2017-01-05 18:48:24 +01:00
Nicolas Grekas
bfda99f2eb bug #21167 [Cache] Remove silenced warning tiggered by PhpArrayAdapter (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[Cache] Remove silenced warning tiggered by PhpArrayAdapter

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

Because many reported this silenced warning, which happens all the time unless `cache:warmup` has been run.

Commits
-------

a9dfcd8 [Cache] Remove silenced warning tiggered by PhpArrayAdapter
2017-01-05 18:48:01 +01:00
Nicolas Grekas
c74220fd4c Merge branch '3.1' into 3.2
* 3.1:
  [Cache] Fix order of writes in ChainAdapter
2017-01-05 18:42:49 +01:00
Nicolas Grekas
a9dfcd8819 [Cache] Remove silenced warning tiggered by PhpArrayAdapter 2017-01-05 18:36:34 +01:00
Nicolas Grekas
df552af2f2 [Cache] Fix order of writes in ChainAdapter 2017-01-05 08:56:56 +01:00
Fabien Potencier
f50e91419f minor #21162 [Console] Fix return type in Terminal docblocks (pjcdawkins)
This PR was merged into the 3.2 branch.

Discussion
----------

[Console] Fix return type in Terminal docblocks

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

This PR updates the docblock to reflect what's already in the code.

Commits
-------

6afb0afa24 [Console] Fix return type in Terminal docblocks
2017-01-04 19:57:48 -08:00
Fabien Potencier
fccb98c551 [TwigBundle] fixed typo in composer.json 2017-01-04 12:00:29 -08:00
Fabien Potencier
0d1f53f48b Merge branch '3.2'
* 3.2:
  Fix serializer/translations/validator resources loading for bundles overriding getPath()
  Fix the priority order of compiler pass trait
2017-01-04 11:58:57 -08:00
Fabien Potencier
be882c4663 Merge branch '3.1' into 3.2
* 3.1:
  Fix serializer/translations/validator resources loading for bundles overriding getPath()
2017-01-04 11:58:34 -08:00
Fabien Potencier
8f82bf7076 Merge branch '2.8' into 3.1
* 2.8:
  Fix serializer/translations/validator resources loading for bundles overriding getPath()
2017-01-04 11:57:42 -08:00
Fabien Potencier
829b6bd475 Merge branch '2.7' into 2.8
* 2.7:
  Fix serializer/translations/validator resources loading for bundles overriding getPath()
2017-01-04 11:55:18 -08:00
Fabien Potencier
da88e6b1d7 bug #21113 [FrameworkBundle][HttpKernel] Fix resources loading for bundles with custom structure (chalasr)
This PR was merged into the 2.7 branch.

Discussion
----------

[FrameworkBundle][HttpKernel] Fix resources loading for bundles with custom structure

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

This fixes twig/translator/validator/serializer resource loading for bundles overriding `Bundle::getPath()`, adding a kernel parameter containing the bundle metadata (i.e. `path`, `namespace` and `parent`).

Fixes #18563 and unlocks https://github.com/symfony/symfony/pull/19586

Commits
-------

fef3146b3b Fix serializer/translations/validator resources loading for bundles overriding getPath()
2017-01-04 11:50:28 -08:00
Robin Chalas
fef3146b3b
Fix serializer/translations/validator resources loading for bundles overriding getPath() 2017-01-04 20:27:15 +01:00
Patrick Dawkins
6afb0afa24 [Console] Fix return type in Terminal docblocks 2017-01-04 17:48:15 +00:00
Fabien Potencier
df38318303 feature #21075 [Console] Show hidden commands in json & xml descriptors (ogizanagi)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[Console] Show hidden commands in json & xml descriptors

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no (may be considered, but as hidden commands did not exist before 3.2, looks more like a behavior change, hence a feature)
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/20866#issuecomment-266678895
| License       | MIT
| Doc PR        | N/A

Commits
-------

b6cf240ab5 [Console] Show hidden commands in json & xml descriptors
2017-01-04 06:29:21 -08:00
Robin Chalas
cd4b15e605 [FrameworkBundle] Display original definition for aliases in debug:container 2017-01-04 14:20:26 +01:00
Iltar van der Berg
ba005438f9 No fallback to REQUEST_TIME in TimeDataCollector 2017-01-04 11:32:26 +01:00
Nicolas Grekas
601648e0e8 feature #21108 [Cache] Add DSN, createClient & better error reporting to MemcachedAdapter (nicolas-grekas, robfrawley)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[Cache] Add DSN, createClient & better error reporting to MemcachedAdapter

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

Replaces #20863
ping @robfrawley: would you mind opening a doc PR for this?

Commits
-------

87030b4 [cache] Add tests for MemcachedAdapter::createClient()
e109438 [Cache] Add DSN, createClient & better error reporting to MemcachedAdapter
2017-01-04 07:51:37 +01:00
Maxime Steinhausser
b282076d8a [Profiler][VarDumper] Fix minor color issue & duplicated selector 2017-01-03 20:31:24 +01:00
Nicolas Grekas
142afa359e bug #20995 [DependencyInjection] Fix the priority order of compiler pass trait (francoispluchino)
This PR was merged into the 3.2 branch.

Discussion
----------

[DependencyInjection] Fix the priority order of compiler pass trait

| Q             | A
| ------------- | ---
| Branch?       | 3.2
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #20332, #20993
| License       | MIT
| Doc PR        | ~

A regression has appeared between the version `3.1` and `3.2` on the compilation passes using a priority option (see #20332).

Indeed, the order is no longer preserved for service definitions with the same priority. This is caused by the `SplPriorityQueue` class that does not have a FIFO implementation (see this [comment](https://github.com/symfony/symfony/issues/20332#issuecomment-268096527)).

The PR #20993 fixes the problem but only for Forms, not for all compiler passes using the `PriorityTaggedServiceTrait` trait since `3.2`.

Commits
-------

aac9a7e Fix the priority order of compiler pass trait
2017-01-03 18:12:19 +01:00
Rob Frawley 2nd
87030b43ca [cache] Add tests for MemcachedAdapter::createClient() 2017-01-03 17:10:30 +01:00
Nicolas Grekas
aae4f6d9e7 Minor fixes found while ugrading the CI 2017-01-03 16:43:07 +01:00
Fabien Potencier
c423b163e6 bug #21136 [Security] use authenticated token for json authentication (fbourigault)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[Security] use authenticated token for json authentication

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

When using `UsernamePasswordJsonAuthenticationListener` with [LexikJWTAuthenticationBundle](https://github.com/lexik/LexikJWTAuthenticationBundle), we get a type exception
> Type error: Argument 1 passed to Lexik\Bundle\JWTAuthenticationBundle\Security\Http\Authentication\AuthenticationSuccessHandler::handleAuthenticationSuccess() must implement interface Symfony\Component\Security\Core\User\UserInterface, string given, called in .../vendor/lexik/jwt-authentication-bundle/Security/Http/Authentication/AuthenticationSuccessHandler.php on line 47

This error occurs because the `UsernamePasswordJsonAuthenticationListener` send to the authentication success handler the token which have the user as a string and not the authenticated one that have a UserInterface as user.

Commits
-------

208c617716 use authenticated token for json authentication
2017-01-03 05:53:24 -08:00
Nicolas Grekas
6dd45a51cf Merge branch '3.2'
* 3.2:
  [appveyor] Update phpunit-bridge cache-id
  handle empty lines inside unindented collection
2017-01-03 14:51:44 +01:00
Nicolas Grekas
cfd3262b81 Merge branch '3.1' into 3.2
* 3.1:
  [appveyor] Update phpunit-bridge cache-id
  handle empty lines inside unindented collection
2017-01-03 14:51:32 +01:00
Nicolas Grekas
0f21c853e9 Merge branch '2.8' into 3.1
* 2.8:
  [appveyor] Update phpunit-bridge cache-id
  handle empty lines inside unindented collection
2017-01-03 14:51:21 +01:00
Nicolas Grekas
eced0dad35 Merge branch '2.7' into 2.8
* 2.7:
  [appveyor] Update phpunit-bridge cache-id
  handle empty lines inside unindented collection
2017-01-03 14:49:52 +01:00
Fabien Potencier
942e0c1706 bug #21084 [Yaml] handle empty lines inside unindented collection (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[Yaml] handle empty lines inside unindented collection

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

Commits
-------

bbfe6f73b5 handle empty lines inside unindented collection
2017-01-03 05:44:39 -08:00
Nicolas Grekas
a9037a65be Merge branch '3.2'
* 3.2:
  [PhpUnitBrige] Fix current failures
2017-01-03 14:44:13 +01:00
Nicolas Grekas
73df9cd423 [PhpUnitBrige] Fix current failures 2017-01-03 14:42:10 +01:00
Nicolas Grekas
c2a0bcfb65 Merge branch '3.2'
* 3.2:
  [ci] Update travis/appveyor
  [HttpFoundation] Validate/cast cookie expire time
2017-01-03 12:31:33 +01:00
Nicolas Grekas
fcf8b334ec Merge branch '3.1' into 3.2
* 3.1:
  [ci] Update travis/appveyor
  [HttpFoundation] Validate/cast cookie expire time
2017-01-03 12:28:32 +01:00
Nicolas Grekas
e3e1cce863 Merge branch '2.8' into 3.1
* 2.8:
  [ci] Update travis/appveyor
  [HttpFoundation] Validate/cast cookie expire time
2017-01-03 12:28:18 +01:00
Nicolas Grekas
41539cf165 Merge branch '2.7' into 2.8
* 2.7:
  [ci] Update travis/appveyor
  [HttpFoundation] Validate/cast cookie expire time
2017-01-03 12:26:18 +01:00
Nicolas Grekas
0c5afe4393 Merge branch '3.2'
* 3.2:
  [PhpUnitBridge] Fix HHVM compat with putenv()
2017-01-03 12:23:25 +01:00
Nicolas Grekas
d4553c5393 [PhpUnitBridge] Fix HHVM compat with putenv() 2017-01-03 12:22:10 +01:00
Nicolas Grekas
1f936102d0 feature #21147 [PhpUnitBridger] Bump simple-phpunit to PHPUnit 5.7 by default (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[PhpUnitBridger] Bump simple-phpunit to PHPUnit 5.7 by default

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

Commits
-------

54e01bb [PhpUnitBridger] Bump simple-phpunit to PHPUnit 5.7 by default
2017-01-03 11:04:38 +01:00
Nicolas Grekas
ea973feeb1 minor #21088 Rename DebugAccessDecisionManager to TraceableAccessDecisionManager (Jean85)
This PR was squashed before being merged into the 3.3-dev branch (closes #21088).

Discussion
----------

Rename DebugAccessDecisionManager to TraceableAccessDecisionManager

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

[EDIT] No longer WIP, test passing. Also, test added to preserve BC with the SecurityBundle.

Commits
-------

c5e0e59 Rename DebugAccessDecisionManager to TraceableAccessDecisionManager
2017-01-03 10:52:33 +01:00
Alessandro Lai
c5e0e59462 Rename DebugAccessDecisionManager to TraceableAccessDecisionManager 2017-01-03 10:48:58 +01:00
Nicolas Grekas
54e01bb38d [PhpUnitBridger] Bump simple-phpunit to PHPUnit 5.7 by default 2017-01-03 10:44:02 +01:00
Nicolas Grekas
0f5f21882c minor #21144 [Security] Typo fix (dunglas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[Security] Typo fix

| 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

Remove an extra space, will make fabbot happy for #21136.

Commits
-------

4def721 [Security] Typo fix
2017-01-03 10:35:58 +01:00
Nicolas Grekas
c4732b3d1f Merge branch '3.2'
* 3.2:
  [PhpUnitBridge] Set COMPOSER_ROOT_VERSION while installing
2017-01-03 10:28:57 +01:00
Nicolas Grekas
4020a0dda2 bug #21143 [PhpUnitBridge] Set COMPOSER_ROOT_VERSION while installing (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[PhpUnitBridge] Set COMPOSER_ROOT_VERSION while installing

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

Commits
-------

8bab09e [PhpUnitBridge] Set COMPOSER_ROOT_VERSION while installing
2017-01-03 10:28:43 +01:00
Nicolas Grekas
8bab09e668 [PhpUnitBridge] Set COMPOSER_ROOT_VERSION while installing 2017-01-03 10:26:49 +01:00
Nicolas Grekas
1f3167a720 [PhpUnitBridge] Restore --colors=always default in simple-phpunit 2017-01-03 10:09:32 +01:00
Nicolas Grekas
12a4cfe087 Merge branch '3.2'
* 3.2:
  Fix test
  skip tests with failure and error states too
  hide stack trace of expected deprecation failures
2017-01-03 09:54:10 +01:00
Nicolas Grekas
b703f32230 Fix test 2017-01-03 09:53:57 +01:00
Kévin Dunglas
4def721237
[Security] Typo fix 2017-01-03 08:50:10 +01:00
Fabien Potencier
5fdf0e9a60 bug #20925 [HttpFoundation] Validate/cast cookie expire time (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpFoundation] Validate/cast cookie expire time

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

Commits
-------

8215dbdb31 [HttpFoundation] Validate/cast cookie expire time
2017-01-02 19:24:33 -08:00
Fabien Potencier
8c2a67f561 bug #21138 [PhpUnitBridge] skip tests with failure and error states too (xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[PhpUnitBridge] skip tests with failure and error states too

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

I was actually wrong by not excluding failures and errors to in #21121.

Commits
-------

f3bb206f12 skip tests with failure and error states too
2017-01-02 14:07:15 -08:00
Fabien Potencier
da86c93857 bug #21135 [PhpUnitBridge] hide stack trace of expected deprecation failures (xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[PhpUnitBridge] hide stack trace of expected deprecation failures

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

Commits
-------

3777da5b67 hide stack trace of expected deprecation failures
2017-01-02 14:06:22 -08:00
Fabien Potencier
f71c699289 Merge branch '3.2'
* 3.2:
  updated LICENSE year
  updated LICENSE year
  updated LICENSE year
  Fixed `@return self` with `$this`
  [Yaml] add missing indicator character
2017-01-02 12:33:09 -08:00
Fabien Potencier
b5aa8891db updated LICENSE year 2017-01-02 12:32:57 -08:00
Fabien Potencier
3f4e6cce8c Merge branch '3.1' into 3.2
* 3.1:
  updated LICENSE year
  updated LICENSE year
  Fixed `@return self` with `$this`
2017-01-02 12:32:22 -08:00
Fabien Potencier
d05e9e03cb Merge branch '2.8' into 3.1
* 2.8:
  updated LICENSE year
  updated LICENSE year
  Fixed `@return self` with `$this`
2017-01-02 12:31:54 -08:00
Fabien Potencier
5ea8f3f147 updated LICENSE year 2017-01-02 12:30:51 -08:00
Fabien Potencier
ed70281d49 Merge branch '2.7' into 2.8
* 2.7:
  updated LICENSE year
  Fixed `@return self` with `$this`
2017-01-02 12:30:24 -08:00
Fabien Potencier
9879c8193f updated LICENSE year 2017-01-02 12:30:00 -08:00
Fabien Potencier
1315c9cb9b feature #21112 [PhpUnitBridge] run PHPUnit in the same process (xabbuh)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[PhpUnitBridge] run PHPUnit in the same process

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

Commits
-------

198627877a [PhpUnitBridge] run PHPUnit in the same process
2017-01-02 12:09:43 -08:00
Fabien Potencier
e6cfa9a357 feature #21106 [Validator] support DateTimeInterface instances for times (xabbuh)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[Validator] support DateTimeInterface instances for times

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

The same has already been done for the `Date` and `DateTime` constraints in #18759.

Commits
-------

1fa9276937 support DateTimeInterface instances for times
2017-01-02 12:08:39 -08:00
Fabien Potencier
cbcc6ca726 feature #20809 [FrameworkBundle] Display the controller class name in 'debug:router' (lyrixx)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[FrameworkBundle] Display the controller class name in 'debug:router'

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

---

Before:
![screenshot7](https://cloud.githubusercontent.com/assets/408368/21152351/318af764-c166-11e6-8245-1729779e9809.png)

After:
![screenshot3](https://cloud.githubusercontent.com/assets/408368/21563210/02cf043e-ce80-11e6-94be-34736d85bb3b.png)

Commits
-------

157a8306a2 [FrameworkBundle] Display the controller class name in 'debug:router'
2017-01-02 12:07:21 -08:00
Christian Flothmann
f3bb206f12 skip tests with failure and error states too 2017-01-02 18:41:18 +01:00
Christian Flothmann
3777da5b67 hide stack trace of expected deprecation failures 2017-01-02 18:34:38 +01:00
Nicolas Grekas
a89f60bbe8 bug #21117 [Yaml] add missing indicator character (xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[Yaml] add missing indicator character

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

The comma was mentioned in the deprecation message, though it actually was never checked before in the condition.

Commits
-------

8725e0b [Yaml] add missing indicator character
2017-01-02 17:48:41 +01:00
Nicolas Grekas
1099f6b112 bug #21126 Added missing use statemenet (Nyholm)
This PR was merged into the 3.3-dev branch.

Discussion
----------

Added missing use statemenet

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

We should use Symfony\Component\Translation\Exception\RuntimeException

Commits
-------

f9848be Added missing use statemenet
2017-01-02 17:42:57 +01:00
Nicolas Grekas
e10943814e [Cache] Add DSN, createClient & better error reporting to MemcachedAdapter 2017-01-02 17:22:30 +01:00
Nicolas Grekas
b47915c34e [Form] Fix forward compat of AbstractLayoutTest 2017-01-02 17:04:05 +01:00
Fabien Bourigault
208c617716 use authenticated token for json authentication 2017-01-02 16:57:45 +01:00
WouterJ
505e84d9f3 Fixed @return self with $this 2017-01-02 16:57:42 +01:00
Nicolas Grekas
4d7b84512c Fix merge 2017-01-02 16:35:15 +01:00
Nicolas Grekas
14611db296 Merge branch '3.2'
* 3.2:
  Fix merge
  Fix merge
2017-01-02 16:13:40 +01:00
Nicolas Grekas
81894faacd Fix merge 2017-01-02 16:13:20 +01:00
Nicolas Grekas
061b4b4ece Merge branch '3.1' into 3.2
* 3.1:
  Fix merge
2017-01-02 16:09:44 +01:00
Nicolas Grekas
4c623514f6 Fix merge 2017-01-02 16:09:29 +01:00
Nicolas Grekas
3e7ff2194e Merge branch '3.2'
* 3.2:
  do not depend on a fixed date in layout tests
  [Console] Escape default value when dumping help
  [Console] OS X Can't call cli_set_process_title php without superuser
  Fixed @return when returning this or static #bis
  fixed @return when returning this or static
  Polish translation improvement in Validator component
  [Console] Descriptors should use Helper::strlen
  [Config] Improve PHPdoc / IDE autocomplete
  [Debug] Wrap call to ->log in a try catch block
  [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes
  fix merge
  [cache] Bump RedisAdapter timeout to 5s
  fixed @return when returning this or static
  [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService
  remove is_writable check on filesystem cache
2017-01-02 15:58:37 +01:00
Nicolas Grekas
8df0540c9f Merge branch '3.1' into 3.2
* 3.1:
  do not depend on a fixed date in layout tests
  [Console] Escape default value when dumping help
  [Console] OS X Can't call cli_set_process_title php without superuser
  Fixed @return when returning this or static #bis
  fixed @return when returning this or static
  Polish translation improvement in Validator component
  [Console] Descriptors should use Helper::strlen
  [Config] Improve PHPdoc / IDE autocomplete
  [Debug] Wrap call to ->log in a try catch block
  [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes
  fix merge
  [cache] Bump RedisAdapter timeout to 5s
  fixed @return when returning this or static
  [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService
  remove is_writable check on filesystem cache
2017-01-02 15:57:35 +01:00
Nicolas Grekas
0dbc5cec7f Merge branch '2.8' into 3.1
* 2.8:
  do not depend on a fixed date in layout tests
  [Console] Escape default value when dumping help
  [Console] OS X Can't call cli_set_process_title php without superuser
  Fixed @return when returning this or static #bis
  Polish translation improvement in Validator component
  [Console] Descriptors should use Helper::strlen
  [Config] Improve PHPdoc / IDE autocomplete
  [Debug] Wrap call to ->log in a try catch block
  [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes
  [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService
2017-01-02 15:50:07 +01:00
Nicolas Grekas
23590eb51a Merge branch '2.7' into 2.8
* 2.7:
  do not depend on a fixed date in layout tests
  [Console] Escape default value when dumping help
  [Console] OS X Can't call cli_set_process_title php without superuser
  Polish translation improvement in Validator component
  [Console] Descriptors should use Helper::strlen
  [Config] Improve PHPdoc / IDE autocomplete
  [Debug] Wrap call to ->log in a try catch block
  [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes
  [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService
2017-01-02 15:44:49 +01:00
Nicolas Grekas
ffc07c318f Merge branch '3.2'
* 3.2:
  respect skipped and incomplete tests
  [DI] Minor fixes in FactoryReturnTypePass
  [TwigBridge] Fix upgrade/changelog notes
  [Debug] Fixed cast of stream
  [Console] minor addition to #20817 for branch 3.2
2017-01-02 15:31:48 +01:00
Nicolas Grekas
e04041fdd5 minor #21134 [DI] Minor fixes in FactoryReturnTypePass (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[DI] Minor fixes in FactoryReturnTypePass

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

Commits
-------

c231f81 [DI] Minor fixes in FactoryReturnTypePass
2017-01-02 15:31:02 +01:00
Christian Flothmann
0c060931ee respect skipped and incomplete tests 2017-01-02 15:25:30 +01:00
Nicolas Grekas
c231f811b5 [DI] Minor fixes in FactoryReturnTypePass 2017-01-02 15:07:02 +01:00
Tobias Nyholm
f9848be1d2 Added missing use statemenet
We should use Symfony\Component\Translation\Exception\RuntimeException
2017-01-02 10:34:12 +01:00
Christian Flothmann
97b7fabf51 do not depend on a fixed date in layout tests
By default, the `DateType` as well as the `DateTimeType` set the choices
being available for the year to a range starting five years in the past.
After some time, this will make tests fail when the year of the fixed
date being used as the initial data is before the first year being part
of the choices.
2017-01-01 13:43:56 +01:00
Christian Flothmann
8725e0b0e1 [Yaml] add missing indicator character
The comma was mentioned in the deprecation message, though it actually
was never checked before in the condition.
2017-01-01 11:33:22 +01:00
Christian Flothmann
198627877a [PhpUnitBridge] run PHPUnit in the same process 2016-12-31 14:41:54 +01:00
Christian Flothmann
ec593b923b [Yaml] parse multi-line strings 2016-12-31 12:54:23 +01:00
Fabien Potencier
6699928cfd bug #21032 [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService (lyrixx)
This PR was merged into the 2.7 branch.

Discussion
----------

[SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService

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

Commits
-------

8227593 [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService
2016-12-31 09:30:48 +01:00
Christian Flothmann
1fa9276937 support DateTimeInterface instances for times 2016-12-30 11:58:06 +01:00
Grégoire Pineau
157a8306a2 [FrameworkBundle] Display the controller class name in 'debug:router' 2016-12-30 11:47:35 +01:00
Christian Flothmann
2bb47136df fix IPv6 address handling in server commands 2016-12-30 11:19:53 +01:00
Grégoire Pineau
c24269005b [Console] Escape default value when dumping help 2016-12-30 11:17:25 +01:00
Fabien Potencier
7e8e9e3a6e bug #21076 [Console] OS X Can't call cli_set_process_title php without superuser (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] OS X Can't call cli_set_process_title php without superuser

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

The console component test suite is failing on OS X (10.12.2) as the `cli_set_process_title` function seems not to be allowed to be called without superuser. It seems to be an OS X limitation.
At least, the test suite should pass and a warning should be shown when using the component with this feature on OS X.

---

refs:

- http://stackoverflow.com/questions/27803120/cannot-set-process-title-in-a-php-command-line-script-using-cli-set-process-titl
- https://github.com/liip/php-osx/issues/139
- https://github.com/zfcampus/zf-console/pull/22

Commits
-------

9928c0d [Console] OS X Can't call cli_set_process_title php without superuser
2016-12-30 09:19:58 +01:00
Maxime Steinhausser
9928c0d44e [Console] OS X Can't call cli_set_process_title php without superuser 2016-12-30 09:09:55 +01:00
Fabien Potencier
585d4451c8 [WebServerBundle] tweaked command docs 2016-12-30 08:54:40 +01:00
Fabien Potencier
fa7ebc57de [WebServerBundle] moved most of the logic in a new class 2016-12-30 08:54:40 +01:00
Fabien Potencier
951a1a227d [WebServerBundle] changed wording 2016-12-30 08:54:39 +01:00
Fabien Potencier
ac1ba7700e made the router configurable via env vars 2016-12-30 08:54:39 +01:00
Fabien Potencier
48dd2b0dbe removed obsolete check 2016-12-30 08:54:39 +01:00
Fabien Potencier
132902c621 moved server:* command to a new bundle 2016-12-30 08:54:28 +01:00
Fabien Potencier
61a67ecc5a bug #21072 [DI] Fix method autowiring in ResolveDefinitionTemplatesPass (dunglas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Fix method autowiring in ResolveDefinitionTemplatesPass

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

cc @nicolas-grekas

Commits
-------

57661e4 [DI] Fix method autowiring in ResolveDefinitionTemplatesPass
2016-12-30 07:43:06 +01:00
Maxime Steinhausser
20d8c74bfe Fixed @return when returning this or static #bis 2016-12-29 22:47:05 +01:00
Fabien Potencier
2a778c2d16 fixed @return when returning this or static 2016-12-29 22:43:11 +01:00
Fabien Potencier
0f6e4ab687 Merge branch '2.8' into 3.1
* 2.8:
  fixed @return when returning this or static
2016-12-29 22:40:29 +01:00
Marcin Szepczynski
7a603df71d Polish translation improvement in Validator component 2016-12-29 22:17:52 +01:00
Christian Flothmann
d8d44170f0 [DI] register alias after defining the class 2016-12-29 16:20:01 +01:00
Tobias Nyholm
5cc4bafb10 [Cache] TraceableAdapter 2016-12-29 11:50:13 +01:00
Christian Flothmann
bbfe6f73b5 handle empty lines inside unindented collection 2016-12-28 19:56:06 +01:00
Maxime Steinhausser
b6cf240ab5 [Console] Show hidden commands in json & xml descriptors 2016-12-28 13:23:03 +01:00
Kévin Dunglas
57661e40fe
[DI] Fix method autowiring in ResolveDefinitionTemplatesPass 2016-12-28 11:50:08 +01:00
Fabien Potencier
1678303549 minor #21022 [TwigBridge] Fix upgrade/changelog notes (chalasr)
This PR was merged into the 3.2 branch.

Discussion
----------

[TwigBridge] Fix upgrade/changelog notes

| Q             | A
| ------------- | ---
| Branch?       | 3.2

The current upgrade note is wrong, the renderer cannot be injected in the `TwigRendererEngine`, only the Twig Environment can be.
Also added a missing note about the deprecated `TwigRendererEngineInterface`.

Commits
-------

a7ebe9c [TwigBridge] Fix upgrade/changelog notes
2016-12-28 09:43:56 +01:00
Nicolas Grekas
f1f5bff78f bug #20900 [Console] Descriptors should use Helper::strlen (ogizanagi)
This PR was squashed before being merged into the 2.7 branch (closes #20900).

Discussion
----------

[Console] Descriptors should use Helper::strlen

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

Commits
-------

8e9a5f8 [Console] Descriptors should use Helper::strlen
2016-12-28 09:27:59 +01:00
Maxime STEINHAUSSER
8e9a5f8009 [Console] Descriptors should use Helper::strlen 2016-12-28 09:27:57 +01:00
Nicolas Grekas
98253201f3 bug #21025 [Cache] remove is_writable check on filesystem cache (4rthem)
This PR was merged into the 3.1 branch.

Discussion
----------

[Cache] remove is_writable check on filesystem cache

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

* Use 755 mode for directories creation
* Remove `is_writable` check in FilesystemAdapter to avoid exception on read-only filesystems

Commits
-------

4dc4f69 remove is_writable check on filesystem cache
2016-12-28 09:22:53 +01:00
Nicolas Grekas
d85febc5f8 minor #21047 [Config] Improve PHPdoc / IDE autocomplete (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Config] Improve PHPdoc / IDE autocomplete

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes-ish
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

The missing pieces for fixing the autocomplete in IDE's (tested in `PhpStorm 2016.3.2`).

Each method seems to be found now for the framework bundle configuration 😱

Actually uses #20923 where needed, but i think we should go with it consistently.

Relates to https://github.com/symfony/symfony/pull/20290#issuecomment-257303145

Commits
-------

3f3c6e0 [Config] Improve PHPdoc / IDE autocomplete
2016-12-28 09:11:03 +01:00
Nicolas Grekas
dc35187259 bug #21069 [Debug] Fixed cast of stream (lyrixx)
This PR was merged into the 3.2 branch.

Discussion
----------

[Debug] Fixed cast of stream

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

---

Reproducer:

```
$socket = stream_socket_server("tcp://0:9911", $e1, $e2, STREAM_SERVER_LISTEN);
dump($socket);
```

Commits
-------

814ba5c [Debug] Fixed cast of stream
2016-12-28 08:41:43 +01:00
Roland Franssen
8215dbdb31 [HttpFoundation] Validate/cast cookie expire time 2016-12-27 23:08:58 +00:00
Robin Chalas
a7ebe9c1a4
[TwigBridge] Fix upgrade/changelog notes 2016-12-27 20:04:23 +01:00
Grégoire Pineau
814ba5c477 [Debug] Fixed cast of stream
Reproducer:

```
$socket = stream_socket_server("tcp://0:9911", $e1, $e2, STREAM_SERVER_LISTEN);
dump($socket);
```
2016-12-27 18:23:46 +01:00
ShinDarth
700344a993 [Console] minor addition to #20817 for branch 3.2 2016-12-27 16:50:49 +01:00
Roland Franssen
3f3c6e0e53 [Config] Improve PHPdoc / IDE autocomplete 2016-12-27 15:12:49 +00:00
Grégoire Pineau
18dfef1e2b [Debug] Wrap call to ->log in a try catch block
If something goes wrong in the logger, the application ends up
with a blank page. Let's display the original exception.
2016-12-27 15:50:31 +01:00
Nicolas Grekas
ee69018bf4 bug #21010 [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes (SpacePossum)
This PR was squashed before being merged into the 2.7 branch (closes #21010).

Discussion
----------

[Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes

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

When trying to call a method on an anonymous class (with or without methods) the `UndefinedMethodFatalErrorHandler` tries to iterate `null`.

For ref.: https://3v4l.org/l26u1

Commits
-------

ed713ae [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes
2016-12-27 14:43:30 +01:00
SpacePossum
ed713aef2b [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes 2016-12-27 14:43:27 +01:00
Nicolas Grekas
aed6f86782 fix merge 2016-12-27 14:36:53 +01:00
Nicolas Grekas
d28384274a bug #20991 [cache] Bump RedisAdapter default timeout to 5s (Nicofuma)
This PR was merged into the 3.1 branch.

Discussion
----------

[cache] Bump RedisAdapter default timeout to 5s

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

Bump RedisAdapter timeout to 5s because (at least with Predis) 0 means 0s

Commits
-------

eaca2a4 [cache] Bump RedisAdapter timeout to 5s
2016-12-27 14:22:57 +01:00
Tristan Darricau
eaca2a4509 [cache] Bump RedisAdapter timeout to 5s
Bump RedisAdapter timeout to 5s because (at least with Predis) 0 means 0s
2016-12-27 14:21:58 +01:00
Fabien Potencier
7808b675fc fixed @return when returning this or static 2016-12-27 11:52:11 +01:00
Fabien Potencier
d0e8476afc Merge branch '3.2'
* 3.2:
  [FrameworkBundle] Ignore AnnotationException exceptions in the AnnotationsCacheWarmer
  fixed @return when returning this or static
  override property constraints in child class
  removed unneeded comment
  [Console] improved code coverage of Command class
  [FrameworkBundle] Make TemplateController working without the Templating component
  [FrameworkBundle] Allow multiple transactions with the same name
  Only count on arrays or countables to avoid warnings in PHP 7.2
2016-12-27 11:45:09 +01:00
Fabien Potencier
f4a635957e Merge branch '3.1' into 3.2
* 3.1:
  fixed @return when returning this or static
  override property constraints in child class
  removed unneeded comment
  [Console] improved code coverage of Command class
  [FrameworkBundle] Make TemplateController working without the Templating component
  Only count on arrays or countables to avoid warnings in PHP 7.2
2016-12-27 11:44:30 +01:00
Grégoire Pineau
8227593604 [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService 2016-12-27 11:44:08 +01:00
Fabien Potencier
4c453f617d Merge branch '2.8' into 3.1
* 2.8:
  fixed @return when returning this or static
  override property constraints in child class
  removed unneeded comment
  [Console] improved code coverage of Command class
  [FrameworkBundle] Make TemplateController working without the Templating component
  Only count on arrays or countables to avoid warnings in PHP 7.2
2016-12-27 11:43:25 +01:00
Fabien Potencier
9a64d83436 Merge branch '2.7' into 2.8
* 2.7:
  fixed @return when returning this or static
  override property constraints in child class
  [Console] improved code coverage of Command class
  Only count on arrays or countables to avoid warnings in PHP 7.2
2016-12-27 11:39:57 +01:00
Fabien Potencier
eeb9192cf3 minor #21054 Fix @return statements to use $this or static when relevant (fabpot)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix @return statements to use $this or static when relevant

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

see #20290

Commits
-------

3c0693d fixed @return when returning this or static
2016-12-27 11:38:09 +01:00
Nicolas Grekas
59dc976caf bug #20959 [FrameworkBundle] Ignore AnnotationException exceptions in the AnnotationsCacheWarmer (fancyweb)
This PR was squashed before being merged into the 3.2 branch (closes #20959).

Discussion
----------

[FrameworkBundle] Ignore AnnotationException exceptions in the AnnotationsCacheWarmer

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

I ran into a case that led to an `AnnotationException` in the `AnnotationsCacheWarmer`. I deduced that these exceptions should be ignored to not break the cache warming process.

The case :
* You have a controller in your `AppBundle\Controller\` directory.
* You have an annotation in this controller that will never be found (because you made a mistake in the class / annotation name) or not every time : for example your controller is only used in dev env and it uses an annotation that is defined in a vendor bundle that is only under the `require-dev` key in your `composer.json` because you don't need it in your production deployment. So in production, your controller exists but will never be used. However the vendor bundle does not exist.
* You dump your autoload files with composer using the `--optimize` option.
* You end up with an `AnnotationException`.

Why :
* In the [`FrameworkExtension`](https://github.com/symfony/symfony/blob/master/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php#L189), the `**Bundle\Controller\` pattern is added as an "annotated class to compile".
* In the [`AddClassesToCachePass`](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpKernel/DependencyInjection/AddClassesToCachePass.php#L50), all the classes defined in the `autoload_classmap.php` file are matched against the previous pattern.
* Your controller will match. So even if you don't use it at all in your application, the annotation will still be read and the exception will be thrown.

Commits
-------

6749569 [FrameworkBundle] Ignore AnnotationException exceptions in the AnnotationsCacheWarmer
2016-12-27 10:59:18 +01:00
Thomas Calvet
67495693a4 [FrameworkBundle] Ignore AnnotationException exceptions in the AnnotationsCacheWarmer 2016-12-27 10:59:17 +01:00
Fabien Potencier
3c0693de23 fixed @return when returning this or static 2016-12-27 08:23:47 +01:00
Fabien Potencier
085171fc50 bug #20795 [FrameworkBundle] Allow multiple transitions with the same name (Padam87)
This PR was merged into the 3.2 branch.

Discussion
----------

[FrameworkBundle] Allow multiple transitions with the same name

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

Commits
-------

7c86e16 [FrameworkBundle] Allow multiple transactions with the same name
2016-12-26 21:42:16 +01:00
Nicolas Grekas
243d160615 [DI] Prepare dropping "strict" handling in loaders 2016-12-26 17:39:10 +01:00
Fabien Potencier
2e0b61eaff bug #20859 Avoid warning in PHP 7.2 because of non-countable data (wouterj)
This PR was merged into the 2.7 branch.

Discussion
----------

Avoid warning in PHP 7.2 because of non-countable data

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

Recently, the "[Counting of non-countable objects][1]" RFC was merged in PHP 7.2-dev. This means `count()` now causes a warning when passing anything that's not countable (e.g. `null` or `''`).

As PHP does not lazily execute conditions, `FormUtil::isEmtpy($data) || 0 === count($data)` will cause *both* conditions to be executed. This means `count($data)` errors when `$data` is empty.

Splitting it up in 2 statements avoids the warning being triggered in PHP 7.2.

See https://travis-ci.org/symfony-cmf/content-bundle/jobs/181815895 for a failing test caused by this bug.

 [1]: https://wiki.php.net/rfc/counting_non_countables

Commits
-------

94253e8 Only count on arrays or countables to avoid warnings in PHP 7.2
2016-12-26 12:09:56 +01:00
Christian Flothmann
8b281fe401 override property constraints in child class 2016-12-25 18:58:48 +01:00
Fabien Potencier
e5ce4c9383 removed unneeded comment 2016-12-23 22:13:36 +01:00
Fabien Potencier
a4ac1a785e minor #20817 [Console] improved code coverage of Command class (ShinDarth)
This PR was squashed before being merged into the 2.7 branch (closes #20817).

Discussion
----------

[Console] improved code coverage of Command class

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

This PR increases the code coverage of the Command class from ``86.82%`` to ``96.90%``.

Commits
-------

d393113 [Console] improved code coverage of Command class
2016-12-23 21:36:17 +01:00
ShinDarth
d39311385f [Console] improved code coverage of Command class 2016-12-23 21:36:12 +01:00
Fabien Potencier
f1d8575d38 bug #21034 [FrameworkBundle] Make TemplateController working without the Templating component (dunglas)
This PR was merged into the 2.8 branch.

Discussion
----------

[FrameworkBundle] Make TemplateController working without the Templating component

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

The template controller was missed during #15502. Btw I've added some tests for this controller.

Commits
-------

89ccbc4 [FrameworkBundle] Make TemplateController working without the Templating component
2016-12-23 21:28:53 +01:00
Christian Flothmann
7bc268e8c0 Merge branch '3.2'
* 3.2:
  use HHVM 3.15 to run tests
  [TwigBridge] fix Twig 2.x compatibility
  removed some PHP CS Fixer rules
  Improve language
  [Console] SymfonyStyle: Escape trailing backslashes in user texts
  Mention the community review guide
  [Form] fix group sequence based validation
  [Console] Fix question formatting using SymfonyStyle::ask()
2016-12-23 18:11:40 +01:00
Christian Flothmann
a3788e7ce6 Merge branch '3.1' into 3.2
* 3.1:
  use HHVM 3.15 to run tests
  [TwigBridge] fix Twig 2.x compatibility
  removed some PHP CS Fixer rules
  Improve language
  [Console] SymfonyStyle: Escape trailing backslashes in user texts
  Mention the community review guide
  [Form] fix group sequence based validation
  [Console] Fix question formatting using SymfonyStyle::ask()
2016-12-23 18:05:10 +01:00
Christian Flothmann
e1d2426d56 Merge branch '2.8' into 3.1
* 2.8:
  use HHVM 3.15 to run tests
  [TwigBridge] fix Twig 2.x compatibility
  removed some PHP CS Fixer rules
  Improve language
  [Console] SymfonyStyle: Escape trailing backslashes in user texts
  Mention the community review guide
  [Form] fix group sequence based validation
  [Console] Fix question formatting using SymfonyStyle::ask()
2016-12-23 17:43:44 +01:00
Christian Flothmann
8a27d79a10 Merge branch '2.7' into 2.8
* 2.7:
  use HHVM 3.15 to run tests
  [TwigBridge] fix Twig 2.x compatibility
  removed some PHP CS Fixer rules
  Improve language
  [Console] SymfonyStyle: Escape trailing backslashes in user texts
  Mention the community review guide
  [Form] fix group sequence based validation
  [Console] Fix question formatting using SymfonyStyle::ask()
2016-12-23 17:32:24 +01:00
Kévin Dunglas
89ccbc450c
[FrameworkBundle] Make TemplateController working without the Templating component 2016-12-23 16:30:22 +01:00
Fabien Potencier
5c5c9116ae minor #21021 [TwigBridge] Late deprecation for TwigRendererEngine::setEnvironment() (chalasr)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[TwigBridge] Late deprecation for TwigRendererEngine::setEnvironment()

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/20093#discussion_r81309117
| License       | MIT
| Doc PR        | n/a

This method should have been deprecated in 3.2 since the twig environment should be injected through the constructor and replacing it later can break things (see https://github.com/symfony/symfony/pull/20093#discussion_r81309117 for details).

Maybe this could target 3.2

Commits
-------

aabb73c Deprecate TwigRendererEngine::setEnvironment()
2016-12-23 14:00:15 +01:00
Arthur de Moulins
4dc4f694ca remove is_writable check on filesystem cache 2016-12-23 13:05:40 +01:00
Christian Flothmann
08e5747ce1 [TwigBridge] fix Twig 2.x compatibility 2016-12-23 12:20:51 +01:00
Fabien Potencier
0bb7eafba0 bug #20970 [Console] Fix question formatting using SymfonyStyle::ask() (chalasr, ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Fix question formatting using SymfonyStyle::ask()

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

Given
```php
$io = new SymfonyStyle($input, $output);
$io->ask('Do you want to use Foo\\Bar <comment>or</comment> Foo\\Baz\\?', 'Foo\\Bar');
```

Before output
![before](http://image.prntscr.com/image/af3806f866654deda2dec79b50d1ffa2.png)

After output
![after](http://image.prntscr.com/image/59c031d9e02949cebeae7a4734c7043f.png)

Commits
-------

e189183 [Console] SymfonyStyle: Escape trailing backslashes in user texts
9d46712 [Console] Fix question formatting using SymfonyStyle::ask()
2016-12-22 13:18:06 +01:00
Robin Chalas
aabb73cab8 Deprecate TwigRendererEngine::setEnvironment() 2016-12-22 12:01:04 +01:00
Fabien Potencier
072393d924 Merge branch '3.1' into 3.2
* 3.1:
  [HttpKernel] Continuation of #20599 for 3.1
2016-12-22 11:30:54 +01:00
Tarjei Huse
1255786811 Improve language
I suspect the file has been updated from the Danish translation and thus some of the sentences sound weird in Norwegian. Here's a suggested update.
2016-12-22 11:26:53 +01:00
Roland Franssen
e1616b3ca3 [HttpKernel] Continuation of #20569 2016-12-20 17:39:17 +00:00
Roland Franssen
c245f87a47 [HttpKernel] Continuation of #20599 for 3.1 2016-12-20 17:35:30 +00:00
François Pluchino
aac9a7edfd Fix the priority order of compiler pass trait 2016-12-20 14:31:21 +01:00
Nicolas Grekas
d29fc2ca9e Merge branch '3.2'
* 3.2:
  Fix merge
2016-12-19 22:17:42 +01:00
Nicolas Grekas
411afbe854 Fix merge 2016-12-19 22:16:36 +01:00
Nicolas Grekas
639e6b94bb Merge branch '3.2'
* 3.2:
  Fix merge
  [TwigBundle][#20799] fix merge
2016-12-19 21:57:54 +01:00
Nicolas Grekas
c34af41cf8 Merge branch '3.1' into 3.2
* 3.1:
  Fix merge
  [TwigBundle][#20799] fix merge
2016-12-19 21:55:39 +01:00
Nicolas Grekas
6fddb75ef5 Fix merge 2016-12-19 21:36:15 +01:00
Christian Flothmann
98c835d9be [TwigBundle][#20799] fix merge 2016-12-19 19:45:07 +01:00
Fabien Potencier
57f8ff2063 minor #20986 [HttpFoundation] update changelog (xabbuh)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[HttpFoundation] update changelog

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

Commits
-------

e91a654 [HttpFoundation] update changelog
2016-12-19 18:02:21 +01:00
Fabien Potencier
4838d5d691 minor #20985 [DI] update changelog and upgrade files (xabbuh, javiereguiluz)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] update changelog and upgrade files

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

Commits
-------

ad7afe0 Added a needed blank line
d2b4996 [DI] update changelog and upgrade files
2016-12-19 17:58:44 +01:00
Fabien Potencier
2f24e690f6 bug #20975 [Form] fix group sequence based validation (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] fix group sequence based validation

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

Commits
-------

fb91f74 [Form] fix group sequence based validation
2016-12-19 17:50:42 +01:00
Fabien Potencier
c49f14fdce Merge branch '3.2'
* 3.2:
  fixed tests
2016-12-19 17:19:32 +01:00
Fabien Potencier
93a00b0eca Merge branch '3.1' into 3.2
* 3.1:
  fixed tests
2016-12-19 17:19:24 +01:00
Fabien Potencier
e618ff3ecb fixed tests 2016-12-19 17:18:40 +01:00
Fabien Potencier
ab520a13c6 fixed tests 2016-12-19 17:17:38 +01:00
Fabien Potencier
2819a57172 fixed obsolete getMock() usage 2016-12-19 17:14:19 +01:00
Fabien Potencier
6126018b9f Merge branch '3.2'
* 3.2:
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
  do not remove the Twig ExceptionController service
  removed obsolete condition
  do not try to register incomplete definitions
2016-12-19 17:13:57 +01:00
Fabien Potencier
0a9e391f36 fixed obsolete getMock() usage 2016-12-19 17:09:34 +01:00
Fabien Potencier
3f96468942 Merge branch '3.1' into 3.2
* 3.1:
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
  do not remove the Twig ExceptionController service
  removed obsolete condition
  do not try to register incomplete definitions
2016-12-19 17:07:36 +01:00
Fabien Potencier
a3058245db fixed obsolete getMock() usage 2016-12-19 17:00:11 +01:00
Fabien Potencier
7ae26ed5f1 Merge branch '2.8' into 3.1
* 2.8:
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
  do not remove the Twig ExceptionController service
  removed obsolete condition
  do not try to register incomplete definitions
2016-12-19 16:53:49 +01:00
Fabien Potencier
0f9a7287c3 fixed obsolete getMock() usage 2016-12-19 16:48:05 +01:00
Fabien Potencier
84e75a78b3 Merge branch '2.7' into 2.8
* 2.7:
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
2016-12-19 16:38:44 +01:00
Fabien Potencier
71d059cad1 fixed obsolete getMock() usage 2016-12-19 16:22:46 +01:00
Christian Flothmann
e91a65438f [HttpFoundation] update changelog 2016-12-19 11:09:43 +01:00
Maxime Steinhausser
e189183689 [Console] SymfonyStyle: Escape trailing backslashes in user texts 2016-12-19 11:07:02 +01:00
Christian Flothmann
d2b499636c [DI] update changelog and upgrade files 2016-12-19 10:30:32 +01:00
Fabien Potencier
dd1fd31d7a feature #20971 [WebProfilerBundle] Split PHP version if needed (ro0NL)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[WebProfilerBundle] Split PHP version if needed

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes/no
| Fixed tickets | https://github.com/symfony/symfony/pull/20697#issuecomment-263966015
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

Commits
-------

1241a00 [WebProfilerBundle] Split PHP version if needed
2016-12-19 09:26:18 +01:00
Fabien Potencier
ed5b1d8968 feature #20634 [DI] Deprecate dumping an uncompiled container (ro0NL)
This PR was squashed before being merged into the 3.3-dev branch (closes #20634).

Discussion
----------

[DI] Deprecate dumping an uncompiled container

| Q             | A
| ------------- | ---
| Branch?       | "master"
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/19673#issuecomment-242001836
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

It makes the PHP dumper less complex. Compiled container goes in, compiled container goes out.

Relates to #19673

Commits
-------

da50fdb [DI] Deprecate dumping an uncompiled container
2016-12-19 09:23:26 +01:00
Roland Franssen
da50fdb8e2 [DI] Deprecate dumping an uncompiled container 2016-12-19 09:23:24 +01:00
Fabien Potencier
d221a4e1eb feature #20923 #20921 [Config] Provide shorthand methods for ArrayNodeDefinition::pr… (skafandri)
This PR was squashed before being merged into the 3.3-dev branch (closes #20923).

Discussion
----------

#20921 [Config] Provide shorthand methods for ArrayNodeDefinition::pr…

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

Commits
-------

22b8490 #20921 [Config] Provide shorthand methods for ArrayNodeDefinition::pr…
2016-12-19 08:55:13 +01:00
ilyes kooli
22b849062a #20921 [Config] Provide shorthand methods for ArrayNodeDefinition::pr… 2016-12-19 08:55:12 +01:00
Nicolas Grekas
cbf766bcc4 Merge branch '3.1' into 3.2
* 3.1:
  [HttpKernel] Fix ClientTest cookie format assertions
2016-12-18 22:40:57 +01:00
Nicolas Grekas
3c4e65fb9e Merge branch '3.1'
* 3.1:
  [HttpKernel] Fix ClientTest cookie format assertions
2016-12-18 22:04:59 +01:00
Nicolas Grekas
20190c3861 [HttpKernel] Fix ClientTest cookie format assertions 2016-12-18 21:52:30 +01:00
Nicolas Grekas
8f5e917557 [HttpKernel] Fix "Locale class not found" in ConfigDataCollector 2016-12-18 20:00:09 +01:00